import * as React from 'react'; import SidebarBackButton from '../SidebarBackButton'; export interface SidebarProps { children?: React.ReactNode; classNames?: SidebarClassNames; dataHook?: string; isHidden?: boolean; skin?: SidebarSkin; selectedKey?: string; } export type SidebarSkin = 'dark' | 'light'; export type SidebarClassNames = { sideBar?: string; content?: string; slider?: string; sliderOutToLeft?: string; sliderOutToRight?: string; sliderInFromLeft?: string; sliderInFromRight?: string; }; export class SidebarItem extends React.PureComponent {} interface SidebarItemProps { children?: React.ReactNode; itemKey?: string; innerMenu?: React.ReactNode[]; disable?: boolean; onClick?: (itemKey: string, e: React.MouseEvent) => void; } export class SidebarPersistentHeader extends React.Component {} interface SidebarPersistentHeaderProps {} export class SidebarPersistentFooter extends React.Component {} interface SidebarPersistentFooterProps {} export class SidebarContextConsumer extends React.Component {} interface SidebarContextConsumerProps { children(renderProps: { itemClicked: (itemKey: string) => void; backClicked: () => void; getSelectedKey: () => string; getSkin: () => SidebarSkin; getIsMenuExpanded: () => boolean; }): React.ReactNode; } export class SidebarItemContextConsumer extends React.Component {} interface SidebarItemContextConsumerProps { children(renderProps: { selected: () => boolean; getIsMenuExpanded: () => boolean; }): React.ReactNode; } export default class Sidebar extends React.Component { static Item: typeof SidebarItem; static PersistentHeader: typeof SidebarPersistentHeader; static PersistentFooter: typeof SidebarPersistentFooter; static BackButton: typeof SidebarBackButton; setSelectedKey: (setSelectedKey: string) => void; }