import { OnDestroy } from "@angular/core"; import { Router } from "@angular/router"; import { DrawerComponent } from "../layout/drawer/index.component"; import * as i0 from "@angular/core"; export type DrawerConfig = { title: string; subTitle?: string; mode?: "outer" | "inner"; top?: number; }; export declare const DefaultDrawerConfig: Readonly; export type DrawerShowInstance = { instance: T; result: Promise<{ type: "complete" | "hide"; data?: any; }>; }; export type DrawerChangeEvent = { type: "show" | "hide" | "complete"; cancel: () => void; detail: Record; }; export type DrawerChangeListener = (event: DrawerChangeEvent) => void; export declare class DrawerService implements OnDestroy { private router; private uniqueDrawerComponent; private resultPromiseResolveMap; private routerSubscription; private ListenChangeCbs; constructor(router: Router); get cacheKey(): string; ngOnDestroy(): void; listenRouterChange(): void; setDrawer(component: DrawerComponent): void; removeDrawer(): void; show(component: new (...args: any[]) => T, config: DrawerConfig, data?: {}): DrawerShowInstance; hide(): void; complete(data?: any): void; setConfig(config: Partial): void; deleteCache(cacheKey: string): void; onChange(callback: DrawerChangeListener): () => void; private checkChange; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }