import type { RegionConfig } from './type.js'; export interface UseDetectedRegionRedirectOptions { /** * 检测到的地区代码(从 useIPRedirect 的 onDetectRegion 返回) */ detectedRegion: string | null; /** * 当前站点的地区代码 */ currentRegionCode: string; /** * 地区配置列表 */ regions: RegionConfig[]; /** * 白名单路径(在白名单中不执行跳转) */ excludePaths?: string[]; /** * 当前路径 */ pathname?: string; /** * 用户是否手动关闭了横幅(关闭横幅后不再自动跳转) */ userDismissedBanner?: boolean; /** * 自动跳转处理函数 */ onRedirect: (region: RegionConfig, isCookieRedirect?: boolean) => void | Promise; } /** * IP 检测地区跳转监听 Hook * * 监听 IP 检测到的推荐地区(来自 useIPRedirect 的 detectedRegion), * 如果检测到的地区与当前地区不匹配,自动跳转到推荐地区 * * @example * ```tsx * useDetectedRegionRedirect({ * detectedRegion, // 从 useIPRedirect 获取 * currentRegionCode, * regions, * excludePaths, * pathname, * userDismissedBanner, * onRedirect: handleAutoRedirect, // 从 useAutoRedirect 获取 * }) * ``` */ export declare function useDetectedRegionRedirect(options: UseDetectedRegionRedirectOptions): void;