1 | import type { GetContainer } from 'rc-util/lib/PortalWrapper';
|
2 | import type { CSSProperties, ReactNode, SyntheticEvent } from 'react';
|
3 | export type SemanticName = 'header' | 'body' | 'footer' | 'section' | 'title' | 'wrapper' | 'mask';
|
4 | export type ModalClassNames = Partial<Record<SemanticName, string>>;
|
5 | export type ModalStyles = Partial<Record<SemanticName, CSSProperties>>;
|
6 | export type IDialogPropTypes = {
|
7 | className?: string;
|
8 | keyboard?: boolean;
|
9 | style?: CSSProperties;
|
10 | mask?: boolean;
|
11 | children?: React.ReactNode;
|
12 | afterClose?: () => any;
|
13 | afterOpenChange?: (open: boolean) => void;
|
14 | onClose?: (e: SyntheticEvent) => any;
|
15 | closable?: boolean | ({
|
16 | closeIcon?: React.ReactNode;
|
17 | disabled?: boolean;
|
18 | } & React.AriaAttributes);
|
19 | maskClosable?: boolean;
|
20 | visible?: boolean;
|
21 | destroyOnClose?: boolean;
|
22 | mousePosition?: {
|
23 | x: number;
|
24 | y: number;
|
25 | } | null;
|
26 | title?: ReactNode;
|
27 | footer?: ReactNode;
|
28 | transitionName?: string;
|
29 | maskTransitionName?: string;
|
30 | animation?: any;
|
31 | maskAnimation?: any;
|
32 | wrapStyle?: Record<string, any>;
|
33 | bodyStyle?: Record<string, any>;
|
34 | maskStyle?: Record<string, any>;
|
35 | prefixCls?: string;
|
36 | wrapClassName?: string;
|
37 | width?: string | number;
|
38 | height?: string | number;
|
39 | zIndex?: number;
|
40 | bodyProps?: any;
|
41 | maskProps?: any;
|
42 | rootClassName?: string;
|
43 | classNames?: ModalClassNames;
|
44 | styles?: ModalStyles;
|
45 | wrapProps?: any;
|
46 | getContainer?: GetContainer | false;
|
47 | closeIcon?: ReactNode;
|
48 | modalRender?: (node: ReactNode) => ReactNode;
|
49 | forceRender?: boolean;
|
50 | focusTriggerAfterClose?: boolean;
|
51 | panelRef?: React.Ref<HTMLDivElement>;
|
52 | };
|