/**
 * 国际化路由加载器集成
 * 为 React Router v7 提供国际化支持
 */
import type { LoaderFunctionArgs } from 'react-router';
import type { I18nClient } from './i18n';
import type { PageHandle, I18nHandle, I18nRouteLoaderOptions, EnhanceRoutesI18nOptions } from './types';
/**
 * 创建国际化路由 loader
 * 用于在路由加载时预加载所需的翻译资源
 */
export declare function createI18nRouteLoader(i18nClient: I18nClient, options?: I18nRouteLoaderOptions): ({ request, params }: LoaderFunctionArgs) => Promise<{
    locale: string;
    i18nLoaded: boolean;
}>;
/**
 * 创建带国际化的 defer loader
 * 支持 React Router v7 的 defer 功能
 */
export declare function createDeferredI18nLoader(i18nClient: I18nClient, dataLoader?: (args: LoaderFunctionArgs) => Promise<unknown>): ({ request, params }: LoaderFunctionArgs) => Promise<{
    locale: string;
    i18n: Promise<Record<string, Record<string, unknown>>>;
    data: Promise<unknown>;
} | {
    locale: string;
    i18n: Promise<Record<string, Record<string, unknown>>>;
    data?: undefined;
}>;
/**
 * 国际化路由 handle 增强
 * 自动处理页面标题的国际化
 */
export declare function createI18nHandle<Keys extends string = string>(baseHandle?: Partial<PageHandle<Keys>>): I18nHandle<Keys>;
/**
 * 创建国际化路由配置
 * 为现有路由配置添加国际化支持
 */
export declare function enhanceRoutesWithI18n(routes: Record<string, unknown>[], i18nClient: I18nClient, options?: EnhanceRoutesI18nOptions): Record<string, unknown>[];
/**
 * Hook: 在组件中使用路由国际化数据
 * 获取路由加载器提供的国际化数据和辅助方法
 */
export declare function useRouteI18n(): {
    /** 当前语言 */
    locale: string;
    /** 国际化资源是否已加载 */
    isLoaded: boolean;
    /** 获取当前路径的语言参数 */
    getLocaleFromPath: () => string | null;
    /** 切换语言的 URL 生成器 */
    getLocalizedUrl: (newLocale: string) => string;
    /** 等待国际化资源加载完成 */
    waitForI18n: () => Promise<void>;
};
/**
 * 导出类型定义
 */
export type { LoaderFunctionArgs };
//# sourceMappingURL=i18n-route-loader.d.ts.map