import { ASTNode } from "../ast/types.js"; export type ValuePathRoot = "result" | "bindings" | "imports"; export type ValuePathEdge = { type: "key"; value: string; } | { type: "index"; value: number; } | { type: "cellAddress"; value: { row: number; column: number; }; } | { type: "calculator"; }; export declare class SqValuePathEdge { value: ValuePathEdge; private constructor(); static fromKey(str: string): SqValuePathEdge; static fromIndex(num: number): SqValuePathEdge; static fromCalculator(): SqValuePathEdge; static fromCellAddress(row: number, column: number): SqValuePathEdge; get type(): "key" | "index" | "cellAddress" | "calculator"; isEqual(other: SqValuePathEdge): boolean; toDisplayString(): string; uid(): string; toString(): string; } export declare class SqValuePathList { paths: SqValuePath[]; constructor(paths: SqValuePath[]); difference(other: SqValuePathList | undefined): SqValuePathList; withoutRoot(): SqValuePathList; } export declare class SqValuePath { root: ValuePathRoot; edges: SqValuePathEdge[]; constructor(props: { root: ValuePathRoot; edges: SqValuePathEdge[]; }); static findByAstOffset({ ast, offset, }: { ast: ASTNode; offset: number; }): SqValuePath | undefined; isRoot(): boolean; lastItem(): SqValuePathEdge | undefined; parent(): SqValuePath | undefined; extend(edge: SqValuePathEdge): SqValuePath; uid(): string; toString(): string; hasPrefix(prefix: SqValuePath): boolean; isEqual(other: SqValuePath): boolean; slice(end: number): SqValuePath; rootPath(): SqValuePath; allPrefixPaths(): SqValuePathList; } //# sourceMappingURL=SqValuePath.d.ts.map