import type { RefObject, HTMLAttributes } from "react";
import type { ZECardProps } from "../ZECard/ZECard.types";
declare type Layout = {
    i?: string;
    x?: number;
    y?: number;
    w?: number;
    h?: number;
    minW?: number;
    maxW?: number;
    minH?: number;
    maxH?: number;
    defaultH?: number;
    isDraggable?: boolean;
    isResizable?: boolean;
};
export declare type ZEDashboardItem = {
    id: string;
    layout?: Layout;
    cardProps: ZECardProps;
};
export declare type ZEDashboardInstance = {
    getDashboardState?: (data: ZEDashboardItem[]) => Partial<ZEDashboardItem>[];
    setDashboardItem?: (id: string, params: Partial<ZEDashboardItem>) => void;
};
export declare type ZEDashboardProps = {
    data: ZEDashboardItem[];
    cardsOnly?: boolean;
    width?: number;
    className?: string;
    editable?: boolean;
    cols?: number;
    rowHeight?: number;
    defaultH?: number;
    useDefaultHeightFromRepresentation?: boolean;
    margin?: [number, number];
    containerPadding?: [number, number];
    resizeHandles?: Array<"s" | "w" | "e" | "n" | "sw" | "nw" | "se" | "ne">;
    resizeHandle?: React.ReactElement;
    onDataChange?: (data: ZEDashboardItem[]) => void;
    dashboardRef?: RefObject<ZEDashboardInstance>;
} & HTMLAttributes<HTMLDivElement>;
export {};
