export declare const SEP = "\u02D0"; export declare const BJSON_UNDEFINED: string; export declare const BJSON_FUNCTION: string; declare type Formatter = { name: string; tsName(): string; getParams(value: Type): string[]; hydrate(...str: string[]): Type; match(value: unknown): undefined | Type; jsonReplacer?: string; }; export declare class Serializer { static SEP: string; name: string; sep: string; blockStart: string; blockEnd: string; paramSep: string; formatter: Formatter; constructor(formatter: Formatter); stringify(value: unknown): string | undefined; parse(value: string): { value: Type; } | undefined; } export declare class BJSONConstructor { static serializers: Serializer[]; serializers: Serializer[]; constructor(options?: { extraSerializers?: Serializer[]; }); stringify: (value: any, options?: StringifyOptions & { handler?: ((utils: StringifyOptions & { self: BJSONConstructor; value: any; serializer?: Serializer | undefined; }) => string | undefined) | undefined; }) => string; parse: (input: string) => any; getSerializer(value: string): Serializer | undefined; tsName(value: string): string | undefined; } export declare type StringifyDefaultHandler = (payload: { value: any; options: StringifyOptions; }) => string | undefined; export declare type StringifyOptions = { defaultHandler?: StringifyDefaultHandler; quoteValues?: (str: string | number | boolean, info: { key: string | number | undefined; }) => string; quoteKeys?: (str: string) => string; key?: string | number; }; export declare function stringify(value: any, options?: StringifyOptions): string | undefined; export declare const BJSON: BJSONConstructor; export {};