@spaced-out/ui-design-system
Version:
Sense UI components library
46 lines • 1.84 kB
TypeScript
import * as React from 'react';
import type { ModalProps } from '../Modal';
type FooterClassNames = Readonly<{
wrapper?: string;
actions?: string;
}>;
export declare const DIALOG_SEMANTIC: Readonly<{
neutral: "neutral";
success: "success";
information: "information";
warning: "warning";
danger: "danger";
}>;
export type DialogSemanticType = (typeof DIALOG_SEMANTIC)[keyof typeof DIALOG_SEMANTIC];
export type DialogHeaderProps = {
children?: React.ReactNode;
className?: string;
};
export type DialogFooterProps = {
children?: React.ReactNode;
classNames?: FooterClassNames;
};
export type DialogBodyProps = {
children?: React.ReactNode;
className?: string;
};
export type DialogPropsBase = ModalProps;
export type DialogProps = DialogPropsBase & {
semantic?: DialogSemanticType;
iconName?: string;
};
export type BasicDialogProps = DialogProps & {
heading?: React.ReactNode;
body?: React.ReactNode;
confirmText?: string;
abortText?: string;
handleConfirm?: (event: React.SyntheticEvent) => unknown;
handleAbort?: (event: React.SyntheticEvent) => unknown;
};
export declare const DialogHeader: ({ children, className }: DialogHeaderProps) => React.JSX.Element;
export declare const DialogBody: ({ children, className }: DialogBodyProps) => React.JSX.Element;
export declare const DialogFooter: ({ children, classNames }: DialogFooterProps) => React.JSX.Element;
export declare const Dialog: ({ children, isOpen, hideBackdrop, onClose, tapOutsideToClose, iconName, semantic, classNames, ...restDialogProps }: DialogProps) => React.JSX.Element;
export declare const BasicDialog: ({ heading, body, confirmText, abortText, handleConfirm, handleAbort, ...restDialogProps }: BasicDialogProps) => React.JSX.Element;
export {};
//# sourceMappingURL=Dialog.d.ts.map