import { NotificationStructure } from '@genesislcap/foundation-notifications'; import { FoundationElement } from '@microsoft/fast-foundation'; import type { DialogPosition, DialogType } from './dialog.types'; export declare const foundationDialogShadowOptions: ShadowRootInit; export declare const defaultDialogConfig: {}; export declare abstract class DialogElement extends FoundationElement { /** * A reference to the dialog element * in the component Shadow DOM. */ mainElement: HTMLDialogElement; topElement: HTMLElement; topElementSlot: HTMLSlotElement; notification: NotificationStructure; notificationChanged(): void; type: DialogType; position: DialogPosition; /** * Whether or not to show the close icon */ showCloseIcon: boolean; /** * Whether or not the dialog is resizable */ resizable: boolean; /** * Minimum width for the dialog */ minWidth: number; /** * Minimum height for the dialog */ minHeight: number; /** * Initial width for the dialog (cannot exceed viewport width) */ initialWidth?: number; /** * Initial height for the dialog (cannot exceed viewport height) */ initialHeight?: number; /** * Callback to run *before* HTMLDialogElement is shown */ onShowCallback: () => void; /** * Callback to run *after* HTMLDialogElement is closed */ onCloseCallback: () => void; private isResizing; private currentResizeHandle; private startX; private startY; private startWidth; private startHeight; private startLeft; private startTop; private resizeOffsetX; private resizeOffsetY; private originalWidth; private originalHeight; private originalPosition; private originalLeft; private originalTop; private originalMargin; private isMaximized; private hasBeenResized; connectedCallback(): void; disconnectedCallback(): void; private setupResizeHandlers; private removeResizeHandlers; private handleEdgeDoubleClick; private handleResizeStart; private handleResizeMove; private handleResizeEnd; /** * Determine if the dialog is showing or closed. */ get open(): boolean; /** * Get the appropriate icon name for the resize button */ get resizeIconName(): string; /** * Show the HTMLDialogElement and its contents */ abstract show(): void; /** * Remove the HTMLDialogElement from display */ close(): void; /** * Dismiss the Dialog from display and calls the dismissing action. */ dismiss(): void; /** * Dismiss the Dialog from display. */ closeDialog(): void; /** * Maximize the dialog to fill the viewport. * @private */ private maximize; /** * Reset the dialog to its original size and position, or maximize if not resized. * @public */ resetSize(): void; } /** * @tagname %%prefix%%-dialog * * @fires close - Fired when the dialog closes * @fires resize - Fired when the dialog size changes (resizable mode) */ export declare class Dialog extends DialogElement { show(): void; } /** * The Foundation Dialog * * @public * @remarks * HTML Element: \ */ export declare const foundationDialog: (overrideDefinition?: import("@microsoft/fast-foundation").OverrideFoundationElementDefinition<{ baseName: string; styles: import("@microsoft/fast-element").ElementStyles; template: import("@microsoft/fast-element").ViewTemplate; shadowOptions: ShadowRootInit; }>) => import("@microsoft/fast-foundation").FoundationElementRegistry<{ baseName: string; styles: import("@microsoft/fast-element").ElementStyles; template: import("@microsoft/fast-element").ViewTemplate; shadowOptions: ShadowRootInit; }, typeof Dialog>; //# sourceMappingURL=dialog.d.ts.map