import React, { Component, CSSProperties } from 'react'; import { MenuProps } from 'antd/lib/menu'; import { SiderProps } from 'antd/es/layout/Sider'; import './index.less'; import { WithFalse } from '../typings'; import { BaseMenuProps } from './BaseMenu'; export declare const defaultRenderLogo: (logo: React.ReactNode) => React.ReactNode; export declare const defaultRenderLogoAndTitle: (logo: React.ReactNode, title: React.ReactNode, menuHeaderRender: false | ((logo: React.ReactNode, title: React.ReactNode) => React.ReactNode) | undefined) => React.ReactNode; export interface SiderMenuProps extends Pick> { logo?: React.ReactNode; siderWidth?: number; menuHeaderRender?: WithFalse<(logo: React.ReactNode, title: React.ReactNode) => React.ReactNode>; breakpoint?: SiderProps['breakpoint'] | false; onMenuHeaderClick?: (e: React.MouseEvent) => void; /** * 要给菜单的props, 参考antd-menu的属性。https://ant.design/components/menu-cn/ */ menuProps?: MenuProps; className?: string; style?: CSSProperties; links?: React.ReactNode[]; } interface SiderMenuState { pathname?: string; openKeys?: string[] | false; flatMenuKeysLen?: number; } export default class SiderMenu extends Component { static defaultProps: Partial; static getDerivedStateFromProps(props: SiderMenuProps, state: SiderMenuState): SiderMenuState | null; constructor(props: SiderMenuProps); componentDidMount(): void; isMainMenu: (key: string) => boolean; handleOpenChange: (openKeys: string[]) => void; render(): React.ReactNode; } export {};