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
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 {};
|