import { ProjectItem } from './da';
import { i18n } from 'i18next';
interface Props {
    /**
     * project id on admin ebig
     * */
    pid: string;
    /**
     * api link
     * */
    url: string;
    fileUrl: string;
    imgUrlId: string;
    onInvalidToken?: () => void;
    children?: React.ReactNode;
    theme?: "light" | "dark";
    /** default true */
    loadResources?: boolean;
    loadingView?: React.ReactNode;
}
interface EbigContextProps {
    i18n: i18n;
    theme: "light" | "dark";
    setTheme: (theme: "light" | "dark") => void;
    projectData?: {
        [k: string]: any;
    };
    userData?: {
        [k: string]: any;
    };
    setUserData: (data?: {
        [k: string]: any;
    }) => void;
    globalData?: {
        [k: string]: any;
    };
    setGlobalData: (data?: {
        [k: string]: any;
    }) => void;
    functions?: {
        [k: string]: any;
    };
    setFunctions: (data: {
        [k: string]: any;
    }[]) => void;
}
export declare const EbigProvider: ({ loadResources, ...props }: Props) => import("react/jsx-runtime").JSX.Element;
export declare const useEbigContext: () => EbigContextProps;
export declare const initializeProject: (domain: string, props: {
    pid?: string;
    domain?: string;
}) => Promise<ProjectItem>;
export {};
//# sourceMappingURL=EbigProvider.d.ts.map