import { LanguageSwitcher } from '../core/language-switcher'; import { TranslationData, LanguageSwitcherOptions } from '../types/types'; interface GetServerSidePropsContext { params?: Record; query?: Record; req?: any; } interface GetStaticPropsContext { params?: Record; query?: Record; } export declare function detectLanguageFromRequest(_context: GetServerSidePropsContext | GetStaticPropsContext): string; export declare function createNextJSLanguageSwitcher(options: LanguageSwitcherOptions, translations?: Record): LanguageSwitcher; export declare function getTranslationsForLanguage(language: string, translationFiles: Record Promise>): Promise; export declare function loadAllTranslations(languages: string[], translationFiles: Record Promise>): Promise>; export declare function createLanguageMiddleware(defaultLanguage?: string, supportedLanguages?: string[]): (req: any, res: any, next: any) => void; export declare function createLocalizedPage(getStaticProps: (_context: GetStaticPropsContext) => Promise, languages: string[]): (_context: GetStaticPropsContext) => Promise; export declare function useNextJSLanguage(): { currentLanguage: string; availableLanguages: string[]; defaultLanguage: string; changeLanguage: (newLocale: string) => void; router: null; }; export declare function createLocalizedLink(href: string, locale: string, currentLocale: string): string; export type { LanguageSwitcherOptions, TranslationData }; export { LanguageSwitcher };