import { JSXElementConstructor } from "react"; export interface ModalState { id: string; args?: Record; visible?: boolean; delayVisible?: boolean; keepMounted?: boolean; } export interface ModalStore { [key: string]: ModalState; } export interface ModalAction { type: string; payload: { id: string; args?: Record; states?: Record; }; } export interface ModalCallbacks { [modal: string]: { resolve: (value: unknown) => void; reject: (reason: unknown) => void; promise: Promise; }; } export type ModalArgs = T extends keyof JSX.IntrinsicElements | JSXElementConstructor ? Omit, "id"> : Record; export interface ModalHandler> extends ModalState { visible: boolean; keepMounted: boolean; show: (args?: Props) => Promise; hide: () => Promise; onOpenChange: (visible: boolean) => void; resolve: (value?: unknown) => void; reject: (reason?: unknown) => void; remove: () => void; setStates: (states: Record) => void; resolveHide: (args?: unknown) => void; } export interface ModalHocProps { id: string; defaultVisible?: boolean; keepMounted?: boolean; } //# sourceMappingURL=types.d.ts.map