UNPKG

1.16 kBTypeScriptView Raw
1import * as React from 'react';
2
3import ModalBody from './ModalBody';
4import ModalDialog from './ModalDialog';
5import ModalFooter from './ModalFooter';
6import ModalHeader from './ModalHeader';
7import ModalTitle from './ModalTitle';
8
9import { BsPrefixComponent, TransitionCallbacks } from './helpers';
10
11export interface ModalProps extends TransitionCallbacks {
12 size?: 'sm' | 'lg' | 'xl';
13 centered?: boolean;
14 backdrop?: 'static' | boolean;
15 backdropClassName?: string;
16 keyboard?: boolean;
17 animation?: boolean;
18 dialogClassName?: string;
19 dialogAs?: React.ElementType;
20 autoFocus?: boolean;
21 enforceFocus?: boolean;
22 restoreFocus?: boolean;
23 restoreFocusOptions?: FocusOptions;
24 show?: boolean;
25 onShow?: () => void;
26 onHide?: () => void;
27 container?: any;
28 scrollable?: boolean;
29 onEscapeKeyDown?: () => void;
30 manager?: any;
31}
32
33declare class Modal<
34 As extends React.ElementType = 'div'
35> extends BsPrefixComponent<As, ModalProps> {
36 static Body: typeof ModalBody;
37 static Header: typeof ModalHeader;
38 static Title: typeof ModalTitle;
39 static Footer: typeof ModalFooter;
40
41 static Dialog: typeof ModalDialog;
42}
43
44export default Modal;