UbjsonEncoder.d.ts 1.3 KB

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