import { PropType } from 'vue';
declare function __VLS_template(): {
    slots: {
        logo?(_: {}): any;
        logoSmall?(_: {}): any;
        aboveUser?(_: {}): any;
        level2Bar?(_: {}): any;
    };
    refs: {};
    attrs: Partial<{}>;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    /**
     * The navigation bar is only displayed on small screens and only if you click on the burger menu in the top bar.
     */
    navigation: {
        type: PropType<{
            name: string;
            route: string;
            icon: string;
            default: boolean;
        }[]>;
        required: true;
    };
    /**
     * The name displayed in the menu at the bottom left. Can be the username or the email
     */
    user: {
        type: StringConstructor;
        default: string;
    };
    /**
     * Source of the image of the user, path or image in base64
     */
    imageSrc: {
        type: StringConstructor;
        default: string;
    };
    /**
     * In NavigationMobileBar, this flag is set to display the menu.
     */
    mobileMenuOpen: {
        type: BooleanConstructor;
        default: boolean;
    };
    showNavigationLevel2Bar: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * if true: then replace avatar picture and usersettings with a login button
     */
    isAnonymousAccess: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    logout: (...args: any[]) => void;
    support: (...args: any[]) => void;
    settings: (...args: any[]) => void;
    "close-mobile-menu": (...args: any[]) => void;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    /**
     * The navigation bar is only displayed on small screens and only if you click on the burger menu in the top bar.
     */
    navigation: {
        type: PropType<{
            name: string;
            route: string;
            icon: string;
            default: boolean;
        }[]>;
        required: true;
    };
    /**
     * The name displayed in the menu at the bottom left. Can be the username or the email
     */
    user: {
        type: StringConstructor;
        default: string;
    };
    /**
     * Source of the image of the user, path or image in base64
     */
    imageSrc: {
        type: StringConstructor;
        default: string;
    };
    /**
     * In NavigationMobileBar, this flag is set to display the menu.
     */
    mobileMenuOpen: {
        type: BooleanConstructor;
        default: boolean;
    };
    showNavigationLevel2Bar: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * if true: then replace avatar picture and usersettings with a login button
     */
    isAnonymousAccess: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    onLogout?: ((...args: any[]) => any) | undefined;
    onSupport?: ((...args: any[]) => any) | undefined;
    onSettings?: ((...args: any[]) => any) | undefined;
    "onClose-mobile-menu"?: ((...args: any[]) => any) | undefined;
}>, {
    user: string;
    imageSrc: string;
    isAnonymousAccess: boolean;
    mobileMenuOpen: boolean;
    showNavigationLevel2Bar: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
