[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Bytes](https://evolu.dev/docs/api-reference/common/Bytes) › encodeNonNegativeInt

```ts
function encodeNonNegativeInt(
  buffer: Buffer,
  value: number &
    Brand<"NonNaN"> &
    Brand<"Finite"> &
    Brand<"Int"> &
    Brand<"NonNegative">,
): void;
```

Defined in: [packages/common/src/Bytes.ts:319](https://github.com/evoluhq/evolu/blob/dd96d79f1dbe9a49fa12ce8e0aa7d3d0177795ca/packages/common/src/Bytes.ts#L319)

Encodes a non-negative integer into a variable-length integer format. It's
more efficient than encoding via [encodeNumber](https://evolu.dev/docs/api-reference/common/Bytes/functions/encodeNumber).

https://en.wikipedia.org/wiki/Variable-length_quantity