import { ReactNode, ComponentType } from "react";
export type ModalPage = {
    key: string;
    content: ReactNode;
    showTitle?: boolean;
    showTurnkeyBranding?: boolean;
    preventBack?: boolean;
    onClose?: () => void;
    /** A context provider component that wraps all pages in the modal stack. Only applies from the root page. */
    contextProvider?: ComponentType<{
        children: ReactNode;
    }>;
};
export type ModalContextType = {
    openModal: (page: ModalPage) => void;
    openSheet: (page: ModalPage) => void;
    pushPage: (page: ModalPage) => void;
    popPage: () => void;
    popPages: (count: number) => void;
    closeModal: () => void;
    closeSheet: () => void;
    modalStack: ModalPage[];
    sheet: ModalPage | null;
    isMobile: boolean;
    screenWidth: number;
};
export declare const ModalContext: import("react").Context<ModalContextType | undefined>;
export declare function ModalProvider({ children }: {
    children: ReactNode;
}): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=Provider.d.ts.map