You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
925 B

import type { Ref } from 'vue';
interface Instance {
closeOnClickModal: Ref<boolean>;
closeOnPressEscape: Ref<boolean>;
close: () => void;
handleClose?: () => void;
handleAction?: (action: string) => void;
}
declare type StackFrame = {
id: string;
zIndex: number;
modalClass: string;
};
interface PopupManager {
getInstance: (id: string) => Instance;
zIndex: number;
globalInitialZIndex: number;
getInitialZIndex: () => number;
modalDom?: HTMLElement;
modalFade: boolean;
modalStack: StackFrame[];
nextZIndex: () => number;
register: (id: string, instance: Instance) => void;
deregister: (id: string) => void;
doOnModalClick: () => void;
openModal: (id: string, zIndex: number, dom: HTMLElement, modalClass: string, modalFade: boolean) => void;
closeModal: (id: string) => void;
}
export declare const PopupManager: PopupManager;
export {};