zon-format
Version:
ZON: The most token-efficient serialization format for LLMs - beats CSV, TOON, JSON, and all competitors
64 lines (63 loc) • 1.71 kB
TypeScript
/**
* Format Conversion Utilities
*
* Convert between ZON, JSON, and Binary formats
*/
export interface ConversionOptions {
/** Pretty print output (for text formats) */
pretty?: boolean;
/** Include metadata in conversion */
includeMetadata?: boolean;
/** Target format version */
targetVersion?: string;
}
/**
* Convert JSON to ZON text format
*/
export declare function jsonToZon(json: string | object, options?: ConversionOptions): string;
/**
* Convert ZON text to JSON
*/
export declare function zonToJson(zon: string, options?: ConversionOptions): string;
/**
* Convert ZON text to Binary ZON
*/
export declare function zonToBinary(zon: string): Uint8Array;
/**
* Convert Binary ZON to ZON text
*/
export declare function binaryToZon(binary: Uint8Array): string;
/**
* Convert JSON to Binary ZON
*/
export declare function jsonToBinary(json: string | object): Uint8Array;
/**
* Convert Binary ZON to JSON
*/
export declare function binaryToJson(binary: Uint8Array, options?: ConversionOptions): string;
/**
* Batch converter for multiple files
*/
export declare class BatchConverter {
private conversions;
/**
* Queue a conversion
*/
add(data: any, from: 'json' | 'zon' | 'binary', to: 'json' | 'zon' | 'binary'): void;
/**
* Execute all queued conversions
*/
convert(): any[];
/**
* Convert a single item
*/
private convertSingle;
/**
* Clear all queued conversions
*/
clear(): void;
}
/**
* Auto-detect format and convert
*/
export declare function autoConvert(input: string | Uint8Array, targetFormat: 'json' | 'zon' | 'binary', options?: ConversionOptions): string | Uint8Array;