fix: update useDialog hook

This commit is contained in:
yassinedorbozgithub
2025-01-23 14:36:14 +01:00
parent 919058c161
commit 4b8500159a

View File

@@ -1,27 +1,25 @@
/*
* Copyright © 2024 Hexastack. All rights reserved.
* Copyright © 2025 Hexastack. All rights reserved.
*
* Licensed under the GNU Affero General Public License v3.0 (AGPLv3) with the following additional terms:
* 1. The name "Hexabot" is a trademark of Hexastack. You may not use this name in derivative works without express written permission.
* 2. All derivative works must include clear attribution to the original creator and software, Hexastack and Hexabot, in a prominent location (e.g., in the software's "About" section, documentation, and README file).
*/
import { DialogProps } from "@mui/material";
import { Dispatch, SetStateAction, useState } from "react";
export type DialogControlProps<T, C = never> = Omit<
DialogControl<T, C>,
"openDialog"
>;
export type DialogControlProps<T> = Omit<DialogControl<T>, "openDialog">;
type TCloseDialog = <E extends React.MouseEvent | Event | Object>(
e?: E,
reason?: "backdropClick" | "escapeKeyDown" | "postDelete",
) => void;
type TFnVoid<T> = (data?: T) => void;
export type DialogControl<T = null, C = never> = DialogProps & {
export type DialogControl<T = null> = DialogProps & {
data?: T;
setData?: Dispatch<SetStateAction<T | undefined>>;
callback?: TFnVoid<C>;
callback?: TFnVoid<T>;
openDialog: TFnVoid<T>;
closeDialog: TCloseDialog;
};