export interface MockTreeNode {
    text: string;
    type?: string;
    startPosition?: {
        row: number;
        column: number;
    };
    endPosition?: {
        row: number;
        column: number;
    };
    children?: MockTreeNode[];
}
export interface MockTree {
    rootNode: MockTreeNode;
}
export interface MockCapture {
    name: string;
    node: MockTreeNode;
}
export interface MockParser {
    parse: (input: string) => MockTree | null;
}
export interface MockQuery {
    captures: (node: MockTreeNode) => MockCapture[];
}
export interface CreateMockParserOptions {
    tree?: MockTree | null;
    parseImpl?: (input: string) => MockTree | null;
}
export interface CreateMockQueryOptions {
    captures?: MockCapture[];
    capturesImpl?: (node: MockTreeNode) => MockCapture[];
}
export declare function createMockCapture(name: string, text: string): MockCapture;
export declare function createMockTreeSitterCaptures(items: Array<{
    name: string;
    text: string;
}>): MockCapture[];
export declare function createMockTree(rootNodeText?: string): MockTree;
export declare function createMockTreeSitterParser(options?: CreateMockParserOptions): MockParser;
export declare function createMockTreeSitterQuery(options?: CreateMockQueryOptions): MockQuery;
export interface CreateMockLanguageConfigOptions {
    extensions?: string[];
    wasmFile?: string;
    queryText?: string;
    parser?: MockParser | null;
    query?: MockQuery | null;
    captures?: MockCapture[];
    tree?: MockTree | null;
}
export declare function createMockLanguageConfig(options?: CreateMockLanguageConfigOptions): {
    extensions: string[];
    wasmFile: string;
    queryText: string;
    parser: MockParser | null;
    query: MockQuery | null;
};
