import { ComponentRef } from "@angular/core"; import { Subject, Subscription } from "rxjs"; import { SafeHTMLElement } from "../utilities/type/type"; import { OverlayBase } from "./overlay"; import { OriginPosition, OveralyResizeStrategy, OverlayPositionEnum, OverlayScrollStrategy } from "./overlay.enum"; export interface OverlayPosition { position: OverlayPositionEnum; offsetX?: number; offsetY?: number; originX?: OriginPosition; originY?: OriginPosition; scrollStrategy?: OverlayScrollStrategy; resizeStrategy?: OveralyResizeStrategy; } export interface Overlay { overlayContainer: HTMLElement; componentRef: ComponentRef; subscriptions: Subscription[]; backdropElement?: SafeHTMLElement; overlayBase: OverlayBase; isDetached?: boolean; } export interface CreateOption { backdrop?: boolean; closeBackDropClick?: boolean; observable?: Subject; } export interface OverlayStatus { position: OverlayPositionEnum; posLeft: number; posTop: number; } export interface OverlayOption { position?: OverlayPosition; closeOverlayOnClick?: boolean; } export interface BzGlobalOverlayStyle { alignItmes: string; justifyContent: string; }