@ai-sdk/topaz 2.0.0 → 3.0.1

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.
package/CHANGELOG.md CHANGED
@@ -1,7 +1,23 @@
1
1
  # @ai-sdk/topaz
2
2
 
3
- ## 2.0.0
3
+ ## 3.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [2959d35]
8
+ - Updated dependencies [59116e6]
9
+ - @ai-sdk/provider@4.0.22
10
+ - @ai-sdk/provider-utils@5.0.54
11
+
12
+ ## 3.0.0
4
13
 
5
14
  ### Major Changes
6
15
 
7
- - 5da3c7e: feat (provider/topaz): add Topaz Labs provider
16
+ - 09aa6c2: feat (provider/topaz): add Topaz Labs provider
17
+
18
+ ### Patch Changes
19
+
20
+ - Updated dependencies [8c65988]
21
+ - Updated dependencies [527a163]
22
+ - @ai-sdk/provider@4.0.21
23
+ - @ai-sdk/provider-utils@5.0.53
package/dist/index.d.ts CHANGED
@@ -1,8 +1,7 @@
1
- import { ProviderV3, ImageModelV3, Experimental_VideoModelV3 } from '@ai-sdk/provider';
2
- import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
3
- import { FetchFunction, InferSchema } from '@ai-sdk/provider-utils';
4
- import { z } from 'zod/v4';
5
-
1
+ import { Experimental_VideoModelV4, ImageModelV4, ProviderV4 } from "@ai-sdk/provider";
2
+ import { FetchFunction, InferSchema } from "@ai-sdk/provider-utils";
3
+ import { z } from "zod/v4";
4
+ //#region src/topaz-image-settings.d.ts
6
5
  /**
7
6
  * Topaz image model ids.
8
7
  *
@@ -12,7 +11,8 @@ import { z } from 'zod/v4';
12
11
  * to the API unchanged.
13
12
  */
14
13
  type TopazImageModelId = 'wonder-3.5' | (string & {});
15
-
14
+ //#endregion
15
+ //#region src/topaz-video-settings.d.ts
16
16
  /**
17
17
  * Topaz video model ids.
18
18
  *
@@ -22,56 +22,58 @@ type TopazImageModelId = 'wonder-3.5' | (string & {});
22
22
  * works - unknown ids are forwarded to the API unchanged.
23
23
  */
24
24
  type TopazVideoModelId = 'proteus' | 'starlight-precise-2.6' | (string & {});
25
-
25
+ //#endregion
26
+ //#region src/topaz-provider.d.ts
26
27
  interface TopazProviderSettings {
27
- /**
28
- * Topaz Labs API key. Default value is taken from the `TOPAZ_API_KEY`
29
- * environment variable.
30
- *
31
- * @see https://developer.topazlabs.com/getting-started/api-key-setup
32
- */
33
- apiKey?: string;
34
- /**
35
- * Base URL for the API calls.
36
- */
37
- baseURL?: string;
38
- /**
39
- * Custom headers to include in the requests.
40
- */
41
- headers?: Record<string, string>;
42
- /**
43
- * Custom fetch implementation. You can use it as a middleware to intercept
44
- * requests, or to provide a custom fetch implementation for e.g. testing.
45
- */
46
- fetch?: FetchFunction;
28
+ /**
29
+ * Topaz Labs API key. Default value is taken from the `TOPAZ_API_KEY`
30
+ * environment variable.
31
+ *
32
+ * @see https://developer.topazlabs.com/getting-started/api-key-setup
33
+ */
34
+ apiKey?: string;
35
+ /**
36
+ * Base URL for the API calls.
37
+ */
38
+ baseURL?: string;
39
+ /**
40
+ * Custom headers to include in the requests.
41
+ */
42
+ headers?: Record<string, string>;
43
+ /**
44
+ * Custom fetch implementation. You can use it as a middleware to intercept
45
+ * requests, or to provide a custom fetch implementation for e.g. testing.
46
+ */
47
+ fetch?: FetchFunction;
47
48
  }
48
- interface TopazProvider extends ProviderV3 {
49
- /**
50
- * Creates a model for image enhancement.
51
- */
52
- image(modelId: TopazImageModelId): ImageModelV3;
53
- /**
54
- * Creates a model for image enhancement.
55
- */
56
- imageModel(modelId: TopazImageModelId): ImageModelV3;
57
- /**
58
- * Creates a model for video enhancement.
59
- */
60
- video(modelId: TopazVideoModelId): Experimental_VideoModelV3;
61
- /**
62
- * Creates a model for video enhancement.
63
- */
64
- videoModel(modelId: TopazVideoModelId): Experimental_VideoModelV3;
49
+ interface TopazProvider extends ProviderV4 {
50
+ /**
51
+ * Creates a model for image enhancement.
52
+ */
53
+ image(modelId: TopazImageModelId): ImageModelV4;
54
+ /**
55
+ * Creates a model for image enhancement.
56
+ */
57
+ imageModel(modelId: TopazImageModelId): ImageModelV4;
58
+ /**
59
+ * Creates a model for video enhancement.
60
+ */
61
+ video(modelId: TopazVideoModelId): Experimental_VideoModelV4;
62
+ /**
63
+ * Creates a model for video enhancement.
64
+ */
65
+ videoModel(modelId: TopazVideoModelId): Experimental_VideoModelV4;
65
66
  }
66
67
  /**
67
68
  * Create a Topaz Labs provider instance.
68
69
  */
69
- declare function createTopaz(options?: TopazProviderSettings): TopazProvider;
70
+ export declare function createTopaz(options?: TopazProviderSettings): TopazProvider;
70
71
  /**
71
72
  * Default Topaz Labs provider instance.
72
73
  */
73
- declare const topaz: TopazProvider;
74
-
74
+ export declare const topaz: TopazProvider;
75
+ //#endregion
76
+ //#region src/topaz-image-model-options.d.ts
75
77
  /**
76
78
  * Provider options for Topaz generative image models (Wonder 3.5).
77
79
  *
@@ -81,25 +83,26 @@ declare const topaz: TopazProvider;
81
83
  *
82
84
  * @see https://developer.topazlabs.com/image-models/wonder/wonder-3.5-new
83
85
  */
84
- declare const topazImageModelOptionsSchema: _ai_sdk_provider_utils.LazySchema<{
85
- enhancementStrength?: "high" | "low" | "medium" | undefined;
86
- grain?: boolean | undefined;
87
- grainDensity?: number | undefined;
88
- grainModel?: "silver" | "gaussian" | "grey" | undefined;
89
- grainSize?: number | undefined;
90
- grainStrength?: number | undefined;
91
- inputWidth?: number | undefined;
92
- inputHeight?: number | undefined;
93
- outputWidth?: number | undefined;
94
- outputHeight?: number | undefined;
95
- outputFormat?: "jpeg" | "jpg" | "png" | "tiff" | "tif" | undefined;
96
- cropToFill?: boolean | undefined;
97
- webhookUrl?: string | undefined;
98
- pollIntervalMillis?: number | undefined;
99
- pollTimeoutMillis?: number | undefined;
86
+ declare const topazImageModelOptionsSchema: import("@ai-sdk/provider-utils").LazySchema<{
87
+ enhancementStrength?: "low" | "medium" | "high" | undefined;
88
+ grain?: boolean | undefined;
89
+ grainDensity?: number | undefined;
90
+ grainModel?: "silver" | "gaussian" | "grey" | undefined;
91
+ grainSize?: number | undefined;
92
+ grainStrength?: number | undefined;
93
+ inputWidth?: number | undefined;
94
+ inputHeight?: number | undefined;
95
+ outputWidth?: number | undefined;
96
+ outputHeight?: number | undefined;
97
+ outputFormat?: "jpeg" | "jpg" | "png" | "tiff" | "tif" | undefined;
98
+ cropToFill?: boolean | undefined;
99
+ webhookUrl?: string | undefined;
100
+ pollIntervalMillis?: number | undefined;
101
+ pollTimeoutMillis?: number | undefined;
100
102
  }>;
101
103
  type TopazImageModelOptions = InferSchema<typeof topazImageModelOptionsSchema>;
102
-
104
+ //#endregion
105
+ //#region src/topaz-video-model-options.d.ts
103
106
  /**
104
107
  * Metadata about the input video.
105
108
  *
@@ -110,76 +113,76 @@ type TopazImageModelOptions = InferSchema<typeof topazImageModelOptionsSchema>;
110
113
  * requires all four.
111
114
  */
112
115
  declare const topazVideoSourceSchema: z.ZodObject<{
113
- width: z.ZodOptional<z.ZodNumber>;
114
- height: z.ZodOptional<z.ZodNumber>;
115
- duration: z.ZodOptional<z.ZodNumber>;
116
- frameRate: z.ZodOptional<z.ZodNumber>;
117
- frameCount: z.ZodOptional<z.ZodNumber>;
118
- container: z.ZodOptional<z.ZodEnum<{
119
- "3gp": "3gp";
120
- avi: "avi";
121
- dv: "dv";
122
- flv: "flv";
123
- m1v: "m1v";
124
- m2t: "m2t";
125
- m2ts: "m2ts";
126
- m2v: "m2v";
127
- m4v: "m4v";
128
- mkv: "mkv";
129
- mov: "mov";
130
- mp4: "mp4";
131
- mpeg: "mpeg";
132
- mpg: "mpg";
133
- mts: "mts";
134
- mxf: "mxf";
135
- ser: "ser";
136
- ts: "ts";
137
- vob: "vob";
138
- webm: "webm";
139
- wmv: "wmv";
140
- }>>;
116
+ width: z.ZodOptional<z.ZodNumber>;
117
+ height: z.ZodOptional<z.ZodNumber>;
118
+ duration: z.ZodOptional<z.ZodNumber>;
119
+ frameRate: z.ZodOptional<z.ZodNumber>;
120
+ frameCount: z.ZodOptional<z.ZodNumber>;
121
+ container: z.ZodOptional<z.ZodEnum<{
122
+ "3gp": "3gp";
123
+ avi: "avi";
124
+ dv: "dv";
125
+ flv: "flv";
126
+ m1v: "m1v";
127
+ m2t: "m2t";
128
+ m2ts: "m2ts";
129
+ m2v: "m2v";
130
+ m4v: "m4v";
131
+ mkv: "mkv";
132
+ mov: "mov";
133
+ mp4: "mp4";
134
+ mpeg: "mpeg";
135
+ mpg: "mpg";
136
+ mts: "mts";
137
+ mxf: "mxf";
138
+ ser: "ser";
139
+ ts: "ts";
140
+ vob: "vob";
141
+ webm: "webm";
142
+ wmv: "wmv";
143
+ }>>;
141
144
  }, z.core.$strip>;
142
145
  type TopazVideoSource = z.infer<typeof topazVideoSourceSchema>;
143
146
  /**
144
147
  * Output settings for the enhanced video.
145
148
  */
146
149
  declare const topazVideoOutputSchema: z.ZodObject<{
147
- width: z.ZodOptional<z.ZodNumber>;
148
- height: z.ZodOptional<z.ZodNumber>;
149
- frameRate: z.ZodOptional<z.ZodNumber>;
150
- audioCodec: z.ZodOptional<z.ZodEnum<{
151
- AAC: "AAC";
152
- AC3: "AC3";
153
- PCM: "PCM";
154
- }>>;
155
- audioBitrate: z.ZodOptional<z.ZodString>;
156
- audioTransfer: z.ZodOptional<z.ZodEnum<{
157
- Copy: "Copy";
158
- Convert: "Convert";
159
- None: "None";
160
- }>>;
161
- videoEncoder: z.ZodOptional<z.ZodEnum<{
162
- AV1: "AV1";
163
- H264: "H264";
164
- H265: "H265";
165
- ProRes: "ProRes";
166
- VP9: "VP9";
167
- }>>;
168
- videoProfile: z.ZodOptional<z.ZodString>;
169
- videoBitrate: z.ZodOptional<z.ZodString>;
170
- dynamicCompressionLevel: z.ZodOptional<z.ZodEnum<{
171
- Low: "Low";
172
- Mid: "Mid";
173
- High: "High";
174
- }>>;
175
- cropToFit: z.ZodOptional<z.ZodBoolean>;
176
- container: z.ZodOptional<z.ZodEnum<{
177
- avi: "avi";
178
- mkv: "mkv";
179
- mov: "mov";
180
- mp4: "mp4";
181
- webm: "webm";
182
- }>>;
150
+ width: z.ZodOptional<z.ZodNumber>;
151
+ height: z.ZodOptional<z.ZodNumber>;
152
+ frameRate: z.ZodOptional<z.ZodNumber>;
153
+ audioCodec: z.ZodOptional<z.ZodEnum<{
154
+ AAC: "AAC";
155
+ AC3: "AC3";
156
+ PCM: "PCM";
157
+ }>>;
158
+ audioBitrate: z.ZodOptional<z.ZodString>;
159
+ audioTransfer: z.ZodOptional<z.ZodEnum<{
160
+ Copy: "Copy";
161
+ Convert: "Convert";
162
+ None: "None";
163
+ }>>;
164
+ videoEncoder: z.ZodOptional<z.ZodEnum<{
165
+ AV1: "AV1";
166
+ H264: "H264";
167
+ H265: "H265";
168
+ ProRes: "ProRes";
169
+ VP9: "VP9";
170
+ }>>;
171
+ videoProfile: z.ZodOptional<z.ZodString>;
172
+ videoBitrate: z.ZodOptional<z.ZodString>;
173
+ dynamicCompressionLevel: z.ZodOptional<z.ZodEnum<{
174
+ Low: "Low";
175
+ Mid: "Mid";
176
+ High: "High";
177
+ }>>;
178
+ cropToFit: z.ZodOptional<z.ZodBoolean>;
179
+ container: z.ZodOptional<z.ZodEnum<{
180
+ avi: "avi";
181
+ mkv: "mkv";
182
+ mov: "mov";
183
+ mp4: "mp4";
184
+ webm: "webm";
185
+ }>>;
183
186
  }, z.core.$strip>;
184
187
  type TopazVideoOutput = z.infer<typeof topazVideoOutputSchema>;
185
188
  /**
@@ -188,57 +191,57 @@ type TopazVideoOutput = z.infer<typeof topazVideoOutputSchema>;
188
191
  * @see https://developer.topazlabs.com/video-models/proteus/proteus-1
189
192
  * @see https://developer.topazlabs.com/video-models/starlight/starlight-precise-2.6
190
193
  */
191
- declare const topazVideoModelOptionsSchema: _ai_sdk_provider_utils.LazySchema<{
192
- pollIntervalMillis?: number | undefined;
193
- pollTimeoutMillis?: number | undefined;
194
- source?: {
195
- width?: number | undefined;
196
- height?: number | undefined;
197
- duration?: number | undefined;
198
- frameRate?: number | undefined;
199
- frameCount?: number | undefined;
200
- container?: "3gp" | "avi" | "dv" | "flv" | "m1v" | "m2t" | "m2ts" | "m2v" | "m4v" | "mkv" | "mov" | "mp4" | "mpeg" | "mpg" | "mts" | "mxf" | "ser" | "ts" | "vob" | "webm" | "wmv" | undefined;
201
- } | undefined;
202
- output?: {
203
- width?: number | undefined;
204
- height?: number | undefined;
205
- frameRate?: number | undefined;
206
- audioCodec?: "AAC" | "AC3" | "PCM" | undefined;
207
- audioBitrate?: string | undefined;
208
- audioTransfer?: "Copy" | "Convert" | "None" | undefined;
209
- videoEncoder?: "AV1" | "H264" | "H265" | "ProRes" | "VP9" | undefined;
210
- videoProfile?: string | undefined;
211
- videoBitrate?: string | undefined;
212
- dynamicCompressionLevel?: "Low" | "Mid" | "High" | undefined;
213
- cropToFit?: boolean | undefined;
214
- container?: "avi" | "mkv" | "mov" | "mp4" | "webm" | undefined;
215
- } | undefined;
216
- additionalFilters?: Record<string, unknown>[] | undefined;
217
- filter?: Record<string, unknown> | undefined;
218
- videoType?: "Progressive" | "Interlaced" | "ProgressiveInterlaced" | undefined;
219
- auto?: "Auto" | "Manual" | "Relative" | undefined;
220
- fieldOrder?: "Auto" | "TopFirst" | "BottomFirst" | undefined;
221
- focusFixLevel?: "None" | "Normal" | "Strong" | undefined;
222
- compression?: number | undefined;
223
- details?: number | undefined;
224
- prenoise?: number | undefined;
225
- noise?: number | undefined;
226
- halo?: number | undefined;
227
- preblur?: number | undefined;
228
- blur?: number | undefined;
229
- grain?: number | undefined;
230
- grainSigma?: number | undefined;
231
- grainSize?: number | undefined;
232
- grainType?: "gaussian" | "grey" | "silver_rich" | undefined;
233
- recoverOriginalDetailValue?: number | undefined;
234
- sharpness?: number | undefined;
235
- videoBitDepth?: number | undefined;
236
- videoCodec?: "ffv1" | "prores" | "vp9" | undefined;
237
- videoProfile?: "420" | "422" | "444" | undefined;
238
- watermark?: boolean | undefined;
194
+ declare const topazVideoModelOptionsSchema: import("@ai-sdk/provider-utils").LazySchema<{
195
+ source?: {
196
+ width?: number | undefined;
197
+ height?: number | undefined;
198
+ duration?: number | undefined;
199
+ frameRate?: number | undefined;
200
+ frameCount?: number | undefined;
201
+ container?: "3gp" | "avi" | "dv" | "flv" | "m1v" | "m2t" | "m2ts" | "m2v" | "m4v" | "mkv" | "mov" | "mp4" | "mpeg" | "mpg" | "mts" | "mxf" | "ser" | "ts" | "vob" | "webm" | "wmv" | undefined;
202
+ } | undefined;
203
+ output?: {
204
+ width?: number | undefined;
205
+ height?: number | undefined;
206
+ frameRate?: number | undefined;
207
+ audioCodec?: "AAC" | "AC3" | "PCM" | undefined;
208
+ audioBitrate?: string | undefined;
209
+ audioTransfer?: "Copy" | "Convert" | "None" | undefined;
210
+ videoEncoder?: "AV1" | "H264" | "H265" | "ProRes" | "VP9" | undefined;
211
+ videoProfile?: string | undefined;
212
+ videoBitrate?: string | undefined;
213
+ dynamicCompressionLevel?: "Low" | "Mid" | "High" | undefined;
214
+ cropToFit?: boolean | undefined;
215
+ container?: "avi" | "mkv" | "mov" | "mp4" | "webm" | undefined;
216
+ } | undefined;
217
+ additionalFilters?: Record<string, unknown>[] | undefined;
218
+ filter?: Record<string, unknown> | undefined;
219
+ videoType?: "Progressive" | "Interlaced" | "ProgressiveInterlaced" | undefined;
220
+ auto?: "Auto" | "Manual" | "Relative" | undefined;
221
+ fieldOrder?: "Auto" | "TopFirst" | "BottomFirst" | undefined;
222
+ focusFixLevel?: "None" | "Normal" | "Strong" | undefined;
223
+ compression?: number | undefined;
224
+ details?: number | undefined;
225
+ prenoise?: number | undefined;
226
+ noise?: number | undefined;
227
+ halo?: number | undefined;
228
+ preblur?: number | undefined;
229
+ blur?: number | undefined;
230
+ grain?: number | undefined;
231
+ grainSigma?: number | undefined;
232
+ grainSize?: number | undefined;
233
+ grainType?: "gaussian" | "grey" | "silver_rich" | undefined;
234
+ recoverOriginalDetailValue?: number | undefined;
235
+ sharpness?: number | undefined;
236
+ videoBitDepth?: number | undefined;
237
+ videoCodec?: "ffv1" | "prores" | "vp9" | undefined;
238
+ videoProfile?: "420" | "422" | "444" | undefined;
239
+ watermark?: boolean | undefined;
239
240
  }>;
240
241
  type TopazVideoModelOptions = InferSchema<typeof topazVideoModelOptionsSchema>;
241
-
242
- declare const VERSION: string;
243
-
244
- export { type TopazImageModelId, type TopazImageModelOptions, type TopazProvider, type TopazProviderSettings, type TopazVideoModelId, type TopazVideoModelOptions, type TopazVideoOutput, type TopazVideoSource, VERSION, createTopaz, topaz };
242
+ //#endregion
243
+ //#region src/version.d.ts
244
+ export declare const VERSION: string;
245
+ //#endregion
246
+ export type { TopazImageModelId, TopazImageModelOptions, TopazProvider, TopazProviderSettings, TopazVideoModelId, TopazVideoModelOptions, TopazVideoOutput, TopazVideoSource };
247
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":["VideoModelV4"],"sources":["../src/topaz-image-settings.ts","../src/topaz-video-settings.ts","../src/topaz-provider.ts","../src/topaz-image-model-options.ts","../src/topaz-video-model-options.ts","../src/version.ts"],"mappings":";;;;;;;;;;;;KAQY;;;;;;;;;;;KCAA;;;UCUK;;;;;;;EAOf;;;;EAKA;;;;EAKA,UAAU;;;;;EAMV,QAAQ;;UAGO,sBAAsB;;;;EAIrC,MAAM,SAAS,oBAAoB;;;;EAKnC,WAAW,SAAS,oBAAoB;;;;EAKxC,MAAM,SAAS,oBAAoBA;;;;EAKnC,WAAW,SAAS,oBAAoBA;;;;;wBAQ1B,YACd,UAAS,wBACR;;;;qBA8DU,OAAK;;;;;;;;;;;;cCvHL,+DAA4B;;;;;;;;;;;;;;;;;KAwF7B,yBAAyB,mBAC5B;;;;;;;;;;;;cCnDI,wBAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCjC,EAAA,KAAA;KAEU,mBAAmB,EAAE,aAAa;;;;cAKjC,wBAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEjC,EAAA,KAAA;KAEU,mBAAmB,EAAE,aAAa;;;;;;;cAQjC,+DAA4B;;;;;;;;;;;;;;;;;;;;;;;sBAA5B;WAAA;;;;;;;;;;;;;;;;;;;;;;;KA+FD,yBAAyB,mBAC5B;;;qBC5QI"}