import * as React from "react";
import "./sources/up.png";
export interface UpMenuProps {
    username?: string;
    menuItems: MenuItemData[];
    topMenuItems?: TopMenuItemProps[];
    onMenuClick?: (uri: string) => boolean | void;
    onDeconnexionClick?: () => void;
    onReglagesClick?: () => void;
    onUpClick?: () => void;
    onHomeClick?: () => void;
}
export interface UpMenuState {
    open: boolean;
}
export default class UpMenuBeta extends React.Component<UpMenuProps, UpMenuState> {
    constructor(p: any, c: any);
    clickCollapse: () => void;
    render(): JSX.Element;
}
export interface SubMenuProps {
    childMenuItems?: MenuItemData[];
    onMenuClick: (uri: string) => void;
    open: boolean;
    onBranchClick: (branchId: string) => void;
    branchId: string;
    selectedBranchId: string;
}
export interface SubMenuState {
}
export declare class SubMenu extends React.Component<SubMenuProps, SubMenuState> {
    constructor(p: any, c: any);
    render(): JSX.Element;
}
export interface SubItemsProps extends MenuItemData {
    onMenuClick: (uri: string) => boolean | void;
    open: boolean;
    onBranchClick: (branchId: string) => void;
    branchId: string;
    selectedBranchId: string;
}
export interface SubItemsState {
    active: boolean;
}
export declare class SubItems extends React.Component<SubItemsProps, SubItemsState> {
    constructor(p: any, c: any);
    get anyChild(): boolean;
    get isMenuSelected(): boolean;
    onClick: (e: any) => boolean;
    onClickA: (e: any) => void;
    render(): JSX.Element;
}
export interface TopMenuProps {
    username: string;
    onDeconnexionClick: () => void;
    onReglagesClick: () => void;
    onUpClick: () => void;
    onHomeClick: () => void;
    childMenuItems: TopMenuItemProps[];
    open: boolean;
}
export interface TopMenuState {
    strSearch: string;
}
export declare class TopMenu extends React.Component<TopMenuProps, TopMenuState> {
    constructor(p: any, c: any);
    onSearchChange: (str: string) => void;
    render(): JSX.Element;
}
export interface TopMenuItemProps {
    title: string;
    action: string | (() => void);
    icon: string;
}
export interface TopMenuItemState {
}
export declare class TopMenuItem extends React.Component<TopMenuItemProps, TopMenuItemState> {
    constructor(p: any, c: any);
    render(): JSX.Element;
}
export interface LeftMenuProps {
    menuItems: MenuItemData[];
    clickCollapse: () => void;
    onMenuClick?: (uri: string) => boolean | void;
    open: boolean;
}
export interface LeftMenuState {
    selectedBranchId: string;
}
export declare class LeftMenu extends React.Component<LeftMenuProps, LeftMenuState> {
    constructor(p: any, c: any);
    onBranchClick: (branchId: string) => void;
    render(): JSX.Element;
}
export interface MenuItemData {
    title: string;
    uri: string;
    icon: string;
    isSelected: boolean;
    isVisible: boolean;
    childMenuItems?: MenuItemData[];
}
export interface MenuItemProps extends MenuItemData {
    onMenuClick?: (uri: string) => boolean | void;
    open: boolean;
    onBranchClick: (branchId: string) => void;
    branchId: string;
    selectedBranchId: string;
}
export interface MenuItemState {
    active: boolean;
}
export declare class MenuItem extends React.Component<MenuItemProps, MenuItemState> {
    constructor(p: any, c: any);
    get isMenuSelected(): boolean;
    iconClick: (e: any) => void;
    onClickA: (e: any) => void;
    render(): JSX.Element;
}
