import ConfirmDialog from './ConfirmDialog'; import Dialog from '../dialog/Dialog'; export default ConfirmAction; declare namespace ConfirmAction { /** * Return data from a confirm action result. */ type ReturnDataType = { /** * Index of the clicked button. */ index: number, /** * Text of the clicked button. */ text: string, }; /** * Callback invoked when a confirm dialog is created. */ type OnCreateDialogCallbackType = ( /** * Created confirm dialog instance. */ dialog: ConfirmDialog ) => void; /** * Configuration options for running a confirm action. */ interface IConfig { /** * Existing dialog instance to reuse. */ dialog?: ConfirmDialog, /** * Dialog style configuration used when creating a new dialog. */ style?: ConfirmDialog.IConfig, /** * Content reset configuration applied before showing. */ content?: ConfirmDialog.IResetDisplayContentConfig, /** * Modal behavior configuration. */ modal?: Dialog.IModalConfig, /** * Callback invoked when dialog is created. */ onCreateDialog?: OnCreateDialogCallbackType, /** * Confirm callback function. */ confirm?: Function, /** * Scope used when calling confirm callback. */ confirmScope?: Object, /** * Index treated as confirm button. */ confirmButtonIndex?: number, /** * Cancel callback function. */ cancel?: Function, /** * Scope used when calling cancel callback. */ cancelScope?: Object, /** * Index treated as cancel button. */ cancelButtonIndex?: number, } } /** * Show a confirm dialog and wire confirm/cancel callbacks. * * @param scene - Scene used to create and show dialog. * @param config - Confirm action configuration. * @returns Confirm dialog instance. */ declare function ConfirmAction( scene: Phaser.Scene, config: ConfirmAction.IConfig ): ConfirmDialog;