import Handsontable from 'handsontable/base'; import React from 'react'; import { ConnectedComponent } from 'react-redux'; /** * Type of the editor component's ReactElement. */ export declare type HotEditorElement = React.ReactElement<{}, ConnectedComponent | any>; /** * Type of the identifier under which the cached editor components are stored. */ export declare type EditorScopeIdentifier = 'global' | number; /** * Type of the cache map for the Handsontable editor components. */ export declare type HotEditorCache = Map>; /** * Interface for the `prop` of the HotTable component - extending the default Handsontable settings with additional, * component-related properties. */ export interface HotTableProps extends Handsontable.GridSettings { id?: string; className?: string; style?: React.CSSProperties; settings?: Handsontable.GridSettings; children?: React.ReactNode; } /** * Interface for the props of the component-based editors. */ export interface HotEditorProps { "hot-editor": any; id?: string; className?: string; style?: React.CSSProperties; } /** * Properties related to the HotColumn architecture. */ export interface HotColumnProps extends Handsontable.ColumnSettings { settings?: Handsontable.ColumnSettings; _componentRendererColumns?: Map; _emitColumnSettings?: (columnSettings: Handsontable.ColumnSettings, columnIndex: number) => void; _columnIndex?: number; _getChildElementByType?: (children: React.ReactNode, type: string) => React.ReactElement; _getRendererWrapper?: (rendererNode: React.ReactElement) => typeof Handsontable.renderers.BaseRenderer; _getEditorClass?: (editorElement: React.ReactElement, editorColumnScope: EditorScopeIdentifier) => typeof Handsontable.editors.BaseEditor; _getEditorCache?: () => HotEditorCache; _getOwnerDocument?: () => Document; children?: React.ReactNode; }