export { assert, assertDefined, defined, Required, assertHasProperty, assertHasMethod, hasProperty, isObject, assertIsObject, notImplemented, zip, chunk, chunkString, pad, fill, arrayEqual, mapObject, mapToObject, mapEntries, zipObjects, assertExtendsShape, isSubclass, stringLength, mod, ByteUtils, }; declare function assert(condition: boolean, message?: string | (() => string | undefined)): asserts condition; declare function assertDefined(input: T | undefined, message?: string): asserts input is T; declare function defined(input: T | undefined, message?: string): T; declare function Required(t: T): { [P in keyof T]-?: T[P]; }; declare function isObject(obj: unknown): obj is Record; declare function assertIsObject(obj: unknown, message?: string): asserts obj is object | Function; declare function assertHasProperty(obj: unknown, key: K, message?: string): asserts obj is Record; declare function assertHasMethod(obj: unknown, key: K, message?: string): asserts obj is Record; declare function hasProperty(obj: unknown, key: K): obj is Record; declare function notImplemented(): never; declare function zip(a: T[], b: S[]): [T, S][]; declare function chunk(array: T[], size: number): T[][]; declare function chunkString(str: string, size: number): string[]; declare function pad(array: T[], size: number, value: T | (() => T)): T[]; declare function fill(size: number, value: T | (() => T)): T[]; declare function arrayEqual(aI: unknown[] | Uint8Array | ArrayBuffer, bI: unknown[] | Uint8Array | ArrayBuffer): boolean; declare function mapObject, S extends Record>(obj: T, fn: (value: T[K], key: K) => S[K]): S; declare function mapToObject(key: K, i: number) => any>(keys: Key[], fn: F): { [K in Key]: ReturnType; }; declare function zipObjects, S extends Record>(t: T, s: S): { [K in keyof T]: [T[K], S[K]]; }; declare function mapEntries, S>(obj: T, fn: (key: keyof T & string, value: T[keyof T & string]) => S): S[]; declare function assertExtendsShape>(a: object, b: B): asserts a is Record; type Constructor = new (...args: any) => T; declare function isSubclass>(constructor: unknown, base: B): constructor is B; declare function stringLength(str: string): number; declare function mod(x: bigint, p: bigint): bigint; declare const ByteUtils: { fromString(str: string): Uint8Array; toString(bytes: Uint8Array): string; fromHex(hex: string): Uint8Array; toHex(bytes: Uint8Array): string; padStart(bytes: Uint8Array, size: number, value: number): Uint8Array; padEnd(bytes: Uint8Array, size: number, value: number): Uint8Array; concat(...arrays: Uint8Array[]): Uint8Array; };