import type { EngineRuntimeState } from '../engine/runtime-state.js';
import type { EngineRuntimeColumnStoreService } from '../engine/services/runtime-column-store-service.js';
import { type EngineCounters } from '../perf/engine-counters.js';
import { type LookupColumnOwner, type LookupColumnOwnerWrite, type LookupColumnOwnerWriteOptions } from '../engine/services/lookup-column-owner.js';
export interface ColumnIndexStore {
    readonly reset: () => void;
    readonly getLookupColumnOwner: (request: {
        sheetName: string;
        col: number;
    }) => LookupColumnOwner | undefined;
    readonly invalidateColumn: (request: {
        sheetName: string;
        col: number;
    }) => void;
    readonly recordLiteralWrite: (request: LookupColumnOwnerWrite & {
        sheetName: string;
        col: number;
    }, options?: LookupColumnOwnerWriteOptions) => void;
}
export declare function createColumnIndexStore(args: {
    readonly state: Pick<EngineRuntimeState, 'workbook' | 'strings'> & {
        counters?: EngineCounters;
    };
    readonly runtimeColumnStore: EngineRuntimeColumnStoreService;
}): ColumnIndexStore;
