import { Overlay } from '@angular/cdk/overlay'; import { ComponentType } from '@angular/cdk/portal'; import { ApplicationRef, ComponentFactoryResolver, ComponentRef, Injector } from '@angular/core'; import { INotificationBaseProp } from './INotification'; import { NotificationComponent } from './notification.component'; import { NotificationPositionEnum } from './NotificationPositionEnum'; import * as i0 from "@angular/core"; export declare class NotificationService { private overlay; private injector; private componenFactoryResolver; private applicationRef; private containerOverlayRef; notifications: { [key: string]: ComponentRef[]; }; constructor(overlay: Overlay, injector: Injector, componenFactoryResolver: ComponentFactoryResolver, applicationRef: ApplicationRef); basic(position: NotificationPositionEnum, prop: INotificationBaseProp, data?: any): NotificationComponent; success(position: NotificationPositionEnum, prop: INotificationBaseProp, data?: any): NotificationComponent; warning(position: NotificationPositionEnum, prop: INotificationBaseProp, data?: any): NotificationComponent; error(position: NotificationPositionEnum, prop: INotificationBaseProp, data?: any): NotificationComponent; info(position: NotificationPositionEnum, prop: INotificationBaseProp, data?: any): NotificationComponent; show(componentType: ComponentType, position: NotificationPositionEnum, props?: { [key: string]: any; }, data?: any): T; /** * 建立 Notification 的 Container */ private createContainer; /** * 建立 Notification 元件 * @param componentType 元件的類型 * @param position 顯示位置 * @param props 資料屬性 * @param styleOptions CSS 樣式 * @returns */ private createNotification; private attachComponent; private removeNotification; private injectData; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }