import { EventEmitter } from '../../stencil-public-runtime';
import { AlertType } from './alert-dialog.types';
/**
 * An alert dialog interrupts the user flow. It can be used when an explicit
 * decision or acknowledgement from the user is needed in order to safely continue
 * the flow.
 *
 * When to use
 * [`limebb-alert-dialog`](https://lundalogik.github.io/lime-crm-building-blocks/versions/1.111.0/#/component/limebb-alert-dialog/)
 * instead of the
 * [more generic `limel-dialog` component](https://lundalogik.github.io/lime-elements/versions/latest/#/component/limel-dialog/)
 * ?
 *
 * Use an alert dialog when:
 * - Your message fits into one of the predefined variants of `type`
 * - The user must decide how to proceed, or take a pause to read the message
 * - The current task needs to be blocked
 * - An action carries a meaningful risk or irreversible consequence
 *
 * This will help to create a consistent alert delivery mechanism across the entire system,
 * which the user will recognize easily.
 *
 * :::warning
 * Do **not** use an alert dialog for:
 * - Passive information
 * - Unimportant or expected success messages
 * - Status updates
 * - Validation errors
 *
 * Frequent appearance of alert dialogs indicates incorrect usage and degrades user trust.
 * Consider using
 * [`limel-snackbar`](https://lundalogik.github.io/lime-elements/versions/latest/#/component/limel-snackbar/)
 * for such instances.
 * :::
 *
 * @exampleComponent limebb-example-alert-dialog-basic
 * @exampleComponent limebb-example-alert-dialog-type-note
 * @exampleComponent limebb-example-alert-dialog-type-success
 * @exampleComponent limebb-example-alert-dialog-type-caution
 * @exampleComponent limebb-example-alert-dialog-type-warning
 * @exampleComponent limebb-example-alert-dialog-icon
 * @exampleComponent limebb-example-alert-dialog-button-slots
 *
 * @beta
 */
export declare class LimebbAlertDialog {
    /**
     * Defines how the component is visualized with a default icon and fixed color scheme.
     */
    type: AlertType;
    /**
     * Controls whether the dialog is open
     * (controlled by the parent)
     */
    open: boolean;
    /**
     * Icon to display. If not provided, a default icon based on the type will be used.
     */
    icon?: string;
    /**
     * Heading text
     */
    heading: string;
    /**
     * Subheading text
     */
    subheading?: string;
    /**
     * Fired when the dialog should be dismissed
     * (ESC, backdrop click, close link)
     */
    dismiss: EventEmitter<void>;
    render(): any;
    private handleClose;
    private renderSubheading;
    private getIconName;
}
//# sourceMappingURL=alert-dialog.d.ts.map