/** * Container component for displaying cardPanel in a dynamic grid * allows you to configure the width, height, and position of the cardPanel, which are its descendants * * @author Brauer Ilya * @date 2020-04-15 */ import * as React from 'react'; import * as GridLayout from 'react-grid-layout'; import 'react-grid-layout/css/styles.css'; import 'react-resizable/css/styles.css'; declare type IProps = { isDraggable?: boolean; isResizable?: boolean; onLayoutChange?: (layout: GridLayout.Layout[]) => void; draggableHandle?: string; layout?: GridLayout.Layout[]; margin?: [number, number]; cols?: number; } & Partial; declare const defaultProps: { rowHeight: number; isDraggable: boolean; isResizable: boolean; }; declare type DefaultProps = Readonly; interface IState { width: number; } export declare type PanelGridLayout = GridLayout.Layout; export declare type GridActionCallback = GridLayout.ItemCallback; export declare class CardPanelGrid extends React.PureComponent { static defaultProps: { rowHeight: number; isDraggable: boolean; isResizable: boolean; }; gridLayoutContainer: React.RefObject; state: { width: number; }; constructor(props: IProps); componentDidMount(): void; componentDidUpdate(prevProps: Readonly, prevState: Readonly, snapshot?: any): void; componentWillUnmount(): void; onWindowResize: () => void; calculateGridWidth(prevWidth: number): void; render(): JSX.Element; } export {};