import type { Lang } from '../../types/shared.js';
import { type CliMessageKey } from './i18n-dict.js';
export type CliLang = Lang;
/**
 * main() 在子命令 parseArgs 之前就需要拿到 lang(用于打印 unknown 提示)。
 * 早期 scan argv,支持 `--lang en` 和 `--lang=en` 两种形式。
 */
export declare function parseLangFromArgv(argv: readonly string[]): string | undefined;
/**
 * 优先级: --lang flag > OMK_LANG env > 默认 zh。
 * 不识别的值静默退回默认,避免在解析阶段抛错让用户卡住。
 */
export declare function getCliLang(flagValue?: string): CliLang;
/**
 * 缺 key 时返回 key 本身,便于在 dev / CI 中肉眼/脚本发现遗漏。
 * params 用 {name} 占位符做 string 替换。
 */
export declare function tCli(key: CliMessageKey, lang?: CliLang, params?: Record<string, string | number>): string;
/**
 * 一次拿到 i18n key 的 zh / en 两个串。oclif Command 的 static
 * description / examples 是模块加载期 evaluate 的字面量,跑不到 tCli 的 runtime
 * lang dispatch。tBoth 返回 {zh, en} 结构,配合 oclif/i18n.ts 的 bilingual()
 * 拼成带 sentinel 的串,LangAwareHelp 渲染时按 lang 切。
 */
export declare function tBoth(key: CliMessageKey, params?: Record<string, string | number>): {
    zh: string;
    en: string;
};
//# sourceMappingURL=i18n.d.ts.map