import { LitElement } from 'lit';
import { PopoverAlign, PopoverPosition, PopoverType, Size, TypeNativePopoverController } from '../internal';
import { IconButton } from '../icon-button';
/**
 * @element nve-dialog
 * @description Dialog is a component that appears above main content. A modal dialog displays critical information that requires user attention and interrupts user flow. [MDN Popover API](https://developer.mozilla.org/en-US/docs/Web/API/Popover_API)
 * @since 0.6.0
 * @entrypoint \@nvidia-elements/core/dialog
 * @event beforetoggle - Dispatched on a popover just before showing or hiding. [MDN](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/beforetoggle_event)
 * @event toggle - Dispatched on a popover element just after showing or hiding. [MDN](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/toggle_event)
 * @event open - Dispatched when the dialog opens.
 * @event close - Dispatched when the dialog closes.
 * @slot - default content slot
 * @cssprop --border
 * @cssprop --border-radius
 * @cssprop --background
 * @cssprop --color
 * @cssprop --padding
 * @cssprop --box-shadow
 * @cssprop --gap
 * @cssprop --max-width
 * @cssprop --min-height
 * @cssprop --max-height
 * @cssprop --animation-duration - Duration of dialog open/close animations
 * @csspart close-button - The inner template reference for the close button of the dialog.
 * @csspart icon-button - The icon button element
 * @aria https://www.w3.org/WAI/ARIA/apg/patterns/dialog-modal/
 */
export declare class Dialog extends LitElement {
    #private;
    /**
     * Sets the side position of the popover relative to the provided anchor element.
     * For dialog the anchor defaults to the document body.
     */
    position: PopoverPosition;
    /**
     * Sets the alignment of the popover relative to the provided anchor element.
     * If an arrow exists the alignment will be relative to the arrow against the anchor.
     */
    alignment: PopoverAlign;
    /**
     * Sets the max size of the dialog.
     */
    size?: Size;
    /**
     * Determines if a close button should render within dialog. Non-closable
     * dialogs suit dialogs that require user confirmation steps.
     */
    closable: boolean;
    /**
     * Determines if a dialog should have a modal backdrop that visually overlays the UI.
     */
    modal: boolean;
    /**
     * (optional) By default the popover will automatically anchor itself relative to the trigger element.
     * Pass an optional custom anchor element as an idref string within the same render root or a HTMLElement DOM reference.
     */
    anchor: string | HTMLElement;
    /**
     * @deprecated Use the popover API instead.
     * The trigger defines what element triggers an `open` interaction event.
     * A trigger can accept a idref string within the same render root or a HTMLElement DOM reference.
     */
    trigger: string | HTMLElement;
    /**
     * @deprecated Use the popover API instead.
     * Determines if popover visibility behavior should be automatically controlled by the trigger.
     */
    behaviorTrigger: boolean;
    /**
     * Enables internal string values to update for internationalization.
     */
    i18n: Partial<import('../internal').I18nStrings & {
        __set: boolean;
    }>;
    /** @private */
    get popoverType(): PopoverType;
    /** @private */
    get popoverDismissible(): boolean;
    protected typeNativePopoverController: TypeNativePopoverController<Dialog>;
    static styles: import('lit').CSSResult[];
    static readonly metadata: {
        tag: string;
        version: string;
    };
    static elementDefinitions: {
        [IconButton.metadata.tag]: typeof IconButton;
    };
    /** @private */
    _internals: ElementInternals;
    render(): import('lit-html').TemplateResult<1>;
    connectedCallback(): void;
}
