@eddyskywalker/dsh-chatgpt-subscription 0.31.0 → 0.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/README.md +112 -1
  3. package/lib/client.js +34731 -3832
  4. package/lib/client.js.map +1 -1
  5. package/lib/index.js +12922 -2851
  6. package/lib/types/client/cline-pass/ClinePassComposerQuota.d.ts +20 -0
  7. package/lib/types/client/cline-pass/ClinePassComposerQuota.d.ts.map +1 -0
  8. package/lib/types/client/cline-pass/ClinePassSection.d.ts +17 -0
  9. package/lib/types/client/cline-pass/ClinePassSection.d.ts.map +1 -0
  10. package/lib/types/client/cline-pass/api.d.ts +84 -0
  11. package/lib/types/client/cline-pass/api.d.ts.map +1 -0
  12. package/lib/types/client/cline-pass/locales.d.ts +1025 -0
  13. package/lib/types/client/cline-pass/locales.d.ts.map +1 -0
  14. package/lib/types/client/cline-pass/styles.d.ts +7 -0
  15. package/lib/types/client/cline-pass/styles.d.ts.map +1 -0
  16. package/lib/types/client/hub/brand-icons.d.ts +18 -2
  17. package/lib/types/client/hub/brand-icons.d.ts.map +1 -1
  18. package/lib/types/client/hub/hub-styles.d.ts.map +1 -1
  19. package/lib/types/client/hub/providers.d.ts.map +1 -1
  20. package/lib/types/client/index.d.ts +4 -0
  21. package/lib/types/client/index.d.ts.map +1 -1
  22. package/lib/types/client/mermaid/renderer.d.ts +23 -0
  23. package/lib/types/client/mermaid/renderer.d.ts.map +1 -1
  24. package/lib/types/client/minimax-code/MinimaxVideoDocumentBody.d.ts +31 -14
  25. package/lib/types/client/minimax-code/MinimaxVideoDocumentBody.d.ts.map +1 -1
  26. package/lib/types/client/minimax-code/MinimaxVideoToolView.d.ts.map +1 -1
  27. package/lib/types/client/minimax-code/VideoFormDialog.d.ts +46 -50
  28. package/lib/types/client/minimax-code/VideoFormDialog.d.ts.map +1 -1
  29. package/lib/types/client/minimax-code/locales.d.ts +80 -20
  30. package/lib/types/client/minimax-code/locales.d.ts.map +1 -1
  31. package/lib/types/client/minimax-code/styles.d.ts.map +1 -1
  32. package/lib/types/client/minimax-code/video-command-host.d.ts +17 -11
  33. package/lib/types/client/minimax-code/video-command-host.d.ts.map +1 -1
  34. package/lib/types/client/minimax-code/video-command-icon.d.ts +38 -0
  35. package/lib/types/client/minimax-code/video-command-icon.d.ts.map +1 -0
  36. package/lib/types/client/minimax-code/video-command.d.ts +53 -59
  37. package/lib/types/client/minimax-code/video-command.d.ts.map +1 -1
  38. package/lib/types/client/minimax-code/video-contract.d.ts +36 -0
  39. package/lib/types/client/minimax-code/video-contract.d.ts.map +1 -1
  40. package/lib/types/client/minimax-code/video-media-dropzone.d.ts +57 -0
  41. package/lib/types/client/minimax-code/video-media-dropzone.d.ts.map +1 -0
  42. package/lib/types/client/minimax-code/video-media-input.d.ts +173 -0
  43. package/lib/types/client/minimax-code/video-media-input.d.ts.map +1 -0
  44. package/lib/types/client/minimax-code/video-presets.d.ts +67 -0
  45. package/lib/types/client/minimax-code/video-presets.d.ts.map +1 -0
  46. package/lib/types/client/minimax-code/video-slots.d.ts +58 -5
  47. package/lib/types/client/minimax-code/video-slots.d.ts.map +1 -1
  48. package/lib/types/client/minimax-code/video-workspace.d.ts +41 -0
  49. package/lib/types/client/minimax-code/video-workspace.d.ts.map +1 -0
  50. package/lib/types/client/progress-updates/markdown-lite.d.ts +19 -6
  51. package/lib/types/client/progress-updates/markdown-lite.d.ts.map +1 -1
  52. package/lib/types/client/qoder/QoderComposerQuota.d.ts +41 -0
  53. package/lib/types/client/qoder/QoderComposerQuota.d.ts.map +1 -0
  54. package/lib/types/client/qoder/QoderSection.d.ts +26 -0
  55. package/lib/types/client/qoder/QoderSection.d.ts.map +1 -0
  56. package/lib/types/client/qoder/api.d.ts +4 -0
  57. package/lib/types/client/qoder/api.d.ts.map +1 -0
  58. package/lib/types/client/qoder/locales.d.ts +310 -0
  59. package/lib/types/client/qoder/locales.d.ts.map +1 -0
  60. package/lib/types/client/qoder/styles.d.ts +16 -0
  61. package/lib/types/client/qoder/styles.d.ts.map +1 -0
  62. package/lib/types/client/qoder/useQoderSection.d.ts +97 -0
  63. package/lib/types/client/qoder/useQoderSection.d.ts.map +1 -0
  64. package/lib/types/host/antigravity/adapter.d.ts.map +1 -1
  65. package/lib/types/host/cline-pass/account-pool.d.ts +63 -0
  66. package/lib/types/host/cline-pass/account-pool.d.ts.map +1 -0
  67. package/lib/types/host/cline-pass/adapter.d.ts +49 -0
  68. package/lib/types/host/cline-pass/adapter.d.ts.map +1 -0
  69. package/lib/types/host/cline-pass/catalog.d.ts +49 -0
  70. package/lib/types/host/cline-pass/catalog.d.ts.map +1 -0
  71. package/lib/types/host/cline-pass/client.d.ts +118 -0
  72. package/lib/types/host/cline-pass/client.d.ts.map +1 -0
  73. package/lib/types/host/cline-pass/engine.d.ts +223 -0
  74. package/lib/types/host/cline-pass/engine.d.ts.map +1 -0
  75. package/lib/types/host/cline-pass/line.d.ts +55 -0
  76. package/lib/types/host/cline-pass/line.d.ts.map +1 -0
  77. package/lib/types/host/cline-pass/mapper.d.ts +112 -0
  78. package/lib/types/host/cline-pass/mapper.d.ts.map +1 -0
  79. package/lib/types/host/cline-pass/oauth.d.ts +134 -0
  80. package/lib/types/host/cline-pass/oauth.d.ts.map +1 -0
  81. package/lib/types/host/cline-pass/protocol.d.ts +186 -0
  82. package/lib/types/host/cline-pass/protocol.d.ts.map +1 -0
  83. package/lib/types/host/cline-pass/routes.d.ts +71 -0
  84. package/lib/types/host/cline-pass/routes.d.ts.map +1 -0
  85. package/lib/types/host/cline-pass/store.d.ts +97 -0
  86. package/lib/types/host/cline-pass/store.d.ts.map +1 -0
  87. package/lib/types/host/cline-pass/token-store.d.ts +168 -0
  88. package/lib/types/host/cline-pass/token-store.d.ts.map +1 -0
  89. package/lib/types/host/cline-pass/tools.d.ts +21 -0
  90. package/lib/types/host/cline-pass/tools.d.ts.map +1 -0
  91. package/lib/types/host/cline-pass/types.d.ts +168 -0
  92. package/lib/types/host/cline-pass/types.d.ts.map +1 -0
  93. package/lib/types/host/common/model-request-control.d.ts +1 -1
  94. package/lib/types/host/common/model-request-control.d.ts.map +1 -1
  95. package/lib/types/host/common/request-diagnostics.d.ts +1 -1
  96. package/lib/types/host/common/request-diagnostics.d.ts.map +1 -1
  97. package/lib/types/host/kimi-code/adapter.d.ts +3 -1
  98. package/lib/types/host/kimi-code/adapter.d.ts.map +1 -1
  99. package/lib/types/host/kimi-code/mapper.d.ts.map +1 -1
  100. package/lib/types/host/qoder/account-pool.d.ts +137 -0
  101. package/lib/types/host/qoder/account-pool.d.ts.map +1 -0
  102. package/lib/types/host/qoder/adapter.d.ts +134 -0
  103. package/lib/types/host/qoder/adapter.d.ts.map +1 -0
  104. package/lib/types/host/qoder/adopt.d.ts +146 -0
  105. package/lib/types/host/qoder/adopt.d.ts.map +1 -0
  106. package/lib/types/host/qoder/client.d.ts +189 -0
  107. package/lib/types/host/qoder/client.d.ts.map +1 -0
  108. package/lib/types/host/qoder/cosy.d.ts +173 -0
  109. package/lib/types/host/qoder/cosy.d.ts.map +1 -0
  110. package/lib/types/host/qoder/mapper.d.ts +235 -0
  111. package/lib/types/host/qoder/mapper.d.ts.map +1 -0
  112. package/lib/types/host/qoder/model-catalog.d.ts +185 -0
  113. package/lib/types/host/qoder/model-catalog.d.ts.map +1 -0
  114. package/lib/types/host/qoder/oauth.d.ts +134 -0
  115. package/lib/types/host/qoder/oauth.d.ts.map +1 -0
  116. package/lib/types/host/qoder/routes.d.ts +96 -0
  117. package/lib/types/host/qoder/routes.d.ts.map +1 -0
  118. package/lib/types/host/qoder/token-store.d.ts +231 -0
  119. package/lib/types/host/qoder/token-store.d.ts.map +1 -0
  120. package/lib/types/host/qoder/types.d.ts +257 -0
  121. package/lib/types/host/qoder/types.d.ts.map +1 -0
  122. package/lib/types/host/workbuddy/adapter.d.ts.map +1 -1
  123. package/lib/types/host/workbuddy/mapper.d.ts +1 -0
  124. package/lib/types/host/workbuddy/mapper.d.ts.map +1 -1
  125. package/lib/types/index.d.ts +17 -0
  126. package/lib/types/index.d.ts.map +1 -1
  127. package/lib/types/shared/cline-pass-contracts.d.ts +267 -0
  128. package/lib/types/shared/cline-pass-contracts.d.ts.map +1 -0
  129. package/lib/types/shared/qoder-contracts.d.ts +293 -0
  130. package/lib/types/shared/qoder-contracts.d.ts.map +1 -0
  131. package/package.json +2 -1
@@ -0,0 +1,1025 @@
1
+ export declare const NS_CLINE_PASS = "dsh-cline-pass";
2
+ export declare const zh: {
3
+ readonly relogin: "重新登录";
4
+ readonly needsRelogin: "登录已失效";
5
+ readonly addAccount: "添加账号";
6
+ readonly noAccounts: "暂无账号。点击「登录 Cline 账号」完成浏览器授权,或用「使用 API Key」粘贴旧 Key。";
7
+ readonly title: "Cline Pass";
8
+ readonly pageDesc: "接入 Cline Pass 订阅:浏览器设备码登录 Cline 账号,多账号自动轮换、额度读取与首 token 前故障转移。";
9
+ readonly login: "登录 Cline 账号";
10
+ readonly loggingIn: "登录中...";
11
+ readonly loginTitle: "登录 Cline 账号";
12
+ readonly loginHint: "在浏览器中打开登录页并确认下方代码;确认后账号会自动加入号池,无需再粘贴 Key。";
13
+ readonly loginCode: "登录代码";
14
+ readonly loginOpen: "打开登录页";
15
+ readonly loginWaiting: "等待浏览器确认…";
16
+ readonly loginCancel: "取消登录";
17
+ readonly loginIdle: "尚未开始登录。";
18
+ readonly loginHaveAccounts: "号池已有 {count} 个账号可用。";
19
+ readonly loginComplete: "已登录:{account}";
20
+ readonly loginCompleteNoAccount: "上次登录已完成,但当前号池中没有可用账号。";
21
+ readonly loginFailed: "登录失败:{detail}";
22
+ readonly useApiKey: "使用 API Key";
23
+ readonly oauthAccount: "OAuth 登录";
24
+ readonly apiKeyAccount: "API Key";
25
+ readonly routeOwned: "模型路由由本插件提供";
26
+ readonly routeConflict: "模型路由已被其他 Provider 占用:{detail}。请在 DSH 设置中移除重复的 Provider 配置后重试。";
27
+ readonly error: "操作失败:{detail}";
28
+ readonly keySection: "添加 API Key";
29
+ readonly keyHint: "在 Cline 账号页面创建 API Key 后粘贴到此处。Key 不会过期,可随时在账号页吊销。";
30
+ readonly keyPlaceholder: "粘贴 Cline Pass API Key";
31
+ readonly keyAliasLabel: "备注名(可选)";
32
+ readonly keyAliasPlaceholder: "例如:主号、备用号";
33
+ readonly keyAliasHint: "Cline 不返回账号信息,多个 Key 靠备注名区分。";
34
+ readonly keyBaseUrlLabel: "网关地址覆盖(可选)";
35
+ readonly keyBaseUrlPlaceholder: "默认 https://api.cline.bot/api/v1";
36
+ readonly keySave: "添加";
37
+ readonly keySaving: "添加中...";
38
+ readonly keyTest: "测试 Key";
39
+ readonly cancel: "取消";
40
+ readonly keyTesting: "测试中...";
41
+ readonly keyTestOk: "Key 可用({ms}ms)";
42
+ readonly keyTestFailed: "Key 不可用:{detail}";
43
+ readonly testSavedKey: "测试";
44
+ readonly modelsSection: "模型";
45
+ readonly modelsHint: "模型列表来自官方订阅目录;首次使用前先刷新一次。未勾选的模型不会出现在模型选择器中。";
46
+ readonly modelCount: "{count} 个模型";
47
+ readonly modelChecklistCount: "已选 {count} / 共 {total} 个模型";
48
+ readonly selectAll: "全选";
49
+ readonly unselectAll: "全不选";
50
+ readonly catalogSync: "刷新模型目录";
51
+ readonly catalogSyncing: "刷新中...";
52
+ readonly catalogNeverSynced: "尚未同步官方模型目录。点右上角「刷新模型目录」获取当前订阅的模型;在此之前只显示随包内置的模型。";
53
+ readonly catalogEmpty: "官方目录没有返回任何模型。";
54
+ readonly noModels: "暂无可用模型。";
55
+ readonly catalogSources: "目录来源:{sources}";
56
+ readonly contextSection: "上下文窗口";
57
+ readonly contextHint: "只对勾选的模型显示。留空或保存无效值会提示错误;恢复默认会清掉覆盖值。";
58
+ readonly tokens: "tokens";
59
+ readonly contextSave: "保存";
60
+ readonly contextOverridden: "已覆盖";
61
+ readonly contextSaving: "保存中";
62
+ readonly contextReset: "恢复默认";
63
+ readonly contextResetAll: "全部恢复默认";
64
+ readonly contextEmpty: "勾选至少一个模型后,这里会出现它的上下文窗口设置。";
65
+ readonly routingSection: "上游渠道";
66
+ readonly routingHint: "首次使用某模型前先「探测」获取渠道,再「校验」确认渠道确实采用了钉住规则。点击渠道名按顺序钉住,点 ⊘ 排除。";
67
+ readonly probe: "探测";
68
+ readonly probing: "探测中...";
69
+ readonly validate: "校验";
70
+ readonly validating: "校验中...";
71
+ readonly testPin: "测试";
72
+ readonly testingPin: "测试中...";
73
+ readonly savePin: "保存钉住";
74
+ readonly savingPin: "保存中...";
75
+ readonly resetPin: "恢复自动路由";
76
+ readonly pinAuto: "自动路由";
77
+ readonly pinPinned: "钉住顺序:{list}";
78
+ readonly pinExcluded: "已排除:{list}";
79
+ readonly pinMode: "钉住模式";
80
+ readonly sort: "排序";
81
+ readonly sortNone: "不排序";
82
+ readonly sortCost: "成本优先";
83
+ readonly sortTtft: "首 token 优先";
84
+ readonly sortTps: "吞吐优先";
85
+ readonly modeStrict: "严格(只允许钉住的渠道)";
86
+ readonly modePreferred: "优先(按顺序尝试,失败自动切换)";
87
+ readonly noChannels: "尚未探测渠道。点「探测」获取这个模型的可用上游。";
88
+ readonly channelHint: "点击渠道名按顺序钉住;再次点击移除。⊘ 切换排除。";
89
+ readonly lastServed: "最近由 {provider} 服务({ms}ms)";
90
+ readonly probedAt: "探测于 {time}";
91
+ readonly pipeline: "管线:{pipeline}";
92
+ readonly notPinnable: "该模型当前不支持钉住";
93
+ readonly testServed: "测试成功:由 {provider} 服务({ms}ms)";
94
+ readonly testFailed: "测试失败:{detail}";
95
+ readonly testTrace: "尝试轨迹";
96
+ readonly warnings: "警告";
97
+ readonly probeResult: "探测结果";
98
+ readonly validateSummary: "校验结果:可用 {ok} / 限流 {limited} / 不可钉 {bad} / 认证失败 {auth} / 未知 {unknown}";
99
+ readonly usageSection: "官方额度";
100
+ readonly usageHint: "额度属于账号,不属于线路。刷新会为每个可用账号各发一次请求。";
101
+ readonly usageRefresh: "刷新额度";
102
+ readonly usageRefreshing: "刷新中...";
103
+ readonly usageEmpty: "尚未读取额度。";
104
+ readonly usageNone: "尚无额度数据";
105
+ readonly usageUnavailable: "读不到官方额度:{detail}";
106
+ readonly usageWindow: "{label}:已用 {percent}%";
107
+ readonly usageResets: "重置:{when}";
108
+ readonly historySection: "请求历史";
109
+ readonly historyHint: "仅保存在当前进程内存中,重启后清空。";
110
+ readonly historyRefresh: "刷新历史";
111
+ readonly historyEmpty: "本进程还没有记录到模型请求。";
112
+ readonly historyCount: "最近 {count} / {total} 次请求";
113
+ readonly historyModel: "模型";
114
+ readonly historyLatency: "首 token / 总耗时";
115
+ readonly historyTokens: "token";
116
+ readonly historyError: "错误";
117
+ readonly historyAccount: "账号";
118
+ readonly advancedSection: "高级设置";
119
+ readonly baseURL: "默认网关地址";
120
+ readonly defaultContextWindow: "默认上下文窗口";
121
+ readonly defaultMaxTokens: "默认输出预算";
122
+ readonly maxConcurrentRequests: "每账号并发流上限(0 = 不限)";
123
+ readonly streamIdleTimeoutMs: "流空闲超时(ms)";
124
+ readonly historyLimit: "历史保留条数";
125
+ readonly exposeCatalog: "在模型选择器中列出网关目录的额外模型";
126
+ readonly exposeCatalogHint: "关闭时只列出官方订阅目录与随包内置模型。";
127
+ readonly pinSpelling: "钉住字段写法";
128
+ readonly pinSpellingBoth: "两种写法都发(推荐)";
129
+ readonly pinSpellingDetected: "只发探测到的写法";
130
+ readonly pinSpellingHint: "网关可能在两次请求间切换管线,只发一种写法会让钉住悄悄失效。";
131
+ readonly exposeTools: "注册 cline_pass_* 管理工具";
132
+ readonly exposeToolsHint: "工具定义会出现在每次请求的工具列表里,默认关闭。改动需重启 DSH 生效。";
133
+ readonly saveSettings: "保存设置";
134
+ readonly savingSettings: "保存中...";
135
+ readonly saved: "已保存";
136
+ readonly restartRequired: "已保存;管理工具需重启 DSH 后生效。";
137
+ readonly limitsSection: "说明";
138
+ readonly limitKey: "API Key 存储在系统加密凭据库中,界面只显示掩码。";
139
+ readonly limitGateway: "请求经 Cline 网关转发,实际服务渠道由网关决定;钉住不保证每次都被采用,面板会读回真实渠道。";
140
+ readonly limitRoute: "模型路由按 provider id 抢占:若已有其他插件占用 cline-pass,本卡仍可配置,但请求由对方服务。";
141
+ readonly limitQuota: "额度窗口来自网关的 usage-limits 接口;接口失败时卡片保留上一次读数并显示原因。";
142
+ readonly accountPool: string;
143
+ readonly accountCount: string;
144
+ readonly primaryAccount: string;
145
+ readonly activeAccount: string;
146
+ readonly setPrimary: string;
147
+ readonly deleteAccount: string;
148
+ readonly cooling: string;
149
+ readonly cooldownLeft: string;
150
+ readonly cooldownRemaining: string;
151
+ readonly cooldownRemainingSeconds: string;
152
+ readonly modelCooldown: string;
153
+ readonly clearCooldown: string;
154
+ readonly rotationStrategy: string;
155
+ readonly strategySequential: string;
156
+ readonly strategyRoundRobin: string;
157
+ readonly strategySticky: string;
158
+ readonly email: string;
159
+ readonly expires: string;
160
+ readonly lastUsed: string;
161
+ readonly accountId: string;
162
+ readonly accountQuota: string;
163
+ readonly quotaNone: string;
164
+ readonly quotaSnapshot: string;
165
+ readonly quotaResets: string;
166
+ readonly quotaExhausted: string;
167
+ readonly quotaWindow: string;
168
+ readonly quotaUsed: string;
169
+ readonly quotaFactsScope: string;
170
+ readonly composerLabel: string;
171
+ };
172
+ export declare const en: {
173
+ readonly relogin: "Sign in again";
174
+ readonly needsRelogin: "Sign-in expired";
175
+ readonly addAccount: "Add account";
176
+ readonly noAccounts: "No accounts yet. Click \"Sign in to Cline\" to authorize in the browser, or \"Use an API key\" to paste an old key.";
177
+ readonly title: "Cline Pass";
178
+ readonly pageDesc: "Connect the Cline Pass subscription: sign in with a Cline account through browser device authorization, with pooled accounts, quota reads and pre-first-token failover.";
179
+ readonly login: "Sign in to Cline";
180
+ readonly loggingIn: "Signing in...";
181
+ readonly loginTitle: "Sign in to Cline";
182
+ readonly loginHint: "Open the sign-in page in your browser and confirm the code below; the account joins the pool automatically, with no key to paste.";
183
+ readonly loginCode: "Sign-in code";
184
+ readonly loginOpen: "Open sign-in page";
185
+ readonly loginWaiting: "Waiting for browser confirmation…";
186
+ readonly loginCancel: "Cancel sign-in";
187
+ readonly loginIdle: "No sign-in started in this process yet.";
188
+ readonly loginHaveAccounts: "The pool already holds {count} usable account(s).";
189
+ readonly loginComplete: "Signed in as {account}";
190
+ readonly loginCompleteNoAccount: "The previous sign-in completed, but the pool currently holds no usable account.";
191
+ readonly loginFailed: "Sign-in failed: {detail}";
192
+ readonly useApiKey: "Use an API key";
193
+ readonly oauthAccount: "OAuth sign-in";
194
+ readonly apiKeyAccount: "API key";
195
+ readonly routeOwned: "Model route served by this plugin";
196
+ readonly routeConflict: "The model route is already owned by another provider: {detail}";
197
+ readonly error: "Action failed: {detail}";
198
+ readonly keySection: "Add an API key";
199
+ readonly keyHint: "Create an API key in the Cline account page and paste it here. Keys do not expire and can be revoked there.";
200
+ readonly keyPlaceholder: "Paste a Cline Pass API key";
201
+ readonly keyAliasLabel: "Label (optional)";
202
+ readonly keyAliasPlaceholder: "e.g. primary, backup";
203
+ readonly keyAliasHint: "Cline reports no account identity, so labels tell several keys apart.";
204
+ readonly keyBaseUrlLabel: "Gateway override (optional)";
205
+ readonly keyBaseUrlPlaceholder: "default: https://api.cline.bot/api/v1";
206
+ readonly keySave: "Add";
207
+ readonly keySaving: "Adding...";
208
+ readonly keyTest: "Test key";
209
+ readonly cancel: "Cancel";
210
+ readonly keyTesting: "Testing...";
211
+ readonly keyTestOk: "Key works ({ms}ms)";
212
+ readonly keyTestFailed: "Key rejected: {detail}";
213
+ readonly testSavedKey: "Test";
214
+ readonly modelsSection: "Models";
215
+ readonly modelsHint: "The list comes from the official subscription catalog; sync once before first use. Unchecked models do not appear in the model picker.";
216
+ readonly modelCount: "{count} model(s)";
217
+ readonly modelChecklistCount: "{count} of {total} selected";
218
+ readonly selectAll: "Select all";
219
+ readonly unselectAll: "Clear all";
220
+ readonly catalogSync: "Refresh catalog";
221
+ readonly catalogSyncing: "Refreshing...";
222
+ readonly catalogNeverSynced: "The official catalog has not been synced yet. Use \"Refresh catalog\" to fetch the models this subscription currently serves; until then only the bundled table is listed.";
223
+ readonly catalogEmpty: "The official catalog returned no models.";
224
+ readonly noModels: "No models available.";
225
+ readonly catalogSources: "Catalog sources: {sources}";
226
+ readonly contextSection: "Context windows";
227
+ readonly contextHint: "Shown for checked models only. An invalid value is reported rather than saved; restoring clears the override.";
228
+ readonly tokens: "tokens";
229
+ readonly contextSave: "Save";
230
+ readonly contextOverridden: "overridden";
231
+ readonly contextSaving: "Saving";
232
+ readonly contextReset: "Restore default";
233
+ readonly contextResetAll: "Restore all defaults";
234
+ readonly contextEmpty: "Check at least one model to configure its context window here.";
235
+ readonly routingSection: "Upstream channels";
236
+ readonly routingHint: "Probe a model before pinning to discover its channels, then validate them. Click a channel to pin it in order; click ⊘ to exclude it.";
237
+ readonly probe: "Probe";
238
+ readonly probing: "Probing...";
239
+ readonly validate: "Validate";
240
+ readonly validating: "Validating...";
241
+ readonly testPin: "Test";
242
+ readonly testingPin: "Testing...";
243
+ readonly savePin: "Save pin";
244
+ readonly savingPin: "Saving...";
245
+ readonly resetPin: "Back to automatic";
246
+ readonly pinAuto: "automatic routing";
247
+ readonly pinPinned: "Pinned order: {list}";
248
+ readonly pinExcluded: "Excluded: {list}";
249
+ readonly pinMode: "Pin mode";
250
+ readonly sort: "Sort";
251
+ readonly sortNone: "No sort";
252
+ readonly sortCost: "Cost first";
253
+ readonly sortTtft: "First token first";
254
+ readonly sortTps: "Throughput first";
255
+ readonly modeStrict: "Strict (only the pinned channels)";
256
+ readonly modePreferred: "Preferred (try in order, fall over on failure)";
257
+ readonly noChannels: "No channels discovered yet. Use \"Probe\" to read the model upstream list.";
258
+ readonly channelHint: "Click a channel to add it to the pin order; click again to remove. ⊘ toggles exclusion.";
259
+ readonly lastServed: "Last served by {provider} ({ms}ms)";
260
+ readonly probedAt: "Probed {time}";
261
+ readonly pipeline: "Pipeline: {pipeline}";
262
+ readonly notPinnable: "This model is not pinnable right now";
263
+ readonly testServed: "Test passed: served by {provider} ({ms}ms)";
264
+ readonly testFailed: "Test failed: {detail}";
265
+ readonly testTrace: "Attempts";
266
+ readonly warnings: "Warnings";
267
+ readonly probeResult: "Probe result";
268
+ readonly validateSummary: "Validate: available {ok} / rate-limited {limited} / not-pinnable {bad} / auth-failed {auth} / unknown {unknown}";
269
+ readonly usageSection: "Official usage limits";
270
+ readonly usageHint: "Limits belong to accounts, not to the line. Refreshing sends one request per usable account.";
271
+ readonly usageRefresh: "Refresh usage";
272
+ readonly usageRefreshing: "Refreshing...";
273
+ readonly usageEmpty: "No usage reading yet.";
274
+ readonly usageNone: "No usage data yet";
275
+ readonly usageUnavailable: "Could not read official usage: {detail}";
276
+ readonly usageWindow: "{label}: {percent}% used";
277
+ readonly usageResets: "Resets: {when}";
278
+ readonly historySection: "Request history";
279
+ readonly historyHint: "In-memory only for this process; it starts empty after a restart.";
280
+ readonly historyRefresh: "Refresh history";
281
+ readonly historyEmpty: "No model calls recorded in this process yet.";
282
+ readonly historyCount: "Last {count} of {total} call(s)";
283
+ readonly historyModel: "Model";
284
+ readonly historyLatency: "first token / total";
285
+ readonly historyTokens: "tokens";
286
+ readonly historyError: "Error";
287
+ readonly historyAccount: "Account";
288
+ readonly advancedSection: "Advanced";
289
+ readonly baseURL: "Default gateway";
290
+ readonly defaultContextWindow: "Default context window";
291
+ readonly defaultMaxTokens: "Default output budget";
292
+ readonly maxConcurrentRequests: "Streams per account (0 = unlimited)";
293
+ readonly streamIdleTimeoutMs: "Stream idle timeout (ms)";
294
+ readonly historyLimit: "History rows retained";
295
+ readonly exposeCatalog: "List extra models from the gateway catalog";
296
+ readonly exposeCatalogHint: "When off, only the official subscription catalog and the bundled table are listed.";
297
+ readonly pinSpelling: "Pin field spelling";
298
+ readonly pinSpellingBoth: "Write both spellings (recommended)";
299
+ readonly pinSpellingDetected: "Write only the probed spelling";
300
+ readonly pinSpellingHint: "The gateway can switch pipelines between calls; one spelling means the pin silently disappears when it does.";
301
+ readonly exposeTools: "Register the cline_pass_* management tools";
302
+ readonly exposeToolsHint: "Their definitions ride in every request tool list, so this is off by default. Takes effect after a DSH restart.";
303
+ readonly saveSettings: "Save settings";
304
+ readonly savingSettings: "Saving...";
305
+ readonly saved: "Saved";
306
+ readonly restartRequired: "Saved; the management tools take effect after a DSH restart.";
307
+ readonly limitsSection: "Notes";
308
+ readonly limitKey: "API keys live in the OS credential store; the card only ever shows the alias.";
309
+ readonly limitGateway: "Requests are routed by the Cline gateway, which decides the serving channel. A pin is not guaranteed to be adopted, so the card reads the channel back.";
310
+ readonly limitRoute: "The route is claimed by provider id: if another plugin already serves cline-pass, this card still configures the line but that provider answers the requests.";
311
+ readonly limitQuota: "Quota windows come from the gateway usage-limits endpoint; when it fails the card keeps the previous reading and says why.";
312
+ readonly accountPool: string;
313
+ readonly accountCount: string;
314
+ readonly primaryAccount: string;
315
+ readonly activeAccount: string;
316
+ readonly setPrimary: string;
317
+ readonly deleteAccount: string;
318
+ readonly cooling: string;
319
+ readonly cooldownLeft: string;
320
+ readonly cooldownRemaining: string;
321
+ readonly cooldownRemainingSeconds: string;
322
+ readonly modelCooldown: string;
323
+ readonly clearCooldown: string;
324
+ readonly rotationStrategy: string;
325
+ readonly strategySequential: string;
326
+ readonly strategyRoundRobin: string;
327
+ readonly strategySticky: string;
328
+ readonly email: string;
329
+ readonly expires: string;
330
+ readonly lastUsed: string;
331
+ readonly accountId: string;
332
+ readonly accountQuota: string;
333
+ readonly quotaNone: string;
334
+ readonly quotaSnapshot: string;
335
+ readonly quotaResets: string;
336
+ readonly quotaExhausted: string;
337
+ readonly quotaWindow: string;
338
+ readonly quotaUsed: string;
339
+ readonly quotaFactsScope: string;
340
+ readonly composerLabel: string;
341
+ };
342
+ export declare const dictionaries: {
343
+ zh: {
344
+ readonly relogin: "重新登录";
345
+ readonly needsRelogin: "登录已失效";
346
+ readonly addAccount: "添加账号";
347
+ readonly noAccounts: "暂无账号。点击「登录 Cline 账号」完成浏览器授权,或用「使用 API Key」粘贴旧 Key。";
348
+ readonly title: "Cline Pass";
349
+ readonly pageDesc: "接入 Cline Pass 订阅:浏览器设备码登录 Cline 账号,多账号自动轮换、额度读取与首 token 前故障转移。";
350
+ readonly login: "登录 Cline 账号";
351
+ readonly loggingIn: "登录中...";
352
+ readonly loginTitle: "登录 Cline 账号";
353
+ readonly loginHint: "在浏览器中打开登录页并确认下方代码;确认后账号会自动加入号池,无需再粘贴 Key。";
354
+ readonly loginCode: "登录代码";
355
+ readonly loginOpen: "打开登录页";
356
+ readonly loginWaiting: "等待浏览器确认…";
357
+ readonly loginCancel: "取消登录";
358
+ readonly loginIdle: "尚未开始登录。";
359
+ readonly loginHaveAccounts: "号池已有 {count} 个账号可用。";
360
+ readonly loginComplete: "已登录:{account}";
361
+ readonly loginCompleteNoAccount: "上次登录已完成,但当前号池中没有可用账号。";
362
+ readonly loginFailed: "登录失败:{detail}";
363
+ readonly useApiKey: "使用 API Key";
364
+ readonly oauthAccount: "OAuth 登录";
365
+ readonly apiKeyAccount: "API Key";
366
+ readonly routeOwned: "模型路由由本插件提供";
367
+ readonly routeConflict: "模型路由已被其他 Provider 占用:{detail}。请在 DSH 设置中移除重复的 Provider 配置后重试。";
368
+ readonly error: "操作失败:{detail}";
369
+ readonly keySection: "添加 API Key";
370
+ readonly keyHint: "在 Cline 账号页面创建 API Key 后粘贴到此处。Key 不会过期,可随时在账号页吊销。";
371
+ readonly keyPlaceholder: "粘贴 Cline Pass API Key";
372
+ readonly keyAliasLabel: "备注名(可选)";
373
+ readonly keyAliasPlaceholder: "例如:主号、备用号";
374
+ readonly keyAliasHint: "Cline 不返回账号信息,多个 Key 靠备注名区分。";
375
+ readonly keyBaseUrlLabel: "网关地址覆盖(可选)";
376
+ readonly keyBaseUrlPlaceholder: "默认 https://api.cline.bot/api/v1";
377
+ readonly keySave: "添加";
378
+ readonly keySaving: "添加中...";
379
+ readonly keyTest: "测试 Key";
380
+ readonly cancel: "取消";
381
+ readonly keyTesting: "测试中...";
382
+ readonly keyTestOk: "Key 可用({ms}ms)";
383
+ readonly keyTestFailed: "Key 不可用:{detail}";
384
+ readonly testSavedKey: "测试";
385
+ readonly modelsSection: "模型";
386
+ readonly modelsHint: "模型列表来自官方订阅目录;首次使用前先刷新一次。未勾选的模型不会出现在模型选择器中。";
387
+ readonly modelCount: "{count} 个模型";
388
+ readonly modelChecklistCount: "已选 {count} / 共 {total} 个模型";
389
+ readonly selectAll: "全选";
390
+ readonly unselectAll: "全不选";
391
+ readonly catalogSync: "刷新模型目录";
392
+ readonly catalogSyncing: "刷新中...";
393
+ readonly catalogNeverSynced: "尚未同步官方模型目录。点右上角「刷新模型目录」获取当前订阅的模型;在此之前只显示随包内置的模型。";
394
+ readonly catalogEmpty: "官方目录没有返回任何模型。";
395
+ readonly noModels: "暂无可用模型。";
396
+ readonly catalogSources: "目录来源:{sources}";
397
+ readonly contextSection: "上下文窗口";
398
+ readonly contextHint: "只对勾选的模型显示。留空或保存无效值会提示错误;恢复默认会清掉覆盖值。";
399
+ readonly tokens: "tokens";
400
+ readonly contextSave: "保存";
401
+ readonly contextOverridden: "已覆盖";
402
+ readonly contextSaving: "保存中";
403
+ readonly contextReset: "恢复默认";
404
+ readonly contextResetAll: "全部恢复默认";
405
+ readonly contextEmpty: "勾选至少一个模型后,这里会出现它的上下文窗口设置。";
406
+ readonly routingSection: "上游渠道";
407
+ readonly routingHint: "首次使用某模型前先「探测」获取渠道,再「校验」确认渠道确实采用了钉住规则。点击渠道名按顺序钉住,点 ⊘ 排除。";
408
+ readonly probe: "探测";
409
+ readonly probing: "探测中...";
410
+ readonly validate: "校验";
411
+ readonly validating: "校验中...";
412
+ readonly testPin: "测试";
413
+ readonly testingPin: "测试中...";
414
+ readonly savePin: "保存钉住";
415
+ readonly savingPin: "保存中...";
416
+ readonly resetPin: "恢复自动路由";
417
+ readonly pinAuto: "自动路由";
418
+ readonly pinPinned: "钉住顺序:{list}";
419
+ readonly pinExcluded: "已排除:{list}";
420
+ readonly pinMode: "钉住模式";
421
+ readonly sort: "排序";
422
+ readonly sortNone: "不排序";
423
+ readonly sortCost: "成本优先";
424
+ readonly sortTtft: "首 token 优先";
425
+ readonly sortTps: "吞吐优先";
426
+ readonly modeStrict: "严格(只允许钉住的渠道)";
427
+ readonly modePreferred: "优先(按顺序尝试,失败自动切换)";
428
+ readonly noChannels: "尚未探测渠道。点「探测」获取这个模型的可用上游。";
429
+ readonly channelHint: "点击渠道名按顺序钉住;再次点击移除。⊘ 切换排除。";
430
+ readonly lastServed: "最近由 {provider} 服务({ms}ms)";
431
+ readonly probedAt: "探测于 {time}";
432
+ readonly pipeline: "管线:{pipeline}";
433
+ readonly notPinnable: "该模型当前不支持钉住";
434
+ readonly testServed: "测试成功:由 {provider} 服务({ms}ms)";
435
+ readonly testFailed: "测试失败:{detail}";
436
+ readonly testTrace: "尝试轨迹";
437
+ readonly warnings: "警告";
438
+ readonly probeResult: "探测结果";
439
+ readonly validateSummary: "校验结果:可用 {ok} / 限流 {limited} / 不可钉 {bad} / 认证失败 {auth} / 未知 {unknown}";
440
+ readonly usageSection: "官方额度";
441
+ readonly usageHint: "额度属于账号,不属于线路。刷新会为每个可用账号各发一次请求。";
442
+ readonly usageRefresh: "刷新额度";
443
+ readonly usageRefreshing: "刷新中...";
444
+ readonly usageEmpty: "尚未读取额度。";
445
+ readonly usageNone: "尚无额度数据";
446
+ readonly usageUnavailable: "读不到官方额度:{detail}";
447
+ readonly usageWindow: "{label}:已用 {percent}%";
448
+ readonly usageResets: "重置:{when}";
449
+ readonly historySection: "请求历史";
450
+ readonly historyHint: "仅保存在当前进程内存中,重启后清空。";
451
+ readonly historyRefresh: "刷新历史";
452
+ readonly historyEmpty: "本进程还没有记录到模型请求。";
453
+ readonly historyCount: "最近 {count} / {total} 次请求";
454
+ readonly historyModel: "模型";
455
+ readonly historyLatency: "首 token / 总耗时";
456
+ readonly historyTokens: "token";
457
+ readonly historyError: "错误";
458
+ readonly historyAccount: "账号";
459
+ readonly advancedSection: "高级设置";
460
+ readonly baseURL: "默认网关地址";
461
+ readonly defaultContextWindow: "默认上下文窗口";
462
+ readonly defaultMaxTokens: "默认输出预算";
463
+ readonly maxConcurrentRequests: "每账号并发流上限(0 = 不限)";
464
+ readonly streamIdleTimeoutMs: "流空闲超时(ms)";
465
+ readonly historyLimit: "历史保留条数";
466
+ readonly exposeCatalog: "在模型选择器中列出网关目录的额外模型";
467
+ readonly exposeCatalogHint: "关闭时只列出官方订阅目录与随包内置模型。";
468
+ readonly pinSpelling: "钉住字段写法";
469
+ readonly pinSpellingBoth: "两种写法都发(推荐)";
470
+ readonly pinSpellingDetected: "只发探测到的写法";
471
+ readonly pinSpellingHint: "网关可能在两次请求间切换管线,只发一种写法会让钉住悄悄失效。";
472
+ readonly exposeTools: "注册 cline_pass_* 管理工具";
473
+ readonly exposeToolsHint: "工具定义会出现在每次请求的工具列表里,默认关闭。改动需重启 DSH 生效。";
474
+ readonly saveSettings: "保存设置";
475
+ readonly savingSettings: "保存中...";
476
+ readonly saved: "已保存";
477
+ readonly restartRequired: "已保存;管理工具需重启 DSH 后生效。";
478
+ readonly limitsSection: "说明";
479
+ readonly limitKey: "API Key 存储在系统加密凭据库中,界面只显示掩码。";
480
+ readonly limitGateway: "请求经 Cline 网关转发,实际服务渠道由网关决定;钉住不保证每次都被采用,面板会读回真实渠道。";
481
+ readonly limitRoute: "模型路由按 provider id 抢占:若已有其他插件占用 cline-pass,本卡仍可配置,但请求由对方服务。";
482
+ readonly limitQuota: "额度窗口来自网关的 usage-limits 接口;接口失败时卡片保留上一次读数并显示原因。";
483
+ readonly accountPool: string;
484
+ readonly accountCount: string;
485
+ readonly primaryAccount: string;
486
+ readonly activeAccount: string;
487
+ readonly setPrimary: string;
488
+ readonly deleteAccount: string;
489
+ readonly cooling: string;
490
+ readonly cooldownLeft: string;
491
+ readonly cooldownRemaining: string;
492
+ readonly cooldownRemainingSeconds: string;
493
+ readonly modelCooldown: string;
494
+ readonly clearCooldown: string;
495
+ readonly rotationStrategy: string;
496
+ readonly strategySequential: string;
497
+ readonly strategyRoundRobin: string;
498
+ readonly strategySticky: string;
499
+ readonly email: string;
500
+ readonly expires: string;
501
+ readonly lastUsed: string;
502
+ readonly accountId: string;
503
+ readonly accountQuota: string;
504
+ readonly quotaNone: string;
505
+ readonly quotaSnapshot: string;
506
+ readonly quotaResets: string;
507
+ readonly quotaExhausted: string;
508
+ readonly quotaWindow: string;
509
+ readonly quotaUsed: string;
510
+ readonly quotaFactsScope: string;
511
+ readonly composerLabel: string;
512
+ };
513
+ 'zh-CN': {
514
+ readonly relogin: "重新登录";
515
+ readonly needsRelogin: "登录已失效";
516
+ readonly addAccount: "添加账号";
517
+ readonly noAccounts: "暂无账号。点击「登录 Cline 账号」完成浏览器授权,或用「使用 API Key」粘贴旧 Key。";
518
+ readonly title: "Cline Pass";
519
+ readonly pageDesc: "接入 Cline Pass 订阅:浏览器设备码登录 Cline 账号,多账号自动轮换、额度读取与首 token 前故障转移。";
520
+ readonly login: "登录 Cline 账号";
521
+ readonly loggingIn: "登录中...";
522
+ readonly loginTitle: "登录 Cline 账号";
523
+ readonly loginHint: "在浏览器中打开登录页并确认下方代码;确认后账号会自动加入号池,无需再粘贴 Key。";
524
+ readonly loginCode: "登录代码";
525
+ readonly loginOpen: "打开登录页";
526
+ readonly loginWaiting: "等待浏览器确认…";
527
+ readonly loginCancel: "取消登录";
528
+ readonly loginIdle: "尚未开始登录。";
529
+ readonly loginHaveAccounts: "号池已有 {count} 个账号可用。";
530
+ readonly loginComplete: "已登录:{account}";
531
+ readonly loginCompleteNoAccount: "上次登录已完成,但当前号池中没有可用账号。";
532
+ readonly loginFailed: "登录失败:{detail}";
533
+ readonly useApiKey: "使用 API Key";
534
+ readonly oauthAccount: "OAuth 登录";
535
+ readonly apiKeyAccount: "API Key";
536
+ readonly routeOwned: "模型路由由本插件提供";
537
+ readonly routeConflict: "模型路由已被其他 Provider 占用:{detail}。请在 DSH 设置中移除重复的 Provider 配置后重试。";
538
+ readonly error: "操作失败:{detail}";
539
+ readonly keySection: "添加 API Key";
540
+ readonly keyHint: "在 Cline 账号页面创建 API Key 后粘贴到此处。Key 不会过期,可随时在账号页吊销。";
541
+ readonly keyPlaceholder: "粘贴 Cline Pass API Key";
542
+ readonly keyAliasLabel: "备注名(可选)";
543
+ readonly keyAliasPlaceholder: "例如:主号、备用号";
544
+ readonly keyAliasHint: "Cline 不返回账号信息,多个 Key 靠备注名区分。";
545
+ readonly keyBaseUrlLabel: "网关地址覆盖(可选)";
546
+ readonly keyBaseUrlPlaceholder: "默认 https://api.cline.bot/api/v1";
547
+ readonly keySave: "添加";
548
+ readonly keySaving: "添加中...";
549
+ readonly keyTest: "测试 Key";
550
+ readonly cancel: "取消";
551
+ readonly keyTesting: "测试中...";
552
+ readonly keyTestOk: "Key 可用({ms}ms)";
553
+ readonly keyTestFailed: "Key 不可用:{detail}";
554
+ readonly testSavedKey: "测试";
555
+ readonly modelsSection: "模型";
556
+ readonly modelsHint: "模型列表来自官方订阅目录;首次使用前先刷新一次。未勾选的模型不会出现在模型选择器中。";
557
+ readonly modelCount: "{count} 个模型";
558
+ readonly modelChecklistCount: "已选 {count} / 共 {total} 个模型";
559
+ readonly selectAll: "全选";
560
+ readonly unselectAll: "全不选";
561
+ readonly catalogSync: "刷新模型目录";
562
+ readonly catalogSyncing: "刷新中...";
563
+ readonly catalogNeverSynced: "尚未同步官方模型目录。点右上角「刷新模型目录」获取当前订阅的模型;在此之前只显示随包内置的模型。";
564
+ readonly catalogEmpty: "官方目录没有返回任何模型。";
565
+ readonly noModels: "暂无可用模型。";
566
+ readonly catalogSources: "目录来源:{sources}";
567
+ readonly contextSection: "上下文窗口";
568
+ readonly contextHint: "只对勾选的模型显示。留空或保存无效值会提示错误;恢复默认会清掉覆盖值。";
569
+ readonly tokens: "tokens";
570
+ readonly contextSave: "保存";
571
+ readonly contextOverridden: "已覆盖";
572
+ readonly contextSaving: "保存中";
573
+ readonly contextReset: "恢复默认";
574
+ readonly contextResetAll: "全部恢复默认";
575
+ readonly contextEmpty: "勾选至少一个模型后,这里会出现它的上下文窗口设置。";
576
+ readonly routingSection: "上游渠道";
577
+ readonly routingHint: "首次使用某模型前先「探测」获取渠道,再「校验」确认渠道确实采用了钉住规则。点击渠道名按顺序钉住,点 ⊘ 排除。";
578
+ readonly probe: "探测";
579
+ readonly probing: "探测中...";
580
+ readonly validate: "校验";
581
+ readonly validating: "校验中...";
582
+ readonly testPin: "测试";
583
+ readonly testingPin: "测试中...";
584
+ readonly savePin: "保存钉住";
585
+ readonly savingPin: "保存中...";
586
+ readonly resetPin: "恢复自动路由";
587
+ readonly pinAuto: "自动路由";
588
+ readonly pinPinned: "钉住顺序:{list}";
589
+ readonly pinExcluded: "已排除:{list}";
590
+ readonly pinMode: "钉住模式";
591
+ readonly sort: "排序";
592
+ readonly sortNone: "不排序";
593
+ readonly sortCost: "成本优先";
594
+ readonly sortTtft: "首 token 优先";
595
+ readonly sortTps: "吞吐优先";
596
+ readonly modeStrict: "严格(只允许钉住的渠道)";
597
+ readonly modePreferred: "优先(按顺序尝试,失败自动切换)";
598
+ readonly noChannels: "尚未探测渠道。点「探测」获取这个模型的可用上游。";
599
+ readonly channelHint: "点击渠道名按顺序钉住;再次点击移除。⊘ 切换排除。";
600
+ readonly lastServed: "最近由 {provider} 服务({ms}ms)";
601
+ readonly probedAt: "探测于 {time}";
602
+ readonly pipeline: "管线:{pipeline}";
603
+ readonly notPinnable: "该模型当前不支持钉住";
604
+ readonly testServed: "测试成功:由 {provider} 服务({ms}ms)";
605
+ readonly testFailed: "测试失败:{detail}";
606
+ readonly testTrace: "尝试轨迹";
607
+ readonly warnings: "警告";
608
+ readonly probeResult: "探测结果";
609
+ readonly validateSummary: "校验结果:可用 {ok} / 限流 {limited} / 不可钉 {bad} / 认证失败 {auth} / 未知 {unknown}";
610
+ readonly usageSection: "官方额度";
611
+ readonly usageHint: "额度属于账号,不属于线路。刷新会为每个可用账号各发一次请求。";
612
+ readonly usageRefresh: "刷新额度";
613
+ readonly usageRefreshing: "刷新中...";
614
+ readonly usageEmpty: "尚未读取额度。";
615
+ readonly usageNone: "尚无额度数据";
616
+ readonly usageUnavailable: "读不到官方额度:{detail}";
617
+ readonly usageWindow: "{label}:已用 {percent}%";
618
+ readonly usageResets: "重置:{when}";
619
+ readonly historySection: "请求历史";
620
+ readonly historyHint: "仅保存在当前进程内存中,重启后清空。";
621
+ readonly historyRefresh: "刷新历史";
622
+ readonly historyEmpty: "本进程还没有记录到模型请求。";
623
+ readonly historyCount: "最近 {count} / {total} 次请求";
624
+ readonly historyModel: "模型";
625
+ readonly historyLatency: "首 token / 总耗时";
626
+ readonly historyTokens: "token";
627
+ readonly historyError: "错误";
628
+ readonly historyAccount: "账号";
629
+ readonly advancedSection: "高级设置";
630
+ readonly baseURL: "默认网关地址";
631
+ readonly defaultContextWindow: "默认上下文窗口";
632
+ readonly defaultMaxTokens: "默认输出预算";
633
+ readonly maxConcurrentRequests: "每账号并发流上限(0 = 不限)";
634
+ readonly streamIdleTimeoutMs: "流空闲超时(ms)";
635
+ readonly historyLimit: "历史保留条数";
636
+ readonly exposeCatalog: "在模型选择器中列出网关目录的额外模型";
637
+ readonly exposeCatalogHint: "关闭时只列出官方订阅目录与随包内置模型。";
638
+ readonly pinSpelling: "钉住字段写法";
639
+ readonly pinSpellingBoth: "两种写法都发(推荐)";
640
+ readonly pinSpellingDetected: "只发探测到的写法";
641
+ readonly pinSpellingHint: "网关可能在两次请求间切换管线,只发一种写法会让钉住悄悄失效。";
642
+ readonly exposeTools: "注册 cline_pass_* 管理工具";
643
+ readonly exposeToolsHint: "工具定义会出现在每次请求的工具列表里,默认关闭。改动需重启 DSH 生效。";
644
+ readonly saveSettings: "保存设置";
645
+ readonly savingSettings: "保存中...";
646
+ readonly saved: "已保存";
647
+ readonly restartRequired: "已保存;管理工具需重启 DSH 后生效。";
648
+ readonly limitsSection: "说明";
649
+ readonly limitKey: "API Key 存储在系统加密凭据库中,界面只显示掩码。";
650
+ readonly limitGateway: "请求经 Cline 网关转发,实际服务渠道由网关决定;钉住不保证每次都被采用,面板会读回真实渠道。";
651
+ readonly limitRoute: "模型路由按 provider id 抢占:若已有其他插件占用 cline-pass,本卡仍可配置,但请求由对方服务。";
652
+ readonly limitQuota: "额度窗口来自网关的 usage-limits 接口;接口失败时卡片保留上一次读数并显示原因。";
653
+ readonly accountPool: string;
654
+ readonly accountCount: string;
655
+ readonly primaryAccount: string;
656
+ readonly activeAccount: string;
657
+ readonly setPrimary: string;
658
+ readonly deleteAccount: string;
659
+ readonly cooling: string;
660
+ readonly cooldownLeft: string;
661
+ readonly cooldownRemaining: string;
662
+ readonly cooldownRemainingSeconds: string;
663
+ readonly modelCooldown: string;
664
+ readonly clearCooldown: string;
665
+ readonly rotationStrategy: string;
666
+ readonly strategySequential: string;
667
+ readonly strategyRoundRobin: string;
668
+ readonly strategySticky: string;
669
+ readonly email: string;
670
+ readonly expires: string;
671
+ readonly lastUsed: string;
672
+ readonly accountId: string;
673
+ readonly accountQuota: string;
674
+ readonly quotaNone: string;
675
+ readonly quotaSnapshot: string;
676
+ readonly quotaResets: string;
677
+ readonly quotaExhausted: string;
678
+ readonly quotaWindow: string;
679
+ readonly quotaUsed: string;
680
+ readonly quotaFactsScope: string;
681
+ readonly composerLabel: string;
682
+ };
683
+ en: {
684
+ readonly relogin: "Sign in again";
685
+ readonly needsRelogin: "Sign-in expired";
686
+ readonly addAccount: "Add account";
687
+ readonly noAccounts: "No accounts yet. Click \"Sign in to Cline\" to authorize in the browser, or \"Use an API key\" to paste an old key.";
688
+ readonly title: "Cline Pass";
689
+ readonly pageDesc: "Connect the Cline Pass subscription: sign in with a Cline account through browser device authorization, with pooled accounts, quota reads and pre-first-token failover.";
690
+ readonly login: "Sign in to Cline";
691
+ readonly loggingIn: "Signing in...";
692
+ readonly loginTitle: "Sign in to Cline";
693
+ readonly loginHint: "Open the sign-in page in your browser and confirm the code below; the account joins the pool automatically, with no key to paste.";
694
+ readonly loginCode: "Sign-in code";
695
+ readonly loginOpen: "Open sign-in page";
696
+ readonly loginWaiting: "Waiting for browser confirmation…";
697
+ readonly loginCancel: "Cancel sign-in";
698
+ readonly loginIdle: "No sign-in started in this process yet.";
699
+ readonly loginHaveAccounts: "The pool already holds {count} usable account(s).";
700
+ readonly loginComplete: "Signed in as {account}";
701
+ readonly loginCompleteNoAccount: "The previous sign-in completed, but the pool currently holds no usable account.";
702
+ readonly loginFailed: "Sign-in failed: {detail}";
703
+ readonly useApiKey: "Use an API key";
704
+ readonly oauthAccount: "OAuth sign-in";
705
+ readonly apiKeyAccount: "API key";
706
+ readonly routeOwned: "Model route served by this plugin";
707
+ readonly routeConflict: "The model route is already owned by another provider: {detail}";
708
+ readonly error: "Action failed: {detail}";
709
+ readonly keySection: "Add an API key";
710
+ readonly keyHint: "Create an API key in the Cline account page and paste it here. Keys do not expire and can be revoked there.";
711
+ readonly keyPlaceholder: "Paste a Cline Pass API key";
712
+ readonly keyAliasLabel: "Label (optional)";
713
+ readonly keyAliasPlaceholder: "e.g. primary, backup";
714
+ readonly keyAliasHint: "Cline reports no account identity, so labels tell several keys apart.";
715
+ readonly keyBaseUrlLabel: "Gateway override (optional)";
716
+ readonly keyBaseUrlPlaceholder: "default: https://api.cline.bot/api/v1";
717
+ readonly keySave: "Add";
718
+ readonly keySaving: "Adding...";
719
+ readonly keyTest: "Test key";
720
+ readonly cancel: "Cancel";
721
+ readonly keyTesting: "Testing...";
722
+ readonly keyTestOk: "Key works ({ms}ms)";
723
+ readonly keyTestFailed: "Key rejected: {detail}";
724
+ readonly testSavedKey: "Test";
725
+ readonly modelsSection: "Models";
726
+ readonly modelsHint: "The list comes from the official subscription catalog; sync once before first use. Unchecked models do not appear in the model picker.";
727
+ readonly modelCount: "{count} model(s)";
728
+ readonly modelChecklistCount: "{count} of {total} selected";
729
+ readonly selectAll: "Select all";
730
+ readonly unselectAll: "Clear all";
731
+ readonly catalogSync: "Refresh catalog";
732
+ readonly catalogSyncing: "Refreshing...";
733
+ readonly catalogNeverSynced: "The official catalog has not been synced yet. Use \"Refresh catalog\" to fetch the models this subscription currently serves; until then only the bundled table is listed.";
734
+ readonly catalogEmpty: "The official catalog returned no models.";
735
+ readonly noModels: "No models available.";
736
+ readonly catalogSources: "Catalog sources: {sources}";
737
+ readonly contextSection: "Context windows";
738
+ readonly contextHint: "Shown for checked models only. An invalid value is reported rather than saved; restoring clears the override.";
739
+ readonly tokens: "tokens";
740
+ readonly contextSave: "Save";
741
+ readonly contextOverridden: "overridden";
742
+ readonly contextSaving: "Saving";
743
+ readonly contextReset: "Restore default";
744
+ readonly contextResetAll: "Restore all defaults";
745
+ readonly contextEmpty: "Check at least one model to configure its context window here.";
746
+ readonly routingSection: "Upstream channels";
747
+ readonly routingHint: "Probe a model before pinning to discover its channels, then validate them. Click a channel to pin it in order; click ⊘ to exclude it.";
748
+ readonly probe: "Probe";
749
+ readonly probing: "Probing...";
750
+ readonly validate: "Validate";
751
+ readonly validating: "Validating...";
752
+ readonly testPin: "Test";
753
+ readonly testingPin: "Testing...";
754
+ readonly savePin: "Save pin";
755
+ readonly savingPin: "Saving...";
756
+ readonly resetPin: "Back to automatic";
757
+ readonly pinAuto: "automatic routing";
758
+ readonly pinPinned: "Pinned order: {list}";
759
+ readonly pinExcluded: "Excluded: {list}";
760
+ readonly pinMode: "Pin mode";
761
+ readonly sort: "Sort";
762
+ readonly sortNone: "No sort";
763
+ readonly sortCost: "Cost first";
764
+ readonly sortTtft: "First token first";
765
+ readonly sortTps: "Throughput first";
766
+ readonly modeStrict: "Strict (only the pinned channels)";
767
+ readonly modePreferred: "Preferred (try in order, fall over on failure)";
768
+ readonly noChannels: "No channels discovered yet. Use \"Probe\" to read the model upstream list.";
769
+ readonly channelHint: "Click a channel to add it to the pin order; click again to remove. ⊘ toggles exclusion.";
770
+ readonly lastServed: "Last served by {provider} ({ms}ms)";
771
+ readonly probedAt: "Probed {time}";
772
+ readonly pipeline: "Pipeline: {pipeline}";
773
+ readonly notPinnable: "This model is not pinnable right now";
774
+ readonly testServed: "Test passed: served by {provider} ({ms}ms)";
775
+ readonly testFailed: "Test failed: {detail}";
776
+ readonly testTrace: "Attempts";
777
+ readonly warnings: "Warnings";
778
+ readonly probeResult: "Probe result";
779
+ readonly validateSummary: "Validate: available {ok} / rate-limited {limited} / not-pinnable {bad} / auth-failed {auth} / unknown {unknown}";
780
+ readonly usageSection: "Official usage limits";
781
+ readonly usageHint: "Limits belong to accounts, not to the line. Refreshing sends one request per usable account.";
782
+ readonly usageRefresh: "Refresh usage";
783
+ readonly usageRefreshing: "Refreshing...";
784
+ readonly usageEmpty: "No usage reading yet.";
785
+ readonly usageNone: "No usage data yet";
786
+ readonly usageUnavailable: "Could not read official usage: {detail}";
787
+ readonly usageWindow: "{label}: {percent}% used";
788
+ readonly usageResets: "Resets: {when}";
789
+ readonly historySection: "Request history";
790
+ readonly historyHint: "In-memory only for this process; it starts empty after a restart.";
791
+ readonly historyRefresh: "Refresh history";
792
+ readonly historyEmpty: "No model calls recorded in this process yet.";
793
+ readonly historyCount: "Last {count} of {total} call(s)";
794
+ readonly historyModel: "Model";
795
+ readonly historyLatency: "first token / total";
796
+ readonly historyTokens: "tokens";
797
+ readonly historyError: "Error";
798
+ readonly historyAccount: "Account";
799
+ readonly advancedSection: "Advanced";
800
+ readonly baseURL: "Default gateway";
801
+ readonly defaultContextWindow: "Default context window";
802
+ readonly defaultMaxTokens: "Default output budget";
803
+ readonly maxConcurrentRequests: "Streams per account (0 = unlimited)";
804
+ readonly streamIdleTimeoutMs: "Stream idle timeout (ms)";
805
+ readonly historyLimit: "History rows retained";
806
+ readonly exposeCatalog: "List extra models from the gateway catalog";
807
+ readonly exposeCatalogHint: "When off, only the official subscription catalog and the bundled table are listed.";
808
+ readonly pinSpelling: "Pin field spelling";
809
+ readonly pinSpellingBoth: "Write both spellings (recommended)";
810
+ readonly pinSpellingDetected: "Write only the probed spelling";
811
+ readonly pinSpellingHint: "The gateway can switch pipelines between calls; one spelling means the pin silently disappears when it does.";
812
+ readonly exposeTools: "Register the cline_pass_* management tools";
813
+ readonly exposeToolsHint: "Their definitions ride in every request tool list, so this is off by default. Takes effect after a DSH restart.";
814
+ readonly saveSettings: "Save settings";
815
+ readonly savingSettings: "Saving...";
816
+ readonly saved: "Saved";
817
+ readonly restartRequired: "Saved; the management tools take effect after a DSH restart.";
818
+ readonly limitsSection: "Notes";
819
+ readonly limitKey: "API keys live in the OS credential store; the card only ever shows the alias.";
820
+ readonly limitGateway: "Requests are routed by the Cline gateway, which decides the serving channel. A pin is not guaranteed to be adopted, so the card reads the channel back.";
821
+ readonly limitRoute: "The route is claimed by provider id: if another plugin already serves cline-pass, this card still configures the line but that provider answers the requests.";
822
+ readonly limitQuota: "Quota windows come from the gateway usage-limits endpoint; when it fails the card keeps the previous reading and says why.";
823
+ readonly accountPool: string;
824
+ readonly accountCount: string;
825
+ readonly primaryAccount: string;
826
+ readonly activeAccount: string;
827
+ readonly setPrimary: string;
828
+ readonly deleteAccount: string;
829
+ readonly cooling: string;
830
+ readonly cooldownLeft: string;
831
+ readonly cooldownRemaining: string;
832
+ readonly cooldownRemainingSeconds: string;
833
+ readonly modelCooldown: string;
834
+ readonly clearCooldown: string;
835
+ readonly rotationStrategy: string;
836
+ readonly strategySequential: string;
837
+ readonly strategyRoundRobin: string;
838
+ readonly strategySticky: string;
839
+ readonly email: string;
840
+ readonly expires: string;
841
+ readonly lastUsed: string;
842
+ readonly accountId: string;
843
+ readonly accountQuota: string;
844
+ readonly quotaNone: string;
845
+ readonly quotaSnapshot: string;
846
+ readonly quotaResets: string;
847
+ readonly quotaExhausted: string;
848
+ readonly quotaWindow: string;
849
+ readonly quotaUsed: string;
850
+ readonly quotaFactsScope: string;
851
+ readonly composerLabel: string;
852
+ };
853
+ 'en-US': {
854
+ readonly relogin: "Sign in again";
855
+ readonly needsRelogin: "Sign-in expired";
856
+ readonly addAccount: "Add account";
857
+ readonly noAccounts: "No accounts yet. Click \"Sign in to Cline\" to authorize in the browser, or \"Use an API key\" to paste an old key.";
858
+ readonly title: "Cline Pass";
859
+ readonly pageDesc: "Connect the Cline Pass subscription: sign in with a Cline account through browser device authorization, with pooled accounts, quota reads and pre-first-token failover.";
860
+ readonly login: "Sign in to Cline";
861
+ readonly loggingIn: "Signing in...";
862
+ readonly loginTitle: "Sign in to Cline";
863
+ readonly loginHint: "Open the sign-in page in your browser and confirm the code below; the account joins the pool automatically, with no key to paste.";
864
+ readonly loginCode: "Sign-in code";
865
+ readonly loginOpen: "Open sign-in page";
866
+ readonly loginWaiting: "Waiting for browser confirmation…";
867
+ readonly loginCancel: "Cancel sign-in";
868
+ readonly loginIdle: "No sign-in started in this process yet.";
869
+ readonly loginHaveAccounts: "The pool already holds {count} usable account(s).";
870
+ readonly loginComplete: "Signed in as {account}";
871
+ readonly loginCompleteNoAccount: "The previous sign-in completed, but the pool currently holds no usable account.";
872
+ readonly loginFailed: "Sign-in failed: {detail}";
873
+ readonly useApiKey: "Use an API key";
874
+ readonly oauthAccount: "OAuth sign-in";
875
+ readonly apiKeyAccount: "API key";
876
+ readonly routeOwned: "Model route served by this plugin";
877
+ readonly routeConflict: "The model route is already owned by another provider: {detail}";
878
+ readonly error: "Action failed: {detail}";
879
+ readonly keySection: "Add an API key";
880
+ readonly keyHint: "Create an API key in the Cline account page and paste it here. Keys do not expire and can be revoked there.";
881
+ readonly keyPlaceholder: "Paste a Cline Pass API key";
882
+ readonly keyAliasLabel: "Label (optional)";
883
+ readonly keyAliasPlaceholder: "e.g. primary, backup";
884
+ readonly keyAliasHint: "Cline reports no account identity, so labels tell several keys apart.";
885
+ readonly keyBaseUrlLabel: "Gateway override (optional)";
886
+ readonly keyBaseUrlPlaceholder: "default: https://api.cline.bot/api/v1";
887
+ readonly keySave: "Add";
888
+ readonly keySaving: "Adding...";
889
+ readonly keyTest: "Test key";
890
+ readonly cancel: "Cancel";
891
+ readonly keyTesting: "Testing...";
892
+ readonly keyTestOk: "Key works ({ms}ms)";
893
+ readonly keyTestFailed: "Key rejected: {detail}";
894
+ readonly testSavedKey: "Test";
895
+ readonly modelsSection: "Models";
896
+ readonly modelsHint: "The list comes from the official subscription catalog; sync once before first use. Unchecked models do not appear in the model picker.";
897
+ readonly modelCount: "{count} model(s)";
898
+ readonly modelChecklistCount: "{count} of {total} selected";
899
+ readonly selectAll: "Select all";
900
+ readonly unselectAll: "Clear all";
901
+ readonly catalogSync: "Refresh catalog";
902
+ readonly catalogSyncing: "Refreshing...";
903
+ readonly catalogNeverSynced: "The official catalog has not been synced yet. Use \"Refresh catalog\" to fetch the models this subscription currently serves; until then only the bundled table is listed.";
904
+ readonly catalogEmpty: "The official catalog returned no models.";
905
+ readonly noModels: "No models available.";
906
+ readonly catalogSources: "Catalog sources: {sources}";
907
+ readonly contextSection: "Context windows";
908
+ readonly contextHint: "Shown for checked models only. An invalid value is reported rather than saved; restoring clears the override.";
909
+ readonly tokens: "tokens";
910
+ readonly contextSave: "Save";
911
+ readonly contextOverridden: "overridden";
912
+ readonly contextSaving: "Saving";
913
+ readonly contextReset: "Restore default";
914
+ readonly contextResetAll: "Restore all defaults";
915
+ readonly contextEmpty: "Check at least one model to configure its context window here.";
916
+ readonly routingSection: "Upstream channels";
917
+ readonly routingHint: "Probe a model before pinning to discover its channels, then validate them. Click a channel to pin it in order; click ⊘ to exclude it.";
918
+ readonly probe: "Probe";
919
+ readonly probing: "Probing...";
920
+ readonly validate: "Validate";
921
+ readonly validating: "Validating...";
922
+ readonly testPin: "Test";
923
+ readonly testingPin: "Testing...";
924
+ readonly savePin: "Save pin";
925
+ readonly savingPin: "Saving...";
926
+ readonly resetPin: "Back to automatic";
927
+ readonly pinAuto: "automatic routing";
928
+ readonly pinPinned: "Pinned order: {list}";
929
+ readonly pinExcluded: "Excluded: {list}";
930
+ readonly pinMode: "Pin mode";
931
+ readonly sort: "Sort";
932
+ readonly sortNone: "No sort";
933
+ readonly sortCost: "Cost first";
934
+ readonly sortTtft: "First token first";
935
+ readonly sortTps: "Throughput first";
936
+ readonly modeStrict: "Strict (only the pinned channels)";
937
+ readonly modePreferred: "Preferred (try in order, fall over on failure)";
938
+ readonly noChannels: "No channels discovered yet. Use \"Probe\" to read the model upstream list.";
939
+ readonly channelHint: "Click a channel to add it to the pin order; click again to remove. ⊘ toggles exclusion.";
940
+ readonly lastServed: "Last served by {provider} ({ms}ms)";
941
+ readonly probedAt: "Probed {time}";
942
+ readonly pipeline: "Pipeline: {pipeline}";
943
+ readonly notPinnable: "This model is not pinnable right now";
944
+ readonly testServed: "Test passed: served by {provider} ({ms}ms)";
945
+ readonly testFailed: "Test failed: {detail}";
946
+ readonly testTrace: "Attempts";
947
+ readonly warnings: "Warnings";
948
+ readonly probeResult: "Probe result";
949
+ readonly validateSummary: "Validate: available {ok} / rate-limited {limited} / not-pinnable {bad} / auth-failed {auth} / unknown {unknown}";
950
+ readonly usageSection: "Official usage limits";
951
+ readonly usageHint: "Limits belong to accounts, not to the line. Refreshing sends one request per usable account.";
952
+ readonly usageRefresh: "Refresh usage";
953
+ readonly usageRefreshing: "Refreshing...";
954
+ readonly usageEmpty: "No usage reading yet.";
955
+ readonly usageNone: "No usage data yet";
956
+ readonly usageUnavailable: "Could not read official usage: {detail}";
957
+ readonly usageWindow: "{label}: {percent}% used";
958
+ readonly usageResets: "Resets: {when}";
959
+ readonly historySection: "Request history";
960
+ readonly historyHint: "In-memory only for this process; it starts empty after a restart.";
961
+ readonly historyRefresh: "Refresh history";
962
+ readonly historyEmpty: "No model calls recorded in this process yet.";
963
+ readonly historyCount: "Last {count} of {total} call(s)";
964
+ readonly historyModel: "Model";
965
+ readonly historyLatency: "first token / total";
966
+ readonly historyTokens: "tokens";
967
+ readonly historyError: "Error";
968
+ readonly historyAccount: "Account";
969
+ readonly advancedSection: "Advanced";
970
+ readonly baseURL: "Default gateway";
971
+ readonly defaultContextWindow: "Default context window";
972
+ readonly defaultMaxTokens: "Default output budget";
973
+ readonly maxConcurrentRequests: "Streams per account (0 = unlimited)";
974
+ readonly streamIdleTimeoutMs: "Stream idle timeout (ms)";
975
+ readonly historyLimit: "History rows retained";
976
+ readonly exposeCatalog: "List extra models from the gateway catalog";
977
+ readonly exposeCatalogHint: "When off, only the official subscription catalog and the bundled table are listed.";
978
+ readonly pinSpelling: "Pin field spelling";
979
+ readonly pinSpellingBoth: "Write both spellings (recommended)";
980
+ readonly pinSpellingDetected: "Write only the probed spelling";
981
+ readonly pinSpellingHint: "The gateway can switch pipelines between calls; one spelling means the pin silently disappears when it does.";
982
+ readonly exposeTools: "Register the cline_pass_* management tools";
983
+ readonly exposeToolsHint: "Their definitions ride in every request tool list, so this is off by default. Takes effect after a DSH restart.";
984
+ readonly saveSettings: "Save settings";
985
+ readonly savingSettings: "Saving...";
986
+ readonly saved: "Saved";
987
+ readonly restartRequired: "Saved; the management tools take effect after a DSH restart.";
988
+ readonly limitsSection: "Notes";
989
+ readonly limitKey: "API keys live in the OS credential store; the card only ever shows the alias.";
990
+ readonly limitGateway: "Requests are routed by the Cline gateway, which decides the serving channel. A pin is not guaranteed to be adopted, so the card reads the channel back.";
991
+ readonly limitRoute: "The route is claimed by provider id: if another plugin already serves cline-pass, this card still configures the line but that provider answers the requests.";
992
+ readonly limitQuota: "Quota windows come from the gateway usage-limits endpoint; when it fails the card keeps the previous reading and says why.";
993
+ readonly accountPool: string;
994
+ readonly accountCount: string;
995
+ readonly primaryAccount: string;
996
+ readonly activeAccount: string;
997
+ readonly setPrimary: string;
998
+ readonly deleteAccount: string;
999
+ readonly cooling: string;
1000
+ readonly cooldownLeft: string;
1001
+ readonly cooldownRemaining: string;
1002
+ readonly cooldownRemainingSeconds: string;
1003
+ readonly modelCooldown: string;
1004
+ readonly clearCooldown: string;
1005
+ readonly rotationStrategy: string;
1006
+ readonly strategySequential: string;
1007
+ readonly strategyRoundRobin: string;
1008
+ readonly strategySticky: string;
1009
+ readonly email: string;
1010
+ readonly expires: string;
1011
+ readonly lastUsed: string;
1012
+ readonly accountId: string;
1013
+ readonly accountQuota: string;
1014
+ readonly quotaNone: string;
1015
+ readonly quotaSnapshot: string;
1016
+ readonly quotaResets: string;
1017
+ readonly quotaExhausted: string;
1018
+ readonly quotaWindow: string;
1019
+ readonly quotaUsed: string;
1020
+ readonly quotaFactsScope: string;
1021
+ readonly composerLabel: string;
1022
+ };
1023
+ };
1024
+ export type ClinePassLocaleKey = keyof typeof zh;
1025
+ //# sourceMappingURL=locales.d.ts.map