@picsart/ai-sdk 4.1.1 → 5.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.
Files changed (4) hide show
  1. package/README.md +1 -1
  2. package/index.d.ts +0 -24
  3. package/index.js +44 -118
  4. package/package.json +1 -1
package/README.md CHANGED
@@ -277,4 +277,4 @@ When the vendor API uses different field names or value formats:
277
277
  ```
278
278
  4. Import the `.payloads.ts` file in `src/vendors/catalog/index.ts` (after the vendor import)
279
279
 
280
- See `src/vendors/catalog/imagen.ts` + `src/vendors/catalog/imagen.payloads.ts` for a working example.
280
+ See `src/vendors/catalog/luma.ts` + `src/vendors/catalog/luma.payloads.ts` for a working example.
package/index.d.ts CHANGED
@@ -446,27 +446,6 @@ type ModelInputById = {
446
446
  renderingSpeed?: "TURBO" | "DEFAULT" | "QUALITY";
447
447
  enableCopyrightDetection?: boolean;
448
448
  };
449
- "imagen-4.0": {
450
- prompt: string;
451
- aspectRatio?: "1:1" | "16:9" | "9:16" | "3:4" | "4:3";
452
- count?: 1 | 2 | 4;
453
- enhancePrompt?: boolean;
454
- negativePrompt?: string;
455
- };
456
- "imagen-4.0-fast": {
457
- prompt: string;
458
- aspectRatio?: "1:1" | "16:9" | "9:16" | "3:4" | "4:3";
459
- count?: 1 | 2 | 4;
460
- enhancePrompt?: boolean;
461
- negativePrompt?: string;
462
- };
463
- "imagen-4.0-ultra": {
464
- prompt: string;
465
- aspectRatio?: "1:1" | "16:9" | "9:16" | "3:4" | "4:3";
466
- count?: 1 | 2 | 4;
467
- enhancePrompt?: boolean;
468
- negativePrompt?: string;
469
- };
470
449
  "kling-3.0-image": {
471
450
  prompt: string;
472
451
  aspectRatio?: "16:9" | "9:16" | "1:1" | "21:9" | "4:3" | "3:2" | "2:3" | "3:4";
@@ -2415,9 +2394,6 @@ declare const Models: {
2415
2394
  readonly IdeogramPImage: "ideogram-p-image";
2416
2395
  readonly IdeogramV3: "ideogram-v3";
2417
2396
  readonly IdeogramV4: "ideogram-v4";
2418
- readonly Imagen40: "imagen-4.0";
2419
- readonly Imagen40Fast: "imagen-4.0-fast";
2420
- readonly Imagen40Ultra: "imagen-4.0-ultra";
2421
2397
  readonly Kling30Image: "kling-3.0-image";
2422
2398
  readonly KlingAvatar: "kling-avatar";
2423
2399
  readonly KlingElements: "kling-elements";
package/index.js CHANGED
@@ -1146,7 +1146,7 @@ var passthroughPayload = (paramConfig) => (ctx) => {
1146
1146
  return payload;
1147
1147
  };
1148
1148
  function defineModels(provider, configs) {
1149
- const MODELS38 = [];
1149
+ const MODELS37 = [];
1150
1150
  for (const c of configs) {
1151
1151
  const prov = c.provider ?? provider;
1152
1152
  const resolvedPayload = c.buildPayload ?? passthroughPayload(c.paramConfig);
@@ -1181,19 +1181,19 @@ function defineModels(provider, configs) {
1181
1181
  if (c.constraints !== void 0) model.constraints = c.constraints;
1182
1182
  const contract = createModelContract(model);
1183
1183
  model.outputSchema = c.outputSchema ?? contract.output;
1184
- MODELS38.push(model);
1184
+ MODELS37.push(model);
1185
1185
  }
1186
- return { MODELS: MODELS38 };
1186
+ return { MODELS: MODELS37 };
1187
1187
  }
1188
- function registerPayloads(MODELS38, payloads) {
1188
+ function registerPayloads(MODELS37, payloads) {
1189
1189
  for (const [id, builder] of Object.entries(payloads)) {
1190
- const model = MODELS38.find((m) => m.id === id);
1190
+ const model = MODELS37.find((m) => m.id === id);
1191
1191
  if (model) model.buildPayload = builder;
1192
1192
  }
1193
1193
  }
1194
- function registerEditPayloads(MODELS38, payloads) {
1194
+ function registerEditPayloads(MODELS37, payloads) {
1195
1195
  for (const [id, builder] of Object.entries(payloads)) {
1196
- const model = MODELS38.find((m) => m.id === id);
1196
+ const model = MODELS37.find((m) => m.id === id);
1197
1197
  if (model) model.buildEditPayload = builder;
1198
1198
  }
1199
1199
  }
@@ -6106,20 +6106,21 @@ var { MODELS: MODELS23 } = defineModels("openai", [
6106
6106
  ]);
6107
6107
 
6108
6108
  // src/vendors/catalog/elevenlabs.ts
6109
- var buildElevenLabsTTSPayload = (ctx) => ({
6109
+ var buildElevenLabsTTSPayload = (modelId) => (ctx) => ({
6110
6110
  text: ctx.prompt,
6111
6111
  voice_id: ctx.voiceId ?? DEFAULT_VOICE_ID,
6112
- model_id: ctx.modelId,
6112
+ model_id: modelId,
6113
6113
  ...ctx.language ? { language_code: ctx.language } : {}
6114
6114
  });
6115
- var buildElevenLabsSFXPayload = (ctx) => ({
6115
+ var buildElevenLabsSFXPayload = (modelId) => (ctx) => ({
6116
6116
  text: ctx.prompt,
6117
- duration_seconds: ctx.duration ?? 5
6117
+ duration_seconds: ctx.duration ?? 5,
6118
+ model_id: modelId
6118
6119
  });
6119
- var buildElevenLabsSTSPayload = (ctx) => ({
6120
+ var buildElevenLabsSTSPayload = (modelId) => (ctx) => ({
6120
6121
  audio_url: ctx.audioUrl,
6121
6122
  voice_id: ctx.voiceId ?? DEFAULT_VOICE_ID,
6122
- model_id: ctx.modelId,
6123
+ model_id: modelId,
6123
6124
  remove_background_noise: ctx.removeBackgroundNoise ?? false
6124
6125
  });
6125
6126
  var buildElevenLabsAudioIsolationPayload = (ctx) => ({
@@ -6134,10 +6135,14 @@ var buildElevenLabsVoiceRemixPayload = (ctx) => ({
6134
6135
  voice_id: ctx.voiceId ?? DEFAULT_VOICE_ID,
6135
6136
  voice_description: ctx.prompt
6136
6137
  });
6137
- var buildElevenLabsVoiceDesignPayload = (ctx) => ({
6138
+ var buildElevenLabsVoiceDesignPayload = (modelId) => (ctx) => ({
6138
6139
  voice_description: ctx.prompt,
6139
6140
  auto_generate_text: true,
6140
- ...ctx.modelId ? { model_id: ctx.modelId } : {}
6141
+ model_id: modelId
6142
+ });
6143
+ var buildElevenLabsVoicePreviewsPayload = (ctx) => ({
6144
+ voice_description: ctx.prompt,
6145
+ auto_generate_text: true
6141
6146
  });
6142
6147
  var ttsParamConfig = (promptMaxLength) => ({
6143
6148
  ...params.language(true),
@@ -6152,7 +6157,7 @@ var { MODELS: MODELS24 } = defineModels("elevenlabs", [
6152
6157
  modelId: "eleven_v3",
6153
6158
  addedAt: "2026-02-06",
6154
6159
  workflow: "elevenlabs/v1/text-to-speech",
6155
- buildPayload: buildElevenLabsTTSPayload,
6160
+ buildPayload: buildElevenLabsTTSPayload("eleven_v3"),
6156
6161
  estimatedTime: 11,
6157
6162
  mode: "audio",
6158
6163
  inputType: "tts",
@@ -6167,7 +6172,7 @@ var { MODELS: MODELS24 } = defineModels("elevenlabs", [
6167
6172
  modelId: "eleven_multilingual_v2",
6168
6173
  addedAt: "2026-02-06",
6169
6174
  workflow: "elevenlabs/v1/text-to-speech",
6170
- buildPayload: buildElevenLabsTTSPayload,
6175
+ buildPayload: buildElevenLabsTTSPayload("eleven_multilingual_v2"),
6171
6176
  estimatedTime: 9,
6172
6177
  mode: "audio",
6173
6178
  inputType: "tts",
@@ -6183,7 +6188,7 @@ var { MODELS: MODELS24 } = defineModels("elevenlabs", [
6183
6188
  modelId: "eleven_text_to_sound_v2",
6184
6189
  addedAt: "2026-02-06",
6185
6190
  workflow: "elevenlabs/v1/sound-generation",
6186
- buildPayload: buildElevenLabsSFXPayload,
6191
+ buildPayload: buildElevenLabsSFXPayload("eleven_text_to_sound_v2"),
6187
6192
  estimatedTime: 6,
6188
6193
  mode: "audio",
6189
6194
  inputType: "sfx",
@@ -6217,7 +6222,7 @@ var { MODELS: MODELS24 } = defineModels("elevenlabs", [
6217
6222
  modelId: "eleven_english_sts_v2",
6218
6223
  addedAt: "2026-02-15",
6219
6224
  workflow: "elevenlabs/v1/speech-to-speech",
6220
- buildPayload: buildElevenLabsSTSPayload,
6225
+ buildPayload: buildElevenLabsSTSPayload("eleven_english_sts_v2"),
6221
6226
  estimatedTime: 15,
6222
6227
  mode: "audio",
6223
6228
  inputType: "sts",
@@ -6235,7 +6240,7 @@ var { MODELS: MODELS24 } = defineModels("elevenlabs", [
6235
6240
  modelId: "eleven_multilingual_sts_v2",
6236
6241
  addedAt: "2026-02-15",
6237
6242
  workflow: "elevenlabs/v1/speech-to-speech",
6238
- buildPayload: buildElevenLabsSTSPayload,
6243
+ buildPayload: buildElevenLabsSTSPayload("eleven_multilingual_sts_v2"),
6239
6244
  estimatedTime: 15,
6240
6245
  mode: "audio",
6241
6246
  inputType: "sts",
@@ -6302,7 +6307,7 @@ var { MODELS: MODELS24 } = defineModels("elevenlabs", [
6302
6307
  addedAt: "2026-03-24",
6303
6308
  modelId: "eleven_ttv_v3",
6304
6309
  workflow: "elevenlabs/v1/voice-design",
6305
- buildPayload: buildElevenLabsVoiceDesignPayload,
6310
+ buildPayload: buildElevenLabsVoiceDesignPayload("eleven_ttv_v3"),
6306
6311
  estimatedTime: 15,
6307
6312
  mode: "audio",
6308
6313
  inputType: "tts",
@@ -6316,7 +6321,7 @@ var { MODELS: MODELS24 } = defineModels("elevenlabs", [
6316
6321
  addedAt: "2026-03-24",
6317
6322
  modelId: "eleven_multilingual_ttv_v2",
6318
6323
  workflow: "elevenlabs/v1/voice-design",
6319
- buildPayload: buildElevenLabsVoiceDesignPayload,
6324
+ buildPayload: buildElevenLabsVoiceDesignPayload("eleven_multilingual_ttv_v2"),
6320
6325
  estimatedTime: 15,
6321
6326
  mode: "audio",
6322
6327
  inputType: "tts",
@@ -6329,7 +6334,7 @@ var { MODELS: MODELS24 } = defineModels("elevenlabs", [
6329
6334
  name: "Eleven Voice Previews",
6330
6335
  addedAt: "2026-03-24",
6331
6336
  workflow: "elevenlabs/v1/voice-create-previews",
6332
- buildPayload: buildElevenLabsVoiceDesignPayload,
6337
+ buildPayload: buildElevenLabsVoicePreviewsPayload,
6333
6338
  estimatedTime: 15,
6334
6339
  mode: "audio",
6335
6340
  inputType: "tts",
@@ -6696,78 +6701,6 @@ var { MODELS: MODELS27 } = defineModels("ideogram", [
6696
6701
  }
6697
6702
  ]);
6698
6703
 
6699
- // src/vendors/catalog/imagen.ts
6700
- var imagenParams = {
6701
- ...params.prompt(),
6702
- ...params.aspectRatio(["1:1", "16:9", "9:16", "3:4", "4:3"], "1:1"),
6703
- // Vertex Imagen sampleCount is capped at 4 — don't offer 6/8/10.
6704
- ...params.count([1, 2, 4]),
6705
- ...params.enhancePrompt(),
6706
- ...params.negativePrompt()
6707
- };
6708
- var { MODELS: MODELS28 } = defineModels("google", [
6709
- {
6710
- id: "imagen-4.0",
6711
- name: "Imagen 4.0",
6712
- modelId: "imagen-4.0-generate-001",
6713
- addedAt: "2026-02-06",
6714
- workflow: "imagen",
6715
- estimatedTime: 12,
6716
- mode: "image",
6717
- inputType: "t2i",
6718
- badge: ["fast"],
6719
- description: "Quick 1K images with sharp text overlay and prompt enhancement.",
6720
- features: [feat("1K", "resolution")],
6721
- paramConfig: imagenParams
6722
- },
6723
- {
6724
- id: "imagen-4.0-ultra",
6725
- name: "Imagen 4.0 Ultra",
6726
- modelId: "imagen-4.0-ultra-generate-001",
6727
- addedAt: "2026-02-06",
6728
- workflow: "imagen",
6729
- estimatedTime: 15,
6730
- mode: "image",
6731
- inputType: "t2i",
6732
- badge: ["premium"],
6733
- description: "Print-ready 2K output optimized for photorealistic detail.",
6734
- features: [feat("2K", "resolution")],
6735
- paramConfig: imagenParams
6736
- },
6737
- {
6738
- id: "imagen-4.0-fast",
6739
- name: "Imagen 4.0 Fast",
6740
- modelId: "imagen-4.0-fast-generate-001",
6741
- addedAt: "2026-02-06",
6742
- workflow: "imagen",
6743
- estimatedTime: 6,
6744
- mode: "image",
6745
- inputType: "t2i",
6746
- description: "Fastest Imagen tier for quick drafts and rapid prompt iteration.",
6747
- features: [feat("1K", "resolution"), feat("Fast", "duration")],
6748
- paramConfig: imagenParams
6749
- }
6750
- ]);
6751
-
6752
- // src/vendors/catalog/imagen.payloads.ts
6753
- var buildImagenPayload = (modelId) => (
6754
- // Partial: WorkflowTypes incorrectly marks some params as required (e.g. maskDilation, editingSteps)
6755
- (input) => ({
6756
- model: modelId,
6757
- mode: "imagen_generate",
6758
- prompt: input.prompt,
6759
- sampleCount: input.count ?? 1,
6760
- aspectRatio: input.aspectRatio ?? "1:1",
6761
- enhancePrompt: input.enhancePrompt !== false,
6762
- ...input.negativePrompt ? { negativePrompt: input.negativePrompt } : {}
6763
- })
6764
- );
6765
- registerPayloads(MODELS28, {
6766
- "imagen-4.0": buildImagenPayload("imagen-4.0-generate-001"),
6767
- "imagen-4.0-ultra": buildImagenPayload("imagen-4.0-ultra-generate-001"),
6768
- "imagen-4.0-fast": buildImagenPayload("imagen-4.0-fast-generate-001")
6769
- });
6770
-
6771
6704
  // src/vendors/catalog/qwen.ts
6772
6705
  var QWEN_SIZE_MAP = {
6773
6706
  "1024x1024": "1024x1024",
@@ -6831,7 +6764,7 @@ var qwenV1Params3 = {
6831
6764
  ...qwenV1Params,
6832
6765
  ...p.enum("promptExtendMode", ["direct", "agent"], "direct")
6833
6766
  };
6834
- var { MODELS: MODELS29 } = defineModels("qwen", [
6767
+ var { MODELS: MODELS28 } = defineModels("qwen", [
6835
6768
  {
6836
6769
  id: "qwen",
6837
6770
  name: "Qwen",
@@ -6979,7 +6912,7 @@ var buildRecraftExploreSimilarPayload = (ctx) => ({
6979
6912
  similarity: ctx.similarity ?? 3,
6980
6913
  ...ctx.aspectRatio ? { size: ctx.aspectRatio } : {}
6981
6914
  });
6982
- var { MODELS: MODELS30 } = defineModels("recraft", [
6915
+ var { MODELS: MODELS29 } = defineModels("recraft", [
6983
6916
  // ── V4.1 family (raster only — vector variants exist in API but not exposed here) ─
6984
6917
  {
6985
6918
  id: "recraftv4_1",
@@ -7445,7 +7378,7 @@ var TOPAZ_VIDEO_MODEL_OPTIONS = [
7445
7378
  "Starlight Fast 1",
7446
7379
  "Starlight Fast 2"
7447
7380
  ];
7448
- var { MODELS: MODELS31 } = defineModels("topaz", [
7381
+ var { MODELS: MODELS30 } = defineModels("topaz", [
7449
7382
  {
7450
7383
  id: "topaz-upscale-image",
7451
7384
  name: "Topaz Image Upscale",
@@ -7496,7 +7429,7 @@ var buildTopazVideoPayload = (input) => ({
7496
7429
  upscale_factor: 2,
7497
7430
  H264_output: false
7498
7431
  });
7499
- registerPayloads(MODELS31, {
7432
+ registerPayloads(MODELS30, {
7500
7433
  "topaz-upscale-image": buildTopazImagePayload,
7501
7434
  "topaz-upscale-video": buildTopazVideoPayload
7502
7435
  });
@@ -7582,7 +7515,7 @@ var buildPcpSanaSprintPayload = (ctx) => {
7582
7515
  height: h
7583
7516
  };
7584
7517
  };
7585
- var { MODELS: MODELS32 } = defineModels("picsart", [
7518
+ var { MODELS: MODELS31 } = defineModels("picsart", [
7586
7519
  {
7587
7520
  id: "picsart-change-bg",
7588
7521
  name: "Picsart Change Background",
@@ -7759,7 +7692,7 @@ var buildLyria3Payload = (apiModelId) => (ctx) => ({
7759
7692
  ...ctx.imageUrls?.length === 1 ? { image: imagePart(ctx.imageUrls[0]) } : {},
7760
7693
  ...(ctx.imageUrls?.length ?? 0) > 1 ? { images: ctx.imageUrls.slice(0, 10).map(imagePart) } : {}
7761
7694
  });
7762
- var { MODELS: MODELS33 } = defineModels("google", [
7695
+ var { MODELS: MODELS32 } = defineModels("google", [
7763
7696
  {
7764
7697
  id: "lyria-3-clip",
7765
7698
  addedAt: "2026-03-26",
@@ -7882,7 +7815,7 @@ var buildHH11R2VPayload = (ctx) => {
7882
7815
  var HH_AR = ["16:9", "9:16", "1:1", "4:3", "3:4"];
7883
7816
  var HH_RES = ["720P", "1080P"];
7884
7817
  var HH_DURATIONS = [5, 10, 15];
7885
- var { MODELS: MODELS34 } = defineModels("happyhorse", [
7818
+ var { MODELS: MODELS33 } = defineModels("happyhorse", [
7886
7819
  {
7887
7820
  id: "happyhorse-1.0-t2v",
7888
7821
  name: "Happy Horse 1.0",
@@ -8027,7 +7960,7 @@ var baseFeatures = [
8027
7960
  feat("Up to 1080p", "resolution"),
8028
7961
  feat("5-15 sec", "duration")
8029
7962
  ];
8030
- var { MODELS: MODELS35 } = defineModels("pixverse", [
7963
+ var { MODELS: MODELS34 } = defineModels("pixverse", [
8031
7964
  // ── V6 ─────────────────────────────────────────────────────────────
8032
7965
  {
8033
7966
  id: "pixverse-v6",
@@ -8145,7 +8078,7 @@ var buildReferenceToVideoPayload = (model) => (input) => ({
8145
8078
  aspect_ratio: input.aspectRatio ?? "16:9",
8146
8079
  image_references: (input.imageUrls ?? []).map((url) => ({ url }))
8147
8080
  });
8148
- registerPayloads(MODELS35, {
8081
+ registerPayloads(MODELS34, {
8149
8082
  "pixverse-v6": buildTextToVideoPayload("v6"),
8150
8083
  "pixverse-v6-image": buildImageToVideoPayload("v6"),
8151
8084
  "pixverse-v6-fusion": buildReferenceToVideoPayload("v6"),
@@ -8155,7 +8088,7 @@ registerPayloads(MODELS35, {
8155
8088
  });
8156
8089
 
8157
8090
  // src/vendors/catalog/async-ai.ts
8158
- var { MODELS: MODELS36 } = defineModels("async", [
8091
+ var { MODELS: MODELS35 } = defineModels("async", [
8159
8092
  {
8160
8093
  id: "async-flash-v1",
8161
8094
  name: "Async Flash v1.0",
@@ -8195,7 +8128,7 @@ var buildAsyncTtsPayload = (input) => {
8195
8128
  }
8196
8129
  };
8197
8130
  };
8198
- registerPayloads(MODELS36, { "async-flash-v1": buildAsyncTtsPayload });
8131
+ registerPayloads(MODELS35, { "async-flash-v1": buildAsyncTtsPayload });
8199
8132
 
8200
8133
  // src/vendors/catalog/llm.ts
8201
8134
  var ADDED = "2026-06-16";
@@ -8317,7 +8250,7 @@ var { MODELS: GEMINI_LLM } = defineModels("google", [
8317
8250
  }
8318
8251
  }
8319
8252
  ]);
8320
- var MODELS37 = [...ANTHROPIC, ...OPENAI_LLM, ...GEMINI_LLM];
8253
+ var MODELS36 = [...ANTHROPIC, ...OPENAI_LLM, ...GEMINI_LLM];
8321
8254
 
8322
8255
  // src/vendors/catalog/llm.payloads.ts
8323
8256
  var CLAUDE_MAX_TOKENS = 8192;
@@ -8368,7 +8301,7 @@ var buildGeminiPayload = (modelId) => (input) => {
8368
8301
  ...level ? { generationConfig: { thinkingConfig: { thinkingLevel: level } } } : {}
8369
8302
  };
8370
8303
  };
8371
- registerPayloads(MODELS37, {
8304
+ registerPayloads(MODELS36, {
8372
8305
  "claude-opus-4-8": buildClaudePayload("claude-opus-4-8"),
8373
8306
  "claude-sonnet-4-6": buildClaudePayload("claude-sonnet-4-6"),
8374
8307
  "claude-haiku-4-5": buildClaudePayload("claude-haiku-4-5"),
@@ -8409,16 +8342,15 @@ var ALL_MODELS = [
8409
8342
  ...MODELS25,
8410
8343
  ...MODELS26,
8411
8344
  ...MODELS27,
8345
+ ...MODELS32,
8412
8346
  ...MODELS28,
8413
- ...MODELS33,
8414
8347
  ...MODELS29,
8415
8348
  ...MODELS30,
8416
8349
  ...MODELS31,
8417
- ...MODELS32,
8350
+ ...MODELS33,
8418
8351
  ...MODELS34,
8419
8352
  ...MODELS35,
8420
- ...MODELS36,
8421
- ...MODELS37
8353
+ ...MODELS36
8422
8354
  ];
8423
8355
  var getModelsByMode = (mode, includeDisabled = false) => ALL_MODELS.filter((m) => m.mode === mode && (includeDisabled || isVisibleForReleases(m)));
8424
8356
 
@@ -10547,9 +10479,6 @@ var IdeogramCharacter = "ideogram-character";
10547
10479
  var IdeogramPImage = "ideogram-p-image";
10548
10480
  var IdeogramV3 = "ideogram-v3";
10549
10481
  var IdeogramV4 = "ideogram-v4";
10550
- var Imagen40 = "imagen-4.0";
10551
- var Imagen40Fast = "imagen-4.0-fast";
10552
- var Imagen40Ultra = "imagen-4.0-ultra";
10553
10482
  var Kling30Image = "kling-3.0-image";
10554
10483
  var KlingAvatar = "kling-avatar";
10555
10484
  var KlingElements = "kling-elements";
@@ -10749,9 +10678,6 @@ var Models = {
10749
10678
  IdeogramPImage,
10750
10679
  IdeogramV3,
10751
10680
  IdeogramV4,
10752
- Imagen40,
10753
- Imagen40Fast,
10754
- Imagen40Ultra,
10755
10681
  Kling30Image,
10756
10682
  KlingAvatar,
10757
10683
  KlingElements,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@picsart/ai-sdk",
3
- "version": "4.1.1",
3
+ "version": "5.0.1",
4
4
  "type": "module",
5
5
  "description": "Type-safe SDK for 100+ AI models — image, video, audio, and text generation with Picsart",
6
6
  "license": "MIT",