import { type CloseEventReason } from '../../../types'; /** * айдишка модалки/поппера/тултипа */ type PopId = string; declare class BackdropStackManager { private stack; /** * сохраняем информацию о том какой был предыдущий вызов pop, * нужен для предотвращения синхронного закрытия при последовательности 'blur' и 'backdropClick' в рамках одного клика */ private previousPopInfo; /** * крайняя айдишка клика по странице */ private currentPointerId; constructor(); /** * метод проверки на конфликт причины закрытия с предыдущим */ private checkOn; /** * метод генерации случайной айдишки */ generateID: () => string; /** * форс метод для удалении подписанного компонента из очереди, * может быть полезно при массовом анмаунте компонентов */ remove: (id: PopId) => void; /** * метод добавления в стек */ push: (id: PopId) => void; /** * метод для запроса на выход из очереди, * если все ок, то вернется true, что означает разрешение на выход и компонент будет вычеркнут из очереди, * соответственно возврат false означает запрет, и компонент остается в очереди */ pop: (id: PopId, reason?: CloseEventReason) => boolean; } export declare const backdropStackManager: BackdropStackManager; export {};