///
export interface ModalOptions {
title?: string;
content: React.ReactNode;
width?: number;
height?: number;
measurement?: '%' | 'px';
}
export type ModalInstance = {
id: string;
options: ModalOptions;
anchorEl: HTMLElement;
resolve: () => void;
};
export type OpenModalFn = (options: ModalOptions) => Promise;
export type CloseModalFn = (modalId?: string) => void;
type ModalSettings = {
openModal: OpenModalFn;
closeModal: CloseModalFn;
closeAllModals: () => void;
getModalStack: () => ModalInstance[];
isModalOpen: (modalId: string) => boolean;
};
export declare const ModalContext: import("react").Context;
/**
* Hook to get the modal context (modal API)
*
* @returns The modal context
* @internal
*/
export declare const useModalContext: () => ModalSettings | null;
export {};