cesr
Version:
[](https://www.npmjs.com/package/cesr) [](https://github.com/lenkan/cesr-js/blob/main/LICENSE)
93 lines (92 loc) • 3.48 kB
TypeScript
export interface CounterInit {
code: string;
count: number;
}
export interface Counter extends CounterInit {
text: string;
}
export interface GenusInit {
genus: string;
major: number;
minor?: number;
}
export interface Genus extends GenusInit {
minor: number;
}
export interface IndexerInit {
code: string;
raw?: Uint8Array;
index?: number;
ondex?: number;
}
export interface Indexer extends IndexerInit {
text: string;
}
export interface MatterInit {
code: string;
soft?: string;
raw: Uint8Array;
}
export interface Matter extends MatterInit {
code: string;
text: string;
}
export interface MessageVersionInit {
protocol?: string;
major?: number;
minor?: number;
size?: number;
/**
* The serialization kind
*/
kind?: string;
/**
* Use the legacy version string format
*/
legacy?: boolean;
}
export type MessageVersion = Required<MessageVersionInit>;
export type MatterDigest = "blake3_256" | "blake3_512";
export type MatterSignature = "ed25519" | "secp256k1";
export declare function encodeIndexedSignature(alg: MatterSignature, raw: Uint8Array, index: number): string;
export declare function encodeMatter(raw: MatterInit): string;
export declare function encodeMap(data: Record<string, unknown>): string;
export declare function encodeDate(date: Date): string;
export declare function encodeTag(tag: string): string;
export declare function encodeString(txt: string): string;
export declare function encodeInt(value: number): string;
export declare function encodeNumber(value: number): string;
export declare function encodeSignature(alg: MatterSignature, raw: Uint8Array): string;
export declare function encodeDigest(alg: MatterDigest, raw: Uint8Array): string;
export declare function encodeGenus(genus: GenusInit): string;
export declare function encodeCounter(raw: CounterInit): string;
export declare function encodeAttachmentsV1(count: number): string;
export declare function encodeAttachmentsV2(count: number): string;
export declare function encodeIndexer(frame: IndexerInit): string;
export declare function encodeVersionString(init: MessageVersionInit): string;
export declare function encodeMessage<T extends Record<string, unknown>>(body: T, init?: MessageVersionInit): string;
export declare function decodeGenus(input: string): Genus;
export declare function decodeMatter(input: string | Uint8Array): Matter;
export declare function decodeCounter(input: string | Uint8Array): Counter;
export declare function decodeVersionString(input: string | Uint8Array): Required<MessageVersionInit>;
export declare const encoding: {
encodeIndexedSignature: typeof encodeIndexedSignature;
encodeMap: typeof encodeMap;
encodeMatter: typeof encodeMatter;
encodeDate: typeof encodeDate;
encodeString: typeof encodeString;
encodeNumber: typeof encodeNumber;
encodeSignature: typeof encodeSignature;
encodeDigest: typeof encodeDigest;
encodeGenus: typeof encodeGenus;
encodeCounter: typeof encodeCounter;
encodeAttachmentsV1: typeof encodeAttachmentsV1;
encodeAttachmentsV2: typeof encodeAttachmentsV2;
encodeIndexer: typeof encodeIndexer;
encodeVersionString: typeof encodeVersionString;
encodeMessage: typeof encodeMessage;
decodeGenus: typeof decodeGenus;
decodeMatter: typeof decodeMatter;
decodeCounter: typeof decodeCounter;
decodeVersionString: typeof decodeVersionString;
};