# @types/varint

> TypeScript definitions for varint

Latest version **6.0.3** (published 2023-11-07) · MIT license · 0 weekly downloads

## Install

```sh
npm install @types/varint
pnpm add @types/varint
yarn add @types/varint
bun add @types/varint
```

## Health

**Score 45/100 (D)** — status: abandoned.

Positive: has types; no vulnerabilities; high maintenance score; popular repo; extremely popular.

Warnings: low downloads; no esm support.

Negative: abandoned.

## Facts

| | |
|---|---|
| Version | 6.0.3 |
| Published | 2023-11-07 |
| First published | 2018-08-15 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 5.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 51443 |
| Maintainers | types |

## Links

- npm: https://www.npmjs.com/package/@types/varint
- Repository: https://github.com/DefinitelyTyped/DefinitelyTyped
- Homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/varint
- npm.io page: https://npm.io/package/@types/varint

## Dependencies (1)

- [@types/node](https://npm.io/package/@types/node.md) *

## Recent versions

- 6.0.3 (latest) — 2023-11-07
- 6.0.1 (ts4.1) — 2022-11-07
- 6.0.0 (ts3.4) — 2021-03-02
- 5.0.0 (ts2.0) — 2018-08-15
- 6.0.2 — 2023-10-18

## README

# Installation
> `npm install --save @types/varint`

# Summary
This package contains type definitions for varint (https://github.com/chrisdickinson/varint#readme).

# Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/varint.
## [index.d.ts](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/varint/index.d.ts)
````ts
/// <reference types="node"/>

export const encode: {
    /**
     * Encodes `num` into `buffer` starting at `offset`. returns `buffer`, with the encoded varint written into it.
     * `varint.encode.bytes` will now be set to the number of bytes modified.
     */
    <TBuf extends Uint8Array | number[] = number[]>(num: number, buffer?: TBuf, offset?: number): TBuf;

    /**
     * Similar to `decode.bytes` when encoding a number it can be useful to know how many bytes where written (especially if you pass an output array).
     * You can access this via `varint.encode.bytes` which holds the number of bytes written in the last encode.
     */
    bytes: number | undefined;
};

export const decode: {
    /**
     * Decodes `data`, which can be either a buffer or array of integers, from position `offset` or default 0 and returns the decoded original integer.
     * Throws a `RangeError` when `data` does not represent a valid encoding.
     */
    (buf: Uint8Array | number[], offset?: number): number;

    /**
     * If you also require the length (number of bytes) that were required to decode the integer you can access it via `varint.decode.bytes`.
     * This is an integer property that will tell you the number of bytes that the last .decode() call had to use to decode.
     */
    bytes: number | undefined;
};

/**
 * returns the number of bytes this number will be encoded as, up to a maximum of 8.
 */
export function encodingLength(num: number): number;

````

### Additional Details
 * Last updated: Tue, 07 Nov 2023 15:11:36 GMT
 * Dependencies: [@types/node](https://npmjs.com/package/@types/node)

# Credits
These definitions were written by [David Brockman Smoliansky](https://github.com/dbrockman).

---
_Source: https://npm.io/package/@types/varint · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
