import { IPlatform } from '@aurelia/runtime-html';
import {
IDialogDomRenderer,
IDialogDom,
IDialogController,
} from './dialog-interfaces';
import { isString, onResolve, resolve } from '@aurelia/kernel';
import { createMappedError, ErrorNames } from './errors';
export type DialogRenderOptionsStandard = {
/**
* When set to "true" the dialog will be modal.
* This means that the dialog will be displayed as a modal dialog.
* The default value is "false".
*
* Note that this depends on the renderer,
* Some renderers may not support this feature.
*
* Read more on the modal behavior of dialogs on MDN
* https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement#opening_a_modal_dialog
*/
modal?: boolean;
/**
* A CSS string for all the overlay styles or a property-based CSS configuration for the overlay of the dialog.
*/
overlayStyle?: string | Partial;
/**
* A callback that is invoked when the dialog is shown.
*/
show?: (dom: DialogDomStandard) => void | Promise;
/**
* A callback that is invoked when the dialog is hidden.
*/
hide?: (dom: DialogDomStandard) => void | Promise;
/**
* Specifies the types of user actions that can be used to close the