JsonEncoder.d.ts 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import type { IWriter, IWriterGrowable } from '@jsonjoy.com/util/lib/buffers';
  2. import type { BinaryJsonEncoder, StreamingBinaryJsonEncoder } from '../types';
  3. export declare class JsonEncoder implements BinaryJsonEncoder, StreamingBinaryJsonEncoder {
  4. readonly writer: IWriter & IWriterGrowable;
  5. constructor(writer: IWriter & IWriterGrowable);
  6. encode(value: unknown): Uint8Array;
  7. writeUnknown(value: unknown): void;
  8. writeAny(value: unknown): void;
  9. writeNull(): void;
  10. writeUndef(): void;
  11. writeBoolean(bool: boolean): void;
  12. writeNumber(num: number): void;
  13. writeInteger(int: number): void;
  14. writeUInteger(uint: number): void;
  15. writeFloat(float: number): void;
  16. writeBin(buf: Uint8Array): void;
  17. writeStr(str: string): void;
  18. writeAsciiStr(str: string): void;
  19. writeArr(arr: unknown[]): void;
  20. writeArrSeparator(): void;
  21. writeObj(obj: Record<string, unknown>): void;
  22. writeObjSeparator(): void;
  23. writeObjKeySeparator(): void;
  24. writeStartStr(): void;
  25. writeStrChunk(str: string): void;
  26. writeEndStr(): void;
  27. writeStartBin(): void;
  28. writeBinChunk(buf: Uint8Array): void;
  29. writeEndBin(): void;
  30. writeStartArr(): void;
  31. writeArrChunk(item: unknown): void;
  32. writeEndArr(): void;
  33. writeStartObj(): void;
  34. writeObjChunk(key: string, value: unknown): void;
  35. writeEndObj(): void;
  36. }