serde-json-ts/types/ser.d.ts
2025-05-27 00:27:06 -05:00

36 lines
1.2 KiB
TypeScript

import { Registry } from 'serde';
import { SerializeIterable, SerializeObject, Serializer } from 'serde/ser';
interface Stringify {
(value: any): string;
}
declare class JSONSerializeObject extends SerializeObject<string> {
private readonly stringify;
private value;
private currentKey?;
constructor(stringify: Stringify);
serializeKey(key: string): void;
serializeValue<U>(value: U): void;
end(): string;
}
declare class JSONSerializeIterable extends SerializeIterable<string> {
private readonly stringify;
private elements;
constructor(stringify: Stringify);
serializeElement<U>(value: U): void;
end(): string;
}
export declare class JSONSerializer extends Serializer<string> {
private stringify;
constructor(registry?: Registry);
serializeAny(value: any): string;
serializeBoolean(value: any): string;
serializeNumber(value: any): string;
serializeBigInt(value: any): string;
serializeString(value: any): string;
serializeSymbol(value: any): string;
serializeNull(): string;
serializeIterable(_len: number): JSONSerializeIterable;
serializeObject(_len: number): JSONSerializeObject;
serializeClass(_name: string, _len: number): JSONSerializeObject;
}
export {};