nano-jsx
Version:
SSR first, lightweight 1kB JSX library.
35 lines • 873 B
TypeScript
interface DialogAction {
name: string;
id?: string | number;
color?: string;
}
interface DialogActionEvent {
action: string;
}
interface DialogOptions {
title?: string;
body?: string;
actions?: DialogAction[];
onAction?: () => DialogActionEvent;
parentId?: string;
firstFocusAction?: string | boolean;
}
export declare class Dialog {
options: DialogOptions;
defaultParentId: string;
defaultActionColor: string;
constructor(options?: DialogOptions);
private getParentElement;
private handleKeydown;
remove(): void;
private disableScroll;
private enableScroll;
private focusAction;
private focusFirstAction;
show(options: DialogOptions | null, callback: (event: {
name: string;
id: string | number;
}) => void): void;
}
export {};
//# sourceMappingURL=dialog.d.ts.map