import React from 'react';
import { WidgetTypes } from '@cromwell/core-frontend';
import { TCmsDashboardLayout, TCmsStats, TProductReview } from '@cromwell/core';
export declare const getThirdPartyWidget: <T extends keyof WidgetTypes>(widgetName: T, widgetProps?: WidgetTypes[T]) => JSX.Element[];
export declare const useDashboard: () => {
    layout: TCmsDashboardLayout;
    isLoadingLayout: boolean;
    isLoading: boolean;
    stats: TCmsStats;
    reviews: TProductReview[];
    getStats: () => Promise<void>;
    getReviews: () => Promise<void>;
    deleteWidget: (widgetKey: string) => Promise<void>;
    getLayout: () => Promise<void>;
    setLayout: React.Dispatch<React.SetStateAction<TCmsDashboardLayout>>;
    addWidget: (widgetKey: string) => Promise<void>;
    widgetList: {
        id: string;
        title: string;
    }[];
    saveLayout: () => Promise<void>;
    resetToSnapshot: () => Promise<void>;
    isLoadingReviews: boolean;
    isLoadingStats: boolean;
    customWidgets: JSX.Element[];
    cstore: import("@cromwell/core-frontend/dist/helpers/CStore").CStore;
};
export declare const DashboardContextProvider: ({ children }: {
    children: any;
}) => JSX.Element;
