import { TemplateResult } from 'lit';
import UiDialog from '../../../md/dialog/internals/Dialog.js';
import '../../../md/button/ui-button.js';
import '../../../md/icons/ui-icon.js';
import '../../../md/text-field/ui-filled-text-field.js';
/**
 * A dialog that requests the user for the new name.
 *
 * Listen to the `closed` on the dialog. The CustomEvent has the `detail`
 * object with the `closingReason` retails:
 * - canceled: whether the dialog was cancelled (ESC, outside click, dismiss button)
 * - confirmed: whether the dialog was confirmed by the user
 * - value: The entered name value
 *
 * The application should handle the event and trigger name change flow.
 *
 * ```javascript
 * const dialog = document.createElement('rename-dialog');
 * dialog.name = 'old name';
 * document.body.appendChild(dialog);
 * dialog.open = true;
 * dialog.addEventListener('closed', (ev: Event) => {
 *   document.body.removeChild(dialog);
 *   const event = ev as CustomEvent<UiDialogClosingReason>;
 *   const { cancelled, value } = event.detail;
 *   if (!cancelled && value) {
 *     // trigger the flow, value is the new value
 *   }
 * });
 * ```
 */
export default class RenameDialogElement extends UiDialog {
    /**
     * The previous name
     * @attribute
     */
    accessor name: string | undefined;
    accessor newValue: string | undefined;
    private get hasValue();
    protected handleInput(e: Event): void;
    protected handleInputKeyDown(e: KeyboardEvent): void;
    protected handleInteraction(value: 'dismiss' | 'confirm'): void;
    renderIcon(): TemplateResult;
    renderTitle(): TemplateResult;
    renderBody(): TemplateResult;
    renderButtons(): TemplateResult;
}
//# sourceMappingURL=Rename.d.ts.map