import { TemplateRef } from '@angular/core'; import * as i0 from "@angular/core"; /** Dropdown X position options for CDK overlay positioning */ export type DialogXPosition = 'start' | 'center' | 'end'; /** Dropdown Y position options for CDK overlay positioning */ export type DialogYPosition = 'top' | 'center' | 'bottom'; /** * CSS class generator for dialog component variants * Uses carefully selected DaisyUI classes that don't conflict with CDK positioning * @internal */ export declare const dialogComponent: (props?: ({ width?: "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; /** Possible width values for the dialog component */ export type DialogWidthProps = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | null | undefined; /** Animation states for the dialog */ type AnimationState = 'closed' | 'open'; /** Configuration properties for the dialog component */ export type DialogProps = { width?: DialogWidthProps; }; /** * A customizable dialog component using Angular CDK Dialog for declarative usage * * @remarks * This component provides a declarative way to create dialogs with content projection. * Uses CDK Dialog under the hood to avoid z-index issues with native dialog elements. * * @example * ```html * * Confirm Action * * Are you sure you want to proceed? * * * Confirm * Cancel * * * ``` */ export declare class DialogComponent { /** @internal Content children to detect what's projected */ private readonly titleComponent; private readonly subTitleComponent; /** @internal Signals for conditional styling */ hasTitle: import("@angular/core").WritableSignal; hasSubTitle: import("@angular/core").WritableSignal; private readonly destroyRef; private readonly contentEffect; /** * Specifies the maximum width of the dialog content * @defaultValue 'md' */ width: import("@angular/core").InputSignal; /** * Controls the horizontal positioning of the dialog (x-axis) * @defaultValue 'center' */ xPosition: import("@angular/core").InputSignal; /** * Controls the vertical positioning of the dialog (y-axis) * @defaultValue 'center' */ yPosition: import("@angular/core").InputSignal; /** * Controls the visibility state of the dialog * Supports two-way binding via Angular's model */ opened: import("@angular/core").ModelSignal; /** Event emitted when the dialog closes */ closed: import("@angular/core").OutputEmitterRef; /** Event emitted when clicking outside the dialog content */ clickOutside: import("@angular/core").OutputEmitterRef; /** * Stop event propagation for activation events * @defaultValue false */ stopPropagation: import("@angular/core").InputSignal; /** * Event emitted on click */ clicked: import("@angular/core").OutputEmitterRef; /** * Event emitted on pointer down */ pointerDown: import("@angular/core").OutputEmitterRef; /** * Event emitted on Enter keydown */ keyDownEnter: import("@angular/core").OutputEmitterRef; /** * Event emitted on Space keydown */ keyDownSpace: import("@angular/core").OutputEmitterRef; /** * Event emitted on activation (click or keyboard) */ triggered: import("@angular/core").OutputEmitterRef; /** @internal CDK Dialog service */ private readonly dialog; /** @internal CDK Overlay service for positioning */ private readonly overlay; /** @internal Reference to the dialog template */ dialogTemplate: import("@angular/core").Signal | undefined>; /** @internal Reference to the current open dialog */ private dialogRef; /** @internal Subscriptions for CDK dialog observables so we can clean up on destroy */ private subs; /** @internal Animation state signal for controlling CSS animations */ private readonly animationState; /** @internal Flag to track if we're in the process of closing */ private isClosing; /** * Computes the data-state attribute value for CSS animations * @returns Current animation state * @internal */ dataState: import("@angular/core").Signal; /** * Computes CSS classes for dialog content based on current configuration * @returns Combined Tailwind classes string * @internal */ componentClass: import("@angular/core").Signal; /** @internal Handles open/close state changes */ openedEffect: import("@angular/core").EffectRef; /** * Computed CDK Dialog configuration based on x/y axis signals * Uses CDK's overlay positioning system for full axis control * @internal */ private readonly dialogConfig; /** * Opens the dialog using CDK Dialog * @internal */ private openDialog; /** * Public method to close the dialog * Can be called directly from parent components or child components */ close(): void; /** * Closes the dialog using CDK Dialog * @internal */ private closeDialog; /** * Handles animation end events to trigger the actual dialog close * @internal */ onAnimationEnd(event: AnimationEvent): void; /** * Clean up CDK subscriptions and ensure the overlay is closed when the component is destroyed */ private readonly destroyEffect; /** * Handles the close button click * @internal */ handleCloseClick(): void; /** * @internal * Handle click activation */ handleClick(event: MouseEvent): void; /** * @internal * Handle pointer down activation */ handlePointerDown(event: PointerEvent): void; /** * @internal * Handle Enter key activation */ handleKeyDownEnter(event: Event): void; /** * @internal * Handle Space key activation */ handleKeyDownSpace(event: Event): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};