import type { ComputedRef, ExtractPropTypes, PropType, VNodeChild } from 'vue'; import type { MaybeArray } from '../../_utils'; import type { HeaderMenuOption, HeaderProps as HeaderPropsInterface, HeaderSearchResult, LangOption } from './interface'; export type HeaderSetupProps = ExtractPropTypes; export type HeaderProps = Partial; export declare const headerProps: { menuOptions: { type: PropType; default: () => never[]; }; langOptions: { type: PropType; default: () => LangOption[]; }; defaultLang: { type: PropType; }; menuPlacement: { type: PropType; default: string; }; menuTrigger: { type: PropType; default: string; }; menuValue: { type: PropType; }; activeMenuKey: { type: PropType; default: null; }; menuTabsProps: { type: PropType; default: () => {}; }; menuCardMinColumnWidth: { type: PropType; default: number; }; logoSrc: { type: PropType; default: () => string; }; logoAlt: { type: PropType; default: string; }; responsive: { type: PropType; default: boolean; }; isMobile: { type: PropType; default: boolean; }; mobileMenuType: { type: PropType<"drawer" | "dropdown">; default: string; }; mobileActionsCollapse: { type: PropType; default: boolean; }; mobileShowFooterActions: { type: PropType; default: boolean; }; mobilePrimaryActionText: { type: PropType; default: undefined; }; mobileSecondaryActionText: { type: PropType; default: undefined; }; mobileShowHeaderActions: { type: PropType; default: boolean; }; actionsProps: { type: PropType; }; onSearch: PropType; 'onUpdate:menuValue': PropType void>>; onUpdateMenuValue: PropType>; 'onUpdate:activeMenuKey': PropType void>>; onUpdateActiveMenuKey: PropType void>>; theme: PropType>; themeOverrides: PropType>>; builtinThemeOverrides: PropType>>; }; declare const _default: import("vue").DefineComponent; default: () => never[]; }; langOptions: { type: PropType; default: () => LangOption[]; }; defaultLang: { type: PropType; }; menuPlacement: { type: PropType; default: string; }; menuTrigger: { type: PropType; default: string; }; menuValue: { type: PropType; }; activeMenuKey: { type: PropType; default: null; }; menuTabsProps: { type: PropType; default: () => {}; }; menuCardMinColumnWidth: { type: PropType; default: number; }; logoSrc: { type: PropType; default: () => string; }; logoAlt: { type: PropType; default: string; }; responsive: { type: PropType; default: boolean; }; isMobile: { type: PropType; default: boolean; }; mobileMenuType: { type: PropType<"drawer" | "dropdown">; default: string; }; mobileActionsCollapse: { type: PropType; default: boolean; }; mobileShowFooterActions: { type: PropType; default: boolean; }; mobilePrimaryActionText: { type: PropType; default: undefined; }; mobileSecondaryActionText: { type: PropType; default: undefined; }; mobileShowHeaderActions: { type: PropType; default: boolean; }; actionsProps: { type: PropType; }; onSearch: PropType; 'onUpdate:menuValue': PropType void>>; onUpdateMenuValue: PropType>; 'onUpdate:activeMenuKey': PropType void>>; onUpdateActiveMenuKey: PropType void>>; theme: PropType>; themeOverrides: PropType>>; builtinThemeOverrides: PropType>>; }>, { mergedClsPrefix: import("vue").Ref; cssVars: ComputedRef<{ '--u-bezier': string; '--u-font-size': string; '--u-font-title-small': string; '--u-header-text-color': string; '--u-header-bg-color': string; '--u-header-radius': string; '--u-header-shadow': string; '--u-header-navigation-gap': string; '--u-header-action-gap': string; '--u-header-tab-text-color': string; '--u-header-tab-text-color-hover': string; '--u-header-tab-text-color-active': string; '--u-header-tab-indicator-color': string; '--u-header-card-bg-color': string; '--u-header-card-radius': string; '--u-header-card-title-color': string; '--u-header-card-item-color': string; '--u-header-card-item-hover-color': string; '--u-header-card-divider-color': string; '--u-header-card-gap': string; '--u-header-card-padding': string; '--u-header-card-shadow': string; '--u-header-badge-bg-color': string; '--u-header-badge-text-color': string; '--u-header-action-icon-color': string; '--u-header-action-icon-hover-color': string; '--u-header-card-min-col-width': string; '--u-header-mobile-border-color': string; '--u-header-mobile-item-hover-color': string; '--u-header-mobile-item-pressed-color': string; '--u-header-mobile-item-active-color': string; '--u-header-mobile-group-item-color': string; }>; themeClass: import("vue").Ref; normalizedMenuItems: ComputedRef<{ option: HeaderMenuOption; key: string | number; }[]>; mergedMenuValue: ComputedRef; currentLang: import("vue").Ref<{ label: string | (() => VNodeChild); key: string | number; icon?: (() => VNodeChild) | undefined; }, LangOption | { label: string | (() => VNodeChild); key: string | number; icon?: (() => VNodeChild) | undefined; }>; isMobile: import("vue").Ref; mobileMenuVisible: import("vue").Ref; searchVisible: import("vue").Ref; menuPaneClass: ComputedRef; menuPaneWrapperClass: ComputedRef; mergedActiveMenuKey: ComputedRef; handleSelectLang: (key: string | number) => void; handleMenuValueUpdate: (value: string | number | null) => void; handleSearchClick: () => void; handleSearchClose: () => void; handleSearch: (query: string) => Promise; handleSearchResultSelect: (result: HeaderSearchResult) => void; handlePreviewClick: () => void; handleLogoutClick: () => void; handleLogoClick: () => void; toggleMobileMenu: () => void; closeMobileMenu: () => void; handleMobileMenuItemClick: (option: HeaderMenuOption) => void; handleMobilePrimaryAction: () => void; handleMobileSecondaryAction: () => void; handleUpdateActiveMenuKey: (value: string | number | null) => void; onRender: () => void; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ["search", "search-result-select", "preview", "logout", "language-select", "logo-click", "mobile-primary-action", "mobile-secondary-action", "update:activeMenuKey"], "search" | "logout" | "preview" | "search-result-select" | "language-select" | "logo-click" | "mobile-primary-action" | "mobile-secondary-action" | "update:activeMenuKey", import("vue").PublicProps, Readonly; default: () => never[]; }; langOptions: { type: PropType; default: () => LangOption[]; }; defaultLang: { type: PropType; }; menuPlacement: { type: PropType; default: string; }; menuTrigger: { type: PropType; default: string; }; menuValue: { type: PropType; }; activeMenuKey: { type: PropType; default: null; }; menuTabsProps: { type: PropType; default: () => {}; }; menuCardMinColumnWidth: { type: PropType; default: number; }; logoSrc: { type: PropType; default: () => string; }; logoAlt: { type: PropType; default: string; }; responsive: { type: PropType; default: boolean; }; isMobile: { type: PropType; default: boolean; }; mobileMenuType: { type: PropType<"drawer" | "dropdown">; default: string; }; mobileActionsCollapse: { type: PropType; default: boolean; }; mobileShowFooterActions: { type: PropType; default: boolean; }; mobilePrimaryActionText: { type: PropType; default: undefined; }; mobileSecondaryActionText: { type: PropType; default: undefined; }; mobileShowHeaderActions: { type: PropType; default: boolean; }; actionsProps: { type: PropType; }; onSearch: PropType; 'onUpdate:menuValue': PropType void>>; onUpdateMenuValue: PropType>; 'onUpdate:activeMenuKey': PropType void>>; onUpdateActiveMenuKey: PropType void>>; theme: PropType>; themeOverrides: PropType>>; builtinThemeOverrides: PropType>>; }>> & Readonly<{ onSearch?: ((...args: any[]) => any) | undefined; onPreview?: ((...args: any[]) => any) | undefined; onLogout?: ((...args: any[]) => any) | undefined; "onUpdate:activeMenuKey"?: ((...args: any[]) => any) | undefined; "onSearch-result-select"?: ((...args: any[]) => any) | undefined; "onLanguage-select"?: ((...args: any[]) => any) | undefined; "onLogo-click"?: ((...args: any[]) => any) | undefined; "onMobile-primary-action"?: ((...args: any[]) => any) | undefined; "onMobile-secondary-action"?: ((...args: any[]) => any) | undefined; }>, { responsive: boolean | undefined; menuTrigger: import("./interface").HeaderMenuTrigger | undefined; menuOptions: HeaderMenuOption[] | undefined; langOptions: LangOption[] | undefined; menuPlacement: import("./interface").HeaderMenuPlacement | undefined; activeMenuKey: string | number | null | undefined; menuTabsProps: Partial | undefined; menuCardMinColumnWidth: string | number | undefined; logoSrc: string | undefined; logoAlt: string | undefined; isMobile: boolean | undefined; mobileActionsCollapse: boolean | undefined; mobileShowFooterActions: boolean | undefined; mobilePrimaryActionText: string | undefined; mobileSecondaryActionText: string | undefined; mobileShowHeaderActions: boolean | undefined; mobileMenuType: "drawer" | "dropdown"; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default _default;