import type { GridDescriptor, GridId, OperatorAction, OperatorEffect, OperatorKeyEvent, SpreadsheetOperatorConfig, SpreadsheetOperatorListener, SpreadsheetOperatorState } from "./types.js";
export type SpreadsheetOperator = {
    getState(): SpreadsheetOperatorState;
    dispatch(action: OperatorAction): {
        state: SpreadsheetOperatorState;
        effects: readonly OperatorEffect[];
    };
    handleKeyDown(event: OperatorKeyEvent): boolean;
    registerGrid(descriptor: GridDescriptor): void;
    unregisterGrid(gridId: GridId): void;
    getGrid(gridId: GridId): GridDescriptor | undefined;
    subscribe(listener: SpreadsheetOperatorListener): () => void;
};
export declare function createSpreadsheetOperator(config?: SpreadsheetOperatorConfig): SpreadsheetOperator;
//# sourceMappingURL=create-operator.d.ts.map