AvroEncoder.d.ts 1.1 KB

123456789101112131415161718192021222324252627282930
  1. import type { IWriter, IWriterGrowable } from '@jsonjoy.com/buffers/lib';
  2. import type { BinaryJsonEncoder } from '../types';
  3. export declare class AvroEncoder implements BinaryJsonEncoder {
  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. writeBoolean(bool: boolean): void;
  11. writeInt(int: number): void;
  12. writeLong(long: number | bigint): void;
  13. writeFloatAvro(float: number): void;
  14. writeDouble(double: number): void;
  15. writeBin(bytes: Uint8Array): void;
  16. writeStr(str: string): void;
  17. writeArr(arr: unknown[]): void;
  18. writeObj(obj: Record<string, unknown>): void;
  19. writeNumber(num: number): void;
  20. writeInteger(int: number): void;
  21. writeUInteger(uint: number): void;
  22. writeFloat(float: number): void;
  23. private writeFloatValue;
  24. writeAsciiStr(str: string): void;
  25. private writeVarIntSigned;
  26. private writeVarIntUnsigned;
  27. private writeVarLong;
  28. private encodeZigZag32;
  29. private encodeZigZag64;
  30. }