import { BaseCoder } from "../coder/base"; import { BaseId } from "../id/base"; export interface IdClass { new (bytes: Uint8Array): T; readonly name: string; generate(...args: unknown[]): T; MIN(...args: unknown[]): T; MAX(...args: unknown[]): T; } export interface EncodableId extends BaseId { toCanonical(): string; toRaw(): string; } export declare class IdFactory { private _id; private _canonical_coder; private _raw_coder; constructor({ id, canonical_coder, raw_coder, }: { id: IdClass; canonical_coder: BaseCoder; raw_coder: BaseCoder; }); get name(): string; get type(): IdClass; construct(bytes: Uint8Array): T & EncodableId; generate(...args: unknown[]): T & EncodableId; MIN(...args: unknown[]): T & EncodableId; MAX(...args: unknown[]): T & EncodableId; fromCanonical(canonical: string): T & EncodableId; fromCanonicalTrusted(canonical: string): T & EncodableId; fromRaw(raw: string): T & EncodableId; fromRawTrusted(raw: string): T & EncodableId; toCanonical(id: T): string; toRaw(id: T): string; isCanonical(canonical: string): boolean; isRaw(raw: string): boolean; } //# sourceMappingURL=id.d.ts.map