XdrEncoder.d.ts 1.1 KB

1234567891011121314151617181920212223242526272829
  1. import type { IWriter, IWriterGrowable } from '@jsonjoy.com/buffers/lib';
  2. import type { BinaryJsonEncoder } from '../types';
  3. export declare class XdrEncoder 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. writeVoid(): void;
  10. writeNull(): void;
  11. writeBoolean(bool: boolean): void;
  12. writeInt(int: number): void;
  13. writeUnsignedInt(uint: number): void;
  14. writeHyper(hyper: number | bigint): void;
  15. writeUnsignedHyper(uhyper: number | bigint): void;
  16. writeFloat(float: number): void;
  17. writeDouble(double: number): void;
  18. writeQuadruple(quad: number): void;
  19. writeOpaque(data: Uint8Array): void;
  20. writeVarlenOpaque(data: Uint8Array): void;
  21. writeStr(str: string): void;
  22. writeArr(arr: unknown[]): void;
  23. writeObj(obj: Record<string, unknown>): void;
  24. writeNumber(num: number): void;
  25. writeInteger(int: number): void;
  26. writeUInteger(uint: number): void;
  27. writeBin(buf: Uint8Array): void;
  28. writeAsciiStr(str: string): void;
  29. }