import type { EntityMap } from './types'; export declare const ROW_COUNT = 10; export interface Cell { id: string; /** * Children are dependencies cellIds, once the cell is updated, all of the children needs to be updated as well. * * Should be using Set, but redux does not work with set b/c set is not serializable. https://github.com/reduxjs/redux-toolkit/issues/3197 */ children: Record; /** Displayed value of cell. if formula exists and the edit mode is on cell, displayed value is formula */ computedValue: string; /** null means cell is not a formula */ formula: string | null; } export interface CellsState { cells: EntityMap; /** The columnLabels and cellLabelMatrix property is not part of the state, as it does not change and can probably be derived from the cell IDs. However, they are included in the state for easier access and to provide meta information for the UI. */ columnLabels: string[]; /** Record of columnLabel to cellId, to be later used in selectCellMatrix */ cellLabelMatrix: Record[]; } export declare const initialState: CellsState; export declare const name: "cells", reducer: import("redux").Reducer; export declare const cellChanged: import("@reduxjs/toolkit").ActionCreatorWithPayload<{ id: string; value: string; }, "cells/cellChanged">; export declare const selectColumnLabels: import("reselect").Selector<{ cells: CellsState; }, string[], []> & { unwrapped: (state: CellsState) => string[]; }; export declare const selectCellMatrix: ((state: { cells: CellsState; }) => Record[]) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; } & { resultFunc: (resultFuncArgs_0: Record[], resultFuncArgs_1: EntityMap) => Record[]; memoizedResultFunc: ((resultFuncArgs_0: Record[], resultFuncArgs_1: EntityMap) => Record[]) & { clearCache: () => void; resultsCount: () => number; resetResultsCount: () => void; }; lastResult: () => Record[]; dependencies: [import("reselect").Selector<{ cells: CellsState; }, Record[], []> & { unwrapped: (state: CellsState) => Record[]; }, import("reselect").Selector<{ cells: CellsState; }, EntityMap, []> & { unwrapped: (state: CellsState) => EntityMap; }]; recomputations: () => number; resetRecomputations: () => void; dependencyRecomputations: () => number; resetDependencyRecomputations: () => void; } & { memoize: typeof import("reselect").weakMapMemoize; argsMemoize: typeof import("reselect").weakMapMemoize; }; //# sourceMappingURL=cellsSlice.d.ts.map