/// //@ts-ignore import React, { Component } from 'react'; import { ConfirmationDialogProps, ConfirmationDialogState, ConfirmButton } from './Types'; /** * A confirmation dialog component that displays a modal with customizable buttons and handles user interactions. * Manually handles ESC key press to close the dialog with appropriate resolution (Cancel/No/false). * Automatically binds/unbinds key events when dialog visibility changes. */ export declare class ConfirmationDialog extends Component { private _confirmationPromise?; private _resolve?; private _confirmationText; private _detailsText; private _level?; private _escKeyHandler?; state: ConfirmationDialogState; private _customCssClass; /** * Resolves the confirmation promise with the given value and hides the dialog * @param val - The value to resolve the promise with (boolean or ConfirmButton) */ private _resolveConfirmation; /** * Handles ESC key press to close the dialog with appropriate resolution * @param event - Keyboard event */ private _handleEscKey; /** * Binds ESC key event listener when dialog is shown */ private _bindEscKey; /** * Unbinds ESC key event listener when dialog is hidden */ private _unbindEscKey; componentDidUpdate(prevProps: ConfirmationDialogProps, prevState: ConfirmationDialogState): void; componentWillUnmount(): void; confirm(confirmationText?: string | JSX.Element, level?: "info" | "warning" | "warn" | "debug" | "error", title?: string, buttons?: ConfirmButton[], customCssClass?: "gc-old-school-notify", detailsText?: string | JSX.Element): Promise; cancel(): void; render(): React.JSX.Element; }