import React from 'react'; import GridLayout from '../GridLayout/GridLayout'; import { SetConfigItem, Settings, SettingsProps, ContextProps, Plugin } from '../../typings'; import { GlobalParams, Config, ConfigItem, ItemsStateAndParams } from '../../shared'; import { OverlayControlItem } from '../OverlayControls/OverlayControls'; interface DashKitGeneralProps { config: Config; editMode: boolean; } interface DashKitDefaultProps { onItemEdit: (item: ConfigItem) => void; onChange: (data: { config: Config; itemsStateAndParams: ItemsStateAndParams; }) => void; defaultGlobalParams: GlobalParams; globalParams: GlobalParams; itemsStateAndParams: ItemsStateAndParams; settings: SettingsProps; context: ContextProps; overlayControls?: Record; noOverlay?: boolean; draggableHandleClassName?: string; _EXPERIMENTAL_preventDoubleCompact?: boolean; } export interface DashKitProps extends DashKitGeneralProps, Partial { } declare type DashKitInnerProps = DashKitGeneralProps & DashKitDefaultProps; export declare class DashKit extends React.PureComponent { static defaultProps: DashKitDefaultProps; static registerPlugins(...plugins: Plugin[]): void; static setSettings(settings: Settings): void; static setItem({ item: setItem, namespace, config, }: { item: SetConfigItem; namespace?: string; config: Config; }): Config; static removeItem({ id, config, itemsStateAndParams, }: { id: string; config: Config; itemsStateAndParams: ItemsStateAndParams; }): { config: Config; itemsStateAndParams: ItemsStateAndParams; }; metaRef: React.RefObject; render(): JSX.Element; getItemsMeta(): any; } export {};