export interface XFormula { version: 1; expression: string; } export type FormulaMinorVersion = '1.0' | '1.1' | '1.2'; export type FormulaFeature = 'nested_path' | 'array_index' | 'array_wildcard' | 'relative_path' | 'root_path' | 'context_token' | 'array_function' | 'bracket_notation'; export interface FormulaAnalysis { minVersion: FormulaMinorVersion; features: FormulaFeature[]; dependencies: string[]; } export type PathSegment = { type: 'property'; name: string; } | { type: 'index'; value: number; } | { type: 'wildcard'; } | { type: 'parent'; } | { type: 'root'; } | { type: 'token'; name: string; }; export interface ParsedPath { original: string; segments: PathSegment[]; isAbsolute: boolean; isRelative: boolean; } export interface PathValidationResult { isValid: boolean; error?: string; segments?: PathSegment[]; } export interface FormulaContext { [fieldName: string]: unknown; } export type FormulaResult = number | string | boolean | null; export interface ArrayLevelContext { index: number; length: number; prev: unknown; next: unknown; } export interface ArrayContext { levels: ArrayLevelContext[]; } //# sourceMappingURL=types.d.ts.map