@eminent337/aery-ai 0.67.76 → 0.67.78

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 (182) hide show
  1. package/README.md +0 -0
  2. package/package.json +110 -110
  3. package/dist/api-registry.d.ts +0 -20
  4. package/dist/api-registry.d.ts.map +0 -1
  5. package/dist/api-registry.js +0 -44
  6. package/dist/api-registry.js.map +0 -1
  7. package/dist/bedrock-provider.d.ts +0 -5
  8. package/dist/bedrock-provider.d.ts.map +0 -1
  9. package/dist/bedrock-provider.js +0 -6
  10. package/dist/bedrock-provider.js.map +0 -1
  11. package/dist/cli.d.ts +0 -3
  12. package/dist/cli.d.ts.map +0 -1
  13. package/dist/cli.js +0 -116
  14. package/dist/cli.js.map +0 -1
  15. package/dist/env-api-keys.d.ts +0 -18
  16. package/dist/env-api-keys.d.ts.map +0 -1
  17. package/dist/env-api-keys.js +0 -162
  18. package/dist/env-api-keys.js.map +0 -1
  19. package/dist/index.d.ts +0 -26
  20. package/dist/index.d.ts.map +0 -1
  21. package/dist/index.js +0 -14
  22. package/dist/index.js.map +0 -1
  23. package/dist/models.d.ts +0 -25
  24. package/dist/models.d.ts.map +0 -1
  25. package/dist/models.generated.d.ts +0 -15860
  26. package/dist/models.generated.d.ts.map +0 -1
  27. package/dist/models.generated.js +0 -15589
  28. package/dist/models.generated.js.map +0 -1
  29. package/dist/models.js +0 -63
  30. package/dist/models.js.map +0 -1
  31. package/dist/oauth.d.ts +0 -2
  32. package/dist/oauth.d.ts.map +0 -1
  33. package/dist/oauth.js +0 -2
  34. package/dist/oauth.js.map +0 -1
  35. package/dist/providers/amazon-bedrock.d.ts +0 -38
  36. package/dist/providers/amazon-bedrock.d.ts.map +0 -1
  37. package/dist/providers/amazon-bedrock.js +0 -759
  38. package/dist/providers/amazon-bedrock.js.map +0 -1
  39. package/dist/providers/anthropic.d.ts +0 -54
  40. package/dist/providers/anthropic.d.ts.map +0 -1
  41. package/dist/providers/anthropic.js +0 -931
  42. package/dist/providers/anthropic.js.map +0 -1
  43. package/dist/providers/azure-openai-responses.d.ts +0 -15
  44. package/dist/providers/azure-openai-responses.d.ts.map +0 -1
  45. package/dist/providers/azure-openai-responses.js +0 -202
  46. package/dist/providers/azure-openai-responses.js.map +0 -1
  47. package/dist/providers/cloudflare.d.ts +0 -7
  48. package/dist/providers/cloudflare.d.ts.map +0 -1
  49. package/dist/providers/cloudflare.js +0 -19
  50. package/dist/providers/cloudflare.js.map +0 -1
  51. package/dist/providers/faux.d.ts +0 -56
  52. package/dist/providers/faux.d.ts.map +0 -1
  53. package/dist/providers/faux.js +0 -368
  54. package/dist/providers/faux.js.map +0 -1
  55. package/dist/providers/github-copilot-headers.d.ts +0 -8
  56. package/dist/providers/github-copilot-headers.d.ts.map +0 -1
  57. package/dist/providers/github-copilot-headers.js +0 -29
  58. package/dist/providers/github-copilot-headers.js.map +0 -1
  59. package/dist/providers/google-gemini-cli.d.ts +0 -74
  60. package/dist/providers/google-gemini-cli.d.ts.map +0 -1
  61. package/dist/providers/google-gemini-cli.js +0 -779
  62. package/dist/providers/google-gemini-cli.js.map +0 -1
  63. package/dist/providers/google-shared.d.ts +0 -65
  64. package/dist/providers/google-shared.d.ts.map +0 -1
  65. package/dist/providers/google-shared.js +0 -338
  66. package/dist/providers/google-shared.js.map +0 -1
  67. package/dist/providers/google-vertex.d.ts +0 -15
  68. package/dist/providers/google-vertex.d.ts.map +0 -1
  69. package/dist/providers/google-vertex.js +0 -441
  70. package/dist/providers/google-vertex.js.map +0 -1
  71. package/dist/providers/google.d.ts +0 -13
  72. package/dist/providers/google.d.ts.map +0 -1
  73. package/dist/providers/google.js +0 -399
  74. package/dist/providers/google.js.map +0 -1
  75. package/dist/providers/mistral.d.ts +0 -25
  76. package/dist/providers/mistral.d.ts.map +0 -1
  77. package/dist/providers/mistral.js +0 -534
  78. package/dist/providers/mistral.js.map +0 -1
  79. package/dist/providers/openai-codex-responses.d.ts +0 -11
  80. package/dist/providers/openai-codex-responses.d.ts.map +0 -1
  81. package/dist/providers/openai-codex-responses.js +0 -779
  82. package/dist/providers/openai-codex-responses.js.map +0 -1
  83. package/dist/providers/openai-completions.d.ts +0 -19
  84. package/dist/providers/openai-completions.d.ts.map +0 -1
  85. package/dist/providers/openai-completions.js +0 -909
  86. package/dist/providers/openai-completions.js.map +0 -1
  87. package/dist/providers/openai-responses-shared.d.ts +0 -18
  88. package/dist/providers/openai-responses-shared.d.ts.map +0 -1
  89. package/dist/providers/openai-responses-shared.js +0 -479
  90. package/dist/providers/openai-responses-shared.js.map +0 -1
  91. package/dist/providers/openai-responses.d.ts +0 -13
  92. package/dist/providers/openai-responses.d.ts.map +0 -1
  93. package/dist/providers/openai-responses.js +0 -206
  94. package/dist/providers/openai-responses.js.map +0 -1
  95. package/dist/providers/register-builtins.d.ts +0 -38
  96. package/dist/providers/register-builtins.d.ts.map +0 -1
  97. package/dist/providers/register-builtins.js +0 -261
  98. package/dist/providers/register-builtins.js.map +0 -1
  99. package/dist/providers/simple-options.d.ts +0 -8
  100. package/dist/providers/simple-options.d.ts.map +0 -1
  101. package/dist/providers/simple-options.js +0 -38
  102. package/dist/providers/simple-options.js.map +0 -1
  103. package/dist/providers/transform-messages.d.ts +0 -8
  104. package/dist/providers/transform-messages.d.ts.map +0 -1
  105. package/dist/providers/transform-messages.js +0 -184
  106. package/dist/providers/transform-messages.js.map +0 -1
  107. package/dist/stream.d.ts +0 -8
  108. package/dist/stream.d.ts.map +0 -1
  109. package/dist/stream.js +0 -27
  110. package/dist/stream.js.map +0 -1
  111. package/dist/types.d.ts +0 -397
  112. package/dist/types.d.ts.map +0 -1
  113. package/dist/types.js +0 -2
  114. package/dist/types.js.map +0 -1
  115. package/dist/utils/event-stream.d.ts +0 -21
  116. package/dist/utils/event-stream.d.ts.map +0 -1
  117. package/dist/utils/event-stream.js +0 -81
  118. package/dist/utils/event-stream.js.map +0 -1
  119. package/dist/utils/hash.d.ts +0 -3
  120. package/dist/utils/hash.d.ts.map +0 -1
  121. package/dist/utils/hash.js +0 -14
  122. package/dist/utils/hash.js.map +0 -1
  123. package/dist/utils/headers.d.ts +0 -2
  124. package/dist/utils/headers.d.ts.map +0 -1
  125. package/dist/utils/headers.js +0 -8
  126. package/dist/utils/headers.js.map +0 -1
  127. package/dist/utils/json-parse.d.ts +0 -16
  128. package/dist/utils/json-parse.d.ts.map +0 -1
  129. package/dist/utils/json-parse.js +0 -113
  130. package/dist/utils/json-parse.js.map +0 -1
  131. package/dist/utils/oauth/anthropic.d.ts +0 -25
  132. package/dist/utils/oauth/anthropic.d.ts.map +0 -1
  133. package/dist/utils/oauth/anthropic.js +0 -335
  134. package/dist/utils/oauth/anthropic.js.map +0 -1
  135. package/dist/utils/oauth/github-copilot.d.ts +0 -30
  136. package/dist/utils/oauth/github-copilot.d.ts.map +0 -1
  137. package/dist/utils/oauth/github-copilot.js +0 -292
  138. package/dist/utils/oauth/github-copilot.js.map +0 -1
  139. package/dist/utils/oauth/google-antigravity.d.ts +0 -26
  140. package/dist/utils/oauth/google-antigravity.d.ts.map +0 -1
  141. package/dist/utils/oauth/google-antigravity.js +0 -377
  142. package/dist/utils/oauth/google-antigravity.js.map +0 -1
  143. package/dist/utils/oauth/google-gemini-cli.d.ts +0 -26
  144. package/dist/utils/oauth/google-gemini-cli.d.ts.map +0 -1
  145. package/dist/utils/oauth/google-gemini-cli.js +0 -482
  146. package/dist/utils/oauth/google-gemini-cli.js.map +0 -1
  147. package/dist/utils/oauth/index.d.ts +0 -61
  148. package/dist/utils/oauth/index.d.ts.map +0 -1
  149. package/dist/utils/oauth/index.js +0 -131
  150. package/dist/utils/oauth/index.js.map +0 -1
  151. package/dist/utils/oauth/oauth-page.d.ts +0 -3
  152. package/dist/utils/oauth/oauth-page.d.ts.map +0 -1
  153. package/dist/utils/oauth/oauth-page.js +0 -105
  154. package/dist/utils/oauth/oauth-page.js.map +0 -1
  155. package/dist/utils/oauth/openai-codex.d.ts +0 -34
  156. package/dist/utils/oauth/openai-codex.d.ts.map +0 -1
  157. package/dist/utils/oauth/openai-codex.js +0 -374
  158. package/dist/utils/oauth/openai-codex.js.map +0 -1
  159. package/dist/utils/oauth/pkce.d.ts +0 -13
  160. package/dist/utils/oauth/pkce.d.ts.map +0 -1
  161. package/dist/utils/oauth/pkce.js +0 -31
  162. package/dist/utils/oauth/pkce.js.map +0 -1
  163. package/dist/utils/oauth/types.d.ts +0 -47
  164. package/dist/utils/oauth/types.d.ts.map +0 -1
  165. package/dist/utils/oauth/types.js +0 -2
  166. package/dist/utils/oauth/types.js.map +0 -1
  167. package/dist/utils/overflow.d.ts +0 -53
  168. package/dist/utils/overflow.d.ts.map +0 -1
  169. package/dist/utils/overflow.js +0 -132
  170. package/dist/utils/overflow.js.map +0 -1
  171. package/dist/utils/sanitize-unicode.d.ts +0 -22
  172. package/dist/utils/sanitize-unicode.d.ts.map +0 -1
  173. package/dist/utils/sanitize-unicode.js +0 -26
  174. package/dist/utils/sanitize-unicode.js.map +0 -1
  175. package/dist/utils/typebox-helpers.d.ts +0 -17
  176. package/dist/utils/typebox-helpers.d.ts.map +0 -1
  177. package/dist/utils/typebox-helpers.js +0 -21
  178. package/dist/utils/typebox-helpers.js.map +0 -1
  179. package/dist/utils/validation.d.ts +0 -18
  180. package/dist/utils/validation.d.ts.map +0 -1
  181. package/dist/utils/validation.js +0 -281
  182. package/dist/utils/validation.js.map +0 -1
@@ -1,162 +0,0 @@
1
- // NEVER convert to top-level imports - breaks browser/Vite builds (web-ui)
2
- let _existsSync = null;
3
- let _homedir = null;
4
- let _join = null;
5
- const dynamicImport = (specifier) => import(specifier);
6
- const NODE_FS_SPECIFIER = "node:" + "fs";
7
- const NODE_OS_SPECIFIER = "node:" + "os";
8
- const NODE_PATH_SPECIFIER = "node:" + "path";
9
- // Eagerly load in Node.js/Bun environment only
10
- if (typeof process !== "undefined" && (process.versions?.node || process.versions?.bun)) {
11
- dynamicImport(NODE_FS_SPECIFIER).then((m) => {
12
- _existsSync = m.existsSync;
13
- });
14
- dynamicImport(NODE_OS_SPECIFIER).then((m) => {
15
- _homedir = m.homedir;
16
- });
17
- dynamicImport(NODE_PATH_SPECIFIER).then((m) => {
18
- _join = m.join;
19
- });
20
- }
21
- let _procEnvCache = null;
22
- /**
23
- * Fallback for https://github.com/oven-sh/bun/issues/27802
24
- * Bun compiled binaries have an empty `process.env` inside sandbox
25
- * environments on Linux. We can recover the env from `/proc/self/environ`.
26
- */
27
- function getProcEnv(key) {
28
- if (!process.versions?.bun)
29
- return undefined;
30
- if (typeof process === "undefined")
31
- return undefined;
32
- // If process.env already has entries, the bug is not triggered.
33
- if (Object.keys(process.env).length > 0)
34
- return undefined;
35
- if (_procEnvCache === null) {
36
- _procEnvCache = new Map();
37
- try {
38
- const { readFileSync } = require("node:fs");
39
- const data = readFileSync("/proc/self/environ", "utf-8");
40
- for (const entry of data.split("\0")) {
41
- const idx = entry.indexOf("=");
42
- if (idx > 0) {
43
- _procEnvCache.set(entry.slice(0, idx), entry.slice(idx + 1));
44
- }
45
- }
46
- }
47
- catch {
48
- // /proc/self/environ may not be readable.
49
- }
50
- }
51
- return _procEnvCache.get(key);
52
- }
53
- let cachedVertexAdcCredentialsExists = null;
54
- function hasVertexAdcCredentials() {
55
- if (cachedVertexAdcCredentialsExists === null) {
56
- // If node modules haven't loaded yet (async import race at startup),
57
- // return false WITHOUT caching so the next call retries once they're ready.
58
- // Only cache false permanently in a browser environment where fs is never available.
59
- if (!_existsSync || !_homedir || !_join) {
60
- const isNode = typeof process !== "undefined" && (process.versions?.node || process.versions?.bun);
61
- if (!isNode) {
62
- // Definitively in a browser — safe to cache false permanently
63
- cachedVertexAdcCredentialsExists = false;
64
- }
65
- return false;
66
- }
67
- // Check GOOGLE_APPLICATION_CREDENTIALS env var first (standard way)
68
- const gacPath = process.env.GOOGLE_APPLICATION_CREDENTIALS || getProcEnv("GOOGLE_APPLICATION_CREDENTIALS");
69
- if (gacPath) {
70
- cachedVertexAdcCredentialsExists = _existsSync(gacPath);
71
- }
72
- else {
73
- // Fall back to default ADC path (lazy evaluation)
74
- cachedVertexAdcCredentialsExists = _existsSync(_join(_homedir(), ".config", "gcloud", "application_default_credentials.json"));
75
- }
76
- }
77
- return cachedVertexAdcCredentialsExists;
78
- }
79
- function getApiKeyEnvVars(provider) {
80
- if (provider === "github-copilot") {
81
- return ["COPILOT_GITHUB_TOKEN", "GH_TOKEN", "GITHUB_TOKEN"];
82
- }
83
- // ANTHROPIC_OAUTH_TOKEN takes precedence over ANTHROPIC_API_KEY
84
- if (provider === "anthropic") {
85
- return ["ANTHROPIC_OAUTH_TOKEN", "ANTHROPIC_API_KEY"];
86
- }
87
- const envMap = {
88
- openai: "OPENAI_API_KEY",
89
- "azure-openai-responses": "AZURE_OPENAI_API_KEY",
90
- deepseek: "DEEPSEEK_API_KEY",
91
- google: "GEMINI_API_KEY",
92
- "google-vertex": "GOOGLE_CLOUD_API_KEY",
93
- groq: "GROQ_API_KEY",
94
- cerebras: "CEREBRAS_API_KEY",
95
- xai: "XAI_API_KEY",
96
- openrouter: "OPENROUTER_API_KEY",
97
- "vercel-ai-gateway": "AI_GATEWAY_API_KEY",
98
- zai: "ZAI_API_KEY",
99
- mistral: "MISTRAL_API_KEY",
100
- minimax: "MINIMAX_API_KEY",
101
- "minimax-cn": "MINIMAX_CN_API_KEY",
102
- huggingface: "HF_TOKEN",
103
- fireworks: "FIREWORKS_API_KEY",
104
- opencode: "OPENCODE_API_KEY",
105
- "opencode-go": "OPENCODE_API_KEY",
106
- "kimi-coding": "KIMI_API_KEY",
107
- "cloudflare-workers-ai": "CLOUDFLARE_API_KEY",
108
- };
109
- const envVar = envMap[provider];
110
- return envVar ? [envVar] : undefined;
111
- }
112
- export function findEnvKeys(provider) {
113
- const envVars = getApiKeyEnvVars(provider);
114
- if (!envVars)
115
- return undefined;
116
- const found = envVars.filter((envVar) => !!process.env[envVar] || !!getProcEnv(envVar));
117
- return found.length > 0 ? found : undefined;
118
- }
119
- export function getEnvApiKey(provider) {
120
- const envKeys = findEnvKeys(provider);
121
- if (envKeys?.[0]) {
122
- return process.env[envKeys[0]] || getProcEnv(envKeys[0]);
123
- }
124
- // Vertex AI supports either an explicit API key or Application Default Credentials.
125
- // Auth is configured via `gcloud auth application-default login`.
126
- if (provider === "google-vertex") {
127
- const hasCredentials = hasVertexAdcCredentials();
128
- const hasProject = !!(process.env.GOOGLE_CLOUD_PROJECT ||
129
- process.env.GCLOUD_PROJECT ||
130
- getProcEnv("GOOGLE_CLOUD_PROJECT") ||
131
- getProcEnv("GCLOUD_PROJECT"));
132
- const hasLocation = !!(process.env.GOOGLE_CLOUD_LOCATION || getProcEnv("GOOGLE_CLOUD_LOCATION"));
133
- if (hasCredentials && hasProject && hasLocation) {
134
- return "<authenticated>";
135
- }
136
- }
137
- if (provider === "amazon-bedrock") {
138
- // Amazon Bedrock supports multiple credential sources:
139
- // 1. AWS_PROFILE - named profile from ~/.aws/credentials
140
- // 2. AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY - standard IAM keys
141
- // 3. AWS_BEARER_TOKEN_BEDROCK - Bedrock bearer token
142
- // 4. AWS_CONTAINER_CREDENTIALS_RELATIVE_URI - ECS task roles
143
- // 5. AWS_CONTAINER_CREDENTIALS_FULL_URI - ECS task roles (full URI)
144
- // 6. AWS_WEB_IDENTITY_TOKEN_FILE - IRSA (IAM Roles for Service Accounts)
145
- if (process.env.AWS_PROFILE ||
146
- (process.env.AWS_ACCESS_KEY_ID && process.env.AWS_SECRET_ACCESS_KEY) ||
147
- process.env.AWS_BEARER_TOKEN_BEDROCK ||
148
- process.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI ||
149
- process.env.AWS_CONTAINER_CREDENTIALS_FULL_URI ||
150
- process.env.AWS_WEB_IDENTITY_TOKEN_FILE ||
151
- getProcEnv("AWS_PROFILE") ||
152
- (getProcEnv("AWS_ACCESS_KEY_ID") && getProcEnv("AWS_SECRET_ACCESS_KEY")) ||
153
- getProcEnv("AWS_BEARER_TOKEN_BEDROCK") ||
154
- getProcEnv("AWS_CONTAINER_CREDENTIALS_RELATIVE_URI") ||
155
- getProcEnv("AWS_CONTAINER_CREDENTIALS_FULL_URI") ||
156
- getProcEnv("AWS_WEB_IDENTITY_TOKEN_FILE")) {
157
- return "<authenticated>";
158
- }
159
- }
160
- return undefined;
161
- }
162
- //# sourceMappingURL=env-api-keys.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-api-keys.js","sourceRoot":"","sources":["../src/env-api-keys.ts"],"names":[],"mappings":"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","sourcesContent":["// NEVER convert to top-level imports - breaks browser/Vite builds (web-ui)\nlet _existsSync: typeof import(\"node:fs\").existsSync | null = null;\nlet _homedir: typeof import(\"node:os\").homedir | null = null;\nlet _join: typeof import(\"node:path\").join | null = null;\n\ntype DynamicImport = (specifier: string) => Promise<unknown>;\n\nconst dynamicImport: DynamicImport = (specifier) => import(specifier);\nconst NODE_FS_SPECIFIER = \"node:\" + \"fs\";\nconst NODE_OS_SPECIFIER = \"node:\" + \"os\";\nconst NODE_PATH_SPECIFIER = \"node:\" + \"path\";\n\n// Eagerly load in Node.js/Bun environment only\nif (typeof process !== \"undefined\" && (process.versions?.node || process.versions?.bun)) {\n\tdynamicImport(NODE_FS_SPECIFIER).then((m) => {\n\t\t_existsSync = (m as typeof import(\"node:fs\")).existsSync;\n\t});\n\tdynamicImport(NODE_OS_SPECIFIER).then((m) => {\n\t\t_homedir = (m as typeof import(\"node:os\")).homedir;\n\t});\n\tdynamicImport(NODE_PATH_SPECIFIER).then((m) => {\n\t\t_join = (m as typeof import(\"node:path\")).join;\n\t});\n}\n\nimport type { KnownProvider } from \"./types.js\";\n\nlet _procEnvCache: Map<string, string> | null = null;\n\n/**\n * Fallback for https://github.com/oven-sh/bun/issues/27802\n * Bun compiled binaries have an empty `process.env` inside sandbox\n * environments on Linux. We can recover the env from `/proc/self/environ`.\n */\nfunction getProcEnv(key: string): string | undefined {\n\tif (!process.versions?.bun) return undefined;\n\tif (typeof process === \"undefined\") return undefined;\n\n\t// If process.env already has entries, the bug is not triggered.\n\tif (Object.keys(process.env).length > 0) return undefined;\n\n\tif (_procEnvCache === null) {\n\t\t_procEnvCache = new Map();\n\t\ttry {\n\t\t\tconst { readFileSync } = require(\"node:fs\") as typeof import(\"node:fs\");\n\t\t\tconst data = readFileSync(\"/proc/self/environ\", \"utf-8\");\n\t\t\tfor (const entry of data.split(\"\\0\")) {\n\t\t\t\tconst idx = entry.indexOf(\"=\");\n\t\t\t\tif (idx > 0) {\n\t\t\t\t\t_procEnvCache.set(entry.slice(0, idx), entry.slice(idx + 1));\n\t\t\t\t}\n\t\t\t}\n\t\t} catch {\n\t\t\t// /proc/self/environ may not be readable.\n\t\t}\n\t}\n\n\treturn _procEnvCache.get(key);\n}\n\nlet cachedVertexAdcCredentialsExists: boolean | null = null;\n\nfunction hasVertexAdcCredentials(): boolean {\n\tif (cachedVertexAdcCredentialsExists === null) {\n\t\t// If node modules haven't loaded yet (async import race at startup),\n\t\t// return false WITHOUT caching so the next call retries once they're ready.\n\t\t// Only cache false permanently in a browser environment where fs is never available.\n\t\tif (!_existsSync || !_homedir || !_join) {\n\t\t\tconst isNode = typeof process !== \"undefined\" && (process.versions?.node || process.versions?.bun);\n\t\t\tif (!isNode) {\n\t\t\t\t// Definitively in a browser — safe to cache false permanently\n\t\t\t\tcachedVertexAdcCredentialsExists = false;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n\t\t// Check GOOGLE_APPLICATION_CREDENTIALS env var first (standard way)\n\t\tconst gacPath = process.env.GOOGLE_APPLICATION_CREDENTIALS || getProcEnv(\"GOOGLE_APPLICATION_CREDENTIALS\");\n\t\tif (gacPath) {\n\t\t\tcachedVertexAdcCredentialsExists = _existsSync(gacPath);\n\t\t} else {\n\t\t\t// Fall back to default ADC path (lazy evaluation)\n\t\t\tcachedVertexAdcCredentialsExists = _existsSync(\n\t\t\t\t_join(_homedir(), \".config\", \"gcloud\", \"application_default_credentials.json\"),\n\t\t\t);\n\t\t}\n\t}\n\treturn cachedVertexAdcCredentialsExists;\n}\n\nfunction getApiKeyEnvVars(provider: string): readonly string[] | undefined {\n\tif (provider === \"github-copilot\") {\n\t\treturn [\"COPILOT_GITHUB_TOKEN\", \"GH_TOKEN\", \"GITHUB_TOKEN\"];\n\t}\n\n\t// ANTHROPIC_OAUTH_TOKEN takes precedence over ANTHROPIC_API_KEY\n\tif (provider === \"anthropic\") {\n\t\treturn [\"ANTHROPIC_OAUTH_TOKEN\", \"ANTHROPIC_API_KEY\"];\n\t}\n\n\tconst envMap: Record<string, string> = {\n\t\topenai: \"OPENAI_API_KEY\",\n\t\t\"azure-openai-responses\": \"AZURE_OPENAI_API_KEY\",\n\t\tdeepseek: \"DEEPSEEK_API_KEY\",\n\t\tgoogle: \"GEMINI_API_KEY\",\n\t\t\"google-vertex\": \"GOOGLE_CLOUD_API_KEY\",\n\t\tgroq: \"GROQ_API_KEY\",\n\t\tcerebras: \"CEREBRAS_API_KEY\",\n\t\txai: \"XAI_API_KEY\",\n\t\topenrouter: \"OPENROUTER_API_KEY\",\n\t\t\"vercel-ai-gateway\": \"AI_GATEWAY_API_KEY\",\n\t\tzai: \"ZAI_API_KEY\",\n\t\tmistral: \"MISTRAL_API_KEY\",\n\t\tminimax: \"MINIMAX_API_KEY\",\n\t\t\"minimax-cn\": \"MINIMAX_CN_API_KEY\",\n\t\thuggingface: \"HF_TOKEN\",\n\t\tfireworks: \"FIREWORKS_API_KEY\",\n\t\topencode: \"OPENCODE_API_KEY\",\n\t\t\"opencode-go\": \"OPENCODE_API_KEY\",\n\t\t\"kimi-coding\": \"KIMI_API_KEY\",\n\t\t\"cloudflare-workers-ai\": \"CLOUDFLARE_API_KEY\",\n\t};\n\n\tconst envVar = envMap[provider];\n\treturn envVar ? [envVar] : undefined;\n}\n\n/**\n * Find configured environment variables that can provide an API key for a provider.\n *\n * This only reports actual API key variables. It intentionally excludes ambient\n * credential sources such as AWS profiles, AWS IAM credentials, and Google\n * Application Default Credentials.\n */\nexport function findEnvKeys(provider: KnownProvider): string[] | undefined;\nexport function findEnvKeys(provider: string): string[] | undefined;\nexport function findEnvKeys(provider: string): string[] | undefined {\n\tconst envVars = getApiKeyEnvVars(provider);\n\tif (!envVars) return undefined;\n\n\tconst found = envVars.filter((envVar) => !!process.env[envVar] || !!getProcEnv(envVar));\n\treturn found.length > 0 ? found : undefined;\n}\n\n/**\n * Get API key for provider from known environment variables, e.g. OPENAI_API_KEY.\n *\n * Will not return API keys for providers that require OAuth tokens.\n */\nexport function getEnvApiKey(provider: KnownProvider): string | undefined;\nexport function getEnvApiKey(provider: string): string | undefined;\nexport function getEnvApiKey(provider: string): string | undefined {\n\tconst envKeys = findEnvKeys(provider);\n\tif (envKeys?.[0]) {\n\t\treturn process.env[envKeys[0]] || getProcEnv(envKeys[0]);\n\t}\n\n\t// Vertex AI supports either an explicit API key or Application Default Credentials.\n\t// Auth is configured via `gcloud auth application-default login`.\n\tif (provider === \"google-vertex\") {\n\t\tconst hasCredentials = hasVertexAdcCredentials();\n\t\tconst hasProject = !!(\n\t\t\tprocess.env.GOOGLE_CLOUD_PROJECT ||\n\t\t\tprocess.env.GCLOUD_PROJECT ||\n\t\t\tgetProcEnv(\"GOOGLE_CLOUD_PROJECT\") ||\n\t\t\tgetProcEnv(\"GCLOUD_PROJECT\")\n\t\t);\n\t\tconst hasLocation = !!(process.env.GOOGLE_CLOUD_LOCATION || getProcEnv(\"GOOGLE_CLOUD_LOCATION\"));\n\n\t\tif (hasCredentials && hasProject && hasLocation) {\n\t\t\treturn \"<authenticated>\";\n\t\t}\n\t}\n\n\tif (provider === \"amazon-bedrock\") {\n\t\t// Amazon Bedrock supports multiple credential sources:\n\t\t// 1. AWS_PROFILE - named profile from ~/.aws/credentials\n\t\t// 2. AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY - standard IAM keys\n\t\t// 3. AWS_BEARER_TOKEN_BEDROCK - Bedrock bearer token\n\t\t// 4. AWS_CONTAINER_CREDENTIALS_RELATIVE_URI - ECS task roles\n\t\t// 5. AWS_CONTAINER_CREDENTIALS_FULL_URI - ECS task roles (full URI)\n\t\t// 6. AWS_WEB_IDENTITY_TOKEN_FILE - IRSA (IAM Roles for Service Accounts)\n\t\tif (\n\t\t\tprocess.env.AWS_PROFILE ||\n\t\t\t(process.env.AWS_ACCESS_KEY_ID && process.env.AWS_SECRET_ACCESS_KEY) ||\n\t\t\tprocess.env.AWS_BEARER_TOKEN_BEDROCK ||\n\t\t\tprocess.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI ||\n\t\t\tprocess.env.AWS_CONTAINER_CREDENTIALS_FULL_URI ||\n\t\t\tprocess.env.AWS_WEB_IDENTITY_TOKEN_FILE ||\n\t\t\tgetProcEnv(\"AWS_PROFILE\") ||\n\t\t\t(getProcEnv(\"AWS_ACCESS_KEY_ID\") && getProcEnv(\"AWS_SECRET_ACCESS_KEY\")) ||\n\t\t\tgetProcEnv(\"AWS_BEARER_TOKEN_BEDROCK\") ||\n\t\t\tgetProcEnv(\"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\") ||\n\t\t\tgetProcEnv(\"AWS_CONTAINER_CREDENTIALS_FULL_URI\") ||\n\t\t\tgetProcEnv(\"AWS_WEB_IDENTITY_TOKEN_FILE\")\n\t\t) {\n\t\t\treturn \"<authenticated>\";\n\t\t}\n\t}\n\n\treturn undefined;\n}\n"]}
package/dist/index.d.ts DELETED
@@ -1,26 +0,0 @@
1
- export type { Static, TSchema } from "typebox";
2
- export { Type } from "typebox";
3
- export * from "./api-registry.js";
4
- export * from "./env-api-keys.js";
5
- export * from "./models.js";
6
- export type { BedrockOptions, BedrockThinkingDisplay } from "./providers/amazon-bedrock.js";
7
- export type { AnthropicEffort, AnthropicOptions, AnthropicThinkingDisplay } from "./providers/anthropic.js";
8
- export type { AzureOpenAIResponsesOptions } from "./providers/azure-openai-responses.js";
9
- export * from "./providers/faux.js";
10
- export type { GoogleOptions } from "./providers/google.js";
11
- export type { GoogleGeminiCliOptions, GoogleThinkingLevel } from "./providers/google-gemini-cli.js";
12
- export type { GoogleVertexOptions } from "./providers/google-vertex.js";
13
- export type { MistralOptions } from "./providers/mistral.js";
14
- export type { OpenAICodexResponsesOptions } from "./providers/openai-codex-responses.js";
15
- export type { OpenAICompletionsOptions } from "./providers/openai-completions.js";
16
- export type { OpenAIResponsesOptions } from "./providers/openai-responses.js";
17
- export * from "./providers/register-builtins.js";
18
- export * from "./stream.js";
19
- export * from "./types.js";
20
- export * from "./utils/event-stream.js";
21
- export * from "./utils/json-parse.js";
22
- export type { OAuthAuthInfo, OAuthCredentials, OAuthLoginCallbacks, OAuthPrompt, OAuthProvider, OAuthProviderId, OAuthProviderInfo, OAuthProviderInterface, } from "./utils/oauth/types.js";
23
- export * from "./utils/overflow.js";
24
- export * from "./utils/typebox-helpers.js";
25
- export * from "./utils/validation.js";
26
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,YAAY,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5F,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAC5G,YAAY,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AACzF,cAAc,qBAAqB,CAAC;AACpC,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACpG,YAAY,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,YAAY,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AACzF,YAAY,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAClF,YAAY,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,cAAc,kCAAkC,CAAC;AACjD,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,YAAY,EACX,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,sBAAsB,GACtB,MAAM,wBAAwB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC","sourcesContent":["export type { Static, TSchema } from \"typebox\";\nexport { Type } from \"typebox\";\n\nexport * from \"./api-registry.js\";\nexport * from \"./env-api-keys.js\";\nexport * from \"./models.js\";\nexport type { BedrockOptions, BedrockThinkingDisplay } from \"./providers/amazon-bedrock.js\";\nexport type { AnthropicEffort, AnthropicOptions, AnthropicThinkingDisplay } from \"./providers/anthropic.js\";\nexport type { AzureOpenAIResponsesOptions } from \"./providers/azure-openai-responses.js\";\nexport * from \"./providers/faux.js\";\nexport type { GoogleOptions } from \"./providers/google.js\";\nexport type { GoogleGeminiCliOptions, GoogleThinkingLevel } from \"./providers/google-gemini-cli.js\";\nexport type { GoogleVertexOptions } from \"./providers/google-vertex.js\";\nexport type { MistralOptions } from \"./providers/mistral.js\";\nexport type { OpenAICodexResponsesOptions } from \"./providers/openai-codex-responses.js\";\nexport type { OpenAICompletionsOptions } from \"./providers/openai-completions.js\";\nexport type { OpenAIResponsesOptions } from \"./providers/openai-responses.js\";\nexport * from \"./providers/register-builtins.js\";\nexport * from \"./stream.js\";\nexport * from \"./types.js\";\nexport * from \"./utils/event-stream.js\";\nexport * from \"./utils/json-parse.js\";\nexport type {\n\tOAuthAuthInfo,\n\tOAuthCredentials,\n\tOAuthLoginCallbacks,\n\tOAuthPrompt,\n\tOAuthProvider,\n\tOAuthProviderId,\n\tOAuthProviderInfo,\n\tOAuthProviderInterface,\n} from \"./utils/oauth/types.js\";\nexport * from \"./utils/overflow.js\";\nexport * from \"./utils/typebox-helpers.js\";\nexport * from \"./utils/validation.js\";\n"]}
package/dist/index.js DELETED
@@ -1,14 +0,0 @@
1
- export { Type } from "typebox";
2
- export * from "./api-registry.js";
3
- export * from "./env-api-keys.js";
4
- export * from "./models.js";
5
- export * from "./providers/faux.js";
6
- export * from "./providers/register-builtins.js";
7
- export * from "./stream.js";
8
- export * from "./types.js";
9
- export * from "./utils/event-stream.js";
10
- export * from "./utils/json-parse.js";
11
- export * from "./utils/overflow.js";
12
- export * from "./utils/typebox-helpers.js";
13
- export * from "./utils/validation.js";
14
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAI5B,cAAc,qBAAqB,CAAC;AAQpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AAWtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC","sourcesContent":["export type { Static, TSchema } from \"typebox\";\nexport { Type } from \"typebox\";\n\nexport * from \"./api-registry.js\";\nexport * from \"./env-api-keys.js\";\nexport * from \"./models.js\";\nexport type { BedrockOptions, BedrockThinkingDisplay } from \"./providers/amazon-bedrock.js\";\nexport type { AnthropicEffort, AnthropicOptions, AnthropicThinkingDisplay } from \"./providers/anthropic.js\";\nexport type { AzureOpenAIResponsesOptions } from \"./providers/azure-openai-responses.js\";\nexport * from \"./providers/faux.js\";\nexport type { GoogleOptions } from \"./providers/google.js\";\nexport type { GoogleGeminiCliOptions, GoogleThinkingLevel } from \"./providers/google-gemini-cli.js\";\nexport type { GoogleVertexOptions } from \"./providers/google-vertex.js\";\nexport type { MistralOptions } from \"./providers/mistral.js\";\nexport type { OpenAICodexResponsesOptions } from \"./providers/openai-codex-responses.js\";\nexport type { OpenAICompletionsOptions } from \"./providers/openai-completions.js\";\nexport type { OpenAIResponsesOptions } from \"./providers/openai-responses.js\";\nexport * from \"./providers/register-builtins.js\";\nexport * from \"./stream.js\";\nexport * from \"./types.js\";\nexport * from \"./utils/event-stream.js\";\nexport * from \"./utils/json-parse.js\";\nexport type {\n\tOAuthAuthInfo,\n\tOAuthCredentials,\n\tOAuthLoginCallbacks,\n\tOAuthPrompt,\n\tOAuthProvider,\n\tOAuthProviderId,\n\tOAuthProviderInfo,\n\tOAuthProviderInterface,\n} from \"./utils/oauth/types.js\";\nexport * from \"./utils/overflow.js\";\nexport * from \"./utils/typebox-helpers.js\";\nexport * from \"./utils/validation.js\";\n"]}
package/dist/models.d.ts DELETED
@@ -1,25 +0,0 @@
1
- import { MODELS } from "./models.generated.js";
2
- import type { Api, KnownProvider, Model, Usage } from "./types.js";
3
- type ModelApi<TProvider extends KnownProvider, TModelId extends keyof (typeof MODELS)[TProvider]> = (typeof MODELS)[TProvider][TModelId] extends {
4
- api: infer TApi;
5
- } ? (TApi extends Api ? TApi : never) : never;
6
- export declare function getModel<TProvider extends KnownProvider, TModelId extends keyof (typeof MODELS)[TProvider]>(provider: TProvider, modelId: TModelId): Model<ModelApi<TProvider, TModelId>>;
7
- export declare function getProviders(): KnownProvider[];
8
- export declare function getModels<TProvider extends KnownProvider>(provider: TProvider): Model<ModelApi<TProvider, keyof (typeof MODELS)[TProvider]>>[];
9
- export declare function calculateCost<TApi extends Api>(model: Model<TApi>, usage: Usage): Usage["cost"];
10
- /**
11
- * Check if a model supports xhigh thinking level.
12
- *
13
- * Supported today:
14
- * - GPT-5.2 / GPT-5.3 / GPT-5.4 / GPT-5.5 model families
15
- * - DeepSeek V4 Pro
16
- * - Opus 4.6+ models (xhigh maps to adaptive effort "max" on Anthropic-compatible providers)
17
- */
18
- export declare function supportsXhigh<TApi extends Api>(model: Model<TApi>): boolean;
19
- /**
20
- * Check if two models are equal by comparing both their id and provider.
21
- * Returns false if either model is null or undefined.
22
- */
23
- export declare function modelsAreEqual<TApi extends Api>(a: Model<TApi> | null | undefined, b: Model<TApi> | null | undefined): boolean;
24
- export {};
25
- //# sourceMappingURL=models.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,KAAK,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAanE,KAAK,QAAQ,CACZ,SAAS,SAAS,aAAa,EAC/B,QAAQ,SAAS,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,IAC9C,CAAC,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS;IAAE,GAAG,EAAE,MAAM,IAAI,CAAA;CAAE,GAAG,CAAC,IAAI,SAAS,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC;AAEjH,wBAAgB,QAAQ,CAAC,SAAS,SAAS,aAAa,EAAE,QAAQ,SAAS,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,EAC1G,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,QAAQ,GACf,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAGtC;AAED,wBAAgB,YAAY,IAAI,aAAa,EAAE,CAE9C;AAED,wBAAgB,SAAS,CAAC,SAAS,SAAS,aAAa,EACxD,QAAQ,EAAE,SAAS,GACjB,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAGhE;AAED,wBAAgB,aAAa,CAAC,IAAI,SAAS,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAO/F;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,SAAS,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAqB3E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,SAAS,GAAG,EAC9C,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,EACjC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,GAC/B,OAAO,CAGT","sourcesContent":["import { MODELS } from \"./models.generated.js\";\nimport type { Api, KnownProvider, Model, Usage } from \"./types.js\";\n\nconst modelRegistry: Map<string, Map<string, Model<Api>>> = new Map();\n\n// Initialize registry from MODELS on module load\nfor (const [provider, models] of Object.entries(MODELS)) {\n\tconst providerModels = new Map<string, Model<Api>>();\n\tfor (const [id, model] of Object.entries(models)) {\n\t\tproviderModels.set(id, model as Model<Api>);\n\t}\n\tmodelRegistry.set(provider, providerModels);\n}\n\ntype ModelApi<\n\tTProvider extends KnownProvider,\n\tTModelId extends keyof (typeof MODELS)[TProvider],\n> = (typeof MODELS)[TProvider][TModelId] extends { api: infer TApi } ? (TApi extends Api ? TApi : never) : never;\n\nexport function getModel<TProvider extends KnownProvider, TModelId extends keyof (typeof MODELS)[TProvider]>(\n\tprovider: TProvider,\n\tmodelId: TModelId,\n): Model<ModelApi<TProvider, TModelId>> {\n\tconst providerModels = modelRegistry.get(provider);\n\treturn providerModels?.get(modelId as string) as Model<ModelApi<TProvider, TModelId>>;\n}\n\nexport function getProviders(): KnownProvider[] {\n\treturn Array.from(modelRegistry.keys()) as KnownProvider[];\n}\n\nexport function getModels<TProvider extends KnownProvider>(\n\tprovider: TProvider,\n): Model<ModelApi<TProvider, keyof (typeof MODELS)[TProvider]>>[] {\n\tconst models = modelRegistry.get(provider);\n\treturn models ? (Array.from(models.values()) as Model<ModelApi<TProvider, keyof (typeof MODELS)[TProvider]>>[]) : [];\n}\n\nexport function calculateCost<TApi extends Api>(model: Model<TApi>, usage: Usage): Usage[\"cost\"] {\n\tusage.cost.input = (model.cost.input / 1000000) * usage.input;\n\tusage.cost.output = (model.cost.output / 1000000) * usage.output;\n\tusage.cost.cacheRead = (model.cost.cacheRead / 1000000) * usage.cacheRead;\n\tusage.cost.cacheWrite = (model.cost.cacheWrite / 1000000) * usage.cacheWrite;\n\tusage.cost.total = usage.cost.input + usage.cost.output + usage.cost.cacheRead + usage.cost.cacheWrite;\n\treturn usage.cost;\n}\n\n/**\n * Check if a model supports xhigh thinking level.\n *\n * Supported today:\n * - GPT-5.2 / GPT-5.3 / GPT-5.4 / GPT-5.5 model families\n * - DeepSeek V4 Pro\n * - Opus 4.6+ models (xhigh maps to adaptive effort \"max\" on Anthropic-compatible providers)\n */\nexport function supportsXhigh<TApi extends Api>(model: Model<TApi>): boolean {\n\tif (\n\t\tmodel.id.includes(\"gpt-5.2\") ||\n\t\tmodel.id.includes(\"gpt-5.3\") ||\n\t\tmodel.id.includes(\"gpt-5.4\") ||\n\t\tmodel.id.includes(\"gpt-5.5\") ||\n\t\tmodel.id.includes(\"deepseek-v4-pro\")\n\t) {\n\t\treturn true;\n\t}\n\n\tif (\n\t\tmodel.id.includes(\"opus-4-6\") ||\n\t\tmodel.id.includes(\"opus-4.6\") ||\n\t\tmodel.id.includes(\"opus-4-7\") ||\n\t\tmodel.id.includes(\"opus-4.7\")\n\t) {\n\t\treturn true;\n\t}\n\n\treturn false;\n}\n\n/**\n * Check if two models are equal by comparing both their id and provider.\n * Returns false if either model is null or undefined.\n */\nexport function modelsAreEqual<TApi extends Api>(\n\ta: Model<TApi> | null | undefined,\n\tb: Model<TApi> | null | undefined,\n): boolean {\n\tif (!a || !b) return false;\n\treturn a.id === b.id && a.provider === b.provider;\n}\n"]}