import { DOMAdaptor } from '../../core/DOMAdaptor.js'; import { StyleJson } from '../../util/StyleJson.js'; export type ADAPTOR = DOMAdaptor; export type Action = (dialog: DraggableDialog, event: MouseEvent) => void | number[]; export type ActionList = { [action: string]: Action; }; export type ActionMap = { [type: string]: ActionList; }; export type DialogArgs = { title?: string; message: string; adaptor: ADAPTOR; node?: HTMLElement; styles?: StyleJson; extraNodes?: HTMLElement[]; className?: string; }; export type keyMapping = (dialog: DraggableDialog, event: KeyboardEvent) => void; export declare const isDialog: boolean; export declare class DraggableDialog { protected minW: number; protected minH: number; protected tx: number; protected ty: number; protected x: number; protected y: number; protected w: number; protected h: number; protected dragging: boolean; protected action: string; protected noDrag: HTMLElement[]; protected title: HTMLElement; protected content: HTMLElement; protected node: HTMLElement; protected background: HTMLElement; protected dialog: HTMLDialogElement; protected events: any[][]; protected static keyActions: Map; static styleId: string; static className: string; static id: number; static styles: StyleJson; protected static helpMessage: string; protected mode: string; constructor(args: DialogArgs); protected init(adaptor: ADAPTOR): void; protected html(args: DialogArgs): HTMLDialogElement; attach(): void; protected actions: ActionMap; protected dragAction(type: string, event?: MouseEvent): void; protected MouseDown(event: MouseEvent): void; protected MouseMove(event: MouseEvent): void; protected MouseUp(event: MouseEvent): void; protected Visibility(): void; protected KeyDown(event: KeyboardEvent): void; protected escKey(event: KeyboardEvent): void; protected aKey(event: KeyboardEvent): void; protected mKey(event: KeyboardEvent): void; protected sKey(event: KeyboardEvent): void; protected arrowKey(event: KeyboardEvent, direction: string): void; protected actionKey(action: (event: KeyboardEvent) => void, event: KeyboardEvent): void; protected selectAll(): void; copyToClipboard(): void; protected startDrag(event: MouseEvent): void; protected getWH(): void; protected endDrag(): void; protected closeDialog(event?: Event): void; protected helpDialog(adaptor: ADAPTOR, event: Event): void; protected inDialog(event: MouseEvent): boolean; protected stop(event: Event): void; }