import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime'; import { DialogCloseAction, DialogSubmitAction } from '../types'; /** * The ino-dialog component displays a modal window that can be used to display additional information or notify the user. * It is based on the mdc-dialog and is fully customizable. The styling of a dialog's content must be provided by users. * * #### Usage Notes * * - **Child Component Layout Issues**: If elements like ripples or labels in the `ino-dialog` are mispositioned or incorrectly sized, it may indicate that child components are being rendered before the dialog is fully open. * - **Rendering After Dialog Opens**: To prevent layout issues, render sensitive child components (e.g. `ino-icon-button`) only after the `dialogOpen` event has fired. * * @slot default - content of the dialog * @slot header - content to replace default header of dialog * @slot body - content to replace default body of dialog * @slot footer - content to replace default footer of dialog */ export declare class Dialog implements ComponentInterface { private mdcDialog; el: HTMLInoDialogElement; /** * The target element the dialog should be attached to. * If not given, the dialog is a child of the documents body. * Note: This property is immutable after initialization. */ attachTo?: string; /** * Defines a full width dialog sliding up from the bottom of the page. */ fullwidth?: boolean; /** * Close the dialog by clicking outside of the dialog. */ dismissible?: boolean; /** * Opens the dialog if set to true */ open: boolean; /** * The role of the dialog. Can be either 'dialog' or 'alertdialog'. * The 'alertdialog' role should be used for important alerts and error messages. */ dialogRole?: 'dialog' | 'alertdialog'; /** * Adds a headline to the `ino-dialog` */ headerText?: string; /** * Adds a text to the body of the `ino-dialog` */ bodyText?: string; /** * Adds a button with the given text to close the `ino-dialog` */ cancelText?: string; /** * Adds a close icon in the top right corner to close the `ino-dialog`. */ closeIcon: boolean; /** * Adds a button with the given text to proceed with an action */ actionText?: string; /** * Adds a `ino-icon` besides the headline */ icon?: string; openChanged(open: boolean): void; handleKeyUp(event: KeyboardEvent): void; /** * Emits an event upon closing the dialog */ close: EventEmitter; /** * Emits an event upon clicking the action button of the dialog */ action: EventEmitter; /** * Emits an event when the dialog is opened. */ dialogOpen: EventEmitter; componentWillRender(): Promise; componentWillLoad(): void; componentDidLoad(): void; disconnectedCallback(): void; private handleClose; private handleDialogClick; render(): any; }