@ap3x/ai 0.1.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 (182) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +28 -0
  3. package/dist/api-registry.d.ts +23 -0
  4. package/dist/api-registry.d.ts.map +1 -0
  5. package/dist/auth/config-dir.d.ts +25 -0
  6. package/dist/auth/config-dir.d.ts.map +1 -0
  7. package/dist/auth/github-copilot.d.ts +74 -0
  8. package/dist/auth/github-copilot.d.ts.map +1 -0
  9. package/dist/auth/index.d.ts +10 -0
  10. package/dist/auth/index.d.ts.map +1 -0
  11. package/dist/auth/jwt.d.ts +32 -0
  12. package/dist/auth/jwt.d.ts.map +1 -0
  13. package/dist/auth/oauth-flow.d.ts +84 -0
  14. package/dist/auth/oauth-flow.d.ts.map +1 -0
  15. package/dist/auth/pkce.d.ts +20 -0
  16. package/dist/auth/pkce.d.ts.map +1 -0
  17. package/dist/auth/providers.d.ts +33 -0
  18. package/dist/auth/providers.d.ts.map +1 -0
  19. package/dist/auth/storage.d.ts +55 -0
  20. package/dist/auth/storage.d.ts.map +1 -0
  21. package/dist/auth/types.d.ts +88 -0
  22. package/dist/auth/types.d.ts.map +1 -0
  23. package/dist/auth/unified.d.ts +29 -0
  24. package/dist/auth/unified.d.ts.map +1 -0
  25. package/dist/env-api-keys.d.ts +16 -0
  26. package/dist/env-api-keys.d.ts.map +1 -0
  27. package/dist/event-stream.d.ts +33 -0
  28. package/dist/event-stream.d.ts.map +1 -0
  29. package/dist/generate-object.d.ts +63 -0
  30. package/dist/generate-object.d.ts.map +1 -0
  31. package/dist/images-models.d.ts +114 -0
  32. package/dist/images-models.d.ts.map +1 -0
  33. package/dist/images-registry.d.ts +23 -0
  34. package/dist/images-registry.d.ts.map +1 -0
  35. package/dist/images-schema.d.ts +21 -0
  36. package/dist/images-schema.d.ts.map +1 -0
  37. package/dist/images.d.ts +13 -0
  38. package/dist/images.d.ts.map +1 -0
  39. package/dist/index.d.ts +59 -0
  40. package/dist/index.d.ts.map +1 -0
  41. package/dist/index.js +15656 -0
  42. package/dist/models/amazon-bedrock.models.generated.d.ts +1858 -0
  43. package/dist/models/amazon-bedrock.models.generated.d.ts.map +1 -0
  44. package/dist/models/ant-ling.models.generated.d.ts +86 -0
  45. package/dist/models/ant-ling.models.generated.d.ts.map +1 -0
  46. package/dist/models/anthropic.models.generated.d.ts +450 -0
  47. package/dist/models/anthropic.models.generated.d.ts.map +1 -0
  48. package/dist/models/azure-openai-responses.models.generated.d.ts +804 -0
  49. package/dist/models/azure-openai-responses.models.generated.d.ts.map +1 -0
  50. package/dist/models/cerebras.models.generated.d.ts +66 -0
  51. package/dist/models/cerebras.models.generated.d.ts.map +1 -0
  52. package/dist/models/cloudflare-ai-gateway.models.generated.d.ts +786 -0
  53. package/dist/models/cloudflare-ai-gateway.models.generated.d.ts.map +1 -0
  54. package/dist/models/cloudflare-workers-ai.models.generated.d.ts +302 -0
  55. package/dist/models/cloudflare-workers-ai.models.generated.d.ts.map +1 -0
  56. package/dist/models/deepseek.models.generated.d.ts +63 -0
  57. package/dist/models/deepseek.models.generated.d.ts.map +1 -0
  58. package/dist/models/fireworks.models.generated.d.ts +381 -0
  59. package/dist/models/fireworks.models.generated.d.ts.map +1 -0
  60. package/dist/models/github-copilot.models.generated.d.ts +698 -0
  61. package/dist/models/github-copilot.models.generated.d.ts.map +1 -0
  62. package/dist/models/google-vertex.models.generated.d.ts +202 -0
  63. package/dist/models/google-vertex.models.generated.d.ts.map +1 -0
  64. package/dist/models/google.models.generated.d.ts +351 -0
  65. package/dist/models/google.models.generated.d.ts.map +1 -0
  66. package/dist/models/groq.models.generated.d.ts +128 -0
  67. package/dist/models/groq.models.generated.d.ts.map +1 -0
  68. package/dist/models/huggingface.models.generated.d.ts +63 -0
  69. package/dist/models/huggingface.models.generated.d.ts.map +1 -0
  70. package/dist/models/kimi-coding.models.generated.d.ts +63 -0
  71. package/dist/models/kimi-coding.models.generated.d.ts.map +1 -0
  72. package/dist/models/minimax-cn.models.generated.d.ts +54 -0
  73. package/dist/models/minimax-cn.models.generated.d.ts.map +1 -0
  74. package/dist/models/minimax.models.generated.d.ts +54 -0
  75. package/dist/models/minimax.models.generated.d.ts.map +1 -0
  76. package/dist/models/mistral.models.generated.d.ts +513 -0
  77. package/dist/models/mistral.models.generated.d.ts.map +1 -0
  78. package/dist/models/moonshotai-cn.models.generated.d.ts +234 -0
  79. package/dist/models/moonshotai-cn.models.generated.d.ts.map +1 -0
  80. package/dist/models/moonshotai.models.generated.d.ts +234 -0
  81. package/dist/models/moonshotai.models.generated.d.ts.map +1 -0
  82. package/dist/models/nvidia.models.generated.d.ts +563 -0
  83. package/dist/models/nvidia.models.generated.d.ts.map +1 -0
  84. package/dist/models/openai.models.generated.d.ts +827 -0
  85. package/dist/models/openai.models.generated.d.ts.map +1 -0
  86. package/dist/models/opencode.models.generated.d.ts +69 -0
  87. package/dist/models/opencode.models.generated.d.ts.map +1 -0
  88. package/dist/models/openrouter.models.generated.d.ts +87 -0
  89. package/dist/models/openrouter.models.generated.d.ts.map +1 -0
  90. package/dist/models/together.models.generated.d.ts +598 -0
  91. package/dist/models/together.models.generated.d.ts.map +1 -0
  92. package/dist/models/vercel-ai-gateway.models.generated.d.ts +63 -0
  93. package/dist/models/vercel-ai-gateway.models.generated.d.ts.map +1 -0
  94. package/dist/models/xai.models.generated.d.ts +157 -0
  95. package/dist/models/xai.models.generated.d.ts.map +1 -0
  96. package/dist/models/xiaomi-token-plan-ams.models.generated.d.ts +108 -0
  97. package/dist/models/xiaomi-token-plan-ams.models.generated.d.ts.map +1 -0
  98. package/dist/models/xiaomi-token-plan-cn.models.generated.d.ts +108 -0
  99. package/dist/models/xiaomi-token-plan-cn.models.generated.d.ts.map +1 -0
  100. package/dist/models/xiaomi-token-plan-sgp.models.generated.d.ts +108 -0
  101. package/dist/models/xiaomi-token-plan-sgp.models.generated.d.ts.map +1 -0
  102. package/dist/models/xiaomi.models.generated.d.ts +129 -0
  103. package/dist/models/xiaomi.models.generated.d.ts.map +1 -0
  104. package/dist/models/zai-coding-cn.models.generated.d.ts +153 -0
  105. package/dist/models/zai-coding-cn.models.generated.d.ts.map +1 -0
  106. package/dist/models/zai.models.generated.d.ts +153 -0
  107. package/dist/models/zai.models.generated.d.ts.map +1 -0
  108. package/dist/models.d.ts +10734 -0
  109. package/dist/models.d.ts.map +1 -0
  110. package/dist/providers/amazon-bedrock.d.ts +173 -0
  111. package/dist/providers/amazon-bedrock.d.ts.map +1 -0
  112. package/dist/providers/anthropic.d.ts +25 -0
  113. package/dist/providers/anthropic.d.ts.map +1 -0
  114. package/dist/providers/azure-openai-responses.d.ts +17 -0
  115. package/dist/providers/azure-openai-responses.d.ts.map +1 -0
  116. package/dist/providers/cloudflare.d.ts +13 -0
  117. package/dist/providers/cloudflare.d.ts.map +1 -0
  118. package/dist/providers/faux-images.d.ts +41 -0
  119. package/dist/providers/faux-images.d.ts.map +1 -0
  120. package/dist/providers/faux.d.ts +61 -0
  121. package/dist/providers/faux.d.ts.map +1 -0
  122. package/dist/providers/github-copilot-headers.d.ts +14 -0
  123. package/dist/providers/github-copilot-headers.d.ts.map +1 -0
  124. package/dist/providers/google-images.d.ts +14 -0
  125. package/dist/providers/google-images.d.ts.map +1 -0
  126. package/dist/providers/google-shared.d.ts +53 -0
  127. package/dist/providers/google-shared.d.ts.map +1 -0
  128. package/dist/providers/google-vertex.d.ts +48 -0
  129. package/dist/providers/google-vertex.d.ts.map +1 -0
  130. package/dist/providers/google.d.ts +47 -0
  131. package/dist/providers/google.d.ts.map +1 -0
  132. package/dist/providers/mistral.d.ts +67 -0
  133. package/dist/providers/mistral.d.ts.map +1 -0
  134. package/dist/providers/openai-codex-responses.d.ts +17 -0
  135. package/dist/providers/openai-codex-responses.d.ts.map +1 -0
  136. package/dist/providers/openai-completions.d.ts +69 -0
  137. package/dist/providers/openai-completions.d.ts.map +1 -0
  138. package/dist/providers/openai-images.d.ts +17 -0
  139. package/dist/providers/openai-images.d.ts.map +1 -0
  140. package/dist/providers/openai-prompt-cache.d.ts +8 -0
  141. package/dist/providers/openai-prompt-cache.d.ts.map +1 -0
  142. package/dist/providers/openai-responses-shared.d.ts +128 -0
  143. package/dist/providers/openai-responses-shared.d.ts.map +1 -0
  144. package/dist/providers/openai-responses.d.ts +63 -0
  145. package/dist/providers/openai-responses.d.ts.map +1 -0
  146. package/dist/providers/provider-runtime.d.ts +34 -0
  147. package/dist/providers/provider-runtime.d.ts.map +1 -0
  148. package/dist/providers/register-builtins.d.ts +11 -0
  149. package/dist/providers/register-builtins.d.ts.map +1 -0
  150. package/dist/providers/register-images.d.ts +8 -0
  151. package/dist/providers/register-images.d.ts.map +1 -0
  152. package/dist/providers/request-dispatch.d.ts +52 -0
  153. package/dist/providers/request-dispatch.d.ts.map +1 -0
  154. package/dist/providers/simple-options.d.ts +42 -0
  155. package/dist/providers/simple-options.d.ts.map +1 -0
  156. package/dist/providers/tool-call-id.d.ts +46 -0
  157. package/dist/providers/tool-call-id.d.ts.map +1 -0
  158. package/dist/providers/transform-messages.d.ts +22 -0
  159. package/dist/providers/transform-messages.d.ts.map +1 -0
  160. package/dist/stream.d.ts +18 -0
  161. package/dist/stream.d.ts.map +1 -0
  162. package/dist/types.d.ts +448 -0
  163. package/dist/types.d.ts.map +1 -0
  164. package/dist/utils/abort-signals.d.ts +16 -0
  165. package/dist/utils/abort-signals.d.ts.map +1 -0
  166. package/dist/utils/estimate.d.ts +35 -0
  167. package/dist/utils/estimate.d.ts.map +1 -0
  168. package/dist/utils/hash.d.ts +7 -0
  169. package/dist/utils/hash.d.ts.map +1 -0
  170. package/dist/utils/json-parse.d.ts +16 -0
  171. package/dist/utils/json-parse.d.ts.map +1 -0
  172. package/dist/utils/node-http-proxy.d.ts +34 -0
  173. package/dist/utils/node-http-proxy.d.ts.map +1 -0
  174. package/dist/utils/overflow.d.ts +25 -0
  175. package/dist/utils/overflow.d.ts.map +1 -0
  176. package/dist/utils/sanitize-unicode.d.ts +9 -0
  177. package/dist/utils/sanitize-unicode.d.ts.map +1 -0
  178. package/dist/utils/sse.d.ts +21 -0
  179. package/dist/utils/sse.d.ts.map +1 -0
  180. package/dist/validation.d.ts +31 -0
  181. package/dist/validation.d.ts.map +1 -0
  182. package/package.json +35 -0
@@ -0,0 +1,33 @@
1
+ import type { AssistantMessage, AssistantMessageEvent } from "./types";
2
+ /**
3
+ * A single-producer async-iterable queue that also exposes a promise for a
4
+ * "final result" derived from a terminal event.
5
+ *
6
+ * `push` either hands an event to a waiting iterator or enqueues it; the first
7
+ * event for which `isComplete` returns true resolves the result promise (via
8
+ * `extractResult`) and marks the stream done — later pushes are ignored.
9
+ */
10
+ export declare class EventStream<T, R = T> implements AsyncIterable<T> {
11
+ private readonly isComplete;
12
+ private readonly extractResult;
13
+ private readonly queue;
14
+ private readonly waiting;
15
+ private done;
16
+ private readonly finalResult;
17
+ private resolveFinalResult;
18
+ constructor(isComplete: (event: T) => boolean, extractResult: (event: T) => R);
19
+ push(event: T): void;
20
+ end(result?: R): void;
21
+ [Symbol.asyncIterator](): AsyncIterator<T>;
22
+ result(): Promise<R>;
23
+ }
24
+ /**
25
+ * The concrete event stream for assistant generation. The terminal event is
26
+ * `done` (carrying the final message) or `error` (carrying the error message).
27
+ */
28
+ export declare class AssistantMessageEventStream extends EventStream<AssistantMessageEvent, AssistantMessage> {
29
+ constructor();
30
+ }
31
+ /** Factory for an empty {@link AssistantMessageEventStream}. */
32
+ export declare function createAssistantMessageEventStream(): AssistantMessageEventStream;
33
+ //# sourceMappingURL=event-stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-stream.d.ts","sourceRoot":"","sources":["../src/event-stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEvE;;;;;;;GAOG;AACH,qBAAa,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,CAAC;IAQ1D,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,aAAa;IARhC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiD;IACzE,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IACzC,OAAO,CAAC,kBAAkB,CAAuB;gBAG9B,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,EACjC,aAAa,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC;IAOjD,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI;IAgBpB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI;IAWd,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC;IAgBjD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC;CAGrB;AAED;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,WAAW,CAC1D,qBAAqB,EACrB,gBAAgB,CACjB;;CAWA;AAED,gEAAgE;AAChE,wBAAgB,iCAAiC,IAAI,2BAA2B,CAE/E"}
@@ -0,0 +1,63 @@
1
+ import type { Api, Message, Model, ProviderStreamOptions, Usage } from "./types";
2
+ import { type Static, type TSchema } from "./validation";
3
+ /** Why a structured-output call failed. Callers switch on this. */
4
+ export type StructuredOutputReason = "invalid" | "truncated" | "empty" | "transport";
5
+ /**
6
+ * A typed structured-output failure the caller (e.g. the browser-agent step loop)
7
+ * catches to drive its retry / schema-nudge / fallback-LLM behavior.
8
+ *
9
+ * - `invalid` — the model produced JSON that failed schema validation.
10
+ * - `truncated` — the response hit the token limit (`stopReason: "length"`).
11
+ * - `empty` — no tool call and no parseable JSON came back.
12
+ * - `transport` — a provider/network error (carries `status` when known);
13
+ * retryable statuses are retried internally first, so this is the terminal form.
14
+ */
15
+ export declare class StructuredOutputError extends Error {
16
+ readonly reason: StructuredOutputReason;
17
+ readonly status?: number;
18
+ readonly raw?: string;
19
+ constructor(reason: StructuredOutputReason, message: string, options?: {
20
+ status?: number;
21
+ raw?: string;
22
+ cause?: unknown;
23
+ });
24
+ }
25
+ export interface GenerateObjectOptions extends ProviderStreamOptions {
26
+ /** Name of the synthetic tool the schema is attached to. Default "respond". */
27
+ toolName?: string;
28
+ /** Description shown to the model for the synthetic tool. */
29
+ toolDescription?: string;
30
+ /**
31
+ * Max retries for retryable transport statuses (default 5). Backoff is
32
+ * `1s × 2^n` capped at 60s with +10% jitter (design §3.11).
33
+ */
34
+ maxRetries?: number;
35
+ /** Injectable sleep (tests pass a no-op / spy). Default: real `setTimeout`. */
36
+ sleep?: (ms: number) => Promise<void>;
37
+ /** Injectable jitter source in [0,1). Default `Math.random`. */
38
+ jitter?: () => number;
39
+ }
40
+ export interface GenerateObjectResult<T extends TSchema> {
41
+ object: Static<T>;
42
+ usage: Usage;
43
+ /** The raw JSON string the object was parsed from. */
44
+ raw: string;
45
+ }
46
+ /**
47
+ * Ask an LLM for a single JSON value validated against a TypeBox schema.
48
+ *
49
+ * The schema is attached as the only tool; the model is asked to call it
50
+ * (`toolChoice: "required"`, overridable). The returned tool-call arguments —
51
+ * or, as a fallback, a JSON object parsed from a text response — are validated
52
+ * (and coerced) against `schema` via the shared TypeBox/ajv path.
53
+ *
54
+ * How the object is produced (native structured output, tool-calling, or
55
+ * plain-JSON parse) is this layer's business per design §3.11; the caller only
56
+ * ever sees a validated `{ object, usage, raw }` or a {@link StructuredOutputError}.
57
+ *
58
+ * Retryable transport statuses ({@link RETRYABLE_STATUSES}) are retried with
59
+ * exponential backoff; `truncated` / `invalid` / `empty` are NOT retried here —
60
+ * they surface to the caller, which handles them as a step failure with a nudge.
61
+ */
62
+ export declare function generateObject<TApi extends Api, T extends TSchema>(model: Model<TApi>, messages: Message[], schema: T, options?: GenerateObjectOptions): Promise<GenerateObjectResult<T>>;
63
+ //# sourceMappingURL=generate-object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-object.d.ts","sourceRoot":"","sources":["../src/generate-object.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,GAAG,EAEH,OAAO,EACP,KAAK,EACL,qBAAqB,EAErB,KAAK,EACN,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,OAAO,EAAyB,MAAM,cAAc,CAAC;AAUhF,mEAAmE;AACnE,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAErF;;;;;;;;;GASG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;gBAGpB,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAQ/D;AAED,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,OAAO;IACrD,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,sDAAsD;IACtD,GAAG,EAAE,MAAM,CAAC;CACb;AA0BD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,cAAc,CAAC,IAAI,SAAS,GAAG,EAAE,CAAC,SAAS,OAAO,EACtE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,EAClB,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,EAAE,CAAC,EACT,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAuElC"}
@@ -0,0 +1,114 @@
1
+ import { type CreateModelsOptions, type ProviderAuthStatus } from "./models";
2
+ import type { ImagesApi, ImagesModel, ImagesProvider } from "./types";
3
+ /**
4
+ * A small image-model registry, parallel to the text `MODELS` registry. Holds a
5
+ * representative entry per built-in image provider so lookups have real data.
6
+ * `cost` is USD per million tokens (image providers that bill per-image map their
7
+ * own units onto this surface).
8
+ */
9
+ export declare const IMAGE_MODELS: {
10
+ readonly openai: {
11
+ readonly "gpt-image-1": {
12
+ readonly id: "gpt-image-1";
13
+ readonly name: "GPT Image 1";
14
+ readonly api: "openai-images";
15
+ readonly provider: "openai";
16
+ readonly baseUrl: "https://api.openai.com/v1";
17
+ readonly input: ["text", "image"];
18
+ readonly output: ["image"];
19
+ readonly cost: {
20
+ readonly input: 0;
21
+ readonly output: 0;
22
+ readonly cacheRead: 0;
23
+ readonly cacheWrite: 0;
24
+ };
25
+ };
26
+ };
27
+ readonly google: {
28
+ readonly "imagen-3": {
29
+ readonly id: "imagen-3";
30
+ readonly name: "Imagen 3";
31
+ readonly api: "google-images";
32
+ readonly provider: "google";
33
+ readonly baseUrl: "https://generativelanguage.googleapis.com";
34
+ readonly input: ["text"];
35
+ readonly output: ["image"];
36
+ readonly cost: {
37
+ readonly input: 0;
38
+ readonly output: 0;
39
+ readonly cacheRead: 0;
40
+ readonly cacheWrite: 0;
41
+ };
42
+ };
43
+ };
44
+ };
45
+ type ImageModelApi<TProvider extends keyof typeof IMAGE_MODELS, TModelId extends keyof (typeof IMAGE_MODELS)[TProvider]> = (typeof IMAGE_MODELS)[TProvider][TModelId] extends {
46
+ api: infer TApi;
47
+ } ? TApi extends ImagesApi ? TApi : never : never;
48
+ /** Typed image-model lookup; returns `undefined` (typed as model) when missing. */
49
+ export declare function getImageModel<TProvider extends keyof typeof IMAGE_MODELS, TModelId extends keyof (typeof IMAGE_MODELS)[TProvider]>(provider: TProvider, modelId: TModelId): ImagesModel<ImageModelApi<TProvider, TModelId>>;
50
+ export declare function getImageProviders(): ImagesProvider[];
51
+ export declare function getImageModels<TProvider extends keyof typeof IMAGE_MODELS>(provider: TProvider): ImagesModel<ImagesApi>[];
52
+ /**
53
+ * A runtime image-generation provider: discovery + refresh metadata for a set
54
+ * of image models. The image-side counterpart of `ModelProvider`.
55
+ */
56
+ export interface ImagesModelProvider {
57
+ readonly id: string;
58
+ readonly name: string;
59
+ readonly baseUrl?: string;
60
+ /** Default wire-api family for this provider's image models. */
61
+ readonly api: ImagesApi;
62
+ /** Current known image models (sync); never throws. */
63
+ getModels(): readonly ImagesModel<ImagesApi>[];
64
+ /**
65
+ * Dynamic providers only: fetch and adopt a fresh model list. Concurrent
66
+ * calls share one in-flight fetch; on rejection the list stays at its
67
+ * last-known state and a later call retries.
68
+ */
69
+ refreshModels?(): Promise<void>;
70
+ }
71
+ export interface CreateImagesProviderOptions {
72
+ id: string;
73
+ /** Display name. Default: `id`. */
74
+ name?: string;
75
+ baseUrl?: string;
76
+ /** Default wire-api family for this provider's image models. */
77
+ api: ImagesApi;
78
+ /** Initial model list (empty/omitted for purely dynamic providers). */
79
+ models?: readonly ImagesModel<ImagesApi>[];
80
+ /**
81
+ * Dynamic providers: fetch the current list. Adopted on success; concurrent
82
+ * calls share one in-flight fetch. May reject: the stored list then stays at
83
+ * its last-known state and a later call retries. Injected transport — this
84
+ * module never opens a socket.
85
+ */
86
+ refreshModels?: () => Promise<readonly ImagesModel<ImagesApi>[]>;
87
+ }
88
+ /** Build an {@link ImagesModelProvider} from parts (mirrors `createProvider`). */
89
+ export declare function createImagesProvider(input: CreateImagesProviderOptions): ImagesModelProvider;
90
+ /**
91
+ * Runtime collection of {@link ImagesModelProvider}s: the image-side
92
+ * counterpart of `Models`. Opt-in; starts empty.
93
+ */
94
+ export interface ImagesModels {
95
+ setProvider(provider: ImagesModelProvider): void;
96
+ deleteProvider(id: string): void;
97
+ clearProviders(): void;
98
+ getProviders(): readonly ImagesModelProvider[];
99
+ getProvider(id: string): ImagesModelProvider | undefined;
100
+ getModels(provider?: string): readonly ImagesModel<ImagesApi>[];
101
+ getModel(provider: string, id: string): ImagesModel<ImagesApi> | undefined;
102
+ /**
103
+ * Ask dynamic providers to re-fetch. With a provider id, awaits that one and
104
+ * propagates its rejection; without one, refreshes all concurrently,
105
+ * best-effort. Static providers are no-ops.
106
+ */
107
+ refresh(provider?: string): Promise<void>;
108
+ /** Read-only per-provider auth status for "connected / needs re-login" UIs. */
109
+ getAuth(provider: string): Promise<ProviderAuthStatus>;
110
+ }
111
+ /** Create an empty, opt-in {@link ImagesModels} collection. */
112
+ export declare function createImagesModels(options?: CreateModelsOptions): ImagesModels;
113
+ export {};
114
+ //# sourceMappingURL=images-models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"images-models.d.ts","sourceRoot":"","sources":["../src/images-models.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { ImagesApi, ImagesContext, ImagesFunction, ImagesModel, ImagesOptions, ProviderImagesOptions } from "./types";
2
+ /** The interface an image provider implements: a single one-shot generate fn. */
3
+ export interface ImagesProviderImpl<TApi extends ImagesApi = ImagesApi, TOptions extends ImagesOptions = ImagesOptions> {
4
+ api: TApi;
5
+ generate: ImagesFunction<TApi, TOptions>;
6
+ }
7
+ /** Non-generic generate signature stored in the registry. */
8
+ export type ImagesGenerateFunction = (model: ImagesModel<ImagesApi>, context: ImagesContext, options?: ProviderImagesOptions) => ReturnType<ImagesFunction>;
9
+ export interface ImagesProviderInternal {
10
+ api: ImagesApi;
11
+ generate: ImagesGenerateFunction;
12
+ }
13
+ /**
14
+ * Register an image provider under its `api` id. An optional `sourceId` tags the
15
+ * registration so a batch can later be removed together.
16
+ */
17
+ export declare function registerImagesProvider<TApi extends ImagesApi, TOptions extends ImagesOptions>(provider: ImagesProviderImpl<TApi, TOptions>, sourceId?: string): void;
18
+ export declare function getImagesProvider(api: ImagesApi): ImagesProviderInternal | undefined;
19
+ export declare function getImagesProviders(): ImagesProviderInternal[];
20
+ /** Remove every image provider tagged with the given `sourceId`. */
21
+ export declare function unregisterImagesProviders(sourceId: string): void;
22
+ export declare function clearImagesProviders(): void;
23
+ //# sourceMappingURL=images-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"images-registry.d.ts","sourceRoot":"","sources":["../src/images-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,aAAa,EACb,cAAc,EACd,WAAW,EACX,aAAa,EACb,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAEjB,iFAAiF;AACjF,MAAM,WAAW,kBAAkB,CACjC,IAAI,SAAS,SAAS,GAAG,SAAS,EAClC,QAAQ,SAAS,aAAa,GAAG,aAAa;IAE9C,GAAG,EAAE,IAAI,CAAC;IACV,QAAQ,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;CAC1C;AAED,6DAA6D;AAC7D,MAAM,MAAM,sBAAsB,GAAG,CACnC,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,EAC7B,OAAO,EAAE,aAAa,EACtB,OAAO,CAAC,EAAE,qBAAqB,KAC5B,UAAU,CAAC,cAAc,CAAC,CAAC;AAEhC,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,SAAS,CAAC;IACf,QAAQ,EAAE,sBAAsB,CAAC;CAClC;AAyBD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,SAAS,SAAS,EAAE,QAAQ,SAAS,aAAa,EAC3F,QAAQ,EAAE,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,EAC5C,QAAQ,CAAC,EAAE,MAAM,GAChB,IAAI,CAQN;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,sBAAsB,GAAG,SAAS,CAEpF;AAED,wBAAgB,kBAAkB,IAAI,sBAAsB,EAAE,CAE7D;AAED,oEAAoE;AACpE,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAIhE;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
@@ -0,0 +1,21 @@
1
+ import { type Static } from "@sinclair/typebox";
2
+ export type { Static } from "@sinclair/typebox";
3
+ /** TypeBox schema for a single image-generation request's tunable knobs. */
4
+ export declare const ImageGenerationRequestSchema: import("@sinclair/typebox").TObject<{
5
+ /** The text prompt describing the desired image. */
6
+ prompt: import("@sinclair/typebox").TString;
7
+ /** Number of images to generate. */
8
+ n: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
9
+ /** Output dimensions, e.g. "1024x1024". */
10
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
11
+ /** Output MIME type preference. */
12
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
13
+ /** Provider-specific quality hint. */
14
+ quality: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
15
+ /** Provider-specific style hint. */
16
+ style: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
17
+ }>;
18
+ export type ImageGenerationRequest = Static<typeof ImageGenerationRequestSchema>;
19
+ /** Validate (and apply defaults to) an image-generation request. Throws on error. */
20
+ export declare function parseImageGenerationRequest(input: unknown): ImageGenerationRequest;
21
+ //# sourceMappingURL=images-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"images-schema.d.ts","sourceRoot":"","sources":["../src/images-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAsB,MAAM,mBAAmB,CAAC;AAGpE,YAAY,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,4EAA4E;AAC5E,eAAO,MAAM,4BAA4B;IAErC,oDAAoD;;IAEpD,oCAAoC;;IAEpC,2CAA2C;;IAE3C,mCAAmC;;IAEnC,sCAAsC;;IAEtC,oCAAoC;;EAIvC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAEjF,qFAAqF;AACrF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,sBAAsB,CAalF"}
@@ -0,0 +1,13 @@
1
+ import type { AssistantImages, ImagesApi, ImagesContext, ImagesModel, ProviderImagesOptions } from "./types";
2
+ /** Convenience: wrap a plain prompt string into an {@link ImagesContext}. */
3
+ export declare function imagesContextFromPrompt(prompt: string): ImagesContext;
4
+ /**
5
+ * One-shot image generation facade (#36), parallel to `complete`. Resolves the
6
+ * provider by `model.api`, delegates to it, and never throws — a missing
7
+ * provider or runtime failure is returned as an {@link AssistantImages} with
8
+ * `stopReason: "error"`.
9
+ *
10
+ * `context` may be an {@link ImagesContext} or a bare prompt string.
11
+ */
12
+ export declare function generateImages<TApi extends ImagesApi>(model: ImagesModel<TApi>, context: ImagesContext | string, options?: ProviderImagesOptions): Promise<AssistantImages>;
13
+ //# sourceMappingURL=images.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../src/images.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,eAAe,EACf,SAAS,EACT,aAAa,EAEb,WAAW,EACX,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAkBjB,6EAA6E;AAC7E,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAGrE;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,IAAI,SAAS,SAAS,EACzD,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,EACxB,OAAO,EAAE,aAAa,GAAG,MAAM,EAC/B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,eAAe,CAAC,CAW1B"}
@@ -0,0 +1,59 @@
1
+ export declare const PACKAGE = "@ap3x/ai";
2
+ export declare const VERSION = "0.1.0";
3
+ export type { AnthropicMessagesCompat, Api, ApiProvider, AssistantImages, AssistantMessage, AssistantMessageDiagnostic, AssistantMessageEvent, CacheRetention, Context, DiagnosticErrorInfo, ImageContent, ImagesApi, ImagesContext, ImagesFunction, ImagesInputContent, ImagesModel, ImagesOptions, ImagesOutputContent, ImagesProvider, ImagesStopReason, KnownApi, KnownImagesApi, KnownImagesProvider, KnownProvider, Message, Model, ModelThinkingLevel, OpenAICompletionsCompat, OpenAIResponsesCompat, OpenRouterRouting, Provider, ProviderImagesOptions, ProviderResponse, ProviderStreamOptions, SimpleStreamOptions, StopReason, StreamFunction, StreamOptions, TextContent, TextSignatureV1, ThinkingBudgets, ThinkingContent, ThinkingLevel, ThinkingLevelMap, Tool, ToolCall, ToolResultMessage, Transport, Usage, UserMessage, VercelGatewayRouting, } from "./types";
4
+ export { AssistantMessageEventStream, createAssistantMessageEventStream, EventStream, } from "./event-stream";
5
+ export { complete, completeSimple, getEnvApiKey, stream, streamSimple } from "./stream";
6
+ export { generateObject, type GenerateObjectOptions, type GenerateObjectResult, StructuredOutputError, type StructuredOutputReason, } from "./generate-object";
7
+ export { generateImages, imagesContextFromPrompt } from "./images";
8
+ export { clearImagesProviders, getImagesProvider, getImagesProviders, type ImagesGenerateFunction, type ImagesProviderImpl, type ImagesProviderInternal, registerImagesProvider, unregisterImagesProviders, } from "./images-registry";
9
+ export { getImageModel, getImageModels, getImageProviders, IMAGE_MODELS, } from "./images-models";
10
+ export { type ImageGenerationRequest, ImageGenerationRequestSchema, parseImageGenerationRequest, } from "./images-schema";
11
+ export { registerBuiltInImagesProviders, resetImagesProviders, } from "./providers/register-images";
12
+ export { generateOpenAIImages } from "./providers/openai-images";
13
+ export type { OpenAIImagesOptions } from "./providers/openai-images";
14
+ export { generateGoogleImages } from "./providers/google-images";
15
+ export type { GoogleImagesOptions } from "./providers/google-images";
16
+ export { FAUX_PNG_BASE64, type FauxImagesModelDefinition, type FauxImagesProviderRegistration, type FauxImagesResponseFactory, type FauxImagesResponseStep, fauxImages, type RegisterFauxImagesProviderOptions, registerFauxImagesProvider, } from "./providers/faux-images";
17
+ export { type AuthorizeUrlResult, AuthStorage, base64UrlEncode, buildAuthorizationUrl, clientIdEnvVar, configPath, COPILOT_API_VERSION, COPILOT_EDITOR_HEADERS, copilotApiHeaders, copilotTokenEndpoint, type CopilotTokenExchange, decodeJwtPayload, deriveCodeChallenge, type DevicePollOptions, ensureNodeBuiltins, exchangeAuthorizationCode, exchangeGitHubCopilotToken, extractChatgptAccountId, type FetchLike, generateCodeVerifier, generatePkcePair, generateState, getApiKeyAndHeaders, getCopilotBaseUrlFromToken, getOAuthProviderConfig, hasOAuthConfig, isPlaceholderClientId, isTokenExpired, type OAuthGrantType, type OAuthProviderConfig, type OAuthProviderConfigOverrides, oauthProviders, type OAuthToken, parseAuthorizationInput, type PkcePair, pollDeviceToken, refreshAccessToken, type ResolveAuthOptions, type ResolveCopilotAuthOptions, type ResolvedAuth, resolveChatgptAccountId, resolveConfigDir, resolveCopilotBaseUrl, resolveGitHubCopilotAuth, startDeviceAuthorization, } from "./auth";
18
+ export { type ApiProviderInternal, type ApiStreamFunction, type ApiStreamSimpleFunction, clearApiProviders, getApiProvider, getApiProviders, registerApiProvider, unregisterApiProviders, } from "./api-registry";
19
+ export { calculateCost, clampThinkingLevel, codexModel, getModel, getModels, getProviders, getSupportedThinkingLevels, MODELS, modelsAreEqual, } from "./models";
20
+ export { findEnvKeys } from "./env-api-keys";
21
+ export { type Static, StringEnum, type TSchema, Type, validateToolArguments, validateToolCall, } from "./validation";
22
+ export { combineAbortSignals, type CombinedAbortSignal } from "./utils/abort-signals";
23
+ export { calculateContextTokens, type ContextUsageEstimate, estimateContextTokens, estimateMessageTokens, estimateTextTokens, } from "./utils/estimate";
24
+ export { getOverflowPatterns, isContextOverflow } from "./utils/overflow";
25
+ export { parseJsonWithRepair, parseStreamingJson, repairJson } from "./utils/json-parse";
26
+ export { sanitizeSurrogates } from "./utils/sanitize-unicode";
27
+ export { registerBuiltInApiProviders, resetApiProviders, setBedrockProviderModule, } from "./providers/register-builtins";
28
+ export { streamAnthropic, streamSimpleAnthropic } from "./providers/anthropic";
29
+ export type { AnthropicEffort, AnthropicOptions, AnthropicThinkingDisplay, } from "./providers/anthropic";
30
+ export { buildParams as buildOpenAICompletionsParams, convertMessages as convertOpenAICompletionsMessages, streamOpenAICompletions, streamSimpleOpenAICompletions, } from "./providers/openai-completions";
31
+ export type { OpenAICompletionsOptions } from "./providers/openai-completions";
32
+ export { buildParams as buildOpenAIResponsesParams, iterateResponsesEvents, RESPONSES_TOOL_CALL_ID_PROVIDERS, streamOpenAIResponses, streamSimpleOpenAIResponses, } from "./providers/openai-responses";
33
+ export type { OpenAIResponsesOptions } from "./providers/openai-responses";
34
+ export { convertResponsesMessages, convertResponsesTools, processResponsesStream, } from "./providers/openai-responses-shared";
35
+ export type { ConvertResponsesMessagesOptions, ConvertResponsesToolsOptions, OpenAIResponsesStreamOptions, ResponseStreamEvent, } from "./providers/openai-responses-shared";
36
+ export { streamAzureOpenAIResponses, streamSimpleAzureOpenAIResponses, } from "./providers/azure-openai-responses";
37
+ export type { AzureOpenAIResponsesOptions } from "./providers/azure-openai-responses";
38
+ export { streamOpenAICodexResponses, streamSimpleOpenAICodexResponses, } from "./providers/openai-codex-responses";
39
+ export type { OpenAICodexResponsesOptions } from "./providers/openai-codex-responses";
40
+ export { streamGoogle, streamSimpleGoogle } from "./providers/google";
41
+ export type { GoogleOptions } from "./providers/google";
42
+ export { streamGoogleVertex, streamSimpleGoogleVertex } from "./providers/google-vertex";
43
+ export type { GoogleVertexOptions } from "./providers/google-vertex";
44
+ export { convertMessages as convertGoogleMessages, convertTools as convertGoogleTools, isThinkingPart, mapStopReason as mapGoogleStopReason, mapStopReasonString as mapGoogleStopReasonString, mapToolChoice as mapGoogleToolChoice, requiresToolCallId, retainThoughtSignature, } from "./providers/google-shared";
45
+ export type { GoogleThinkingLevel } from "./providers/google-shared";
46
+ export { streamMistral, streamSimpleMistral } from "./providers/mistral";
47
+ export type { MistralOptions } from "./providers/mistral";
48
+ export { buildConverseRequest as buildBedrockConverseRequest, convertMessages as convertBedrockMessages, mapStopReason as mapBedrockStopReason, processBedrockStream, streamBedrock, streamSimpleBedrock, } from "./providers/amazon-bedrock";
49
+ export type { BedrockOptions, BedrockStreamItem, BedrockStreamTransport, BedrockThinkingDisplay, } from "./providers/amazon-bedrock";
50
+ export { transformMessages } from "./providers/transform-messages";
51
+ export { createMistralToolCallIdNormalizer, deriveMistralToolCallId, normalizeToolCallId, TOOL_CALL_ID_MAX_LENGTH, type ToolCallIdTarget, } from "./providers/tool-call-id";
52
+ export { adjustMaxTokensForThinking, buildBaseOptions, clampMaxTokensToContext, clampReasoning, } from "./providers/simple-options";
53
+ export { clampOpenAIPromptCacheKey, OPENAI_PROMPT_CACHE_KEY_MAX_LENGTH, } from "./providers/openai-prompt-cache";
54
+ export { buildCopilotDynamicHeaders, hasCopilotVisionInput, inferCopilotInitiator, } from "./providers/github-copilot-headers";
55
+ export { CLOUDFLARE_AI_GATEWAY_ANTHROPIC_BASE_URL, CLOUDFLARE_AI_GATEWAY_COMPAT_BASE_URL, CLOUDFLARE_AI_GATEWAY_OPENAI_BASE_URL, CLOUDFLARE_WORKERS_AI_BASE_URL, isCloudflareProvider, resolveCloudflareBaseUrl, } from "./providers/cloudflare";
56
+ export { iterateServerSentEvents, parseServerSentEventsFromString, type ServerSentEvent, } from "./utils/sse";
57
+ export { shortHash } from "./utils/hash";
58
+ export { type FauxContentBlock, type FauxModelDefinition, type FauxProviderRegistration, type FauxResponseFactory, type FauxResponseStep, fauxAssistantMessage, fauxText, fauxThinking, fauxToolCall, type RegisterFauxProviderOptions, registerFauxProvider, } from "./providers/faux";
59
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}