@vnmfify/core
Version:
```shell npm i @vnmfify/core -S ```
29 lines (28 loc) • 1.29 kB
TypeScript
import { CSSProperties, ReactNode } from "react";
import { ButtonProps } from "../button";
import { PopupBackdropProps } from "../popup";
export declare function setDefaultDialogOptions(options: DialogOptions): void;
export declare function resetDefaultDialogOptions(): void;
export declare function useDialogOpen(cb: (options: DialogOptions) => void): void;
export declare function useDialogCancel(cb: (selector: string) => void): void;
declare type DialogMessageAlign = "left" | "center" | "right";
export interface DialogOptions {
selector?: string;
className?: string;
style?: CSSProperties;
backdrop?: boolean | Omit<PopupBackdropProps, "open">;
duration?: number;
title?: ReactNode;
message?: ReactNode;
messageAlign?: DialogMessageAlign;
confirm?: ReactNode | ButtonProps;
cancel?: ReactNode | ButtonProps;
onConfirm?(): void;
onCancel?(): void;
onClose?(opened: boolean): void;
}
export declare function openDialog(args: ReactNode | DialogOptions): void;
export declare function confirmDialog(args: ReactNode | DialogOptions): void;
export declare function alertDialog(args: ReactNode | Omit<DialogOptions, "confirm">): void;
export declare function cancelDialog(selector?: string): void;
export {};