import { ForwardRefExoticComponent, ReactNode, RefAttributes } from 'react';
import { Styles } from '../../../tasty';
import { CubeLayoutProps } from './Layout';
import { LayoutBlock } from './LayoutBlock';
import { LayoutContent } from './LayoutContent';
import { LayoutFlex } from './LayoutFlex';
import { LayoutFooter } from './LayoutFooter';
import { LayoutGrid } from './LayoutGrid';
import { LayoutHeader } from './LayoutHeader';
import { LayoutPane } from './LayoutPane';
import { LayoutPanel } from './LayoutPanel';
import { LayoutPanelHeader } from './LayoutPanelHeader';
import { LayoutToolbar } from './LayoutToolbar';
export interface CubeGridLayoutProps extends CubeLayoutProps {
    /** Grid template columns */
    columns?: Styles['gridColumns'];
    /** Grid template rows */
    rows?: Styles['gridRows'];
    /** Grid template shorthand */
    template?: Styles['gridTemplate'];
    children?: ReactNode;
}
interface GridLayoutComponent extends ForwardRefExoticComponent<CubeGridLayoutProps & RefAttributes<HTMLDivElement>> {
    Toolbar: typeof LayoutToolbar;
    Header: typeof LayoutHeader;
    Footer: typeof LayoutFooter;
    Content: typeof LayoutContent;
    Block: typeof LayoutBlock;
    Flex: typeof LayoutFlex;
    Grid: typeof LayoutGrid;
    Pane: typeof LayoutPane;
    Panel: typeof LayoutPanel;
    PanelHeader: typeof LayoutPanelHeader;
}
declare const GridLayout: GridLayoutComponent;
export { GridLayout };
