export type SyntaxNode = { readonly type: string; readonly text: string; readonly startPosition: { row: number; column: number; }; readonly endPosition: { row: number; column: number; }; readonly startIndex: number; readonly endIndex: number; readonly namedChildren: SyntaxNode[]; readonly children: SyntaxNode[]; readonly childCount: number; readonly namedChildCount: number; readonly parent?: SyntaxNode | null; childForFieldName(name: string): SyntaxNode | null; descendantForPosition?(pos: { row: number; column: number; }): SyntaxNode; }; export type SyntaxTree = { readonly rootNode: SyntaxNode; }; export declare function rootOf(tree: unknown): SyntaxNode; export declare function line1Based(node: SyntaxNode): number; export declare function walk(node: SyntaxNode, visitor: (n: SyntaxNode) => boolean | void): void; export declare function findAll(node: SyntaxNode, predicate: (n: SyntaxNode) => boolean): SyntaxNode[]; export declare function firstNamedChildOfType(node: SyntaxNode, type: string): SyntaxNode | null; export declare function namedChildrenOfType(node: SyntaxNode, type: string): SyntaxNode[]; export declare function childText(node: SyntaxNode, fieldName: string): string | null;