@eristack/spreadsheet-operator
Version:
Headless spreadsheet keyboard operator — active-grid scope, cell navigation, Excel-like Enter/Tab editing
15 lines • 826 B
TypeScript
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