import { ILocaleConfig } from './i18n/zh_cn.js'; /** * 获取语言配置 目前支持中文、英文 * 底层由 i18next 驱动:应用调用 i18next.changeLanguage("en") 后组件自动更新。 * 兼容旧模式:使用方通过 ZtxkContext.Provider 传入 locale 时会同步到 i18next。 * @returns 返回当前语言配置 */ declare function useLocale(): { Table: { serialNumber: string; total: string; dimensionTotal: string; subtotal: string; grandTotal: string; addRow: string; appendRow: string; deleteRow: string; deleteAllRows: string; confirmDeleteRow: string; confirmDeleteAll: string; fillError: string; rowRequiredError: string; rowError: string; requiredError: string; sortAscend: string; sortDescend: string; sortCancel: string; filterPlaceholder: string; filterEmptyValue: string; filterExpressionTip: string; filterSearch: string; filterReset: string; fillDown: string; fillDownTip: string; noNeedFill: string; fullscreen: string; exitFullscreen: string; toolsTip: string; pasteConfirmTitle: string; pasteExpandOk: string; pasteExpandCancel: string; subtotalTip: string; noDataToExport: string; excelTip: string; copySuccess: string; copyFailManual: string; }; Form: { search: string; reset: string; clear: string; customize: string; commonSearch: string; saveCommonSearch: string; confirmDelete: string; needFormInstance: string; inputNamePlaceholder: string; saveSuccess: string; saveFailed: string; }; FormItem: { notFilled: string; notFilledSuffix: string; }; Select: { all: string; }; EnhanceSelect: { placeholder: string; refreshData: string; }; InputNumber: {}; DatePicker: { now: string; last7Days: string; last30Days: string; lastMonth: string; thisMonth: string; lastQuarter: string; thisQuarter: string; lastYear: string; thisYear: string; }; UploadList: { duplicateFileWarning: string; emptyFileWarning: string; nonImageFileWarning: string; unsupportedFormat: string; fileSizeExceeded: string; uploadFailed: string; uploadFailedNetwork: string; addFile: string; addImage: string; maxCountTip: string; maxSizeTip: string; selectDataFirst: string; batchDownload: string; batchDownloadFailed: string; downloadFailed: string; download: string; delete: string; uploadFailedTip: string; confirmBatchDelete: string; yes: string; no: string; batchDelete: string; compress: string; noCompress: string; preview: string; uploadingError: string; uploadError: string; confirmDelete: string; noPreviewPermission: string; serialNumber: string; fileName: string; fileSize: string; uploadTime: string; uploadUser: string; uploadProgress: string; operation: string; retryUpload: string; noOriginFileError: string; previewSizeExceeded: string; }; TranslationButton: { enToZh: string; zhToEn: string; translateFile: string; viewTranslation: string; retranslate: string; apiError: string; noTaskId: string; /** 将任意语言码归一化为组件库支持的语系:zh 系(zh/zh-CN/zh-cn…)→ "zh",其余 → "en" */ translatingProgress: string; originalDoc: string; translatedDoc: string; downloadEmpty: string; }; ElectronSignatures: { yesText: string; noText: string; okText: string; serialNumber: string; requestError: string; requestFail: string; operationSuccess: string; fileLabel: string; fileTypeTitle: string; fileNameTitle: string; nameTitle: string; uploadTimeTitle: string; /** * 获取语言配置 目前支持中文、英文 * 底层由 i18next 驱动:应用调用 i18next.changeLanguage("en") 后组件自动更新。 * 兼容旧模式:使用方通过 ZtxkContext.Provider 传入 locale 时会同步到 i18next。 * @returns 返回当前语言配置 */ attachOwnerTitle: string; dateFormat: string; useElectronicSeal: string; onlyUseQunjSeal: string; addFile: string; batchDelete: string; batchPreview: string; batchPreviewTitle: string; addWatermark: string; replace: string; download: string; preview: string; previousVersion: string; downloadWatermark: string; deleteText: string; confirmDeleteRow: string; attachDefaultName: string; important: string; hasSealFile: string; hasDoubleSignFile: string; watermarkLabel: string; audited: string; unaudited: string; uploadFail: string; duplicateFile: string; emptyFile: string; unsupportedFormat: string; fileExceedSize: string; compareApiFail: string; needChooseTemplate: string; needStartCompare: string; needChooseAttachType: string; sealDiffConfirm: string; needCheckSealList: string; sealInfoChanged: string; qunjCountOverRowLimit: string; qunjCountOverLimit: string; takeOutNoAddressRow: string; takeOutNoAddress: string; needAppointSign: string; qunjContractNumMissingRow: string; qunjNoSealRow: string; qunjNoSealCountRow: string; fillContractNum: string; fillSealCount: string; fillSealCounts: string; selectQunjSeal: string; serverValidating: string; sealUnverified: string; selectFileToDelete: string; fileCannotDelete: string; existUndeletableFile: string; selectFileToPreview: string; selectDataToCompare: string; selectTwoDataToCompare: string; fmsSealLabel: string; bankSealLabel: string; openingContractSealLabel: string; stampQunjSealTitle: string; qunjSealApplyColumnTitle: string; qunjSealGroupTitle: string; selectedQunjSealTitle: string; applySealSituationTitle: string; qunjApplyCheckbox: string; sealApplyBtn: string; sealAppointBtn: string; noUseQunjSeal: string; qunjVerifyCode: string; noPermissionToView: string; codeExpired: string; retryFetch: string; refreshVerifyCode: string; querySealStatus: string; sealedFileCountLabel: string; portionUnit: string; useTypeLabel: string; internalUse: string; externalUse: string; sealAddressLabel: string; sealAddressFieldLabel: string; useSealPrefix: string; timesUnit: string; addressHangzhou: string; addressChangsha: string; inputFlowId: string; qunjCodeRequestFail: string; useCountOver4x: string; useCountOver3x: string; useCountOver2x: string; supplementTitle: string; flowTitleLabel: string; flowTitlePlaceholder: string; flowIdLabel: string; flowIdPlaceholder: string; applyEmpNoLabel: string; applyEmpNoPlaceholder: string; verifyCodeLabel: string; verifyCodeSuccess: string; verifyCodeFail: string; stampElectronSealTitle: string; selectElectronSealTitle: string; electronSealTitle: string; appointSignBtn: string; appointSignLoading: string; apiLoadingTip: string; previewSealEffect: string; contractIdNotGenerated: string; firstLevelPersonSign: string; firstLevelPersonSignWithName: string; noUseElectronSeal: string; unconfirmedSealTitle: string; noSealSelected: string; attachIdMissingRow: string; contractIdMissing: string; checkUnsealApiFail: string; getDeptInfoFail: string; downloadElectronSealFile: string; downloadDoubleSignFile: string; downloadTripleSignFile: string; packageDownload: string; downloadOneByOne: string; watermarkPackageDownload: string; watermarkDownloadOneByOne: string; batchDownloadOriginal: string; batchDownloadSealFile: string; batchDownloadDoubleSignFile: string; batchUseElectronSeal: string; batchUseElectronSealTip: string; batchUseOpeningSeal: string; batchUseOpeningSealTip: string; selectFileToDownload: string; selectSealDataToDownload: string; selectSealToDownload: string; selectDoubleSignDataToDownload: string; selectElectronSealFile: string; batchDownloadZipName: string; attachNameWithIndex: string; lastDownloadNotFinished: string; unauthorizedFiles: string; selectAuthorizedFile: string; noDownloadContent: string; downloadEmpty: string; downloadError: string; attachExtendTitle: string; compareTemplateTitle: string; fileComparisonBtn: string; customCompareTitle: string; attach1Title: string; attach2Title: string; viewCompareResult: string; chooseCompareTemplate: string; noTaskIdCompare: string; saveToTemplate: string; saveTemplate: string; addWatermarkShort: string; markImportant: string; fileComparing: string; }; CanvasTable: { emptyText: string; exportFileName: string; copy: string; exportExcel: string; fullscreen: string; exitFullscreen: string; filterSingle: string; filterRange: string; filterNumberPlaceholder: string; filterMinLabel: string; filterMinPlaceholder: string; filterMaxLabel: string; filterMaxPlaceholder: string; filterRangeExample: string; filterOk: string; filterReset: string; filterSearchPlaceholder: string; filterFuzzyTip: string; filterSelectAll: string; filterNoMatch: string; total: string; serialNumber: string; renderError: string; }; DynamicSetting: { customConfigTitle: string; dragSortHint: string; cannotSortToFront: string; cannotSortToBack: string; exclusiveConflictError: string; dependencyRequiredError: string; dependencyAnyOfError: string; autoCheckDependencyTip: string; cancel: string; reset: string; ok: string; searchPlaceholder: string; selectAll: string; selectInverse: string; dimensionConfig: string; fieldConfig: string; fixedLabel: string; fixedLeft: string; fixedRight: string; fixedNone: string; sumLabel: string; dimensionNoSelectAll: string; inputTemplateName: string; templateSetting: string; saveTemplate: string; saveTemplateSuccess: string; saveTemplateFail: string; saveSuccess: string; saveFail: string; confirmDelete: string; delete: string; templateSaveConfirmTitle: string; currentEditing: string; confirmSaveTip: string; }; AsyncDynamicSetting: { customConfigTitle: string; dragSortHint: string; cannotSortToFront: string; cannotSortToBack: string; exclusiveConflictError: string; cancel: string; reset: string; ok: string; searchPlaceholder: string; selectAll: string; selectInverse: string; dimensionConfig: string; fieldConfig: string; fixedLabel: string; fixedLeft: string; fixedRight: string; fixedNone: string; sumLabel: string; dimensionNoSelectAll: string; }; Modal: { save: string; confirmSave: string; }; Button: { confirm: string; cancel: string; downloadFail: string; exportFail: string; previewSizeLimit: string; }; OperationBtn: { more: string; yes: string; no: string; }; DetailList: { colon: string; }; Tabs: { completed: string; incomplete: string; partially: string; }; ZtTransfer: { orgStructure: string; clear: string; searchPlaceholder: string; optional: string; selected: string; }; Differences: { changeTooltip: string; }; Tree: { checkedCount: string; }; AppLayoutHeader: { close: string; closeOther: string; closeRight: string; lastTabCannotClose: string; fullscreen: string; exitFullscreen: string; accountInfo: string; changePassword: string; logout: string; loggingOut: string; userInfoTitle: string; edit: string; save: string; cancel: string; saveFailed: string; account: string; accountRequired: string; realName: string; realNameRequired: string; phone: string; phoneRequired: string; email: string; identityCard: string; changePasswordTitle: string; oldPassword: string; oldPasswordRequired: string; newPassword: string; newPasswordRequired: string; passwordRuleTip: string; confirmPassword: string; confirmPasswordRequired: string; passwordInconsistent: string; passwordChangeSuccess: string; }; AppLayoutSider: { defaultLogoTitle: string; searchPlaceholder: string; float: string; fixed: string; subMenuLogoTitle: string; }; Login: { logoTitle: string; accountLabel: string; accountRequired: string; passwordLabel: string; passwordRequired: string; captchaLabel: string; captchaRequired: string; captchaAlt: string; login: string; rememberPassword: string; forgetPassword: string; forgetPasswordTitle: string; confirmModify: string; cancel: string; usernameLabel: string; usernamePlaceholder: string; usernameRequired: string; phoneLabel: string; phonePlaceholder: string; phoneRequired: string; smsCodeLabel: string; smsCodePlaceholder: string; smsCodeRequired: string; sendCode: string; sendCodeSuccess: string; sendCodeFailed: string; newPasswordLabel: string; newPasswordPlaceholder: string; newPasswordRequired: string; passwordRuleTip: string; confirmPasswordLabel: string; confirmPasswordPlaceholder: string; confirmPasswordRequired: string; passwordInconsistent: string; passwordChangeSuccess: string; passwordChangeFailed: string; }; ChatRoom: { defaultTitle: string; searchPlaceholder: string; roomNumber: string; meetingDetail: string; meetingNameLabel: string; }; Footer: { totalPrefix: string; totalSuffix: string; }; Print: { removeWatermark: string; addWatermark: string; print: string; exportPdf: string; close: string; pageIndicator: string; }; NotRoutePage: { building: string; goHome: string; }; NotAuthPage: { noPermission: string; goHome: string; }; AuthLoading: { loading: string; }; }; /** * 非组件场景(纯函数、事件回调等无法使用 hook 的地方)获取当前语言配置。 * 读取 i18next 全局单例的当前语言,应用调用 changeLanguage 后即时生效。 * @returns 返回当前语言配置 */ declare function getLocale(): ILocaleConfig; /** * 格式化语言文案,支持 {name} 形式的插值 * @param template 语言模板,如 "第{row}行 {title} 为空!" * @param params 插值参数 * @returns 格式化后的文案 */ declare function formatLocaleText(template: string, params: Record): string; export { ILocaleConfig, useLocale as default, formatLocaleText, getLocale };