import { EventEmitter } from '../../stencil-public-runtime';
/**
* @slot header - Slot for header text
* @slot body - Slot for main content of modal
* @slot actions - Slot for extra buttons
* */
export declare class TdsModal {
host: HTMLElement;
/** Sets the header of the Modal. */
header?: string;
/** Disables closing Modal on clicking on overlay area. */
prevent: boolean;
/** Size of Modal */
size: 'xs' | 'sm' | 'md' | 'lg';
/** Changes the position behaviour of the actions slot. */
actionsPosition: 'sticky' | 'static';
/** CSS selector for the element that will show the Modal. */
selector?: string;
/** Element that will show the Modal (takes priority over selector) */
referenceEl?: HTMLElement | null;
/** Controls whether the Modal is shown or not. This prop allows the consumer of Tegel to control
* the open/close interaction or set the modal visibility when opening the page. If it is not set, then
* the modal has a fallback state for that interaction, defaulting to false. */
show?: boolean;
/** Shows or hides the close [X] button. */
closable: boolean;
/** Role of the modal component. Can be either 'alertdialog' for important messages that require immediate attention, or 'dialog' for regular messages. */
tdsAlertDialog: 'alertdialog' | 'dialog';
isShown: boolean;
activeElementIndex: number;
/** Shows the Modal. */
showModal(): Promise;
/** Closes the Modal. */
closeModal(): Promise;
/** Returns the current open state of the Modal. */
isOpen(): Promise;
/** Emits when the Modal is closed. */
tdsClose: EventEmitter