import { EleMenusInstance } from '../ele-app/plus';
import { MenuItem } from '../ele-menus/types';
import { TabPaneItem, TabEventOption } from '../ele-tabs/types';

declare const _default: import('vue').DefineComponent<{
    height: {
        type: (StringConstructor | NumberConstructor)[];
        default: string;
    };
    headerMenus: import('vue').PropType<MenuItem[]>;
    headerActive: StringConstructor;
    sidebarMenus: import('vue').PropType<MenuItem[]>;
    sidebarActive: StringConstructor;
    sideboxMenus: import('vue').PropType<MenuItem[]>;
    sideboxActive: StringConstructor;
    tabs: import('vue').PropType<TabPaneItem[]>;
    tabActive: StringConstructor;
    levels: import('vue').PropType<import('../ele-breadcrumb/types').BreadcrumbItem[]>;
    collapse: BooleanConstructor;
    compact: BooleanConstructor;
    maximized: import('vue').PropType<import('./types').Maximized>;
    tabBar: import('vue').PropType<import('./types').TabBar>;
    breadcrumb: import('vue').PropType<boolean | import('../ele-app/plus').EleBreadcrumbProps>;
    backTop: import('vue').PropType<boolean | import('../ele-app/plus').EleBacktopProps>;
    headerMenuProps: import('vue').PropType<import('../ele-app/plus').EleMenusProps>;
    sidebarMenuProps: import('vue').PropType<import('../ele-app/plus').EleMenusProps>;
    sideboxMenuProps: import('vue').PropType<import('../ele-app/plus').EleMenusProps>;
    layout: import('vue').PropType<import('./types').Layout>;
    sidebarLayout: import('vue').PropType<import('./types').SidebarLayout>;
    headerStyle: import('vue').PropType<import('./types').HeaderStyle>;
    sidebarStyle: import('vue').PropType<import('./types').SidebarStyle>;
    tabStyle: {
        type: import('vue').PropType<import('./types').TabStyle>;
        default: string;
    };
    fixedHeader: BooleanConstructor;
    fixedSidebar: BooleanConstructor;
    fixedBody: BooleanConstructor;
    logoInHeader: BooleanConstructor;
    fixedHome: BooleanConstructor;
    homePath: StringConstructor;
    isHome: BooleanConstructor;
    tabContextMenu: import('vue').PropType<boolean | import('../ele-app/plus').EleDropdownProps>;
    tabContextMenus: import('vue').PropType<import('../ele-tabs/types').ContextMenus>;
    tabSortable: BooleanConstructor;
    headerTitleSlot: {
        type: StringConstructor;
        default: string;
    };
    headerIconSlot: {
        type: StringConstructor;
        default: string;
    };
    sidebarTitleSlot: {
        type: StringConstructor;
        default: string;
    };
    sidebarIconSlot: {
        type: StringConstructor;
        default: string;
    };
    sideboxTitleSlot: {
        type: StringConstructor;
        default: string;
    };
    sideboxIconSlot: {
        type: StringConstructor;
        default: string;
    };
    headerCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    sidebarCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    sideboxCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    tabsCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    contentCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    logoStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    logoTitleStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    headerMenusStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    sidebarMenusStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    sideboxMenusStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    logoSrc: StringConstructor;
    logoTitle: StringConstructor;
    menuScrollToActive: {
        type: BooleanConstructor;
        default: boolean;
    };
    mobile: BooleanConstructor;
}, {
    ownSlots: string[];
    tabSlots: string[];
    sidebarMenuRef: import('vue').ShallowRef<EleMenusInstance>;
    sideboxMenuRef: import('vue').ShallowRef<EleMenusInstance>;
    contentRef: import('vue').ShallowRef<HTMLElement | null>;
    modalsRef: import('vue').ShallowRef<HTMLElement | null>;
    isDisableTransition: import('vue').ShallowRef<boolean>;
    layoutHeight: import('vue').ComputedRef<string | undefined>;
    isFixedHeader: import('vue').ComputedRef<boolean>;
    isFixedSidebar: import('vue').ComputedRef<boolean>;
    isTopLayout: import('vue').ComputedRef<boolean>;
    isSideLayout: import('vue').ComputedRef<boolean>;
    isBoxSidebar: import('vue').ComputedRef<boolean>;
    isMixSidebar: import('vue').ComputedRef<boolean>;
    isMobile: import('vue').ComputedRef<boolean>;
    isHeaderLogo: import('vue').ComputedRef<boolean>;
    showHeaderMenus: import('vue').ComputedRef<boolean>;
    showHeaderTabs: import('vue').ComputedRef<boolean>;
    isDarkHeader: import('vue').ComputedRef<boolean>;
    isPrimaryHeader: import('vue').ComputedRef<boolean>;
    isButtonTab: import('vue').ComputedRef<boolean>;
    isDarkSidebar: import('vue').ComputedRef<boolean>;
    isDarkMixSidebar: import('vue').ComputedRef<boolean>;
    isGhostHeader: import('vue').ComputedRef<boolean>;
    isGhostSidebar: import('vue').ComputedRef<boolean>;
    isCollapseSidebar: import('vue').ComputedRef<boolean>;
    isCollapseMobile: import('vue').ComputedRef<boolean>;
    getContentEl: () => HTMLElement | null;
    getModalsEl: () => HTMLElement | null;
    updateCollapse: (value?: boolean) => void;
    handleLogoClick: (e: MouseEvent) => void;
    handleHeadMenuOpen: (index: string, indexPath: string[]) => void;
    handleHeadMenuClose: (index: string, indexPath: string[]) => void;
    handleHeadMenuItemClick: (item: MenuItem, e: MouseEvent) => void;
    handleHeadMenuItemMouseenter: (item: MenuItem, e: MouseEvent) => void;
    handleHeadMenuItemMouseleave: (item: MenuItem, e: MouseEvent) => void;
    handleHeadMouseenter: (e: MouseEvent) => void;
    handleHeadMouseleave: (e: MouseEvent) => void;
    handleBoxMenuItemClick: (item: MenuItem, e: MouseEvent) => void;
    handleBoxMenuItemMouseenter: (item: MenuItem, e: MouseEvent) => void;
    handleBoxMenuItemMouseleave: (item: MenuItem, e: MouseEvent) => void;
    handleBoxMouseEnter: (e: MouseEvent) => void;
    handleBoxMouseLeave: (e: MouseEvent) => void;
    handleSideMenuOpen: (index: string, indexPath: string[]) => void;
    handleSideMenuClose: (index: string, indexPath: string[]) => void;
    handleSideMenuItemClick: (item: MenuItem, e: MouseEvent) => void;
    handleSideMouseEnter: (e: MouseEvent) => void;
    handleSideMouseLeave: (e: MouseEvent) => void;
    handleTabClick: (option: TabEventOption) => void;
    handleTabRemove: (name: string) => void;
    handleTabContextMenu: (option: TabEventOption) => void;
    handleTabSortChange: (data: TabPaneItem[]) => void;
}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    'update:collapse': (_collapse: boolean) => boolean;
    logoClick: (_e: MouseEvent) => boolean;
    headMenuOpen: (_index: string, _indexPath: string[]) => boolean;
    headMenuClose: (_index: string, _indexPath: string[]) => boolean;
    headMenuItemClick: (_item: MenuItem, _e: MouseEvent) => boolean;
    headMenuItemMouseenter: (_item: MenuItem, _e: MouseEvent) => boolean;
    headMenuItemMouseleave: (_item: MenuItem, _e: MouseEvent) => boolean;
    headMouseenter: (_e: MouseEvent) => boolean;
    headMouseleave: (_e: MouseEvent) => boolean;
    boxMenuItemClick: (_item: MenuItem, _e: MouseEvent) => boolean;
    boxMenuItemMouseenter: (_item: MenuItem, _e: MouseEvent) => boolean;
    boxMenuItemMouseleave: (_item: MenuItem, _e: MouseEvent) => boolean;
    boxMouseenter: (_e: MouseEvent) => boolean;
    boxMouseleave: (_e: MouseEvent) => boolean;
    sideMenuOpen: (_index: string, _indexPath: string[]) => boolean;
    sideMenuClose: (_index: string, _indexPath: string[]) => boolean;
    sideMenuItemClick: (_item: MenuItem, _e: MouseEvent) => boolean;
    sideMouseenter: (_e: MouseEvent) => boolean;
    sideMouseleave: (_e: MouseEvent) => boolean;
    tabClick: (_option: TabEventOption) => boolean;
    tabRemove: (_name: string) => boolean;
    tabContextMenu: (_option: TabEventOption) => boolean;
    tabSortChange: (_data: TabPaneItem[]) => boolean;
    contentMounted: (_contentEl: HTMLElement, _modalsEl: HTMLElement) => boolean;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    height: {
        type: (StringConstructor | NumberConstructor)[];
        default: string;
    };
    headerMenus: import('vue').PropType<MenuItem[]>;
    headerActive: StringConstructor;
    sidebarMenus: import('vue').PropType<MenuItem[]>;
    sidebarActive: StringConstructor;
    sideboxMenus: import('vue').PropType<MenuItem[]>;
    sideboxActive: StringConstructor;
    tabs: import('vue').PropType<TabPaneItem[]>;
    tabActive: StringConstructor;
    levels: import('vue').PropType<import('../ele-breadcrumb/types').BreadcrumbItem[]>;
    collapse: BooleanConstructor;
    compact: BooleanConstructor;
    maximized: import('vue').PropType<import('./types').Maximized>;
    tabBar: import('vue').PropType<import('./types').TabBar>;
    breadcrumb: import('vue').PropType<boolean | import('../ele-app/plus').EleBreadcrumbProps>;
    backTop: import('vue').PropType<boolean | import('../ele-app/plus').EleBacktopProps>;
    headerMenuProps: import('vue').PropType<import('../ele-app/plus').EleMenusProps>;
    sidebarMenuProps: import('vue').PropType<import('../ele-app/plus').EleMenusProps>;
    sideboxMenuProps: import('vue').PropType<import('../ele-app/plus').EleMenusProps>;
    layout: import('vue').PropType<import('./types').Layout>;
    sidebarLayout: import('vue').PropType<import('./types').SidebarLayout>;
    headerStyle: import('vue').PropType<import('./types').HeaderStyle>;
    sidebarStyle: import('vue').PropType<import('./types').SidebarStyle>;
    tabStyle: {
        type: import('vue').PropType<import('./types').TabStyle>;
        default: string;
    };
    fixedHeader: BooleanConstructor;
    fixedSidebar: BooleanConstructor;
    fixedBody: BooleanConstructor;
    logoInHeader: BooleanConstructor;
    fixedHome: BooleanConstructor;
    homePath: StringConstructor;
    isHome: BooleanConstructor;
    tabContextMenu: import('vue').PropType<boolean | import('../ele-app/plus').EleDropdownProps>;
    tabContextMenus: import('vue').PropType<import('../ele-tabs/types').ContextMenus>;
    tabSortable: BooleanConstructor;
    headerTitleSlot: {
        type: StringConstructor;
        default: string;
    };
    headerIconSlot: {
        type: StringConstructor;
        default: string;
    };
    sidebarTitleSlot: {
        type: StringConstructor;
        default: string;
    };
    sidebarIconSlot: {
        type: StringConstructor;
        default: string;
    };
    sideboxTitleSlot: {
        type: StringConstructor;
        default: string;
    };
    sideboxIconSlot: {
        type: StringConstructor;
        default: string;
    };
    headerCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    sidebarCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    sideboxCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    tabsCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    contentCustomStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    logoStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    logoTitleStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    headerMenusStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    sidebarMenusStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    sideboxMenusStyle: import('vue').PropType<import('../ele-app/types').StyleValue>;
    logoSrc: StringConstructor;
    logoTitle: StringConstructor;
    menuScrollToActive: {
        type: BooleanConstructor;
        default: boolean;
    };
    mobile: BooleanConstructor;
}>> & {
    onTabClick?: ((_option: TabEventOption) => any) | undefined;
    onTabRemove?: ((_name: string) => any) | undefined;
    onTabContextMenu?: ((_option: TabEventOption) => any) | undefined;
    onTabSortChange?: ((_data: TabPaneItem[]) => any) | undefined;
    "onUpdate:collapse"?: ((_collapse: boolean) => any) | undefined;
    onLogoClick?: ((_e: MouseEvent) => any) | undefined;
    onHeadMenuOpen?: ((_index: string, _indexPath: string[]) => any) | undefined;
    onHeadMenuClose?: ((_index: string, _indexPath: string[]) => any) | undefined;
    onHeadMenuItemClick?: ((_item: MenuItem, _e: MouseEvent) => any) | undefined;
    onHeadMenuItemMouseenter?: ((_item: MenuItem, _e: MouseEvent) => any) | undefined;
    onHeadMenuItemMouseleave?: ((_item: MenuItem, _e: MouseEvent) => any) | undefined;
    onHeadMouseenter?: ((_e: MouseEvent) => any) | undefined;
    onHeadMouseleave?: ((_e: MouseEvent) => any) | undefined;
    onBoxMenuItemClick?: ((_item: MenuItem, _e: MouseEvent) => any) | undefined;
    onBoxMenuItemMouseenter?: ((_item: MenuItem, _e: MouseEvent) => any) | undefined;
    onBoxMenuItemMouseleave?: ((_item: MenuItem, _e: MouseEvent) => any) | undefined;
    onBoxMouseenter?: ((_e: MouseEvent) => any) | undefined;
    onBoxMouseleave?: ((_e: MouseEvent) => any) | undefined;
    onSideMenuOpen?: ((_index: string, _indexPath: string[]) => any) | undefined;
    onSideMenuClose?: ((_index: string, _indexPath: string[]) => any) | undefined;
    onSideMenuItemClick?: ((_item: MenuItem, _e: MouseEvent) => any) | undefined;
    onSideMouseenter?: ((_e: MouseEvent) => any) | undefined;
    onSideMouseleave?: ((_e: MouseEvent) => any) | undefined;
    onContentMounted?: ((_contentEl: HTMLElement, _modalsEl: HTMLElement) => any) | undefined;
}, {
    height: string | number;
    collapse: boolean;
    compact: boolean;
    tabStyle: import('./types').TabStyle;
    fixedHeader: boolean;
    fixedSidebar: boolean;
    fixedBody: boolean;
    logoInHeader: boolean;
    fixedHome: boolean;
    isHome: boolean;
    tabSortable: boolean;
    headerTitleSlot: string;
    headerIconSlot: string;
    sidebarTitleSlot: string;
    sidebarIconSlot: string;
    sideboxTitleSlot: string;
    sideboxIconSlot: string;
    menuScrollToActive: boolean;
    mobile: boolean;
}, {}>;
export default _default;
