import { ComponentClass, ComponentType, FunctionComponent } from "react"; interface DashboardWidget { name: string; type?: '__experimental_group'; component: FunctionComponent | ComponentClass; layout?: LayoutConfig; widgets?: DashboardWidget[]; } type LayoutSize = 'auto' | 'small' | 'medium' | 'large' | 'full'; interface LayoutConfig { width?: LayoutSize; height?: LayoutSize; } interface DashboardConfig { widgets: DashboardWidget[]; layout?: LayoutConfig; } interface DashboardWidgetProps { header?: string; children: React.ReactNode; footer?: React.ReactNode; ref?: React.Ref; } declare function DashboardWidgetContainer(props: DashboardWidgetProps): import("react").JSX.Element; declare function projectInfoWidget(config?: { layout?: LayoutConfig; }): DashboardWidget; declare function projectUsersWidget(config?: { layout?: LayoutConfig; }): DashboardWidget; declare function sanityTutorialsWidget(config?: { layout?: LayoutConfig; }): DashboardWidget; interface DashboardPluginConfig { /** * Dashboard tool title */ title?: string; /** * Dashboard tool name (used in url path) */ name?: string; /** * Dashboard tool icon */ icon?: ComponentType; widgets?: DashboardWidget[]; /** * Will be used for widgets that do not define a layout directly. */ defaultLayout?: LayoutConfig; } declare const dashboardTool: import("sanity").Plugin; export { DashboardConfig, type DashboardPluginConfig, DashboardWidget, DashboardWidgetContainer, LayoutConfig, LayoutSize, dashboardTool, projectInfoWidget, projectUsersWidget, sanityTutorialsWidget }; //# sourceMappingURL=index.d.ts.map