API reference › @evolu/common › Bytes › ByteLength
type ByteLength = number &
import("./Brand.ts").Brand<"NonNaN"> &
import("./Brand.ts").Brand<"Finite"> &
import("./Brand.ts").Brand<"Int"> &
import("./Brand.ts").Brand<"NonNegative"> &
import("./Brand.ts").Brand<"ByteLength">;
Defined in: packages/common/src/Bytes.ts:1424
Non-negative safe integer number of bytes.
The canonical unit for sizes, as milliseconds are for time. APIs accept ByteSize and normalize it with byteSizeToByteLength. Parse text such as an environment variable with ByteLengthFromString. Negative zero is rejected so zero has one canonical representation.
Example
import { assertErr, assertOk, ByteLength } from "@evolu/common";
assertOk(ByteLength.fromUnknown(0), 0);
assertOk(ByteLength.fromUnknown(1024), 1024);
assertErr(ByteLength.fromUnknown(-0));
assertErr(ByteLength.fromUnknown(-1));
assertErr(ByteLength.fromUnknown(1.5));