import { ComponentRef, NgZone, TemplateRef } from '@angular/core'; import { ModalBaseService } from './modal-base.service'; import { ModalComponent } from './modal.component'; export interface ModalOption { title?: string; message?: string; status?: 'error' | 'success' | 'warning' | 'info'; atType?: 'confirm' | 'normal'; atComponent?: TemplateRef; showFooter?: boolean; showHeader?: boolean; width?: number; top?: number; closeable?: boolean; cancel?(): void; ok?(): void; atOnClose?: OnClickCallback; atOnOk?: OnClickCallback; atAfterClose?(): void; atAfterOk?(): void; } export interface ModalDataFilled { remove(): void; modal: ComponentRef; } export declare type OnClickCallback = ((instance: T) => (false | void | {}) | Promise); export declare class AtModalService { private base_modal_service; private ngZone; constructor(base_modal_service: ModalBaseService, ngZone: NgZone); modal(config?: ModalOption): Promise; success(config: ModalOption): void; error(config: ModalOption): void; warning(config: ModalOption): void; info(config: ModalOption): void; confirm(config: ModalOption): void; setConfirm(config: ModalOption): void; }