import { EventEmitter, ComponentFactory, ComponentRef } from '@angular/core'; import { DrawerComponent } from './components/drawer/drawer.component'; import { DrawerHeaderComponent } from './components/partials/header/header.component'; import { DrawerFooterComponent } from './components/partials/footer/footer.component'; export declare class DrawerBase { private _drawers; private _data; index: number; constructor(_drawers: Array, _data: DrawerInjectData, index: number); destroyed: boolean; componentRef: ComponentRef; componentInstance: DrawerComponent; headerInstances: Array; footerInstances: Array; onShow: EventEmitter; onShown: EventEmitter; onHide: EventEmitter; onHidden: EventEmitter; onOpen: EventEmitter; onDismiss: EventEmitter; onClose: Promise; onReturnValue: EventEmitter; onParamsChange: EventEmitter; onSettingsChange: EventEmitter; $onResizeRequested: EventEmitter; onResize: EventEmitter; $onHeaderListChange: EventEmitter>; $onFooterListChange: EventEmitter>; private _params; private _onClosePromise; visible: boolean; ready: boolean; readonly component: any; readonly params: DrawerParamsBase; readonly settings: DrawerSettings; readonly zindex: number; readonly content_zindex: number; readonly backdrop_zindex: number; readonly close_on_route_change: boolean; setSize(size: DrawerSettingsSize): void; setBackdrop(backdrop: DrawerSettingsBackdrop): void; setKeyboard(keyboard: DrawerSettingsKeyboard): void; setHeader(header: DrawerSettingsHeader): void; setParams(params: DrawerParamsData): void; resize(): void; sizeClass(): string; hasHeader(): boolean; hasFooter(): boolean; getOffsetHeight(): number; addHeader(header: DrawerHeaderComponent): number; removeHeader(index: number): boolean; addFooter(header: DrawerFooterComponent): number; removeFooter(index: number): boolean; open(): void; dismiss(): void; close(): void; returnValue(response: any): void; private _updateParams; private _destroy; } export declare class DrawerRefBase { drawer: DrawerBase; } export declare class DrawerParamsBase { params: DrawerParamsData; get(key: string): any; } export declare type DrawerSettingsSize = 'xs' | 'sm' | 'md' | 'lg' | 'responsive'; export interface DrawerSettingsBackdrop { onClick?: 'close' | 'dismiss' | 'none'; } export interface DrawerSettingsKeyboard { onEscape?: 'close' | 'dismiss' | 'none' | Function; onReturn?: 'close' | 'dismiss' | 'none' | Function; } export interface DrawerSettingsHeader { title: string; subtitle?: string; closable?: boolean; closeClick?: 'close' | 'dismiss'; } export interface DrawerSettings { size?: DrawerSettingsSize; keyboard?: DrawerSettingsKeyboard; backdrop?: DrawerSettingsBackdrop; header?: DrawerSettingsHeader; close_on_route_change?: boolean; } export interface DrawerInjectData { component: ComponentFactory; instance?: DrawerBase; params?: DrawerParamsData; settings?: DrawerSettings; zindex?: any; content_zindex?: any; backdrop_zindex?: any; } export interface DrawerParamsData { [key: string]: any; } export interface DrawerAlertParams { title?: string; subtitle?: string; message?: string; size?: 'xs' | 'sm' | 'md' | 'lg' | 'responsive'; buttonText?: string; } export interface DrawerConfirmParams { title?: string; subtitle?: string; message?: string; size?: 'xs' | 'sm' | 'md' | 'lg' | 'responsive'; resolveButtonText?: string; rejectButtonText?: string; } export declare type DrawerConfirmCallback = (response: boolean) => void;