export declare const HeaderRole: {
    new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('./types').HeaderRoleProps> & Readonly<{
        onLogout?: (() => any) | undefined;
        onChangeRole?: ((info: import('./types').RoleItem) => any) | undefined;
        onLogin?: (() => any) | undefined;
    }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        logout: () => any;
        changeRole: (info: import('./types').RoleItem) => any;
        login: () => any;
    }, import('vue').PublicProps, {
        loginInfo: {
            head?: string;
            nick?: string;
            isLogin?: boolean;
        };
        roleList: Array<import('./types').RoleItem>;
    }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
        popoverRef: import('vue').CreateComponentPublicInstance<Readonly<import('vue').ExtractPropTypes<{
            expandAnimation: {
                type: BooleanConstructor;
            };
            attach: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["attach"]>;
                default: import('tdesign-vue-next').TdPopupProps["attach"];
            };
            content: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["content"]>;
            };
            default: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["default"]>;
            };
            delay: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["delay"]>;
            };
            destroyOnClose: BooleanConstructor;
            disabled: BooleanConstructor;
            hideEmptyPopup: BooleanConstructor;
            overlayClassName: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayClassName"]>;
            };
            overlayInnerClassName: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayInnerClassName"]>;
            };
            overlayInnerStyle: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayInnerStyle"]>;
            };
            overlayStyle: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayStyle"]>;
            };
            placement: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["placement"]>;
                default: string;
            };
            popperOptions: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["popperOptions"]>;
            };
            showArrow: BooleanConstructor;
            trigger: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["trigger"]>;
                default: import('tdesign-vue-next').TdPopupProps["trigger"];
                validator(val: import('tdesign-vue-next').TdPopupProps["trigger"]): boolean;
            };
            triggerElement: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["triggerElement"]>;
            };
            visible: {
                type: BooleanConstructor;
                default: any;
            };
            modelValue: {
                type: BooleanConstructor;
                default: any;
            };
            defaultVisible: BooleanConstructor;
            zIndex: {
                type: NumberConstructor;
            };
            onOverlayClick: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onOverlayClick"]>;
            onScroll: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onScroll"]>;
            onScrollToBottom: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onScrollToBottom"]>;
            onVisibleChange: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onVisibleChange"]>;
        }>>, () => JSX.Element, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & Readonly<import('vue').ExtractPropTypes<{
            expandAnimation: {
                type: BooleanConstructor;
            };
            attach: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["attach"]>;
                default: import('tdesign-vue-next').TdPopupProps["attach"];
            };
            content: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["content"]>;
            };
            default: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["default"]>;
            };
            delay: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["delay"]>;
            };
            destroyOnClose: BooleanConstructor;
            disabled: BooleanConstructor;
            hideEmptyPopup: BooleanConstructor;
            overlayClassName: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayClassName"]>;
            };
            overlayInnerClassName: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayInnerClassName"]>;
            };
            overlayInnerStyle: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayInnerStyle"]>;
            };
            overlayStyle: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayStyle"]>;
            };
            placement: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["placement"]>;
                default: string;
            };
            popperOptions: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["popperOptions"]>;
            };
            showArrow: BooleanConstructor;
            trigger: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["trigger"]>;
                default: import('tdesign-vue-next').TdPopupProps["trigger"];
                validator(val: import('tdesign-vue-next').TdPopupProps["trigger"]): boolean;
            };
            triggerElement: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["triggerElement"]>;
            };
            visible: {
                type: BooleanConstructor;
                default: any;
            };
            modelValue: {
                type: BooleanConstructor;
                default: any;
            };
            defaultVisible: BooleanConstructor;
            zIndex: {
                type: NumberConstructor;
            };
            onOverlayClick: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onOverlayClick"]>;
            onScroll: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onScroll"]>;
            onScrollToBottom: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onScrollToBottom"]>;
            onVisibleChange: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onVisibleChange"]>;
        }>>, {
            disabled: boolean;
            visible: boolean;
            modelValue: boolean;
            attach: import('tdesign-vue-next').AttachNode;
            placement: import('tdesign-vue-next').PopupPlacement;
            trigger: "focus" | "click" | "mousedown" | "hover" | "context-menu";
            expandAnimation: boolean;
            destroyOnClose: boolean;
            hideEmptyPopup: boolean;
            showArrow: boolean;
            defaultVisible: boolean;
        }, true, {}, {}, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import('vue').ExtractPropTypes<{
            expandAnimation: {
                type: BooleanConstructor;
            };
            attach: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["attach"]>;
                default: import('tdesign-vue-next').TdPopupProps["attach"];
            };
            content: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["content"]>;
            };
            default: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["default"]>;
            };
            delay: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["delay"]>;
            };
            destroyOnClose: BooleanConstructor;
            disabled: BooleanConstructor;
            hideEmptyPopup: BooleanConstructor;
            overlayClassName: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayClassName"]>;
            };
            overlayInnerClassName: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayInnerClassName"]>;
            };
            overlayInnerStyle: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayInnerStyle"]>;
            };
            overlayStyle: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["overlayStyle"]>;
            };
            placement: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["placement"]>;
                default: string;
            };
            popperOptions: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["popperOptions"]>;
            };
            showArrow: BooleanConstructor;
            trigger: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["trigger"]>;
                default: import('tdesign-vue-next').TdPopupProps["trigger"];
                validator(val: import('tdesign-vue-next').TdPopupProps["trigger"]): boolean;
            };
            triggerElement: {
                type: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["triggerElement"]>;
            };
            visible: {
                type: BooleanConstructor;
                default: any;
            };
            modelValue: {
                type: BooleanConstructor;
                default: any;
            };
            defaultVisible: BooleanConstructor;
            zIndex: {
                type: NumberConstructor;
            };
            onOverlayClick: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onOverlayClick"]>;
            onScroll: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onScroll"]>;
            onScrollToBottom: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onScrollToBottom"]>;
            onVisibleChange: import('vue').PropType<import('tdesign-vue-next').TdPopupProps["onVisibleChange"]>;
        }>>, () => JSX.Element, {}, {}, {}, {
            disabled: boolean;
            visible: boolean;
            modelValue: boolean;
            attach: import('tdesign-vue-next').AttachNode;
            placement: import('tdesign-vue-next').PopupPlacement;
            trigger: "focus" | "click" | "mousedown" | "hover" | "context-menu";
            expandAnimation: boolean;
            destroyOnClose: boolean;
            hideEmptyPopup: boolean;
            showArrow: boolean;
            defaultVisible: boolean;
        }> | null;
    }, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('./types').HeaderRoleProps> & Readonly<{
        onLogout?: (() => any) | undefined;
        onChangeRole?: ((info: import('./types').RoleItem) => any) | undefined;
        onLogin?: (() => any) | undefined;
    }>, {}, {}, {}, {}, {
        loginInfo: {
            head?: string;
            nick?: string;
            isLogin?: boolean;
        };
        roleList: Array<import('./types').RoleItem>;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import('vue').ComponentOptionsBase<Readonly<import('./types').HeaderRoleProps> & Readonly<{
    onLogout?: (() => any) | undefined;
    onChangeRole?: ((info: import('./types').RoleItem) => any) | undefined;
    onLogin?: (() => any) | undefined;
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    logout: () => any;
    changeRole: (info: import('./types').RoleItem) => any;
    login: () => any;
}, string, {
    loginInfo: {
        head?: string;
        nick?: string;
        isLogin?: boolean;
    };
    roleList: Array<import('./types').RoleItem>;
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & (import('vue').VNodeProps & (import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & import('vue').Plugin));
export default HeaderRole;
export * from './types';
