UNPKG

2.14 kBTypeScriptView Raw
1import './index.less';
2import React from 'react';
3import type { HeaderViewProps } from '../../Header';
4import type { SiderMenuProps, PrivateSiderMenuProps } from '../SiderMenu/SiderMenu';
5import type { PureSettings } from '../../defaultSettings';
6import type { MenuDataItem } from '../../index';
7import type { WithFalse } from '../../typings';
8export declare type GlobalHeaderProps = {
9 collapsed?: boolean;
10 onCollapse?: (collapsed: boolean) => void;
11 isMobile?: boolean;
12 logo?: React.ReactNode;
13 /**
14 * @name 虽然叫menuRender,但是其实是整个 SiderMenu 面板的渲染函数
15 *
16 * @example 收起时完成不展示菜单 menuRender={(props,defaultDom)=> props.collapsed ? null : defaultDom}
17 * @example 不展示菜单 menuRender={false}
18 */
19 menuRender?: WithFalse<(props: HeaderViewProps, defaultDom: React.ReactNode) => React.ReactNode>;
20 /**
21 * @name 右侧顶部操作区域的渲染逻辑,一般会展示一个头像和一些操作
22 *
23 * @example 展示一个头像: rightRender={(props) => <Avatar shape="square" size="small" icon={<UserOutlined />} />}
24 * @example 展示一些操作: rightRender={(props) => [<Button type="primary">操作</Button>,<Button type="primary">管理控制台</Button>]}
25 */
26 rightContentRender?: WithFalse<(props: HeaderViewProps) => React.ReactNode>;
27 className?: string;
28 prefixCls?: string;
29 menuData?: MenuDataItem[];
30 onMenuHeaderClick?: (e: React.MouseEvent<HTMLDivElement>) => void;
31 style?: React.CSSProperties;
32 menuHeaderRender?: SiderMenuProps['menuHeaderRender'];
33 /**
34 * @name 顶部区域的渲染,包含内部的 menu
35 *
36 * @example headerContentRender={(props) => <div>管理控制台 </div>}
37 */
38 headerContentRender?: WithFalse<(props: HeaderViewProps, defaultDom: React.ReactNode) => React.ReactNode>;
39 collapsedButtonRender?: SiderMenuProps['collapsedButtonRender'];
40 splitMenus?: boolean;
41 children?: React.ReactNode;
42} & Partial<PureSettings>;
43declare const GlobalHeader: React.FC<GlobalHeaderProps & PrivateSiderMenuProps>;
44export default GlobalHeader;