@mcptoolshop/toolshopstudio 1.1.0-toolshop

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 (99) hide show
  1. package/.dockerignore +13 -0
  2. package/.github/workflows/ci.yml +53 -0
  3. package/CHANGELOG.md +44 -0
  4. package/Dockerfile +48 -0
  5. package/LICENSE +21 -0
  6. package/README.md +110 -0
  7. package/assets/logo.png +0 -0
  8. package/dist/build-flags.d.ts +15 -0
  9. package/dist/build-flags.js +95 -0
  10. package/dist/crud.d.ts +8 -0
  11. package/dist/crud.js +76 -0
  12. package/dist/engine.test.d.ts +1 -0
  13. package/dist/engine.test.js +150 -0
  14. package/dist/exec.d.ts +14 -0
  15. package/dist/exec.js +87 -0
  16. package/dist/full.test.d.ts +1 -0
  17. package/dist/full.test.js +118 -0
  18. package/dist/generate-thumbnail.d.ts +21 -0
  19. package/dist/generate-thumbnail.js +42 -0
  20. package/dist/index.d.ts +12 -0
  21. package/dist/index.js +12 -0
  22. package/dist/pandoc/build-args.d.ts +8 -0
  23. package/dist/pandoc/build-args.js +31 -0
  24. package/dist/pandoc/convert.d.ts +38 -0
  25. package/dist/pandoc/convert.js +172 -0
  26. package/dist/pandoc/crud.d.ts +10 -0
  27. package/dist/pandoc/crud.js +80 -0
  28. package/dist/pandoc/engine.test.d.ts +1 -0
  29. package/dist/pandoc/engine.test.js +161 -0
  30. package/dist/pandoc/exec.d.ts +9 -0
  31. package/dist/pandoc/exec.js +46 -0
  32. package/dist/pandoc/full.test.d.ts +1 -0
  33. package/dist/pandoc/full.test.js +146 -0
  34. package/dist/pandoc/index.d.ts +10 -0
  35. package/dist/pandoc/index.js +10 -0
  36. package/dist/pandoc/output-polish.d.ts +21 -0
  37. package/dist/pandoc/output-polish.js +43 -0
  38. package/dist/pandoc/pipeline.test.d.ts +1 -0
  39. package/dist/pandoc/pipeline.test.js +112 -0
  40. package/dist/pandoc/preflight.d.ts +39 -0
  41. package/dist/pandoc/preflight.js +153 -0
  42. package/dist/pandoc/preset-spec.d.ts +25 -0
  43. package/dist/pandoc/preset-spec.js +74 -0
  44. package/dist/pandoc/progress.d.ts +21 -0
  45. package/dist/pandoc/progress.js +59 -0
  46. package/dist/pandoc/schemas.d.ts +137 -0
  47. package/dist/pandoc/schemas.js +44 -0
  48. package/dist/pandoc/types.d.ts +30 -0
  49. package/dist/pandoc/types.js +1 -0
  50. package/dist/pipeline.test.d.ts +1 -0
  51. package/dist/pipeline.test.js +127 -0
  52. package/dist/preflight.d.ts +32 -0
  53. package/dist/preflight.js +121 -0
  54. package/dist/preset-spec.d.ts +17 -0
  55. package/dist/preset-spec.js +117 -0
  56. package/dist/progress-parser.d.ts +33 -0
  57. package/dist/progress-parser.js +75 -0
  58. package/dist/schemas.d.ts +851 -0
  59. package/dist/schemas.js +93 -0
  60. package/dist/thumbnail.d.ts +35 -0
  61. package/dist/thumbnail.js +92 -0
  62. package/dist/transcode.d.ts +31 -0
  63. package/dist/transcode.js +183 -0
  64. package/dist/types.d.ts +33 -0
  65. package/dist/types.js +1 -0
  66. package/package.json +28 -0
  67. package/scripts/release.mjs +62 -0
  68. package/smoke.mjs +222 -0
  69. package/src/__snapshots__/engine.test.ts.snap +148 -0
  70. package/src/build-flags.ts +124 -0
  71. package/src/crud.ts +89 -0
  72. package/src/engine.test.ts +174 -0
  73. package/src/exec.ts +105 -0
  74. package/src/full.test.ts +152 -0
  75. package/src/generate-thumbnail.ts +83 -0
  76. package/src/index.ts +12 -0
  77. package/src/pandoc/build-args.ts +40 -0
  78. package/src/pandoc/convert.ts +282 -0
  79. package/src/pandoc/crud.ts +95 -0
  80. package/src/pandoc/engine.test.ts +224 -0
  81. package/src/pandoc/exec.ts +55 -0
  82. package/src/pandoc/full.test.ts +211 -0
  83. package/src/pandoc/index.ts +10 -0
  84. package/src/pandoc/output-polish.ts +60 -0
  85. package/src/pandoc/pipeline.test.ts +170 -0
  86. package/src/pandoc/preflight.ts +209 -0
  87. package/src/pandoc/preset-spec.ts +97 -0
  88. package/src/pandoc/progress.ts +71 -0
  89. package/src/pandoc/schemas.ts +54 -0
  90. package/src/pandoc/types.ts +40 -0
  91. package/src/pipeline.test.ts +167 -0
  92. package/src/preflight.ts +181 -0
  93. package/src/preset-spec.ts +136 -0
  94. package/src/progress-parser.ts +90 -0
  95. package/src/schemas.ts +107 -0
  96. package/src/thumbnail.ts +134 -0
  97. package/src/transcode.ts +272 -0
  98. package/src/types.ts +43 -0
  99. package/tsconfig.json +15 -0
@@ -0,0 +1,851 @@
1
+ import { z } from "zod";
2
+ export declare const PresetEnum: z.ZodEnum<["yt-1080p-h264", "yt-1080p-h265", "yt-4k-h264", "yt-4k-h265", "yt-4k-hdr-h265", "yt-shorts-h264", "yt-shorts-h265"]>;
3
+ export type Preset = z.infer<typeof PresetEnum>;
4
+ export declare const ProbeStreamSchema: z.ZodObject<{
5
+ codec_name: z.ZodString;
6
+ codec_type: z.ZodEnum<["video", "audio", "subtitle", "data"]>;
7
+ width: z.ZodOptional<z.ZodNumber>;
8
+ height: z.ZodOptional<z.ZodNumber>;
9
+ pix_fmt: z.ZodOptional<z.ZodString>;
10
+ field_order: z.ZodOptional<z.ZodString>;
11
+ r_frame_rate: z.ZodOptional<z.ZodString>;
12
+ avg_frame_rate: z.ZodOptional<z.ZodString>;
13
+ duration: z.ZodOptional<z.ZodString>;
14
+ bit_rate: z.ZodOptional<z.ZodString>;
15
+ color_space: z.ZodOptional<z.ZodString>;
16
+ color_transfer: z.ZodOptional<z.ZodString>;
17
+ color_primaries: z.ZodOptional<z.ZodString>;
18
+ profile: z.ZodOptional<z.ZodString>;
19
+ level: z.ZodOptional<z.ZodNumber>;
20
+ channels: z.ZodOptional<z.ZodNumber>;
21
+ sample_rate: z.ZodOptional<z.ZodString>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ codec_name: string;
24
+ codec_type: "video" | "audio" | "subtitle" | "data";
25
+ width?: number | undefined;
26
+ height?: number | undefined;
27
+ pix_fmt?: string | undefined;
28
+ field_order?: string | undefined;
29
+ r_frame_rate?: string | undefined;
30
+ avg_frame_rate?: string | undefined;
31
+ duration?: string | undefined;
32
+ bit_rate?: string | undefined;
33
+ color_space?: string | undefined;
34
+ color_transfer?: string | undefined;
35
+ color_primaries?: string | undefined;
36
+ profile?: string | undefined;
37
+ level?: number | undefined;
38
+ channels?: number | undefined;
39
+ sample_rate?: string | undefined;
40
+ }, {
41
+ codec_name: string;
42
+ codec_type: "video" | "audio" | "subtitle" | "data";
43
+ width?: number | undefined;
44
+ height?: number | undefined;
45
+ pix_fmt?: string | undefined;
46
+ field_order?: string | undefined;
47
+ r_frame_rate?: string | undefined;
48
+ avg_frame_rate?: string | undefined;
49
+ duration?: string | undefined;
50
+ bit_rate?: string | undefined;
51
+ color_space?: string | undefined;
52
+ color_transfer?: string | undefined;
53
+ color_primaries?: string | undefined;
54
+ profile?: string | undefined;
55
+ level?: number | undefined;
56
+ channels?: number | undefined;
57
+ sample_rate?: string | undefined;
58
+ }>;
59
+ export type ProbeStream = z.infer<typeof ProbeStreamSchema>;
60
+ export declare const ProbeFormatSchema: z.ZodObject<{
61
+ filename: z.ZodString;
62
+ format_name: z.ZodString;
63
+ duration: z.ZodOptional<z.ZodString>;
64
+ size: z.ZodOptional<z.ZodString>;
65
+ bit_rate: z.ZodOptional<z.ZodString>;
66
+ }, "strip", z.ZodTypeAny, {
67
+ filename: string;
68
+ format_name: string;
69
+ duration?: string | undefined;
70
+ bit_rate?: string | undefined;
71
+ size?: string | undefined;
72
+ }, {
73
+ filename: string;
74
+ format_name: string;
75
+ duration?: string | undefined;
76
+ bit_rate?: string | undefined;
77
+ size?: string | undefined;
78
+ }>;
79
+ export type ProbeFormat = z.infer<typeof ProbeFormatSchema>;
80
+ export declare const ProbeResultSchema: z.ZodObject<{
81
+ streams: z.ZodArray<z.ZodObject<{
82
+ codec_name: z.ZodString;
83
+ codec_type: z.ZodEnum<["video", "audio", "subtitle", "data"]>;
84
+ width: z.ZodOptional<z.ZodNumber>;
85
+ height: z.ZodOptional<z.ZodNumber>;
86
+ pix_fmt: z.ZodOptional<z.ZodString>;
87
+ field_order: z.ZodOptional<z.ZodString>;
88
+ r_frame_rate: z.ZodOptional<z.ZodString>;
89
+ avg_frame_rate: z.ZodOptional<z.ZodString>;
90
+ duration: z.ZodOptional<z.ZodString>;
91
+ bit_rate: z.ZodOptional<z.ZodString>;
92
+ color_space: z.ZodOptional<z.ZodString>;
93
+ color_transfer: z.ZodOptional<z.ZodString>;
94
+ color_primaries: z.ZodOptional<z.ZodString>;
95
+ profile: z.ZodOptional<z.ZodString>;
96
+ level: z.ZodOptional<z.ZodNumber>;
97
+ channels: z.ZodOptional<z.ZodNumber>;
98
+ sample_rate: z.ZodOptional<z.ZodString>;
99
+ }, "strip", z.ZodTypeAny, {
100
+ codec_name: string;
101
+ codec_type: "video" | "audio" | "subtitle" | "data";
102
+ width?: number | undefined;
103
+ height?: number | undefined;
104
+ pix_fmt?: string | undefined;
105
+ field_order?: string | undefined;
106
+ r_frame_rate?: string | undefined;
107
+ avg_frame_rate?: string | undefined;
108
+ duration?: string | undefined;
109
+ bit_rate?: string | undefined;
110
+ color_space?: string | undefined;
111
+ color_transfer?: string | undefined;
112
+ color_primaries?: string | undefined;
113
+ profile?: string | undefined;
114
+ level?: number | undefined;
115
+ channels?: number | undefined;
116
+ sample_rate?: string | undefined;
117
+ }, {
118
+ codec_name: string;
119
+ codec_type: "video" | "audio" | "subtitle" | "data";
120
+ width?: number | undefined;
121
+ height?: number | undefined;
122
+ pix_fmt?: string | undefined;
123
+ field_order?: string | undefined;
124
+ r_frame_rate?: string | undefined;
125
+ avg_frame_rate?: string | undefined;
126
+ duration?: string | undefined;
127
+ bit_rate?: string | undefined;
128
+ color_space?: string | undefined;
129
+ color_transfer?: string | undefined;
130
+ color_primaries?: string | undefined;
131
+ profile?: string | undefined;
132
+ level?: number | undefined;
133
+ channels?: number | undefined;
134
+ sample_rate?: string | undefined;
135
+ }>, "many">;
136
+ format: z.ZodObject<{
137
+ filename: z.ZodString;
138
+ format_name: z.ZodString;
139
+ duration: z.ZodOptional<z.ZodString>;
140
+ size: z.ZodOptional<z.ZodString>;
141
+ bit_rate: z.ZodOptional<z.ZodString>;
142
+ }, "strip", z.ZodTypeAny, {
143
+ filename: string;
144
+ format_name: string;
145
+ duration?: string | undefined;
146
+ bit_rate?: string | undefined;
147
+ size?: string | undefined;
148
+ }, {
149
+ filename: string;
150
+ format_name: string;
151
+ duration?: string | undefined;
152
+ bit_rate?: string | undefined;
153
+ size?: string | undefined;
154
+ }>;
155
+ }, "strip", z.ZodTypeAny, {
156
+ streams: {
157
+ codec_name: string;
158
+ codec_type: "video" | "audio" | "subtitle" | "data";
159
+ width?: number | undefined;
160
+ height?: number | undefined;
161
+ pix_fmt?: string | undefined;
162
+ field_order?: string | undefined;
163
+ r_frame_rate?: string | undefined;
164
+ avg_frame_rate?: string | undefined;
165
+ duration?: string | undefined;
166
+ bit_rate?: string | undefined;
167
+ color_space?: string | undefined;
168
+ color_transfer?: string | undefined;
169
+ color_primaries?: string | undefined;
170
+ profile?: string | undefined;
171
+ level?: number | undefined;
172
+ channels?: number | undefined;
173
+ sample_rate?: string | undefined;
174
+ }[];
175
+ format: {
176
+ filename: string;
177
+ format_name: string;
178
+ duration?: string | undefined;
179
+ bit_rate?: string | undefined;
180
+ size?: string | undefined;
181
+ };
182
+ }, {
183
+ streams: {
184
+ codec_name: string;
185
+ codec_type: "video" | "audio" | "subtitle" | "data";
186
+ width?: number | undefined;
187
+ height?: number | undefined;
188
+ pix_fmt?: string | undefined;
189
+ field_order?: string | undefined;
190
+ r_frame_rate?: string | undefined;
191
+ avg_frame_rate?: string | undefined;
192
+ duration?: string | undefined;
193
+ bit_rate?: string | undefined;
194
+ color_space?: string | undefined;
195
+ color_transfer?: string | undefined;
196
+ color_primaries?: string | undefined;
197
+ profile?: string | undefined;
198
+ level?: number | undefined;
199
+ channels?: number | undefined;
200
+ sample_rate?: string | undefined;
201
+ }[];
202
+ format: {
203
+ filename: string;
204
+ format_name: string;
205
+ duration?: string | undefined;
206
+ bit_rate?: string | undefined;
207
+ size?: string | undefined;
208
+ };
209
+ }>;
210
+ export type ProbeResult = z.infer<typeof ProbeResultSchema>;
211
+ export declare const YouTubeMediaAssetSchema: z.ZodObject<{
212
+ id: z.ZodString;
213
+ paths: z.ZodObject<{
214
+ input: z.ZodString;
215
+ output: z.ZodString;
216
+ }, "strip", z.ZodTypeAny, {
217
+ input: string;
218
+ output: string;
219
+ }, {
220
+ input: string;
221
+ output: string;
222
+ }>;
223
+ probes: z.ZodObject<{
224
+ input: z.ZodOptional<z.ZodObject<{
225
+ streams: z.ZodArray<z.ZodObject<{
226
+ codec_name: z.ZodString;
227
+ codec_type: z.ZodEnum<["video", "audio", "subtitle", "data"]>;
228
+ width: z.ZodOptional<z.ZodNumber>;
229
+ height: z.ZodOptional<z.ZodNumber>;
230
+ pix_fmt: z.ZodOptional<z.ZodString>;
231
+ field_order: z.ZodOptional<z.ZodString>;
232
+ r_frame_rate: z.ZodOptional<z.ZodString>;
233
+ avg_frame_rate: z.ZodOptional<z.ZodString>;
234
+ duration: z.ZodOptional<z.ZodString>;
235
+ bit_rate: z.ZodOptional<z.ZodString>;
236
+ color_space: z.ZodOptional<z.ZodString>;
237
+ color_transfer: z.ZodOptional<z.ZodString>;
238
+ color_primaries: z.ZodOptional<z.ZodString>;
239
+ profile: z.ZodOptional<z.ZodString>;
240
+ level: z.ZodOptional<z.ZodNumber>;
241
+ channels: z.ZodOptional<z.ZodNumber>;
242
+ sample_rate: z.ZodOptional<z.ZodString>;
243
+ }, "strip", z.ZodTypeAny, {
244
+ codec_name: string;
245
+ codec_type: "video" | "audio" | "subtitle" | "data";
246
+ width?: number | undefined;
247
+ height?: number | undefined;
248
+ pix_fmt?: string | undefined;
249
+ field_order?: string | undefined;
250
+ r_frame_rate?: string | undefined;
251
+ avg_frame_rate?: string | undefined;
252
+ duration?: string | undefined;
253
+ bit_rate?: string | undefined;
254
+ color_space?: string | undefined;
255
+ color_transfer?: string | undefined;
256
+ color_primaries?: string | undefined;
257
+ profile?: string | undefined;
258
+ level?: number | undefined;
259
+ channels?: number | undefined;
260
+ sample_rate?: string | undefined;
261
+ }, {
262
+ codec_name: string;
263
+ codec_type: "video" | "audio" | "subtitle" | "data";
264
+ width?: number | undefined;
265
+ height?: number | undefined;
266
+ pix_fmt?: string | undefined;
267
+ field_order?: string | undefined;
268
+ r_frame_rate?: string | undefined;
269
+ avg_frame_rate?: string | undefined;
270
+ duration?: string | undefined;
271
+ bit_rate?: string | undefined;
272
+ color_space?: string | undefined;
273
+ color_transfer?: string | undefined;
274
+ color_primaries?: string | undefined;
275
+ profile?: string | undefined;
276
+ level?: number | undefined;
277
+ channels?: number | undefined;
278
+ sample_rate?: string | undefined;
279
+ }>, "many">;
280
+ format: z.ZodObject<{
281
+ filename: z.ZodString;
282
+ format_name: z.ZodString;
283
+ duration: z.ZodOptional<z.ZodString>;
284
+ size: z.ZodOptional<z.ZodString>;
285
+ bit_rate: z.ZodOptional<z.ZodString>;
286
+ }, "strip", z.ZodTypeAny, {
287
+ filename: string;
288
+ format_name: string;
289
+ duration?: string | undefined;
290
+ bit_rate?: string | undefined;
291
+ size?: string | undefined;
292
+ }, {
293
+ filename: string;
294
+ format_name: string;
295
+ duration?: string | undefined;
296
+ bit_rate?: string | undefined;
297
+ size?: string | undefined;
298
+ }>;
299
+ }, "strip", z.ZodTypeAny, {
300
+ streams: {
301
+ codec_name: string;
302
+ codec_type: "video" | "audio" | "subtitle" | "data";
303
+ width?: number | undefined;
304
+ height?: number | undefined;
305
+ pix_fmt?: string | undefined;
306
+ field_order?: string | undefined;
307
+ r_frame_rate?: string | undefined;
308
+ avg_frame_rate?: string | undefined;
309
+ duration?: string | undefined;
310
+ bit_rate?: string | undefined;
311
+ color_space?: string | undefined;
312
+ color_transfer?: string | undefined;
313
+ color_primaries?: string | undefined;
314
+ profile?: string | undefined;
315
+ level?: number | undefined;
316
+ channels?: number | undefined;
317
+ sample_rate?: string | undefined;
318
+ }[];
319
+ format: {
320
+ filename: string;
321
+ format_name: string;
322
+ duration?: string | undefined;
323
+ bit_rate?: string | undefined;
324
+ size?: string | undefined;
325
+ };
326
+ }, {
327
+ streams: {
328
+ codec_name: string;
329
+ codec_type: "video" | "audio" | "subtitle" | "data";
330
+ width?: number | undefined;
331
+ height?: number | undefined;
332
+ pix_fmt?: string | undefined;
333
+ field_order?: string | undefined;
334
+ r_frame_rate?: string | undefined;
335
+ avg_frame_rate?: string | undefined;
336
+ duration?: string | undefined;
337
+ bit_rate?: string | undefined;
338
+ color_space?: string | undefined;
339
+ color_transfer?: string | undefined;
340
+ color_primaries?: string | undefined;
341
+ profile?: string | undefined;
342
+ level?: number | undefined;
343
+ channels?: number | undefined;
344
+ sample_rate?: string | undefined;
345
+ }[];
346
+ format: {
347
+ filename: string;
348
+ format_name: string;
349
+ duration?: string | undefined;
350
+ bit_rate?: string | undefined;
351
+ size?: string | undefined;
352
+ };
353
+ }>>;
354
+ output: z.ZodOptional<z.ZodObject<{
355
+ streams: z.ZodArray<z.ZodObject<{
356
+ codec_name: z.ZodString;
357
+ codec_type: z.ZodEnum<["video", "audio", "subtitle", "data"]>;
358
+ width: z.ZodOptional<z.ZodNumber>;
359
+ height: z.ZodOptional<z.ZodNumber>;
360
+ pix_fmt: z.ZodOptional<z.ZodString>;
361
+ field_order: z.ZodOptional<z.ZodString>;
362
+ r_frame_rate: z.ZodOptional<z.ZodString>;
363
+ avg_frame_rate: z.ZodOptional<z.ZodString>;
364
+ duration: z.ZodOptional<z.ZodString>;
365
+ bit_rate: z.ZodOptional<z.ZodString>;
366
+ color_space: z.ZodOptional<z.ZodString>;
367
+ color_transfer: z.ZodOptional<z.ZodString>;
368
+ color_primaries: z.ZodOptional<z.ZodString>;
369
+ profile: z.ZodOptional<z.ZodString>;
370
+ level: z.ZodOptional<z.ZodNumber>;
371
+ channels: z.ZodOptional<z.ZodNumber>;
372
+ sample_rate: z.ZodOptional<z.ZodString>;
373
+ }, "strip", z.ZodTypeAny, {
374
+ codec_name: string;
375
+ codec_type: "video" | "audio" | "subtitle" | "data";
376
+ width?: number | undefined;
377
+ height?: number | undefined;
378
+ pix_fmt?: string | undefined;
379
+ field_order?: string | undefined;
380
+ r_frame_rate?: string | undefined;
381
+ avg_frame_rate?: string | undefined;
382
+ duration?: string | undefined;
383
+ bit_rate?: string | undefined;
384
+ color_space?: string | undefined;
385
+ color_transfer?: string | undefined;
386
+ color_primaries?: string | undefined;
387
+ profile?: string | undefined;
388
+ level?: number | undefined;
389
+ channels?: number | undefined;
390
+ sample_rate?: string | undefined;
391
+ }, {
392
+ codec_name: string;
393
+ codec_type: "video" | "audio" | "subtitle" | "data";
394
+ width?: number | undefined;
395
+ height?: number | undefined;
396
+ pix_fmt?: string | undefined;
397
+ field_order?: string | undefined;
398
+ r_frame_rate?: string | undefined;
399
+ avg_frame_rate?: string | undefined;
400
+ duration?: string | undefined;
401
+ bit_rate?: string | undefined;
402
+ color_space?: string | undefined;
403
+ color_transfer?: string | undefined;
404
+ color_primaries?: string | undefined;
405
+ profile?: string | undefined;
406
+ level?: number | undefined;
407
+ channels?: number | undefined;
408
+ sample_rate?: string | undefined;
409
+ }>, "many">;
410
+ format: z.ZodObject<{
411
+ filename: z.ZodString;
412
+ format_name: z.ZodString;
413
+ duration: z.ZodOptional<z.ZodString>;
414
+ size: z.ZodOptional<z.ZodString>;
415
+ bit_rate: z.ZodOptional<z.ZodString>;
416
+ }, "strip", z.ZodTypeAny, {
417
+ filename: string;
418
+ format_name: string;
419
+ duration?: string | undefined;
420
+ bit_rate?: string | undefined;
421
+ size?: string | undefined;
422
+ }, {
423
+ filename: string;
424
+ format_name: string;
425
+ duration?: string | undefined;
426
+ bit_rate?: string | undefined;
427
+ size?: string | undefined;
428
+ }>;
429
+ }, "strip", z.ZodTypeAny, {
430
+ streams: {
431
+ codec_name: string;
432
+ codec_type: "video" | "audio" | "subtitle" | "data";
433
+ width?: number | undefined;
434
+ height?: number | undefined;
435
+ pix_fmt?: string | undefined;
436
+ field_order?: string | undefined;
437
+ r_frame_rate?: string | undefined;
438
+ avg_frame_rate?: string | undefined;
439
+ duration?: string | undefined;
440
+ bit_rate?: string | undefined;
441
+ color_space?: string | undefined;
442
+ color_transfer?: string | undefined;
443
+ color_primaries?: string | undefined;
444
+ profile?: string | undefined;
445
+ level?: number | undefined;
446
+ channels?: number | undefined;
447
+ sample_rate?: string | undefined;
448
+ }[];
449
+ format: {
450
+ filename: string;
451
+ format_name: string;
452
+ duration?: string | undefined;
453
+ bit_rate?: string | undefined;
454
+ size?: string | undefined;
455
+ };
456
+ }, {
457
+ streams: {
458
+ codec_name: string;
459
+ codec_type: "video" | "audio" | "subtitle" | "data";
460
+ width?: number | undefined;
461
+ height?: number | undefined;
462
+ pix_fmt?: string | undefined;
463
+ field_order?: string | undefined;
464
+ r_frame_rate?: string | undefined;
465
+ avg_frame_rate?: string | undefined;
466
+ duration?: string | undefined;
467
+ bit_rate?: string | undefined;
468
+ color_space?: string | undefined;
469
+ color_transfer?: string | undefined;
470
+ color_primaries?: string | undefined;
471
+ profile?: string | undefined;
472
+ level?: number | undefined;
473
+ channels?: number | undefined;
474
+ sample_rate?: string | undefined;
475
+ }[];
476
+ format: {
477
+ filename: string;
478
+ format_name: string;
479
+ duration?: string | undefined;
480
+ bit_rate?: string | undefined;
481
+ size?: string | undefined;
482
+ };
483
+ }>>;
484
+ }, "strip", z.ZodTypeAny, {
485
+ input?: {
486
+ streams: {
487
+ codec_name: string;
488
+ codec_type: "video" | "audio" | "subtitle" | "data";
489
+ width?: number | undefined;
490
+ height?: number | undefined;
491
+ pix_fmt?: string | undefined;
492
+ field_order?: string | undefined;
493
+ r_frame_rate?: string | undefined;
494
+ avg_frame_rate?: string | undefined;
495
+ duration?: string | undefined;
496
+ bit_rate?: string | undefined;
497
+ color_space?: string | undefined;
498
+ color_transfer?: string | undefined;
499
+ color_primaries?: string | undefined;
500
+ profile?: string | undefined;
501
+ level?: number | undefined;
502
+ channels?: number | undefined;
503
+ sample_rate?: string | undefined;
504
+ }[];
505
+ format: {
506
+ filename: string;
507
+ format_name: string;
508
+ duration?: string | undefined;
509
+ bit_rate?: string | undefined;
510
+ size?: string | undefined;
511
+ };
512
+ } | undefined;
513
+ output?: {
514
+ streams: {
515
+ codec_name: string;
516
+ codec_type: "video" | "audio" | "subtitle" | "data";
517
+ width?: number | undefined;
518
+ height?: number | undefined;
519
+ pix_fmt?: string | undefined;
520
+ field_order?: string | undefined;
521
+ r_frame_rate?: string | undefined;
522
+ avg_frame_rate?: string | undefined;
523
+ duration?: string | undefined;
524
+ bit_rate?: string | undefined;
525
+ color_space?: string | undefined;
526
+ color_transfer?: string | undefined;
527
+ color_primaries?: string | undefined;
528
+ profile?: string | undefined;
529
+ level?: number | undefined;
530
+ channels?: number | undefined;
531
+ sample_rate?: string | undefined;
532
+ }[];
533
+ format: {
534
+ filename: string;
535
+ format_name: string;
536
+ duration?: string | undefined;
537
+ bit_rate?: string | undefined;
538
+ size?: string | undefined;
539
+ };
540
+ } | undefined;
541
+ }, {
542
+ input?: {
543
+ streams: {
544
+ codec_name: string;
545
+ codec_type: "video" | "audio" | "subtitle" | "data";
546
+ width?: number | undefined;
547
+ height?: number | undefined;
548
+ pix_fmt?: string | undefined;
549
+ field_order?: string | undefined;
550
+ r_frame_rate?: string | undefined;
551
+ avg_frame_rate?: string | undefined;
552
+ duration?: string | undefined;
553
+ bit_rate?: string | undefined;
554
+ color_space?: string | undefined;
555
+ color_transfer?: string | undefined;
556
+ color_primaries?: string | undefined;
557
+ profile?: string | undefined;
558
+ level?: number | undefined;
559
+ channels?: number | undefined;
560
+ sample_rate?: string | undefined;
561
+ }[];
562
+ format: {
563
+ filename: string;
564
+ format_name: string;
565
+ duration?: string | undefined;
566
+ bit_rate?: string | undefined;
567
+ size?: string | undefined;
568
+ };
569
+ } | undefined;
570
+ output?: {
571
+ streams: {
572
+ codec_name: string;
573
+ codec_type: "video" | "audio" | "subtitle" | "data";
574
+ width?: number | undefined;
575
+ height?: number | undefined;
576
+ pix_fmt?: string | undefined;
577
+ field_order?: string | undefined;
578
+ r_frame_rate?: string | undefined;
579
+ avg_frame_rate?: string | undefined;
580
+ duration?: string | undefined;
581
+ bit_rate?: string | undefined;
582
+ color_space?: string | undefined;
583
+ color_transfer?: string | undefined;
584
+ color_primaries?: string | undefined;
585
+ profile?: string | undefined;
586
+ level?: number | undefined;
587
+ channels?: number | undefined;
588
+ sample_rate?: string | undefined;
589
+ }[];
590
+ format: {
591
+ filename: string;
592
+ format_name: string;
593
+ duration?: string | undefined;
594
+ bit_rate?: string | undefined;
595
+ size?: string | undefined;
596
+ };
597
+ } | undefined;
598
+ }>;
599
+ warnings: z.ZodArray<z.ZodString, "many">;
600
+ expiresAt: z.ZodOptional<z.ZodString>;
601
+ thumbnailPaths: z.ZodObject<{
602
+ landscape: z.ZodOptional<z.ZodString>;
603
+ portrait: z.ZodOptional<z.ZodString>;
604
+ }, "strip", z.ZodTypeAny, {
605
+ landscape?: string | undefined;
606
+ portrait?: string | undefined;
607
+ }, {
608
+ landscape?: string | undefined;
609
+ portrait?: string | undefined;
610
+ }>;
611
+ }, "strip", z.ZodTypeAny, {
612
+ id: string;
613
+ paths: {
614
+ input: string;
615
+ output: string;
616
+ };
617
+ probes: {
618
+ input?: {
619
+ streams: {
620
+ codec_name: string;
621
+ codec_type: "video" | "audio" | "subtitle" | "data";
622
+ width?: number | undefined;
623
+ height?: number | undefined;
624
+ pix_fmt?: string | undefined;
625
+ field_order?: string | undefined;
626
+ r_frame_rate?: string | undefined;
627
+ avg_frame_rate?: string | undefined;
628
+ duration?: string | undefined;
629
+ bit_rate?: string | undefined;
630
+ color_space?: string | undefined;
631
+ color_transfer?: string | undefined;
632
+ color_primaries?: string | undefined;
633
+ profile?: string | undefined;
634
+ level?: number | undefined;
635
+ channels?: number | undefined;
636
+ sample_rate?: string | undefined;
637
+ }[];
638
+ format: {
639
+ filename: string;
640
+ format_name: string;
641
+ duration?: string | undefined;
642
+ bit_rate?: string | undefined;
643
+ size?: string | undefined;
644
+ };
645
+ } | undefined;
646
+ output?: {
647
+ streams: {
648
+ codec_name: string;
649
+ codec_type: "video" | "audio" | "subtitle" | "data";
650
+ width?: number | undefined;
651
+ height?: number | undefined;
652
+ pix_fmt?: string | undefined;
653
+ field_order?: string | undefined;
654
+ r_frame_rate?: string | undefined;
655
+ avg_frame_rate?: string | undefined;
656
+ duration?: string | undefined;
657
+ bit_rate?: string | undefined;
658
+ color_space?: string | undefined;
659
+ color_transfer?: string | undefined;
660
+ color_primaries?: string | undefined;
661
+ profile?: string | undefined;
662
+ level?: number | undefined;
663
+ channels?: number | undefined;
664
+ sample_rate?: string | undefined;
665
+ }[];
666
+ format: {
667
+ filename: string;
668
+ format_name: string;
669
+ duration?: string | undefined;
670
+ bit_rate?: string | undefined;
671
+ size?: string | undefined;
672
+ };
673
+ } | undefined;
674
+ };
675
+ warnings: string[];
676
+ thumbnailPaths: {
677
+ landscape?: string | undefined;
678
+ portrait?: string | undefined;
679
+ };
680
+ expiresAt?: string | undefined;
681
+ }, {
682
+ id: string;
683
+ paths: {
684
+ input: string;
685
+ output: string;
686
+ };
687
+ probes: {
688
+ input?: {
689
+ streams: {
690
+ codec_name: string;
691
+ codec_type: "video" | "audio" | "subtitle" | "data";
692
+ width?: number | undefined;
693
+ height?: number | undefined;
694
+ pix_fmt?: string | undefined;
695
+ field_order?: string | undefined;
696
+ r_frame_rate?: string | undefined;
697
+ avg_frame_rate?: string | undefined;
698
+ duration?: string | undefined;
699
+ bit_rate?: string | undefined;
700
+ color_space?: string | undefined;
701
+ color_transfer?: string | undefined;
702
+ color_primaries?: string | undefined;
703
+ profile?: string | undefined;
704
+ level?: number | undefined;
705
+ channels?: number | undefined;
706
+ sample_rate?: string | undefined;
707
+ }[];
708
+ format: {
709
+ filename: string;
710
+ format_name: string;
711
+ duration?: string | undefined;
712
+ bit_rate?: string | undefined;
713
+ size?: string | undefined;
714
+ };
715
+ } | undefined;
716
+ output?: {
717
+ streams: {
718
+ codec_name: string;
719
+ codec_type: "video" | "audio" | "subtitle" | "data";
720
+ width?: number | undefined;
721
+ height?: number | undefined;
722
+ pix_fmt?: string | undefined;
723
+ field_order?: string | undefined;
724
+ r_frame_rate?: string | undefined;
725
+ avg_frame_rate?: string | undefined;
726
+ duration?: string | undefined;
727
+ bit_rate?: string | undefined;
728
+ color_space?: string | undefined;
729
+ color_transfer?: string | undefined;
730
+ color_primaries?: string | undefined;
731
+ profile?: string | undefined;
732
+ level?: number | undefined;
733
+ channels?: number | undefined;
734
+ sample_rate?: string | undefined;
735
+ }[];
736
+ format: {
737
+ filename: string;
738
+ format_name: string;
739
+ duration?: string | undefined;
740
+ bit_rate?: string | undefined;
741
+ size?: string | undefined;
742
+ };
743
+ } | undefined;
744
+ };
745
+ warnings: string[];
746
+ thumbnailPaths: {
747
+ landscape?: string | undefined;
748
+ portrait?: string | undefined;
749
+ };
750
+ expiresAt?: string | undefined;
751
+ }>;
752
+ export type YouTubeMediaAsset = z.infer<typeof YouTubeMediaAssetSchema>;
753
+ export declare const TranscodeForYouTubeSchema: z.ZodObject<{
754
+ inputPath: z.ZodString;
755
+ outputPath: z.ZodString;
756
+ preset: z.ZodEnum<["yt-1080p-h264", "yt-1080p-h265", "yt-4k-h264", "yt-4k-h265", "yt-4k-hdr-h265", "yt-shorts-h264", "yt-shorts-h265"]>;
757
+ customBitrate: z.ZodOptional<z.ZodObject<{
758
+ videoMbps: z.ZodOptional<z.ZodNumber>;
759
+ audioBitrate: z.ZodOptional<z.ZodString>;
760
+ }, "strip", z.ZodTypeAny, {
761
+ videoMbps?: number | undefined;
762
+ audioBitrate?: string | undefined;
763
+ }, {
764
+ videoMbps?: number | undefined;
765
+ audioBitrate?: string | undefined;
766
+ }>>;
767
+ allowFallback: z.ZodDefault<z.ZodBoolean>;
768
+ maxOutputBytes: z.ZodOptional<z.ZodNumber>;
769
+ orientationHint: z.ZodOptional<z.ZodEnum<["landscape", "portrait", "square"]>>;
770
+ timeoutSeconds: z.ZodDefault<z.ZodNumber>;
771
+ }, "strip", z.ZodTypeAny, {
772
+ inputPath: string;
773
+ outputPath: string;
774
+ preset: "yt-1080p-h264" | "yt-1080p-h265" | "yt-4k-h264" | "yt-4k-h265" | "yt-4k-hdr-h265" | "yt-shorts-h264" | "yt-shorts-h265";
775
+ allowFallback: boolean;
776
+ timeoutSeconds: number;
777
+ customBitrate?: {
778
+ videoMbps?: number | undefined;
779
+ audioBitrate?: string | undefined;
780
+ } | undefined;
781
+ maxOutputBytes?: number | undefined;
782
+ orientationHint?: "landscape" | "portrait" | "square" | undefined;
783
+ }, {
784
+ inputPath: string;
785
+ outputPath: string;
786
+ preset: "yt-1080p-h264" | "yt-1080p-h265" | "yt-4k-h264" | "yt-4k-h265" | "yt-4k-hdr-h265" | "yt-shorts-h264" | "yt-shorts-h265";
787
+ customBitrate?: {
788
+ videoMbps?: number | undefined;
789
+ audioBitrate?: string | undefined;
790
+ } | undefined;
791
+ allowFallback?: boolean | undefined;
792
+ maxOutputBytes?: number | undefined;
793
+ orientationHint?: "landscape" | "portrait" | "square" | undefined;
794
+ timeoutSeconds?: number | undefined;
795
+ }>;
796
+ export type TranscodeForYouTube = z.infer<typeof TranscodeForYouTubeSchema>;
797
+ export declare const GenerateYouTubeThumbnailSchema: z.ZodObject<{
798
+ videoPath: z.ZodString;
799
+ output: z.ZodObject<{
800
+ landscape: z.ZodString;
801
+ portrait: z.ZodString;
802
+ }, "strip", z.ZodTypeAny, {
803
+ landscape: string;
804
+ portrait: string;
805
+ }, {
806
+ landscape: string;
807
+ portrait: string;
808
+ }>;
809
+ timestamp: z.ZodDefault<z.ZodString>;
810
+ overlayText: z.ZodOptional<z.ZodString>;
811
+ style: z.ZodDefault<z.ZodObject<{
812
+ brightness: z.ZodDefault<z.ZodNumber>;
813
+ contrast: z.ZodDefault<z.ZodNumber>;
814
+ saturation: z.ZodDefault<z.ZodNumber>;
815
+ }, "strip", z.ZodTypeAny, {
816
+ brightness: number;
817
+ contrast: number;
818
+ saturation: number;
819
+ }, {
820
+ brightness?: number | undefined;
821
+ contrast?: number | undefined;
822
+ saturation?: number | undefined;
823
+ }>>;
824
+ }, "strip", z.ZodTypeAny, {
825
+ output: {
826
+ landscape: string;
827
+ portrait: string;
828
+ };
829
+ videoPath: string;
830
+ timestamp: string;
831
+ style: {
832
+ brightness: number;
833
+ contrast: number;
834
+ saturation: number;
835
+ };
836
+ overlayText?: string | undefined;
837
+ }, {
838
+ output: {
839
+ landscape: string;
840
+ portrait: string;
841
+ };
842
+ videoPath: string;
843
+ timestamp?: string | undefined;
844
+ overlayText?: string | undefined;
845
+ style?: {
846
+ brightness?: number | undefined;
847
+ contrast?: number | undefined;
848
+ saturation?: number | undefined;
849
+ } | undefined;
850
+ }>;
851
+ export type GenerateYouTubeThumbnail = z.infer<typeof GenerateYouTubeThumbnailSchema>;