UNPKG

1.89 kBTypeScriptView Raw
1import { Component, HTMLAttributes, ReactNode } from 'react';
2import PropTypes from 'prop-types';
3export declare type CollapseType = 'clickTrigger' | 'responsive';
4export interface SiderProps extends HTMLAttributes<HTMLDivElement> {
5 prefixCls?: string;
6 collapsible?: boolean;
7 collapsed?: boolean;
8 defaultCollapsed?: boolean;
9 reverseArrow?: boolean;
10 onCollapse?: (collapsed: boolean, type: CollapseType) => void;
11 trigger?: ReactNode;
12 width?: number | string;
13 collapsedWidth?: number | string;
14 breakpoint?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
15}
16export interface SiderState {
17 collapsed?: boolean;
18 below: boolean;
19 belowShow?: boolean;
20}
21export interface SiderContext {
22 siderCollapsed: boolean;
23}
24export default class Sider extends Component<SiderProps, SiderState> {
25 static displayName: string;
26 static __C7N_LAYOUT_SIDER: any;
27 static defaultProps: {
28 collapsible: boolean;
29 defaultCollapsed: boolean;
30 reverseArrow: boolean;
31 width: number;
32 collapsedWidth: number;
33 style: {};
34 };
35 static childContextTypes: {
36 siderCollapsed: PropTypes.Requireable<boolean>;
37 collapsedWidth: PropTypes.Requireable<string | number>;
38 };
39 static contextTypes: {
40 siderHook: PropTypes.Requireable<object>;
41 };
42 private mql;
43 private uniqueId;
44 constructor(props: SiderProps);
45 getChildContext(): {
46 siderCollapsed: boolean | undefined;
47 collapsedWidth: string | number | undefined;
48 };
49 componentWillReceiveProps(nextProps: SiderProps): void;
50 componentDidMount(): void;
51 componentWillUnmount(): void;
52 responsiveHandler: (event: MediaQueryListEvent) => void;
53 setCollapsed: (collapsed: boolean, type: CollapseType) => void;
54 toggle: () => void;
55 belowShowChange: () => void;
56 render(): JSX.Element;
57}