import { StructureSchema } from '@ephox/boulder'; import { type Optional, type Result } from '@ephox/katamari'; import type { DialogFooterNormalButton, DialogFooterNormalButtonSpec } from './DialogFooterButton'; export interface UrlDialogInstanceApi { block: (msg: string) => void; unblock: () => void; close: () => void; sendMessage: (msg: any) => void; } export interface UrlDialogActionDetails { name: string; value?: any; } export interface UrlDialogMessage { mceAction: string; [key: string]: any; } export type UrlDialogActionHandler = (api: UrlDialogInstanceApi, actions: UrlDialogActionDetails) => void; export type UrlDialogCloseHandler = () => void; export type UrlDialogCancelHandler = (api: UrlDialogInstanceApi) => void; export type UrlDialogMessageHandler = (api: UrlDialogInstanceApi, message: UrlDialogMessage) => void; export interface UrlDialogFooterButtonSpec extends DialogFooterNormalButtonSpec { type: 'cancel' | 'custom'; } export interface UrlDialogFooterButton extends DialogFooterNormalButton { type: 'cancel' | 'custom'; } export interface UrlDialogSpec { title: string; url: string; height?: number; width?: number; buttons?: UrlDialogFooterButtonSpec[]; onAction?: UrlDialogActionHandler; onClose?: UrlDialogCloseHandler; onCancel?: UrlDialogCancelHandler; onMessage?: UrlDialogMessageHandler; } export interface UrlDialog { title: string; url: string; height: Optional; width: Optional; buttons: Optional; onAction: UrlDialogActionHandler; onClose: UrlDialogCloseHandler; onCancel: UrlDialogCancelHandler; onMessage: UrlDialogMessageHandler; } export declare const urlDialogButtonSchema: import("@ephox/boulder").StructureProcessor; export declare const urlDialogSchema: import("@ephox/boulder").StructureProcessor; export declare const createUrlDialog: (spec: UrlDialogSpec) => Result>; //# sourceMappingURL=UrlDialog.d.ts.map