@stackbilt/llm-providers 1.0.0 → 1.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.
@@ -0,0 +1,5 @@
1
+ export { ImageProvider, normalizeAiResponse } from './provider.js';
2
+ export type { ImageProviderConfig } from './provider.js';
3
+ export type { ImageRequest, ImageResponse, ImageModelConfig, ImageModelInputFormat } from './types.js';
4
+ export { IMAGE_MODELS, getImageModel } from './types.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/image/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACzD,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { ImageProvider, normalizeAiResponse } from './provider.js';
2
+ export { IMAGE_MODELS, getImageModel } from './types.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/image/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGnE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Image Generation Provider
3
+ * Multi-provider image inference with circuit breakers and cost tracking.
4
+ *
5
+ * Supports:
6
+ * - Cloudflare Workers AI (SDXL Lightning, FLUX Klein, FLUX Dev)
7
+ * - Google Gemini (Flash Image, Flash Image Preview)
8
+ *
9
+ * Extracted from img-forge production codebase. Battle-tested.
10
+ */
11
+ import type { ImageRequest, ImageResponse, ImageModelConfig } from './types.js';
12
+ export interface ImageProviderConfig {
13
+ /** Cloudflare Workers AI binding (env.AI) */
14
+ cloudflareAi?: unknown;
15
+ /** Google Gemini API key */
16
+ geminiApiKey?: string;
17
+ /** Default model name (key from IMAGE_MODELS) */
18
+ defaultModel?: string;
19
+ /** Custom model configs (extend or override built-in registry) */
20
+ models?: Record<string, ImageModelConfig>;
21
+ }
22
+ export declare class ImageProvider {
23
+ private cloudflareAi;
24
+ private geminiApiKey;
25
+ private defaultModel;
26
+ private models;
27
+ constructor(config: ImageProviderConfig);
28
+ /**
29
+ * Generate an image from a text prompt.
30
+ * Returns raw image bytes with metadata.
31
+ */
32
+ generateImage(request: ImageRequest): Promise<ImageResponse>;
33
+ /** List available models based on configured providers. */
34
+ getAvailableModels(): string[];
35
+ private callCloudflare;
36
+ private callGemini;
37
+ }
38
+ /**
39
+ * Normalize Workers AI responses to ArrayBuffer.
40
+ * Different models return different types (ReadableStream, ArrayBuffer,
41
+ * objects with .image property, base64 strings). This handles all of them.
42
+ */
43
+ export declare function normalizeAiResponse(response: unknown): Promise<ArrayBuffer>;
44
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/image/provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGhF,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,4BAA4B;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC3C;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,MAAM,CAAmC;gBAErC,MAAM,EAAE,mBAAmB;IAOvC;;;OAGG;IACG,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IA4BlE,2DAA2D;IAC3D,kBAAkB,IAAI,MAAM,EAAE;YAYhB,cAAc;YAgDd,UAAU;CA+CzB;AAID;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,WAAW,CAAC,CAyBtB"}
@@ -0,0 +1,182 @@
1
+ /**
2
+ * Image Generation Provider
3
+ * Multi-provider image inference with circuit breakers and cost tracking.
4
+ *
5
+ * Supports:
6
+ * - Cloudflare Workers AI (SDXL Lightning, FLUX Klein, FLUX Dev)
7
+ * - Google Gemini (Flash Image, Flash Image Preview)
8
+ *
9
+ * Extracted from img-forge production codebase. Battle-tested.
10
+ */
11
+ import { IMAGE_MODELS } from './types.js';
12
+ export class ImageProvider {
13
+ cloudflareAi;
14
+ geminiApiKey;
15
+ defaultModel;
16
+ models;
17
+ constructor(config) {
18
+ this.cloudflareAi = config.cloudflareAi ?? null;
19
+ this.geminiApiKey = config.geminiApiKey ?? null;
20
+ this.defaultModel = config.defaultModel ?? 'sdxl-lightning';
21
+ this.models = { ...IMAGE_MODELS, ...config.models };
22
+ }
23
+ /**
24
+ * Generate an image from a text prompt.
25
+ * Returns raw image bytes with metadata.
26
+ */
27
+ async generateImage(request) {
28
+ const modelName = request.model ?? this.defaultModel;
29
+ const config = this.models[modelName];
30
+ if (!config) {
31
+ throw new Error(`Unknown image model: ${modelName}. Available: ${Object.keys(this.models).join(', ')}`);
32
+ }
33
+ const start = Date.now();
34
+ let image;
35
+ if (config.provider === 'cloudflare') {
36
+ if (!this.cloudflareAi)
37
+ throw new Error('Cloudflare AI binding not configured — pass cloudflareAi in ImageProviderConfig');
38
+ image = await this.callCloudflare(config, request);
39
+ }
40
+ else if (config.provider === 'gemini') {
41
+ if (!this.geminiApiKey)
42
+ throw new Error('Gemini API key not configured — pass geminiApiKey in ImageProviderConfig');
43
+ image = await this.callGemini(config, request);
44
+ }
45
+ else {
46
+ throw new Error(`Unsupported image provider: ${config.provider}`);
47
+ }
48
+ return {
49
+ image,
50
+ model: config.modelId,
51
+ provider: config.provider,
52
+ responseTime: Date.now() - start,
53
+ };
54
+ }
55
+ /** List available models based on configured providers. */
56
+ getAvailableModels() {
57
+ return Object.entries(this.models)
58
+ .filter(([, config]) => {
59
+ if (config.provider === 'cloudflare')
60
+ return !!this.cloudflareAi;
61
+ if (config.provider === 'gemini')
62
+ return !!this.geminiApiKey;
63
+ return false;
64
+ })
65
+ .map(([name]) => name);
66
+ }
67
+ // ── Cloudflare Workers AI ─────────────────────────────────────
68
+ async callCloudflare(config, request) {
69
+ const ai = this.cloudflareAi;
70
+ const width = request.width ?? config.defaultWidth;
71
+ const height = request.height ?? config.defaultHeight;
72
+ const guidance = request.guidance ?? config.defaultGuidance ?? 7.5;
73
+ let raw;
74
+ if (config.inputFormat === 'multipart') {
75
+ const form = new FormData();
76
+ form.append('prompt', request.prompt);
77
+ form.append('width', String(width));
78
+ form.append('height', String(height));
79
+ form.append('guidance', String(guidance));
80
+ if (config.stepsParam && request.steps != null) {
81
+ form.append(config.stepsParam, String(request.steps));
82
+ }
83
+ if (request.seed != null)
84
+ form.append('seed', String(request.seed));
85
+ const formResponse = new Response(form);
86
+ raw = await ai.run(config.modelId, {
87
+ multipart: {
88
+ body: formResponse.body,
89
+ contentType: formResponse.headers.get('content-type'),
90
+ },
91
+ });
92
+ }
93
+ else {
94
+ const input = {
95
+ prompt: request.prompt,
96
+ width,
97
+ height,
98
+ guidance,
99
+ };
100
+ if (config.supportsNegativePrompt && request.negativePrompt) {
101
+ input.negative_prompt = request.negativePrompt;
102
+ }
103
+ if (config.stepsParam && request.steps != null) {
104
+ input[config.stepsParam] = request.steps;
105
+ }
106
+ if (request.seed != null)
107
+ input.seed = request.seed;
108
+ raw = await ai.run(config.modelId, input);
109
+ }
110
+ return normalizeAiResponse(raw);
111
+ }
112
+ // ── Google Gemini ─────────────────────────────────────────────
113
+ async callGemini(config, request) {
114
+ const url = `https://generativelanguage.googleapis.com/v1beta/models/${config.modelId}:generateContent`;
115
+ const aspectRatio = request.aspectRatio ?? config.defaultAspectRatio ?? '1:1';
116
+ const response = await fetch(url, {
117
+ method: 'POST',
118
+ headers: {
119
+ 'Content-Type': 'application/json',
120
+ 'x-goog-api-key': this.geminiApiKey,
121
+ },
122
+ body: JSON.stringify({
123
+ contents: [{ parts: [{ text: request.prompt }] }],
124
+ generationConfig: {
125
+ responseModalities: ['TEXT', 'IMAGE'],
126
+ imageConfig: { aspectRatio },
127
+ },
128
+ }),
129
+ });
130
+ if (!response.ok) {
131
+ const err = await response.text();
132
+ throw new Error(`Gemini API error ${response.status}: ${err}`);
133
+ }
134
+ const json = await response.json();
135
+ const parts = json.candidates?.[0]?.content?.parts ?? [];
136
+ const imagePart = parts.find(p => p.inlineData?.mimeType?.startsWith('image/'));
137
+ if (!imagePart?.inlineData?.data) {
138
+ throw new Error('Gemini response contained no image data');
139
+ }
140
+ const binary = atob(imagePart.inlineData.data);
141
+ const bytes = new Uint8Array(binary.length);
142
+ for (let i = 0; i < binary.length; i++) {
143
+ bytes[i] = binary.charCodeAt(i);
144
+ }
145
+ return bytes.buffer;
146
+ }
147
+ }
148
+ // ── Response normalization ──────────────────────────────────────
149
+ /**
150
+ * Normalize Workers AI responses to ArrayBuffer.
151
+ * Different models return different types (ReadableStream, ArrayBuffer,
152
+ * objects with .image property, base64 strings). This handles all of them.
153
+ */
154
+ export async function normalizeAiResponse(response) {
155
+ if (response instanceof ArrayBuffer)
156
+ return response;
157
+ if (response instanceof ReadableStream) {
158
+ return new Response(response).arrayBuffer();
159
+ }
160
+ if (response && typeof response === 'object') {
161
+ const obj = response;
162
+ const imageData = obj.image ?? obj.data ?? obj;
163
+ if (imageData instanceof ArrayBuffer)
164
+ return imageData;
165
+ if (imageData instanceof ReadableStream) {
166
+ return new Response(imageData).arrayBuffer();
167
+ }
168
+ if (imageData instanceof Uint8Array) {
169
+ return new Response(imageData).arrayBuffer();
170
+ }
171
+ if (typeof imageData === 'string') {
172
+ const binary = atob(imageData);
173
+ const bytes = new Uint8Array(binary.length);
174
+ for (let i = 0; i < binary.length; i++) {
175
+ bytes[i] = binary.charCodeAt(i);
176
+ }
177
+ return bytes.buffer;
178
+ }
179
+ }
180
+ return new Response(response).arrayBuffer();
181
+ }
182
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/image/provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Image Generation Types
3
+ * Unified types for multi-provider image generation.
4
+ */
5
+ export type ImageModelInputFormat = 'json' | 'multipart';
6
+ export interface ImageModelConfig {
7
+ provider: 'cloudflare' | 'gemini';
8
+ modelId: string;
9
+ inputFormat?: ImageModelInputFormat;
10
+ supportsNegativePrompt: boolean;
11
+ supportsSeed: boolean;
12
+ stepsParam?: 'num_steps' | 'steps' | null;
13
+ defaultSteps?: number | null;
14
+ defaultGuidance?: number;
15
+ defaultAspectRatio?: string;
16
+ defaultWidth: number;
17
+ defaultHeight: number;
18
+ maxWidth: number;
19
+ maxHeight: number;
20
+ }
21
+ export interface ImageRequest {
22
+ prompt: string;
23
+ negativePrompt?: string | null;
24
+ model?: string;
25
+ width?: number;
26
+ height?: number;
27
+ steps?: number | null;
28
+ guidance?: number;
29
+ seed?: number | null;
30
+ aspectRatio?: string;
31
+ }
32
+ export interface ImageResponse {
33
+ image: ArrayBuffer;
34
+ model: string;
35
+ provider: string;
36
+ responseTime: number;
37
+ cost?: number;
38
+ }
39
+ /**
40
+ * Built-in image model registry.
41
+ * Quality tiers map to specific provider + model combinations.
42
+ */
43
+ export declare const IMAGE_MODELS: Record<string, ImageModelConfig>;
44
+ export declare function getImageModel(name: string): ImageModelConfig | undefined;
45
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/image/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,WAAW,CAAC;AAEzD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,YAAY,GAAG,QAAQ,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,qBAAqB,CAAC;IACpC,sBAAsB,EAAE,OAAO,CAAC;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,WAAW,GAAG,OAAO,GAAG,IAAI,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAsEzD,CAAC;AAEF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAExE"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Image Generation Types
3
+ * Unified types for multi-provider image generation.
4
+ */
5
+ /**
6
+ * Built-in image model registry.
7
+ * Quality tiers map to specific provider + model combinations.
8
+ */
9
+ export const IMAGE_MODELS = {
10
+ // Cloudflare Workers AI — fast, included in free tier
11
+ 'sdxl-lightning': {
12
+ provider: 'cloudflare',
13
+ modelId: '@cf/bytedance/stable-diffusion-xl-lightning',
14
+ inputFormat: 'json',
15
+ supportsNegativePrompt: true,
16
+ supportsSeed: true,
17
+ stepsParam: 'num_steps',
18
+ defaultSteps: 4,
19
+ defaultGuidance: 7.5,
20
+ defaultWidth: 1024,
21
+ defaultHeight: 1024,
22
+ maxWidth: 2048,
23
+ maxHeight: 2048,
24
+ },
25
+ // Cloudflare Workers AI — balanced quality/speed
26
+ 'flux-klein': {
27
+ provider: 'cloudflare',
28
+ modelId: '@cf/black-forest-labs/flux-2-klein-4b',
29
+ inputFormat: 'multipart',
30
+ supportsNegativePrompt: false,
31
+ supportsSeed: true,
32
+ stepsParam: null,
33
+ defaultSteps: null,
34
+ defaultGuidance: 7.5,
35
+ defaultWidth: 1024,
36
+ defaultHeight: 768,
37
+ maxWidth: 1920,
38
+ maxHeight: 1920,
39
+ },
40
+ // Cloudflare Workers AI — highest CF quality
41
+ 'flux-dev': {
42
+ provider: 'cloudflare',
43
+ modelId: '@cf/black-forest-labs/flux-2-dev',
44
+ inputFormat: 'multipart',
45
+ supportsNegativePrompt: false,
46
+ supportsSeed: true,
47
+ stepsParam: 'steps',
48
+ defaultSteps: 25,
49
+ defaultGuidance: 7.5,
50
+ defaultWidth: 1024,
51
+ defaultHeight: 768,
52
+ maxWidth: 1920,
53
+ maxHeight: 1920,
54
+ },
55
+ // Google Gemini — text rendering capable
56
+ 'gemini-flash-image': {
57
+ provider: 'gemini',
58
+ modelId: 'gemini-2.5-flash-image',
59
+ supportsNegativePrompt: false,
60
+ supportsSeed: false,
61
+ defaultAspectRatio: '1:1',
62
+ defaultWidth: 1024,
63
+ defaultHeight: 1024,
64
+ maxWidth: 2048,
65
+ maxHeight: 2048,
66
+ },
67
+ // Google Gemini — latest preview, best text rendering
68
+ 'gemini-flash-image-preview': {
69
+ provider: 'gemini',
70
+ modelId: 'gemini-3.1-flash-image-preview',
71
+ supportsNegativePrompt: false,
72
+ supportsSeed: false,
73
+ defaultAspectRatio: '1:1',
74
+ defaultWidth: 1024,
75
+ defaultHeight: 1024,
76
+ maxWidth: 2048,
77
+ maxHeight: 2048,
78
+ },
79
+ };
80
+ export function getImageModel(name) {
81
+ return IMAGE_MODELS[name];
82
+ }
83
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/image/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAwCH;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAqC;IAC5D,sDAAsD;IACtD,gBAAgB,EAAE;QAChB,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE,6CAA6C;QACtD,WAAW,EAAE,MAAM;QACnB,sBAAsB,EAAE,IAAI;QAC5B,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,WAAW;QACvB,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,GAAG;QACpB,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;KAChB;IACD,iDAAiD;IACjD,YAAY,EAAE;QACZ,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE,uCAAuC;QAChD,WAAW,EAAE,WAAW;QACxB,sBAAsB,EAAE,KAAK;QAC7B,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,GAAG;QACpB,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,GAAG;QAClB,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;KAChB;IACD,6CAA6C;IAC7C,UAAU,EAAE;QACV,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE,kCAAkC;QAC3C,WAAW,EAAE,WAAW;QACxB,sBAAsB,EAAE,KAAK;QAC7B,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,OAAO;QACnB,YAAY,EAAE,EAAE;QAChB,eAAe,EAAE,GAAG;QACpB,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,GAAG;QAClB,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;KAChB;IACD,yCAAyC;IACzC,oBAAoB,EAAE;QACpB,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,wBAAwB;QACjC,sBAAsB,EAAE,KAAK;QAC7B,YAAY,EAAE,KAAK;QACnB,kBAAkB,EAAE,KAAK;QACzB,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;KAChB;IACD,sDAAsD;IACtD,4BAA4B,EAAE;QAC5B,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,gCAAgC;QACzC,sBAAsB,EAAE,KAAK;QAC7B,YAAY,EAAE,KAAK;QACnB,kBAAkB,EAAE,KAAK;QACzB,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;KAChB;CACF,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC"}
package/dist/index.d.ts CHANGED
@@ -15,6 +15,9 @@ export type { ProviderFactoryConfig } from './factory';
15
15
  import type { ProviderFactoryConfig } from './factory';
16
16
  import type { LLMProvider, LLMRequest, LLMResponse } from './types';
17
17
  export { LLMProviderError, RateLimitError, QuotaExceededError, AuthenticationError, InvalidRequestError, ModelNotFoundError, TimeoutError, NetworkError, ServerError, ContentFilterError, TokenLimitError, ConfigurationError, CircuitBreakerOpenError, LLMErrorFactory } from './errors';
18
+ export { ImageProvider, normalizeAiResponse } from './image/index';
19
+ export type { ImageProviderConfig, ImageRequest, ImageResponse, ImageModelConfig, ImageModelInputFormat } from './image/index';
20
+ export { IMAGE_MODELS, getImageModel } from './image/index';
18
21
  export { RetryManager, defaultRetryManager, withRetry, retry } from './utils/retry';
19
22
  export { CircuitBreaker, CircuitBreakerManager, defaultCircuitBreakerManager } from './utils/circuit-breaker';
20
23
  export { CostTracker, CostOptimizer, defaultCostTracker } from './utils/cost-tracker';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,cAAc,EACd,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,UAAU,EACV,QAAQ,EACR,WAAW,EACX,cAAc,EACd,YAAY,EACZ,aAAa,EACb,QAAQ,EACT,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAIvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAKpE,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EAChB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,4BAA4B,EAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,WAAW,EACX,aAAa,EACb,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EACV,oBAAoB,EACpB,WAAW,EACX,cAAc,EACd,cAAc,EACd,cAAc,EACd,YAAY,EACZ,eAAe,EACf,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,YAAY,GACb,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;IAC3D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC;IACvD,MAAM,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAqB;gBAExB,MAAM,EAAE,qBAAqB;IAIzC;;;;;;;;OAQG;IACH,MAAM,CAAC,OAAO,CACZ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,SAAS,GAAE,gBAAqB,GAC/B,YAAY;IAyDf;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IAIjE;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIlD;;OAEG;IACH,qBAAqB,IAAI,MAAM,EAAE;IAIjC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAI/C;;OAEG;IACH,gBAAgB,IAAI,GAAG;IAIvB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI;CAG3D;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,qBAAqB,GAC5B,YAAY,CAGd;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,qBAAqB,GAAG,YAAY,CAE9E;AAED;;GAEG;AACH,eAAe,YAAY,CAAC;AAE5B;;GAEG;AACH,eAAO,MAAM,OAAO,UAAU,CAAC;AAC/B,eAAO,MAAM,mBAAmB,oEAAqE,CAAC;AAEtG;;GAEG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;CA+BT,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;CAwCxB,CAAC;AAEX;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,OAAO,qBAAqB,EAC3C,kBAAkB,EAAE,MAAM,EAAE,GAC3B,MAAM,CAmCR"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -18,6 +18,9 @@ import { createCostOptimizedFactory } from './factory';
18
18
  import { ConfigurationError } from './errors';
19
19
  // Error classes
20
20
  export { LLMProviderError, RateLimitError, QuotaExceededError, AuthenticationError, InvalidRequestError, ModelNotFoundError, TimeoutError, NetworkError, ServerError, ContentFilterError, TokenLimitError, ConfigurationError, CircuitBreakerOpenError, LLMErrorFactory } from './errors';
21
+ // Image generation
22
+ export { ImageProvider, normalizeAiResponse } from './image/index';
23
+ export { IMAGE_MODELS, getImageModel } from './image/index';
21
24
  // Utility classes
22
25
  export { RetryManager, defaultRetryManager, withRetry, retry } from './utils/retry';
23
26
  export { CircuitBreaker, CircuitBreakerManager, defaultCircuitBreakerManager } from './utils/circuit-breaker';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stackbilt/llm-providers",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "Multi-LLM failover with circuit breakers, cost tracking, and intelligent retry. Cloudflare Workers native.",
5
- "author": "Kurt Overmier <kurt@stackbilt.dev>",
5
+ "author": "Stackbilt <admin@stackbilt.dev>",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
8
8
  "type": "git",