/** * Language type for LanguageSwitcher component */ export interface Language { code: string; name: string; nativeName: string; flag: string; } /** * Hook return type */ export interface UseLanguagesReturn { /** Languages formatted for LanguageSwitcher */ languages: Language[]; /** Whether languages are loading */ isLoading: boolean; /** Error message if fetch failed */ error: string | null; /** Refetch languages from API */ refetch: () => void; /** Default language code */ defaultLanguageCode: string; } export interface UseLanguagesOptions { /** * When true, fetch on mount. Default: false — the hook is lazy so the * global-header batch on first paint doesn't pay for a query whose * results are only needed when the user actually opens the language * picker dropdown. Consumers should call `refetch()` from the * dropdown's `onMouseDown` / `onFocus` handler instead. */ autoFetch?: boolean; } /** * useLanguages Hook * * Fetches languages from the i18n service and formats them for the LanguageSwitcher component. * Includes flag emojis based on language code or region. * Defaults to English if no languages are available. */ export declare function useLanguages(options?: UseLanguagesOptions): UseLanguagesReturn; //# sourceMappingURL=useLanguages.d.ts.map