/** * Type definitions for TONL optimization features */ /** * Dictionary entry representing a value mapping */ export interface DictionaryEntry { original: string; encoded: string | number; frequency: number; savings: number; } /** * Dictionary for value compression */ export interface Dictionary { name: string; entries: Map; type: 'string' | 'number' | 'mixed'; encoding: 'numeric' | 'alpha' | 'optimal'; totalSavings: number; } /** * Options for dictionary encoding */ export interface DictionaryOptions { enabled: boolean; minFrequency: number; minSavings: number; maxDictSize: number; encodingStrategy: 'auto' | 'numeric' | 'alpha'; } /** * Options for numeric quantization */ export interface QuantizationOptions { enabled: boolean; defaultPrecision: number; autoDetect: boolean; preserveIntegers: boolean; columnOverrides: Map; } /** * Options for delta encoding */ export interface DeltaOptions { enabled: boolean; minSequenceLength: number; maxDeltaSize: number; detectMonotonic: boolean; } /** * Options for run-length encoding */ export interface RLEOptions { enabled: boolean; minRunLength: number; maxRunLength: number; preserveSingletons: boolean; } /** * Options for bit packing */ export interface BitPackOptions { enabled: boolean; packBooleans: boolean; packSmallIntegers: boolean; maxIntValue: number; minPackSize: number; } /** * Options for schema inheritance */ export interface SchemaInheritOptions { enabled: boolean; autoDetect: boolean; minBlockCount: number; allowPartial: boolean; versionSchemas: boolean; } /** * Options for hierarchical grouping */ export interface HierarchicalOptions { enabled: boolean; maxDepth: number; minGroupSize: number; extractCommon: boolean; flattenArrays: boolean; } /** * Options for adaptive compression */ export interface AdaptiveOptions { enabled: boolean; perBlockOptimization: boolean; strategies: OptimizationStrategy[]; } /** * Optimization strategy type */ export type OptimizationStrategy = 'dictionary' | 'delta' | 'rle' | 'column-reorder' | 'bit-pack' | 'quantize' | 'schema-inherit' | 'hierarchical' | 'tokenizer-aware'; /** * Column reordering result */ export interface ColumnReorderResult { reorderedColumns: string[]; mapping: number[]; entropies: Map; } /** * Run-length encoding run */ export interface Run { value: any; length: number; startIndex: number; } /** * Optimization analysis result */ export interface OptimizationAnalysis { recommendedStrategies: OptimizationStrategy[]; estimatedSavings: number; appliedOptimizations: string[]; warnings: string[]; } /** * Encoding hints for tokenizer-aware optimization */ export interface EncodingHints { preferSpaces: boolean; lineBreakStrategy: 'minimal' | 'readable'; delimiterPreference: string[]; quotingStrategy: 'minimal' | 'conservative'; } /** * Options for tokenizer-aware encoding */ export interface TokenizerAwareOptions { enabled: boolean; targetTokenizer: 'gpt' | 'claude' | 'gemini' | 'generic'; preferSpaces: boolean; minimalQuoting: boolean; compactNumbers: boolean; optimizeCase: boolean; } //# sourceMappingURL=types.d.ts.map