@joai/sdk 0.17.2 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.d.mts +2841 -623
  2. package/dist/index.mjs +1785 -329
  3. package/package.json +1 -1
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { WarpBrandUrls, WarpChainName, WarpClient, WarpI18nText, WarpLocale, WarpNativeValue, WarpText, WarpWalletProvider } from "@joai/warps";
1
+ import { WarpBrandUrls, WarpChainInfo, WarpChainName, WarpClient, WarpI18nText, WarpLocale, WarpNativeValue, WarpText, WarpWalletProvider } from "@joai/warps";
2
2
 
3
3
  //#region ../core/dist/types-CWSaEVa7.d.mts
4
4
  //#region src/http/types.d.ts
@@ -33,7 +33,8 @@ interface IRequestOptions {
33
33
  } //#endregion
34
34
  //#endregion
35
35
  //#region ../core/dist/index.d.mts
36
- //#endregion
36
+ //#region src/auth/types.d.ts
37
+ type SocialAuthProvider = 'github' | 'apple' | 'google' | 'x' | 'telegram' | 'slack'; //#endregion
37
38
  //#region src/config/types.d.ts
38
39
  type AppEnv = 'mainnet' | 'testnet' | 'devnet' | 'local'; //#endregion
39
40
  //#region src/config/urls.d.ts
@@ -105,29 +106,39 @@ type Character = {
105
106
  system: string;
106
107
  bio: WarpText | null;
107
108
  }; //#endregion
108
- //#region src/media/types.d.ts
109
- type MediaLibraryAttributes = {
110
- uuid: string;
111
- order: number;
109
+ //#region src/flow/types.d.ts
110
+ type FlowCategory = 'none' | 'defi' | 'nft' | 'social' | 'devtools' | 'productivity' | 'trading' | 'portfolio';
111
+ type FlowStatus = 'draft' | 'published';
112
+ type Flow = {
113
+ slug: string;
114
+ team: Team;
112
115
  name: string;
113
- custom_properties: {
114
- [key: string]: any;
115
- };
116
- preview_url: null | string;
117
- original_url: null | string;
118
- extension?: string;
119
- size?: number;
116
+ description: string | null;
117
+ category: FlowCategory;
118
+ status: FlowStatus;
119
+ publishedAt: string | null;
120
+ createdAt: string;
121
+ updatedAt: string;
122
+ steps: FlowStep[];
123
+ locales: WarpLocale[];
124
+ marketplace: StoreInfo;
125
+ screenshots: string[];
120
126
  };
121
- type MediaLibraryItems = {
122
- [uuid: string]: MediaLibraryAttributes;
127
+ type FlowStep = {
128
+ stepId: string;
129
+ order: number;
130
+ type: 'warp' | 'condition' | 'delay';
131
+ warpIdentifier: string | null;
132
+ dependsOn: string[] | null;
133
+ inputMappings: FlowInputMapping[] | null;
134
+ staticInputs: Record<string, any> | null;
135
+ condition: Record<string, any> | null;
123
136
  };
124
- type MediaMime = 'image/png' | 'image/jpeg' | 'image/gif' | 'image/webp' | 'video/mp4' | 'video/webm' | 'video/quicktime' | 'video/x-msvideo' | 'audio/mpeg' | 'audio/mp3' | 'audio/ogg' | 'audio/wav' | 'audio/webm' | 'audio/aac' | 'audio/m4a' | 'audio/m4b' | 'audio/m4p' | 'audio/m4v' | 'application/pdf' | 'application/json';
125
- type Media = {
126
- id: string;
127
- name: string;
128
- mime: MediaMime;
129
- url: string;
130
- library: MediaLibraryAttributes;
137
+ type FlowInputMapping = {
138
+ sourceStepId: string;
139
+ sourceKey: string;
140
+ targetInput: string;
141
+ transform?: string;
131
142
  }; //#endregion
132
143
  //#region src/wallet/types.d.ts
133
144
  type Wallet = {
@@ -138,202 +149,125 @@ type Wallet = {
138
149
  privateKey?: string;
139
150
  mnemonic?: string;
140
151
  };
141
- type User = {
152
+ type WalletList = Partial<Record<WarpChainName, {
153
+ provider: WarpWalletProvider;
154
+ address?: string;
155
+ }>>; //#endregion
156
+ //#region src/user/types.d.ts
157
+ type UserRole = 'owner' | 'member';
158
+ type UserMode = 'simple' | 'advanced';
159
+ type UserInterest = 'payments' | 'health' | 'content' | 'business' | 'finance' | 'research' | 'shopping' | 'web3' | 'developer' | 'fitness' | 'ecommerce';
160
+ type UserSettings = {
161
+ mode: UserMode;
162
+ interests: UserInterest[];
163
+ hotkeys?: Record<string, string> | null;
164
+ 'payout.address'?: string | null;
165
+ 'payout.chain'?: string | null;
166
+ 'voice.playback-mode'?: 'voice-control' | 'chat' | 'both' | null;
167
+ 'voice.corrections'?: {
168
+ wrong: string;
169
+ correct: string;
170
+ }[];
171
+ 'warp.notifications'?: Record<string, Record<string, boolean>>;
172
+ 'withdrawal.waiver.accepted-at'?: string | null;
173
+ 'active.team'?: string | null;
174
+ };
175
+ type KycStatus = 'pending' | 'approved' | 'rejected';
176
+ type Kyc = {
177
+ status: KycStatus;
178
+ };
179
+ type UserPrivate = {
142
180
  id: string;
143
181
  name: string;
144
- address: string;
145
- balance: number | null;
182
+ email: string;
183
+ hasVerifiedEmail: boolean;
184
+ balance: number;
185
+ wallets: Wallet[];
146
186
  hasProfileImage: boolean;
147
187
  profileImageUrl: string;
148
- swarmRole: string | null;
149
- };
150
- //#endregion
151
- //#region src/billing/types.d.ts
152
- type TranslatableValue = Partial<Record<WarpLocale, string>>;
153
- type SubscriptionStatus = 'active' | 'canceled' | 'past_due';
154
- type SubscriptionInterval = 'weekly' | 'monthly' | 'yearly';
155
- type AppSubscription = {
156
- id: string;
157
- orderId: string;
158
- teamId: string;
159
- contactId: string | null;
160
- status: SubscriptionStatus;
161
- interval: SubscriptionInterval | null;
162
- renewsAt: string | null;
163
- cancelledAt: string | null;
164
- locale: string | null;
165
- meta: Record<string, any> | null;
166
- createdAt: string;
167
- updatedAt: string;
168
- };
169
- type PaymentProvider = 'xmoney' | 'lemonsqueezy' | 'stripe' | 'apple' | 'google' | 'blockchain' | 'offline';
170
- type PlanFeature = 'general' | 'messages' | 'team-members' | 'teams' | 'support' | 'agent' | 'auto-mode' | 'cloud-sync' | 'wallet-cloud' | 'wallet-cloud-premium' | 'wallet-multi' | 'cards' | 'alerts' | 'advanced-commands' | 'tasks' | 'integrations' | 'message-history' | 'memory' | 'documents' | 'voice-input' | 'voice-live' | 'image-gen' | 'video-gen' | 'openclaw' | 'skills' | 'items' | 'context-length' | 'workspace-storage' | 'ingestions' | 'agent-email' | 'streak-freezes' | 'byok' | 'mcp' | 'phone-call' | 'phone-number' | 'custom-domain' | 'contacts' | 'links' | 'store-fee-rate' | 'store-fee-rate-physical';
171
- type PlanBenefit = {
172
- label: Partial<Record<WarpLocale, string>>;
173
- tip?: Partial<Record<WarpLocale, string>>;
174
- secondary?: boolean;
188
+ country: string | null;
189
+ timezone: string | null;
190
+ socials: UserSocialAccount[];
191
+ justCreated: boolean;
192
+ affiliate: Affiliate | null;
193
+ billingAddress: BillingAddress | null;
194
+ betaRestricted: boolean;
195
+ kyc?: Kyc | null;
196
+ settings: UserSettings;
175
197
  };
176
- type PlanExtra = {
198
+ type Earning = {
199
+ id: number;
177
200
  amount: number;
178
- price: number;
179
- unitName: string;
180
- };
181
- type PlanInterval = 'weekly' | 'monthly' | 'yearly' | 'lifetime';
182
- type Plan = {
183
- resource: 'plan';
184
- sku: string;
185
- name: TranslatableValue;
186
- description: Partial<Record<WarpLocale, string>>;
187
- price: number;
188
- priceDisplay: string;
189
- interval: PlanInterval;
190
- intervalDisplay: PlanInterval;
191
- features: PlanFeature[];
192
- benefits: Record<PlanFeature, PlanBenefit>;
193
- limits: Record<PlanFeature, string>;
194
- extras: Record<PlanFeature, PlanExtra>;
195
- meta: {
196
- appleProductId: string | null;
197
- googleProductId: string | null;
198
- trialPeriodDays: number;
199
- isLifetime: boolean;
200
- };
201
- };
202
- type ProductRating = {
203
- average: number;
204
- count: number;
201
+ type: string;
202
+ description: string | null;
203
+ createdAt: string;
205
204
  };
206
- type ProductPieces = {
205
+ type PayoutEntry = {
206
+ id: number;
207
207
  amount: number;
208
- name: string;
209
- };
210
- type ProductDiscount = {
211
- original: number;
212
- percent: number;
213
- };
214
- type ProductVariationType = {
215
- name: string;
208
+ status: string;
209
+ tx: string | null;
210
+ failureReason: string | null;
211
+ processedAt: string | null;
212
+ createdAt: string;
216
213
  };
217
- type ProductRelationType = 'cross_sell' | 'upsell' | 'add_on';
218
- type ProductRelation = {
214
+ type UserSocialAccount = {
215
+ platform: string;
219
216
  id: string;
220
- name: TranslatableValue;
221
- slug: string;
222
- price: number;
223
- unit: string | null;
224
- type: ProductRelationType;
225
- position: number;
226
- variations: ProductVariation[];
227
- };
228
- type VolumePrice = {
229
- id: number;
230
- minQty: number;
231
- unitPrice: number;
232
- };
233
- type ProductConfiguration = Record<string, WarpNativeValue>;
234
- type OrderConfigurationItem = {
235
- itemId: string | null;
236
- type: string;
237
- configuration: ProductConfiguration;
238
- };
239
- type ProductVariationMeta = {
240
- itemGroupId?: string | null;
241
- appleProductId: string | null;
242
- googleProductId: string | null;
243
- gtin?: string | null;
244
- mpn?: string | null;
245
- condition?: 'new' | 'used' | 'refurbished';
246
- };
247
- type ProductMeta = {
248
- googleProductCategory?: number | null;
249
- brand?: string | null;
250
- };
251
- type ProductVariation = {
252
- resource?: 'product-variation';
253
- id?: string;
254
- sku: string;
255
- name: TranslatableValue;
256
- type?: ProductVariationType | null;
257
- description?: Partial<Record<WarpLocale, string>>;
258
- price: number;
259
- badge?: string;
260
- quantity?: number;
261
- media?: Media[];
262
- preview?: Media[];
263
- stock?: number | null;
264
- weight?: number | null;
265
- preorder?: boolean;
266
- active?: boolean;
267
- hidden?: boolean;
268
- availableAt?: string | null;
269
- order?: number | null;
270
- pieces?: ProductPieces | null;
271
- discount?: ProductDiscount | null;
272
- settings?: Record<string, unknown> | null;
273
- product?: Product;
274
- meta?: ProductVariationMeta;
275
- nativePriceStr?: string | null;
276
- };
277
- type Product = {
278
- slug: string;
279
- name: TranslatableValue;
280
- description?: Partial<Record<WarpLocale, string>>;
281
- price?: number;
282
- unit?: TranslatableValue | null;
283
- active?: boolean;
284
- public?: boolean;
285
- meta?: ProductMeta;
286
- virtual?: boolean;
287
- tags?: string[] | null;
288
- createdAt?: string;
289
- updatedAt?: string;
290
- variations: ProductVariation[];
291
- relatedProducts?: ProductRelation[];
292
- rating?: ProductRating;
293
- settings?: Record<string, unknown> | null;
294
- volumePrices?: VolumePrice[];
295
- media?: Media[];
217
+ username: string;
218
+ profileUrl: string;
296
219
  };
297
- type OrderItem = {
220
+ type User = {
298
221
  id: string;
299
222
  name: string;
300
- quantity: number;
301
- unitPrice: number;
302
- type: 'product-variation' | 'service';
223
+ address: string;
224
+ balance: number | null;
225
+ hasProfileImage: boolean;
226
+ profileImageUrl: string;
227
+ swarmRole: string | null;
303
228
  };
304
- type CartItem = {
229
+ type AuthUser = {
305
230
  id: string;
306
- name: TranslatableValue;
307
- price: number;
308
- quantity: number;
309
- type: 'service' | 'product';
310
- sku: string | null;
311
- badge: string | null;
312
- configuration?: ProductConfiguration;
313
- media: Media[];
314
- product?: Product | null;
231
+ name: string;
232
+ phone: string | null;
233
+ email: string | null;
315
234
  };
316
- type Cart = {
317
- subtotal: number;
318
- taxes: {
319
- amount: number;
320
- percent: number;
235
+ type Affiliate = {
236
+ name: string;
237
+ tier: AffiliateTier;
238
+ balance: number;
239
+ payoutAddress: string;
240
+ application: string;
241
+ status: AffiliateStatus;
242
+ createdAt: string;
243
+ inviteLinkUrl: string;
244
+ settings: {
245
+ minPayoutBalance: number;
246
+ commissionExtraPercent?: number;
247
+ customerDiscountPercent: number;
321
248
  };
322
- total: number;
323
- items: CartItem[];
324
- coupon: Coupon | null;
325
- couponDiscount: number;
249
+ clicks: number;
250
+ coupons: Coupon[];
251
+ user: User | null;
326
252
  };
327
- type Coupon = {
328
- code: string;
329
- amount: number;
330
- percent: number;
331
- expiresAt: string | null;
253
+ type AffiliateTierName = 'bronze' | 'silver' | 'gold';
254
+ type AffiliateTier = {
255
+ name: AffiliateTierName;
256
+ displayName: string;
257
+ commission: number;
258
+ threshold: number;
332
259
  };
333
- //#endregion
260
+ type AffiliateStatus = 'pending' | 'approved' | 'rejected' | 'suspended' | 'demoted'; //#endregion
261
+ //#region src/team/constants.d.ts
262
+ declare const teamCategories: readonly ["general", "food-drink", "retail", "beauty-wellness", "health", "sports-fitness", "trades-services", "professional-services", "education-culture", "clubs-organizations", "leisure-tourism"]; //#endregion
334
263
  //#region src/team/types.d.ts
335
- type TeamCategory = 'general' | 'appointment' | 'restaurant' | 'service' | 'fitness' | 'beauty' | 'consultation';
264
+ type TeamCategory = typeof teamCategories[number];
336
265
  type TeamFeature = 'shop' | 'appointments';
266
+ type TeamMember = User & {
267
+ role: UserRole | null;
268
+ roleAcceptedAt: string | null;
269
+ email: string | null;
270
+ };
337
271
  type TeamMeta = {
338
272
  'extra.messages'?: number;
339
273
  'limit.spending'?: number | null;
@@ -355,7 +289,8 @@ type Team = {
355
289
  slug: string;
356
290
  name: string;
357
291
  personal: boolean;
358
- category?: TeamCategory;
292
+ category: TeamCategory;
293
+ tags?: string[] | null;
359
294
  description: TranslatableValue | null;
360
295
  locale: WarpLocale;
361
296
  timezone: string;
@@ -388,6 +323,7 @@ type TeamPrivate = {
388
323
  name: string;
389
324
  personal: boolean;
390
325
  description: TranslatableValue | null;
326
+ tags?: string[] | null;
391
327
  tagline: TranslatableValue | null;
392
328
  balance: number;
393
329
  locale: WarpLocale;
@@ -402,7 +338,6 @@ type TeamPrivate = {
402
338
  payer: User | null;
403
339
  gracePeriod: boolean;
404
340
  autoRenew: boolean;
405
- uncapped: boolean;
406
341
  cycleEndsAt: string | null;
407
342
  resetsAt: string | null;
408
343
  startedAt: string | null;
@@ -411,7 +346,7 @@ type TeamPrivate = {
411
346
  };
412
347
  meta: TeamMeta;
413
348
  branding: TeamBrand;
414
- category?: TeamCategory;
349
+ category: TeamCategory;
415
350
  createdAt: string;
416
351
  justCreated: boolean;
417
352
  };
@@ -427,42 +362,397 @@ type ByokProviders = {
427
362
  xai?: ByokProviderConfig;
428
363
  klingai?: ByokProviderConfig;
429
364
  };
430
- //#endregion
431
- //#region src/flow/types.d.ts
432
- type FlowCategory = 'none' | 'defi' | 'nft' | 'social' | 'devtools' | 'productivity' | 'trading' | 'portfolio';
433
- type FlowStatus = 'draft' | 'published';
434
- type Flow = {
435
- slug: string;
436
- team: Team;
365
+ type TeamUsage = Partial<Record<PlanFeature, TeamFeatureUsage>> & {
366
+ extraUsageEnabled?: boolean;
367
+ currentSpending?: number;
368
+ walletCloudUsed?: number;
369
+ walletCloudPremiumUsed?: number;
370
+ spendingLimit?: number | null;
371
+ cycleEndsAt?: string | null;
372
+ resetsAt?: string | null;
373
+ autoReload?: {
374
+ enabled: boolean;
375
+ thresholdCents: number | null;
376
+ amountCents: number | null;
377
+ };
378
+ };
379
+ type TeamFeatureUsage = {
380
+ current: number;
381
+ limit: number;
382
+ reached?: boolean;
383
+ };
384
+ type AiCostEntry = {
385
+ id: number;
386
+ model: string | null;
387
+ agent: {
388
+ name: string;
389
+ uuid: string;
390
+ } | null;
391
+ inputTokens: number;
392
+ outputTokens: number;
393
+ totalTokens: number;
394
+ costCents: number | null;
395
+ createdAt: string;
396
+ };
397
+ type AiCostsSummary = {
398
+ totalCostCents: number;
399
+ totalTokens: number;
400
+ totalRequests: number;
401
+ byModel: Record<string, {
402
+ costCents: number;
403
+ tokens: number;
404
+ count: number;
405
+ }>;
406
+ };
407
+ type AiCostsResponse = {
408
+ summary: AiCostsSummary;
409
+ usages: {
410
+ data: AiCostEntry[];
411
+ pagination: {
412
+ currentPage: number;
413
+ lastPage: number;
414
+ perPage: number;
415
+ total: number;
416
+ };
417
+ };
418
+ }; //#endregion
419
+ //#region src/json/types.d.ts
420
+ type JsonValue = string | number | boolean | null | JsonValue[] | {
421
+ [key: string]: JsonValue;
422
+ }; //#endregion
423
+ //#region src/contact/types.d.ts
424
+ type Contact = {
425
+ id: string;
426
+ name: string;
427
+ wallets: Wallet[];
428
+ email: string | null;
429
+ phone: string | null;
430
+ company: string | null;
431
+ title: string | null;
432
+ birthday: string | null;
433
+ website: string | null;
434
+ location: string | null;
435
+ socials: Record<string, string> | null;
436
+ notes: string | null;
437
+ tags: string[] | null;
438
+ userId: string | null;
439
+ locale?: string | null;
440
+ props?: Record<string, string> | null;
441
+ };
442
+ type ContactActivityType = 'note' | 'call' | 'meeting' | 'task' | 'update' | 'custom' | 'form' | 'loyalty';
443
+ type ContactActivityAuthor = {
437
444
  name: string;
445
+ imageUrl: string | null;
446
+ };
447
+ type ContactActivity = {
448
+ id: string;
449
+ type: ContactActivityType;
438
450
  description: string | null;
439
- category: FlowCategory;
440
- status: FlowStatus;
441
- publishedAt: string | null;
451
+ meta: Record<string, JsonValue> | null;
452
+ agentName: string | null;
442
453
  createdAt: string;
443
- updatedAt: string;
444
- steps: FlowStep[];
445
- locales: WarpLocale[];
446
- marketplace: MarketplaceInfo;
447
- screenshots: string[];
454
+ author?: ContactActivityAuthor | null;
448
455
  };
449
- type FlowStep = {
450
- stepId: string;
456
+ type ContactFormData = {
457
+ name?: string;
458
+ email?: string | null;
459
+ phone?: string | null;
460
+ company?: string | null;
461
+ title?: string | null;
462
+ birthday?: string | null;
463
+ website?: string | null;
464
+ location?: string | null;
465
+ socials?: Record<string, string> | null;
466
+ notes?: string | null;
467
+ tags?: string[] | null;
468
+ locale?: string | null;
469
+ props?: Record<string, string> | null;
470
+ };
471
+ type ContactCreatePayload = ContactFormData & {
472
+ name: string;
473
+ wallets?: WalletList;
474
+ }; //#endregion
475
+ //#region src/media/types.d.ts
476
+ type MediaLibraryAttributes = {
477
+ uuid: string;
451
478
  order: number;
452
- type: 'warp' | 'condition' | 'delay';
453
- warpIdentifier: string | null;
454
- dependsOn: string[] | null;
455
- inputMappings: FlowInputMapping[] | null;
456
- staticInputs: Record<string, any> | null;
457
- condition: Record<string, any> | null;
479
+ name: string;
480
+ custom_properties: {
481
+ [key: string]: JsonValue;
482
+ };
483
+ preview_url: null | string;
484
+ original_url: null | string;
485
+ extension?: string;
486
+ size?: number;
458
487
  };
459
- type FlowInputMapping = {
460
- sourceStepId: string;
461
- sourceKey: string;
462
- targetInput: string;
463
- transform?: string;
488
+ type MediaLibraryItems = {
489
+ [uuid: string]: MediaLibraryAttributes;
490
+ };
491
+ type MediaMime = 'image/png' | 'image/jpeg' | 'image/gif' | 'image/webp' | 'video/mp4' | 'video/webm' | 'video/quicktime' | 'video/x-msvideo' | 'audio/mpeg' | 'audio/mp3' | 'audio/ogg' | 'audio/wav' | 'audio/webm' | 'audio/aac' | 'audio/m4a' | 'audio/m4b' | 'audio/m4p' | 'audio/m4v' | 'application/pdf' | 'application/json';
492
+ type Media = {
493
+ id: string;
494
+ name: string;
495
+ mime: MediaMime;
496
+ url: string;
497
+ library: MediaLibraryAttributes;
498
+ tags?: string[];
464
499
  }; //#endregion
465
- //#region src/skill/types.d.ts
500
+ //#region src/billing/types.d.ts
501
+ type TranslatableValue = Partial<Record<WarpLocale, string>>;
502
+ type OrderStatus = 'pending' | 'completed' | 'delivered' | 'canceled';
503
+ type OrderSource = 'auto' | 'manual' | 'kiosk';
504
+ type SubscriptionStatus = 'active' | 'canceled' | 'past_due';
505
+ type SubscriptionInterval = 'weekly' | 'biweekly' | 'monthly' | 'quarterly' | 'yearly';
506
+ type PricingModel = 'free' | 'one-time' | 'weekly' | 'biweekly' | 'monthly' | 'quarterly' | 'yearly' | 'per-run';
507
+ type AppSubscription = {
508
+ id: string;
509
+ orderId: string;
510
+ teamId: string;
511
+ contact: Contact | null;
512
+ status: SubscriptionStatus;
513
+ interval: SubscriptionInterval | null;
514
+ renewsAt: string | null;
515
+ cancelledAt: string | null;
516
+ locale: string | null;
517
+ meta: Record<string, JsonValue> | null;
518
+ createdAt: string;
519
+ updatedAt: string;
520
+ };
521
+ type PaymentProvider = 'xmoney' | 'lemonsqueezy' | 'stripe' | 'stripe-connect' | 'apple' | 'google' | 'blockchain' | 'offline';
522
+ type PaymentAccount = {
523
+ provider: string;
524
+ connected: boolean;
525
+ chargesEnabled: boolean;
526
+ payoutsEnabled: boolean;
527
+ detailsSubmitted: boolean;
528
+ requirements: string[];
529
+ };
530
+ type PaymentAccountOnboarding = {
531
+ url: string;
532
+ };
533
+ type TerminalConnectionToken = {
534
+ secret: string;
535
+ locationId: string;
536
+ connectedAccountId: string;
537
+ };
538
+ type TerminalPaymentIntent = {
539
+ clientSecret: string;
540
+ paymentIntentId: string;
541
+ connectedAccountId: string;
542
+ };
543
+ type PlanFeature = 'general' | 'messages' | 'team-members' | 'teams' | 'support' | 'agent' | 'auto-mode' | 'cloud-sync' | 'wallet-cloud' | 'wallet-cloud-premium' | 'wallet-multi' | 'cards' | 'alerts' | 'advanced-commands' | 'tasks' | 'integrations' | 'message-history' | 'memory' | 'documents' | 'voice-input' | 'voice-live' | 'image-gen' | 'video-gen' | 'openclaw' | 'skills' | 'items' | 'context-length' | 'workspace-storage' | 'ingestions' | 'agent-email' | 'streak-freezes' | 'byok' | 'mcp' | 'phone-call' | 'phone-number' | 'custom-domain' | 'contacts' | 'links' | 'store-fee-rate' | 'store-fee-rate-physical' | 'tap-to-pay';
544
+ type PlanBenefit = {
545
+ label: Partial<Record<WarpLocale, string>>;
546
+ tip?: Partial<Record<WarpLocale, string>>;
547
+ secondary?: boolean;
548
+ };
549
+ type PlanExtra = {
550
+ amount: number;
551
+ price: number;
552
+ unitName: string;
553
+ };
554
+ type BillingAddress = {
555
+ name: string;
556
+ addressOne: string | null;
557
+ city: string | null;
558
+ state: string | null;
559
+ zipCode: string | null;
560
+ country: string;
561
+ vatId: string | null;
562
+ isEU: boolean;
563
+ };
564
+ type PlanInterval = 'weekly' | 'monthly' | 'yearly' | 'lifetime';
565
+ type Plan = {
566
+ resource: 'plan';
567
+ sku: string;
568
+ name: TranslatableValue;
569
+ description: Partial<Record<WarpLocale, string>>;
570
+ price: number;
571
+ priceDisplay: string;
572
+ interval: PlanInterval;
573
+ intervalDisplay: PlanInterval;
574
+ features: PlanFeature[];
575
+ benefits: Partial<Record<PlanFeature, PlanBenefit>>;
576
+ limits: Partial<Record<PlanFeature, string>>;
577
+ extras: Partial<Record<PlanFeature, PlanExtra>>;
578
+ meta: {
579
+ appleProductId: string | null;
580
+ googleProductId: string | null;
581
+ trialPeriodDays: number;
582
+ isLifetime: boolean;
583
+ };
584
+ };
585
+ type ProductRating = {
586
+ average: number;
587
+ count: number;
588
+ };
589
+ type ProductPieces = {
590
+ amount: number;
591
+ name: string;
592
+ };
593
+ type ProductDiscount = {
594
+ original: number;
595
+ percent: number;
596
+ };
597
+ type ProductVariationType = {
598
+ name: string;
599
+ };
600
+ type ProductRelationType = 'cross_sell' | 'upsell' | 'add_on';
601
+ type ProductRelation = {
602
+ id: string;
603
+ name: TranslatableValue;
604
+ slug: string;
605
+ price: number;
606
+ unit: string | null;
607
+ type: ProductRelationType;
608
+ position: number;
609
+ variations: ProductVariation[];
610
+ };
611
+ type VolumePrice = {
612
+ id: number;
613
+ minQty: number;
614
+ unitPrice: number;
615
+ };
616
+ type Configuration = Record<string, WarpNativeValue>;
617
+ type OrderConfigurationItem = {
618
+ itemId: string | null;
619
+ type: string;
620
+ configuration: Configuration;
621
+ };
622
+ type ProductVariationMeta = {
623
+ itemGroupId?: string | null;
624
+ appleProductId: string | null;
625
+ googleProductId: string | null;
626
+ gtin?: string | null;
627
+ mpn?: string | null;
628
+ condition?: 'new' | 'used' | 'refurbished';
629
+ };
630
+ type ProductMeta = {
631
+ googleProductCategory?: number | null;
632
+ brand?: string | null;
633
+ };
634
+ type ProductVariation = {
635
+ resource?: 'product-variation';
636
+ id?: string;
637
+ sku: string;
638
+ name: TranslatableValue;
639
+ type?: ProductVariationType | null;
640
+ description?: Partial<Record<WarpLocale, string>>;
641
+ price: number;
642
+ badge?: string;
643
+ quantity?: number;
644
+ media?: Media[];
645
+ preview?: Media[];
646
+ stock?: number | null;
647
+ weight?: number | null;
648
+ preorder?: boolean;
649
+ active?: boolean;
650
+ hidden?: boolean;
651
+ availableAt?: string | null;
652
+ order?: number | null;
653
+ pieces?: ProductPieces | null;
654
+ discount?: ProductDiscount | null;
655
+ settings?: Record<string, JsonValue> | null;
656
+ product?: Product;
657
+ meta?: ProductVariationMeta;
658
+ nativePriceStr?: string | null;
659
+ };
660
+ type Product = {
661
+ slug: string;
662
+ name: TranslatableValue;
663
+ description?: Partial<Record<WarpLocale, string>>;
664
+ price?: number;
665
+ unit?: TranslatableValue | null;
666
+ active?: boolean;
667
+ public?: boolean;
668
+ meta?: ProductMeta;
669
+ virtual?: boolean;
670
+ tags?: string[] | null;
671
+ createdAt?: string;
672
+ updatedAt?: string;
673
+ variations: ProductVariation[];
674
+ relatedProducts?: ProductRelation[];
675
+ rating?: ProductRating;
676
+ settings?: Record<string, JsonValue> | null;
677
+ volumePrices?: VolumePrice[];
678
+ media?: Media[];
679
+ };
680
+ type OrderItem = {
681
+ id: string;
682
+ name: string;
683
+ quantity: number;
684
+ unitPrice: number;
685
+ type: 'product-variation' | 'service';
686
+ digital?: boolean | null;
687
+ sellerTeamId?: string | null;
688
+ };
689
+ type OrderContext = {
690
+ type: string;
691
+ label?: string | null;
692
+ value: string;
693
+ };
694
+ type Order = {
695
+ resource: 'order';
696
+ id: string;
697
+ total: number;
698
+ provider: PaymentProvider | null;
699
+ providerAccountId?: string | null;
700
+ requiresConnectedAccount?: boolean;
701
+ usesPlatformAccount?: boolean;
702
+ status: OrderStatus;
703
+ paymentUrl?: string | null;
704
+ invoiceUrl: string | null;
705
+ justCreated?: boolean;
706
+ createdAt: string;
707
+ invoiceDate: string;
708
+ meta: Record<string, JsonValue> | null;
709
+ contactId: string | null;
710
+ source: OrderSource | null;
711
+ context: OrderContext | null;
712
+ paymentMode: string | null;
713
+ linkVariationId: string | null;
714
+ notes: string | null;
715
+ configuration?: OrderConfigurationItem[];
716
+ items: OrderItem[];
717
+ plan: Plan | null;
718
+ user: UserPrivate | null;
719
+ team: TeamPrivate | null;
720
+ isSubscription: boolean;
721
+ };
722
+ type CartItem = {
723
+ id: string;
724
+ name: TranslatableValue;
725
+ price: number;
726
+ quantity: number;
727
+ type: 'service' | 'product';
728
+ sku: string | null;
729
+ badge: string | null;
730
+ configuration?: Configuration;
731
+ media: Media[];
732
+ product?: Product | null;
733
+ };
734
+ type Cart = {
735
+ subtotal: number;
736
+ taxes: {
737
+ amount: number;
738
+ percent: number;
739
+ };
740
+ total: number;
741
+ items: CartItem[];
742
+ coupon: Coupon | null;
743
+ couponDiscount: number;
744
+ };
745
+ type Coupon = {
746
+ code: string;
747
+ amount: number;
748
+ percent: number;
749
+ expiresAt: string | null;
750
+ };
751
+ type PurchaseResult = {
752
+ order_id?: string;
753
+ message?: string;
754
+ subscription_active?: boolean;
755
+ };
466
756
  declare const SkillScope: {
467
757
  readonly Agent: "agent";
468
758
  readonly Team: "team";
@@ -481,13 +771,13 @@ type Skill = {
481
771
  sourcePath: string | null;
482
772
  scope?: SkillScopeValue;
483
773
  active: boolean;
484
- marketplace: MarketplaceInfo;
774
+ marketplace: StoreInfo;
485
775
  createdAt: string;
486
776
  media?: Media[];
487
777
  screenshots: string[];
488
778
  }; //#endregion
489
779
  //#region src/integration/types.d.ts
490
- type IntegrationType = 'none' | 'webhook' | 'api-token' | 'telegram' | 'slack' | 'whatsapp' | 'twilio' | 'n8n' | 'apple-health' | 'mcp' | 'x' | 'email' | 'calendar' | 'embed' | 'discord' | 'github' | 'sentry' | 'readwise';
780
+ type IntegrationType = 'none' | 'webhook' | 'api-token' | 'telegram' | 'slack' | 'whatsapp' | 'twilio' | 'sms' | 'n8n' | 'apple-health' | 'mcp' | 'x' | 'email' | 'calendar' | 'embed' | 'discord' | 'github' | 'sentry' | 'readwise';
491
781
  type IntegrationDetails = {
492
782
  type: IntegrationType;
493
783
  name: string;
@@ -506,7 +796,46 @@ type Integration = {
506
796
  createdAt: string;
507
797
  details?: IntegrationDetails;
508
798
  };
799
+ type SocialPlatform = 'telegram' | 'slack' | 'whatsapp' | 'twilio' | 'discord' | 'github';
800
+ type SocialBot = {
801
+ name: string;
802
+ createdAt: string;
803
+ phoneNumberId?: string;
804
+ phoneNumber?: string;
805
+ applicationId?: string;
806
+ appId?: string;
807
+ installationId?: string;
808
+ };
809
+ type XIntegrationStatus = {
810
+ enabled: boolean;
811
+ integrationId: string | null;
812
+ xAccountLinked: boolean;
813
+ currentAgentName: string | null;
814
+ };
815
+ type EmbedStatus = {
816
+ integrationId: string;
817
+ agentName: string;
818
+ agentAvatar: string | null;
819
+ active: boolean;
820
+ allowedDomains: string[];
821
+ };
509
822
  type EmailProvider = 'resend' | 'mailgun' | 'sendgrid';
823
+ type CalendarProvider = 'google' | 'apple' | 'microsoft';
824
+ type CalendarStatus = {
825
+ connected: boolean;
826
+ provider?: CalendarProvider;
827
+ providerDisplayName?: string;
828
+ accountEmail?: string;
829
+ lastSynced?: string;
830
+ tokenHealthy?: boolean;
831
+ upcomingEvents?: {
832
+ title: string;
833
+ startAt: string;
834
+ endAt: string;
835
+ allDay: boolean;
836
+ }[];
837
+ }; //#endregion
838
+ //#region src/room/types.d.ts
510
839
  type RoomKind = 'default' | 'phone' | 'meeting';
511
840
  type Room = {
512
841
  id: string;
@@ -536,7 +865,7 @@ type Agent = {
536
865
  avatar: string;
537
866
  wallets: Wallet[];
538
867
  settings: AgentSettings;
539
- marketplace: MarketplaceInfo;
868
+ marketplace: StoreInfo;
540
869
  character?: AgentCharacter | null;
541
870
  room: Room;
542
871
  role: string | null;
@@ -550,7 +879,7 @@ type AgentPrivate = {
550
879
  avatar: string;
551
880
  wallets: Wallet[];
552
881
  settings: AgentSettings;
553
- marketplace: MarketplaceInfo;
882
+ marketplace: StoreInfo;
554
883
  password: string | null;
555
884
  authKey: string | null;
556
885
  secKey: string;
@@ -562,9 +891,23 @@ type AgentPrivate = {
562
891
  justCreated?: boolean;
563
892
  team: string;
564
893
  };
894
+ type AgentActionHistoryEntry = {
895
+ id: string;
896
+ action: string | null;
897
+ outcome: 'succeeded' | 'failed';
898
+ outcomeDetail: string | null;
899
+ warpIdentifier: string | null;
900
+ meta: Record<string, unknown> | null;
901
+ createdAt: string | null;
902
+ };
565
903
  type AgentSimple = {
566
904
  uuid: string;
567
905
  name: string;
906
+ avatar?: string | null;
907
+ authKey?: string | null;
908
+ team?: {
909
+ slug: string;
910
+ } | null;
568
911
  };
569
912
  type AgentEngine = 'cortex' | 'openclaw';
570
913
  type AgentGender = 'male' | 'female' | 'neutral';
@@ -673,8 +1016,52 @@ type BrandBackend = {
673
1016
  integrations?: Partial<Record<BrandIntegrationProvider, BrandIntegration>>;
674
1017
  };
675
1018
  };
676
- type PricingModel = 'free' | 'one-time' | 'monthly' | 'per-run';
677
- type MarketplacePricing = {
1019
+ //#endregion
1020
+ //#region src/store/types.d.ts
1021
+ type StoreVisibility = 'private' | 'team' | 'public';
1022
+ type StoreEntry = {
1023
+ value: number | string | boolean;
1024
+ label?: string;
1025
+ at: string;
1026
+ };
1027
+ type Store = {
1028
+ name: string;
1029
+ description: string;
1030
+ valueType: 'scalar' | 'series';
1031
+ unit?: string;
1032
+ visibility: StoreVisibility;
1033
+ entryCount: number;
1034
+ lastValue?: number | string | boolean;
1035
+ lastAt?: string;
1036
+ };
1037
+ type StoreWithEntries = {
1038
+ name: string;
1039
+ description: string;
1040
+ unit?: string;
1041
+ entries: StoreEntry[];
1042
+ };
1043
+ type StoreCreatePayload = {
1044
+ name: string;
1045
+ description?: string;
1046
+ valueType?: 'scalar' | 'series';
1047
+ unit?: string;
1048
+ visibility?: StoreVisibility;
1049
+ };
1050
+ type StoreEntryPayload = {
1051
+ storeName?: string;
1052
+ value: number | string | boolean;
1053
+ label?: string;
1054
+ };
1055
+ type StoreEntryResult = {
1056
+ name: string;
1057
+ entryCount: number;
1058
+ };
1059
+ type StoreToggleResult = {
1060
+ name: string;
1061
+ value: number | string | boolean;
1062
+ previous: number | string | boolean;
1063
+ };
1064
+ type StorePricing = {
678
1065
  model: PricingModel;
679
1066
  amount: string;
680
1067
  currency: string;
@@ -685,17 +1072,18 @@ type MarketplacePricing = {
685
1072
  trialDays?: number;
686
1073
  } | null;
687
1074
  };
688
- type MarketplaceInfo = {
1075
+ type StoreInfo = {
689
1076
  price: number | null;
690
1077
  purchased: boolean;
691
1078
  uses: number;
692
1079
  public: boolean;
693
- pricing: MarketplacePricing;
1080
+ pricing: StorePricing;
694
1081
  };
695
- type MarketplaceAgent = {
1082
+ type StoreAgent = {
696
1083
  uuid: string;
697
1084
  name: string;
698
1085
  description: string | null;
1086
+ public: boolean;
699
1087
  avatar: string | null;
700
1088
  wallets: {
701
1089
  address: string;
@@ -705,12 +1093,15 @@ type MarketplaceAgent = {
705
1093
  name: string | null;
706
1094
  bio: string | null;
707
1095
  } | null;
708
- marketplace: MarketplaceInfo;
1096
+ marketplace: StoreInfo;
709
1097
  screenshots: string[];
1098
+ mcpEndpoint: string;
1099
+ a2aCard: string;
1100
+ blueprint: Blueprint | null;
710
1101
  };
711
- type MarketplaceItem = {
1102
+ type StoreItem = {
712
1103
  type: 'agent';
713
- item: MarketplaceAgent;
1104
+ item: StoreAgent;
714
1105
  } | {
715
1106
  type: 'blueprint';
716
1107
  item: Blueprint;
@@ -721,15 +1112,53 @@ type MarketplaceItem = {
721
1112
  type: 'skill';
722
1113
  item: Skill;
723
1114
  };
724
- type MarketplaceData = {
1115
+ type StoreData = {
725
1116
  blueprints: Blueprint[];
726
1117
  skills: Skill[];
727
1118
  flows: Flow[];
728
1119
  creators: BrandBackend[];
729
- agents: MarketplaceAgent[];
730
- items: MarketplaceItem[];
1120
+ agents: StoreAgent[];
1121
+ items: StoreItem[];
731
1122
  };
732
- //#endregion
1123
+ type StorePriceTier = {
1124
+ sku: string;
1125
+ priceCents: number;
1126
+ label: string;
1127
+ };
1128
+ /**
1129
+ * Normalized representation of any marketplace entity for use in checkout flows.
1130
+ * All marketplace entities share a `.marketplace: StoreInfo` property —
1131
+ * combine that with the entity type and ID to construct this.
1132
+ */
1133
+ type StorePurchaseResult = {
1134
+ purchased: boolean;
1135
+ pricePaid: number;
1136
+ entityType: string;
1137
+ entityId: string;
1138
+ paymentMethod: string;
1139
+ };
1140
+ type TeamEarning = {
1141
+ id: string;
1142
+ amount: number;
1143
+ status: 'pending' | 'paid';
1144
+ orderId: string | null;
1145
+ createdAt: string;
1146
+ };
1147
+ type TeamEarningsBalance = {
1148
+ pendingCents: number;
1149
+ paidCents: number;
1150
+ totalCents: number;
1151
+ };
1152
+ type CommissionAgreement = {
1153
+ id: number;
1154
+ rate: number;
1155
+ status: string;
1156
+ recipientTeam: {
1157
+ name: string;
1158
+ slug: string;
1159
+ };
1160
+ createdAt: string;
1161
+ }; //#endregion
733
1162
  //#region src/blueprint/types.d.ts
734
1163
  type BlueprintTeam = {
735
1164
  slug: string;
@@ -747,7 +1176,7 @@ type Blueprint = {
747
1176
  verified: boolean;
748
1177
  createdAt: string;
749
1178
  locales: WarpLocale[];
750
- marketplace: MarketplaceInfo;
1179
+ marketplace: StoreInfo;
751
1180
  tags: string[];
752
1181
  screenshots: string[];
753
1182
  };
@@ -775,6 +1204,27 @@ type BlueprintShortcut = {
775
1204
  chat: boolean;
776
1205
  }; //#endregion
777
1206
  //#region src/helpers/string.d.ts
1207
+ //#endregion
1208
+ //#region src/alert/types.d.ts
1209
+ type Alert = {
1210
+ id: string;
1211
+ chain: string;
1212
+ warp: string;
1213
+ key: string;
1214
+ event: string;
1215
+ contract: string;
1216
+ active: boolean;
1217
+ createdAt: string;
1218
+ agent: Agent | null;
1219
+ }; //#endregion
1220
+ //#region src/api/types.d.ts
1221
+ type ApiToken = {
1222
+ id: number;
1223
+ name: string;
1224
+ teams: Team[];
1225
+ createdAt: string;
1226
+ token?: string;
1227
+ };
778
1228
  type PaginatedResponse<T> = {
779
1229
  data: T[];
780
1230
  current_page: number;
@@ -818,12 +1268,12 @@ type Meeting = {
818
1268
  conferenceProvider: MeetingConferenceProvider | null;
819
1269
  conferenceUrl: string | null;
820
1270
  conferenceExternalId: string | null;
1271
+ configuration?: Configuration;
821
1272
  captureMode: 'desktop_local' | null;
822
1273
  transcriptUrl: string | null;
823
1274
  summaryUrl: string | null;
824
1275
  participants?: MeetingParticipant[];
825
1276
  speakerAssignments?: MeetingSpeakerAssignment[] | null;
826
- configuration?: Record<string, WarpNativeValue>;
827
1277
  scheduledAt: string | null;
828
1278
  calendarEventId: number | null;
829
1279
  startedAt: string | null;
@@ -855,6 +1305,10 @@ type MeetingJoinInfo = {
855
1305
  canCancel: boolean;
856
1306
  features: Record<MeetingFeature, boolean>;
857
1307
  };
1308
+ type MeetingSummary = {
1309
+ content: string;
1310
+ }; //#endregion
1311
+ //#region src/appointment/types.d.ts
858
1312
  type AppointmentAvailabilityService = {
859
1313
  slug: string;
860
1314
  name: string | null;
@@ -902,7 +1356,7 @@ type AppointmentBooking = {
902
1356
  status: string;
903
1357
  attendeeEmail: string | null;
904
1358
  attendeeName: string | null;
905
- configuration?: Record<string, WarpNativeValue>;
1359
+ configuration?: Configuration;
906
1360
  };
907
1361
  type AppointmentRequest = {
908
1362
  id: string;
@@ -918,64 +1372,146 @@ type AppointmentRequest = {
918
1372
  start: string;
919
1373
  end: string;
920
1374
  }[] | null;
921
- configuration?: Record<string, WarpNativeValue>;
922
1375
  service?: Service | null;
923
1376
  meeting?: Meeting | null;
924
1377
  agent?: Agent | null;
1378
+ configuration?: Configuration;
1379
+ createdAt: string;
1380
+ }; //#endregion
1381
+ //#region src/budget/types.d.ts
1382
+ //#endregion
1383
+ //#region src/card/types.d.ts
1384
+ type Card = {
1385
+ id: string;
1386
+ warp: string;
1387
+ inputs: string[];
1388
+ order: number;
1389
+ active: boolean;
1390
+ createdAt: string;
1391
+ }; //#endregion
1392
+ //#region src/challenge/types.d.ts
1393
+ type Challenge = {
1394
+ id: number;
1395
+ title: string;
1396
+ description: string;
1397
+ target: number;
1398
+ progress: number;
1399
+ progressPercent: number;
1400
+ completed: boolean;
1401
+ xpReward: number;
1402
+ endsAt?: string;
1403
+ };
1404
+ type Challenges = {
1405
+ daily: Challenge[];
1406
+ weekly: Challenge[];
1407
+ }; //#endregion
1408
+ //#region src/changelog/types.d.ts
1409
+ type ChangelogEntry = {
1410
+ id: number;
1411
+ version?: string;
1412
+ type: 'feature' | 'fix' | 'improvement' | 'update';
1413
+ title: string;
1414
+ description?: string;
925
1415
  createdAt: string;
926
1416
  }; //#endregion
927
- //#region src/budget/types.d.ts
1417
+ //#region src/chat-reactions/types.d.ts
1418
+ /** Emoji → array of user hashids who reacted */
928
1419
  //#endregion
929
- //#region src/contact/types.d.ts
930
- type Contact = {
1420
+ //#region src/contract/types.d.ts
1421
+ type Contract = {
931
1422
  id: string;
1423
+ uuid: string;
1424
+ slug: string;
1425
+ agentId: string;
932
1426
  name: string;
933
- wallets: Wallet[];
934
- email: string | null;
935
- phone: string | null;
936
- company: string | null;
937
- title: string | null;
938
- birthday: string | null;
939
- website: string | null;
940
- location: string | null;
941
- socials: Record<string, string> | null;
942
- notes: string | null;
943
- tags: string[] | null;
944
- userId: string | null;
945
- locale?: string | null;
946
- props?: Record<string, string> | null;
1427
+ description: string | null;
1428
+ chain: WarpChainName;
1429
+ category: ContractCategoryName;
1430
+ public: boolean;
1431
+ addresses: Record<string, string | null>;
1432
+ verified: boolean;
1433
+ dockerImage: string | null;
1434
+ verificationTaskId: Record<string, string> | null;
1435
+ abiUrl: string | null;
1436
+ initArgs: Record<string, string[]>;
1437
+ upgradeArgs: Record<string, string[]>;
1438
+ codeMetadata: string | null;
1439
+ errors: Record<string, string> | null;
1440
+ entity: ContractEntity | null;
1441
+ versionsCount: number;
1442
+ createdAt: string;
1443
+ updatedAt: string;
947
1444
  };
948
- type ContactActivityType = 'note' | 'call' | 'meeting' | 'task' | 'update' | 'custom' | 'form';
949
- type ContactActivityAuthor = {
950
- name: string;
951
- imageUrl: string | null;
1445
+ type ContractVersion = {
1446
+ id: number;
1447
+ status: string;
1448
+ env: string;
1449
+ type: 'deploy' | 'upgrade';
1450
+ txHash: string | null;
1451
+ codeHash: string | null;
1452
+ version: number | null;
1453
+ duration: number | null;
1454
+ hasCode: boolean;
1455
+ createdAt: string;
952
1456
  };
953
- type ContactActivity = {
1457
+ type ContractEntity = {
1458
+ auto: boolean;
1459
+ source: Record<string, string> | null;
1460
+ };
1461
+ type ContractCategoryName = 'default' | 'nft' | 'marketplace' | 'staking' | 'governance' | 'defi' | 'game' | 'social' | 'identity' | 'infra';
1462
+ //#endregion
1463
+ //#region src/element/types.d.ts
1464
+ type ElementType = 'character' | 'environment' | 'style' | 'product' | 'brand';
1465
+ type ElementSpec = {
1466
+ baseColor?: string | null;
1467
+ material?: string | null;
1468
+ texture?: string | null;
1469
+ pattern?: string | null;
1470
+ finish?: string | null;
1471
+ condition?: string | null;
1472
+ setting?: string | null;
1473
+ background?: string | null;
1474
+ surface?: string | null;
1475
+ weather?: string | null;
1476
+ timeOfDay?: string | null;
1477
+ season?: string | null;
1478
+ lightingType?: string | null;
1479
+ lightingColor?: string | null;
1480
+ lightingDirection?: string | null;
1481
+ mood?: string | null;
1482
+ atmosphere?: string | null;
1483
+ colorPalette?: string | null;
1484
+ style?: string | null;
1485
+ rendering?: string | null;
1486
+ colorGrade?: string | null;
1487
+ shotType?: string | null;
1488
+ cameraAngle?: string | null;
1489
+ lens?: string | null;
1490
+ depthOfField?: string | null;
1491
+ framing?: string | null;
1492
+ avoid?: string | null;
1493
+ };
1494
+ type ElementVariation = {
954
1495
  id: string;
955
- type: ContactActivityType;
956
- description: string | null;
957
- meta: Record<string, any> | null;
958
- agentName: string | null;
1496
+ label: string | null;
1497
+ overrides: ElementSpec | null;
1498
+ model: string | null;
1499
+ aspectRatio: string;
1500
+ primaryMediaId: string | null;
1501
+ primaryImage: Media | null;
1502
+ images: Media[];
959
1503
  createdAt: string;
960
- author?: ContactActivityAuthor | null;
961
1504
  };
962
- type ContactFormData = {
963
- name?: string;
964
- email?: string | null;
965
- phone?: string | null;
966
- company?: string | null;
967
- title?: string | null;
968
- birthday?: string | null;
969
- website?: string | null;
970
- location?: string | null;
971
- socials?: Record<string, string> | null;
972
- notes?: string | null;
973
- tags?: string[] | null;
974
- locale?: string | null;
975
- props?: Record<string, string> | null;
1505
+ type Element = {
1506
+ id: string;
1507
+ name: string;
1508
+ type: ElementType;
1509
+ description: string | null;
1510
+ spec: ElementSpec | null;
1511
+ media: Media[];
1512
+ variations: ElementVariation[];
1513
+ createdAt: string;
976
1514
  }; //#endregion
977
- //#region src/contract/types.d.ts
978
- //#endregion
979
1515
  //#region src/document/types.d.ts
980
1516
  type Document = {
981
1517
  id: string;
@@ -985,6 +1521,30 @@ type Document = {
985
1521
  createdAt: string;
986
1522
  }; //#endregion
987
1523
  //#region src/experience/types.d.ts
1524
+ type Experience = {
1525
+ level: number;
1526
+ levelUpperLimit: number;
1527
+ levelProgressPercent: number;
1528
+ };
1529
+ type Achievement = {
1530
+ name: string;
1531
+ description: string;
1532
+ icon: string;
1533
+ earnedAt: string | null;
1534
+ };
1535
+ type RecentExperience = {
1536
+ slug: string;
1537
+ description: string;
1538
+ points: number;
1539
+ earnedAt: string;
1540
+ };
1541
+ type MilestoneType = 'messages' | 'streak' | 'hoursSaved' | 'warps';
1542
+ type Milestone = {
1543
+ type: MilestoneType;
1544
+ current: number;
1545
+ target: number;
1546
+ remaining: number;
1547
+ };
988
1548
  //#endregion
989
1549
  //#region src/goal/types.d.ts
990
1550
  type GoalStatus = 'active' | 'paused' | 'completed' | 'archived';
@@ -1006,6 +1566,29 @@ type GoalCreatePayload = {
1006
1566
  }; //#endregion
1007
1567
  //#region src/hint/types.d.ts
1008
1568
  //#endregion
1569
+ //#region src/inquiry/types.d.ts
1570
+ type Inquiry = {
1571
+ id: string;
1572
+ content: string;
1573
+ type: InquiryType;
1574
+ status: InquiryStatus;
1575
+ user: User;
1576
+ createdAt: string;
1577
+ updatedAt: string;
1578
+ };
1579
+ type InquiryType = 'general' | 'bug' | 'feature';
1580
+ type InquiryStatus = 'pending' | 'active' | 'closed'; //#endregion
1581
+ //#region src/intelligence/types.d.ts
1582
+ //#endregion
1583
+ //#region src/intent/types.d.ts
1584
+ type Intent = {
1585
+ id: string;
1586
+ room: string;
1587
+ warp: string;
1588
+ inputs: string[];
1589
+ seenAt: string | null;
1590
+ createdAt: string;
1591
+ }; //#endregion
1009
1592
  //#region src/item/types.d.ts
1010
1593
  type ItemStatus = 'backlog' | 'active' | 'review' | 'done' | 'archived';
1011
1594
  type ItemPriority = 'normal' | 'high' | 'critical';
@@ -1030,53 +1613,521 @@ type Item = {
1030
1613
  };
1031
1614
  type ItemCreatePayload = {
1032
1615
  title: string;
1033
- description?: string;
1034
- priority?: ItemPriority;
1035
- tags?: string[];
1036
- dueDate?: string;
1037
- goalId?: string;
1038
- status?: ItemStatus;
1039
- agents?: string[];
1040
- contactIds?: string[];
1041
- assignedToIds?: string[];
1616
+ description?: string;
1617
+ priority?: ItemPriority;
1618
+ tags?: string[];
1619
+ dueDate?: string;
1620
+ goalId?: string;
1621
+ status?: ItemStatus;
1622
+ agents?: string[];
1623
+ contactIds?: string[];
1624
+ assignedToIds?: string[];
1625
+ };
1626
+ type ItemUpdatePayload = {
1627
+ title?: string;
1628
+ description?: string | null;
1629
+ status?: ItemStatus;
1630
+ priority?: ItemPriority;
1631
+ tags?: string[];
1632
+ dueDate?: string | null;
1633
+ goalId?: string | null;
1634
+ agents?: string[];
1635
+ contactIds?: string[];
1636
+ assignedToIds?: string[];
1637
+ }; //#endregion
1638
+ //#region src/marketing/types.d.ts
1639
+ //#endregion
1640
+ //#region src/mcp/types.d.ts
1641
+ type McpToolCallStatus = 'pending' | 'success' | 'error';
1642
+ type McpToolCall = {
1643
+ id: string;
1644
+ toolName: string;
1645
+ serverName: string | null;
1646
+ status: McpToolCallStatus;
1647
+ durationMs: number | null;
1648
+ inputSummary: Record<string, unknown> | null;
1649
+ outputSummary: Record<string, unknown> | null;
1650
+ error: string | null;
1651
+ roomId: string | null;
1652
+ integrationId: string | null;
1653
+ agentUuid: string;
1654
+ createdAt: string;
1655
+ };
1656
+ //#endregion
1657
+ //#region src/memory/types.d.ts
1658
+ type Memory = {
1659
+ id: string;
1660
+ name: string;
1661
+ content: string;
1662
+ createdAt: string;
1663
+ contactId: string | null;
1664
+ roomId: string | null;
1665
+ }; //#endregion
1666
+ //#region src/peerme/types.d.ts
1667
+ type MediaAttributes = {
1668
+ uuid: string;
1669
+ order: number;
1670
+ name: string;
1671
+ custom_properties: {
1672
+ [key: string]: any;
1673
+ };
1674
+ preview_url: null | string;
1675
+ original_url: null | string;
1676
+ extension?: string;
1677
+ size?: number;
1678
+ };
1679
+ type MediaItems = {
1680
+ [uuid: string]: MediaAttributes;
1681
+ };
1682
+ type EntityTemplate = 'default' | 'next' | 'custom' | 'multisig';
1683
+ type Entity = {
1684
+ id: string;
1685
+ address: string;
1686
+ slug: string;
1687
+ name: string;
1688
+ description: string;
1689
+ avatarUrl: string | null;
1690
+ headerImageUrl: string | null;
1691
+ verified: boolean;
1692
+ private: boolean;
1693
+ template: EntityTemplate;
1694
+ specialization: string | null;
1695
+ justCreated: boolean;
1696
+ tags: string[];
1697
+ socials: [string, string];
1698
+ features: string[];
1699
+ governance: {
1700
+ nft: boolean | null;
1701
+ owned: boolean | null;
1702
+ token: string | null;
1703
+ tokenLocking: boolean;
1704
+ tokenName: string | null;
1705
+ tokenDecimals: number | null;
1706
+ minVoteWeight: string | null;
1707
+ minProposeWeight: string | null;
1708
+ quorum: string | null;
1709
+ votingPeriodMinutes: number | null;
1710
+ plug: string | null;
1711
+ rolesRestrictPropose: string[];
1712
+ restrictedNonces: number[];
1713
+ earnStake?: string | null;
1714
+ earnStakeNft?: boolean | null;
1715
+ earnReward?: string | null;
1716
+ earnLockTime?: number;
1717
+ };
1718
+ leaders: number;
1719
+ level: number;
1720
+ credits: any | null;
1721
+ version: string;
1722
+ callerRoles: any[];
1723
+ parent: Entity | null;
1724
+ children: Entity[];
1725
+ favorited: boolean;
1726
+ pipeline: string | null;
1727
+ network: {
1728
+ name: string;
1729
+ displayName: string;
1730
+ env: string;
1731
+ urls: {
1732
+ api: string;
1733
+ explorer: string;
1734
+ };
1735
+ chainId: string;
1736
+ blockTimeMs: number;
1737
+ };
1738
+ kyc: any | null;
1739
+ };
1740
+ type ProposalStatus = 'pending' | 'active' | 'defeated' | 'succeeded' | 'executed' | 'canceled' | 'execution-failed';
1741
+ type ProposalPollOption = {
1742
+ id: number;
1743
+ text: string;
1744
+ weight: string;
1745
+ percent: number;
1746
+ media: MediaItems;
1747
+ };
1748
+ type ProposalActionPayment = {
1749
+ tokenId: string;
1750
+ tokenNonce: number;
1751
+ tokenDecimals?: number | null;
1752
+ amount: string;
1753
+ };
1754
+ type ProposalAction = {
1755
+ destination: string;
1756
+ endpoint: string | null;
1757
+ value: string;
1758
+ payments: ProposalActionPayment[];
1759
+ arguments: string[];
1760
+ targetUser?: any | null;
1761
+ targetContract?: any | null;
1762
+ ticket?: any | null;
1763
+ bounty?: any | null;
1764
+ guards?: any[];
1765
+ };
1766
+ type Proposal = {
1767
+ id: string;
1768
+ chainId: number;
1769
+ title: string;
1770
+ description: string | null;
1771
+ proposer: any;
1772
+ entity: Entity;
1773
+ upvotes: string | null;
1774
+ downvotes: string | null;
1775
+ approvePercent: number;
1776
+ quorumPercent: number;
1777
+ weighted: boolean;
1778
+ startsAt: string | null;
1779
+ endsAt: string | null;
1780
+ createdAt: string;
1781
+ status: ProposalStatus;
1782
+ actions: ProposalAction[];
1783
+ poll: any | null;
1784
+ permissions: string[];
1785
+ guards: any[];
1786
+ signing: {
1787
+ has: boolean;
1788
+ can: boolean;
1789
+ } | null;
1790
+ attachments: MediaItems;
1791
+ processed: boolean;
1792
+ ended: boolean;
1793
+ finalizing: boolean;
1794
+ executable: boolean;
1795
+ justCreated: boolean;
1796
+ tx: string;
1797
+ contentHash: string;
1798
+ actionsHash: string;
1799
+ trashed: boolean;
1800
+ };
1801
+ type ChatClientAction = 'AGENT_DELEGATE' | 'WARP_EXECUTE' | 'WARP_VIEW' | 'WARP_CREATE' | 'WARP_TEST' | 'WARP_INPUT' | 'WARP_APPROVE' | 'WARP_SELECT' | 'WARP_BATCH' | 'WARP_BULK' | 'ENTITY_PROPOSE' | 'ENTITY_SIGN' | 'SECRET_SET' | 'SECRET_AUTHORIZE' | 'HEALTH_QUERY' | 'HEALTH_WRITE' | 'ITEM_VIEW' | 'BOARD_SUMMARY' | 'GOAL_PROGRESS' | 'CONTACT_VIEW' | 'MARKETPLACE_PURCHASE' | 'WARP_CLOUD_EXECUTE' | 'MISSION_VIEW' | 'ACTIVITY' | 'PERSONA_QUESTION' | 'NFC_WRITE' | 'twilio.sms';
1802
+ type Message = {
1803
+ id: string;
1804
+ room: string;
1805
+ role: MessageRole;
1806
+ source: string;
1807
+ agent: string | null;
1808
+ content: string;
1809
+ action: ChatClientAction | null;
1810
+ credits: number;
1811
+ createdAt: string;
1812
+ audio: string | null;
1813
+ media: Media[];
1814
+ meta: {
1815
+ tx?: string;
1816
+ warp?: string;
1817
+ inputs?: string[];
1818
+ output?: Record<string, unknown>;
1819
+ timeSavedSeconds?: number;
1820
+ actionResponded?: boolean;
1821
+ reactions?: Record<string, string[]>;
1822
+ };
1823
+ };
1824
+ type MessageRole = 'user' | 'agent' | 'external'; //#endregion
1825
+ //#region src/mission/types.d.ts
1826
+ type MissionStatus = 'active' | 'paused' | 'awaiting_approval' | 'completed' | 'failed' | 'cancelled';
1827
+ type MissionPriority = 'low' | 'normal' | 'high' | 'urgent';
1828
+ type MissionSchedule = {
1829
+ intervalMs: number;
1830
+ maxTicks: number | null;
1831
+ maxDurationMs: number | null;
1832
+ };
1833
+ type MissionPlan = {
1834
+ strategy: string;
1835
+ tickBehavior: string;
1836
+ completionConditions: string[];
1837
+ reportingStrategy: string;
1838
+ availableTools: string[];
1839
+ needsSandbox: boolean;
1840
+ sandboxTemplate: string | null;
1841
+ needsWorkspace: boolean;
1842
+ };
1843
+ type MissionBudget = {
1844
+ maxTokens: number | null;
1845
+ maxCostCents: number | null;
1846
+ maxIterationsPerTick: number;
1847
+ usedTokens: number;
1848
+ usedCostCents: number;
1849
+ };
1850
+ type Mission = {
1851
+ id: string;
1852
+ title: string;
1853
+ description: string | null;
1854
+ status: MissionStatus;
1855
+ priority: MissionPriority;
1856
+ schedule: MissionSchedule | null;
1857
+ plan: MissionPlan | null;
1858
+ budget: MissionBudget | null;
1859
+ tickCount: number;
1860
+ roomId: string | null;
1861
+ agentId: string;
1862
+ supervisorId: string | null;
1863
+ parentId: string | null;
1864
+ childCount?: number;
1865
+ startedAt: string | null;
1866
+ completedAt: string | null;
1867
+ createdAt: string;
1868
+ updatedAt: string;
1869
+ };
1870
+ type MissionCreatePayload = {
1871
+ title: string;
1872
+ description?: string;
1873
+ priority?: MissionPriority;
1874
+ }; //#endregion
1875
+ //#region src/notification/types.d.ts
1876
+ type NotificationChannel = 'mail' | 'push';
1877
+ type NotificationType = 'unknown' | 'marketing' | 'proactive-message';
1878
+ type NotificationAgent = {
1879
+ uuid: string;
1880
+ name: string;
1881
+ avatar: string;
1882
+ };
1883
+ type Notification = {
1884
+ id: string;
1885
+ type: NotificationType;
1886
+ title: string;
1887
+ message: string | null;
1888
+ url: string | null;
1889
+ agent: NotificationAgent | null;
1890
+ time: string;
1891
+ readAt: string | null;
1892
+ respondedAt: string | null;
1893
+ createdAt: string;
1894
+ actions: NotificationAction[];
1895
+ };
1896
+ type NotificationAction = {
1897
+ identifier: string;
1898
+ text: string;
1899
+ highlight: boolean;
1900
+ };
1901
+ type NotificationSetting = {
1902
+ identifier: string;
1903
+ name: string;
1904
+ description: string;
1905
+ channels: {
1906
+ identifier: NotificationChannel;
1907
+ name: string;
1908
+ isEnabled: boolean;
1909
+ }[];
1910
+ }; //#endregion
1911
+ //#region src/office/types.d.ts
1912
+ type OfficeAgent = {
1913
+ uuid: string;
1914
+ name: string;
1915
+ avatar: string;
1916
+ roomId: string;
1917
+ lastActivityAt: string | null;
1918
+ };
1919
+ type OfficeMember = {
1920
+ id: string;
1921
+ name: string;
1922
+ profileImageUrl: string | null;
1923
+ role: string;
1924
+ lastActivityAt: string | null;
1925
+ };
1926
+ type OfficeSnapshot = {
1927
+ team: string;
1928
+ generatedAt: string;
1929
+ agents: OfficeAgent[];
1930
+ members: OfficeMember[];
1931
+ };
1932
+ //#endregion
1933
+ //#region src/project/types.d.ts
1934
+ type ProjectStatus = 'draft' | 'planned' | 'render-ready' | 'rendered' | 'composed' | 'exported';
1935
+ type ProjectOutputPreset = '9:16 social' | '16:9 launch' | '1:1 square teaser';
1936
+ type ProjectOutputType = 'video' | 'slideshow' | 'clips';
1937
+ type ProjectRenderMode = 'draft' | 'final';
1938
+ type ProjectAspectRatio = '16:9' | '9:16' | '1:1';
1939
+ type ProjectStudioStage = 'questions' | 'concept' | 'draft-ready' | 'source-processing' | 'candidates-ready';
1940
+ type ProjectSourceMedia = {
1941
+ id?: string | null;
1942
+ name?: string | null;
1943
+ mime?: string | null;
1944
+ url: string;
1945
+ };
1946
+ type ProjectTranscriptSegment = {
1947
+ id: string;
1948
+ startMs: number;
1949
+ endMs: number;
1950
+ text: string;
1951
+ };
1952
+ type ProjectTranscript = {
1953
+ text: string;
1954
+ language?: string | null;
1955
+ durationSeconds?: number | null;
1956
+ segments?: ProjectTranscriptSegment[];
1957
+ };
1958
+ type ProjectClipCandidate = {
1959
+ id: string;
1960
+ title: string;
1961
+ excerpt: string;
1962
+ startMs: number;
1963
+ endMs: number;
1964
+ durationMs: number;
1965
+ score: number;
1966
+ reason: string;
1967
+ platformFit?: string[] | null;
1968
+ selected?: boolean;
1969
+ viralityScore?: number | null;
1970
+ thumbnailUrl?: string | null;
1971
+ };
1972
+ type ProjectSelectedClip = {
1973
+ id: string;
1974
+ candidateId?: string | null;
1975
+ title: string;
1976
+ excerpt?: string | null;
1977
+ startMs: number;
1978
+ endMs: number;
1979
+ durationMs: number;
1980
+ captionsEnabled?: boolean;
1981
+ captionText?: string | null;
1982
+ viralityScore?: number | null;
1983
+ };
1984
+ type ProjectCaptionStyle = {
1985
+ preset?: 'bold' | 'subtitle' | 'minimal' | 'brand' | null;
1986
+ fontSize?: number | null;
1987
+ primaryColor?: string | null;
1988
+ highlightColor?: string | null;
1989
+ position?: 'bottom' | 'center' | null;
1990
+ };
1991
+ type ProjectClips = {
1992
+ sourceMedia?: ProjectSourceMedia[];
1993
+ sourceUrl?: string | null;
1994
+ transcript?: ProjectTranscript | null;
1995
+ candidates?: ProjectClipCandidate[];
1996
+ selected?: ProjectSelectedClip[];
1997
+ captionStyle?: ProjectCaptionStyle | null;
1998
+ targetLanguage?: string | null;
1999
+ };
2000
+ type ProjectStudioHistoryEntry = {
2001
+ role: 'user' | 'assistant';
2002
+ content: string;
2003
+ };
2004
+ type ProjectStudioQuestion = {
2005
+ id: string;
2006
+ question: string;
2007
+ rationale?: string | null;
2008
+ placeholder?: string | null;
2009
+ };
2010
+ type ProjectStyleDirection = {
2011
+ id: string;
2012
+ title: string;
2013
+ summary: string;
2014
+ lookAndFeel: string;
2015
+ hook?: string | null;
2016
+ cta?: string | null;
2017
+ promptSeed: string;
2018
+ previewMedia?: Array<Record<string, any>>;
1042
2019
  };
1043
- //#endregion
1044
- //#region src/memory/types.d.ts
1045
- type Memory = {
2020
+ type ProjectStudioSummary = {
2021
+ name: string;
2022
+ shortSummary: string;
2023
+ brief: string;
2024
+ platformStrategy?: string | null;
2025
+ outputPreset: ProjectOutputPreset;
2026
+ targetPlatforms: string[];
2027
+ hook?: string | null;
2028
+ voiceover?: string | null;
2029
+ cta?: string | null;
2030
+ };
2031
+ type ProjectStudioState = {
2032
+ stage: ProjectStudioStage;
2033
+ assistantReply?: string | null;
2034
+ questions?: ProjectStudioQuestion[];
2035
+ summary?: ProjectStudioSummary | null;
2036
+ styleDirections?: ProjectStyleDirection[];
2037
+ autoSelectedSkills?: Array<{
2038
+ id: string;
2039
+ name: string;
2040
+ type: string | null;
2041
+ }>;
2042
+ conversation?: ProjectStudioHistoryEntry[];
2043
+ updatedAt?: string | null;
2044
+ };
2045
+ type ProjectShot = {
2046
+ title?: string | null;
2047
+ subjectContext?: string | null;
2048
+ action?: string | null;
2049
+ style?: string | null;
2050
+ camera?: string | null;
2051
+ composition?: string | null;
2052
+ lensFocus?: string | null;
2053
+ ambiance?: string | null;
2054
+ audioCues?: string | null;
2055
+ dialogue?: string | null;
2056
+ negativePrompt?: string | null;
2057
+ platformConstraints?: string | null;
2058
+ durationSeconds?: 4 | 6 | 8 | null;
2059
+ aspectRatio?: ProjectAspectRatio | null;
2060
+ renderMode?: ProjectRenderMode | null;
2061
+ prompt?: string;
2062
+ model?: string;
2063
+ mode?: string;
2064
+ referenceImages?: Array<Record<string, any>>;
2065
+ firstFrame?: Record<string, any> | null;
2066
+ lastFrame?: Record<string, any> | null;
2067
+ motionReference?: Record<string, any> | null;
2068
+ };
2069
+ type Project = {
1046
2070
  id: string;
1047
2071
  name: string;
1048
- content: string;
2072
+ status: ProjectStatus;
2073
+ brief: string | null;
2074
+ outputPreset: ProjectOutputPreset;
2075
+ outputType: ProjectOutputType;
2076
+ selectedSkills: string[];
2077
+ targetPlatforms: string[];
2078
+ script: Record<string, any> | null;
2079
+ storyboard: ProjectShot[];
2080
+ referenceImages: Array<Record<string, any>>;
2081
+ clips?: ProjectClips | null;
2082
+ generatedImages: Array<Record<string, any>>;
2083
+ generatedVideos: Array<Record<string, any>>;
2084
+ generatedAudio: Array<Record<string, any>>;
2085
+ assembly: Record<string, any> | null;
2086
+ soundtrack: Record<string, any> | null;
2087
+ finalAsset: Record<string, any> | null;
2088
+ nsfw: boolean;
2089
+ studioState?: ProjectStudioState | null;
2090
+ revisions: Array<Record<string, any>>;
2091
+ elements: Element[];
2092
+ latestExport?: ProjectExport | null;
2093
+ team: string | null;
1049
2094
  createdAt: string;
1050
- contactId: string | null;
1051
- roomId: string | null;
1052
- }; //#endregion
1053
- //#region src/peerme/types.d.ts
1054
- type ChatClientAction = 'AGENT_DELEGATE' | 'WARP_EXECUTE' | 'WARP_VIEW' | 'WARP_CREATE' | 'WARP_TEST' | 'WARP_INPUT' | 'WARP_APPROVE' | 'WARP_SELECT' | 'WARP_BATCH' | 'WARP_BULK' | 'ENTITY_PROPOSE' | 'ENTITY_SIGN' | 'SECRET_SET' | 'SECRET_AUTHORIZE' | 'HEALTH_QUERY' | 'HEALTH_WRITE' | 'ITEM_VIEW' | 'BOARD_SUMMARY' | 'GOAL_PROGRESS' | 'CONTACT_VIEW' | 'MARKETPLACE_PURCHASE' | 'WARP_CLOUD_EXECUTE' | 'MISSION_VIEW' | 'ACTIVITY' | 'PERSONA_QUESTION' | 'NFC_WRITE' | 'twilio.sms';
1055
- type Message = {
2095
+ updatedAt: string;
2096
+ };
2097
+ type ProjectMutation = Partial<Pick<Project, 'name' | 'brief' | 'status' | 'outputPreset' | 'outputType' | 'selectedSkills' | 'targetPlatforms' | 'storyboard' | 'assembly' | 'soundtrack' | 'finalAsset' | 'referenceImages' | 'clips' | 'generatedImages' | 'generatedVideos' | 'generatedAudio' | 'nsfw' | 'studioState'>> & {
2098
+ script?: Record<string, any> | null;
2099
+ outputAssets?: Record<string, any> | null;
2100
+ };
2101
+ type ProjectExportAsset = {
1056
2102
  id: string;
1057
- room: string;
1058
- role: MessageRole;
1059
- source: string;
1060
- agent: string | null;
1061
- content: string;
1062
- action: ChatClientAction | null;
1063
- credits: number;
2103
+ url: string;
2104
+ name: string;
2105
+ mimeType: string;
2106
+ thumbnailUrl?: string | null;
2107
+ };
2108
+ type ProjectExport = {
2109
+ uuid: string;
2110
+ name: string;
2111
+ assets: ProjectExportAsset[];
2112
+ script: Record<string, any> | null;
2113
+ clientName: string | null;
2114
+ message: string | null;
2115
+ views: number;
2116
+ expiresAt: string | null;
2117
+ url: string;
1064
2118
  createdAt: string;
1065
- audio: string | null;
1066
- media: Media[];
1067
- meta: {
1068
- tx?: string;
1069
- warp?: string;
1070
- inputs?: string[];
1071
- output?: Record<string, unknown>;
1072
- timeSavedSeconds?: number;
1073
- actionResponded?: boolean;
1074
- reactions?: Record<string, string[]>;
1075
- };
1076
2119
  };
1077
- type MessageRole = 'user' | 'agent' | 'external'; //#endregion
1078
- //#region src/mission/types.d.ts
1079
- //#endregion
2120
+ type ProjectExportResponse = {
2121
+ project: Project;
2122
+ export: ProjectExport;
2123
+ exportUrl: string;
2124
+ };
2125
+ type ProjectInputAssistIntent = 'clarify' | 'shorten' | 'cinematic' | 'structure';
2126
+ type ProjectInputAssistResponse = {
2127
+ label: string;
2128
+ rationale?: string | null;
2129
+ text: string;
2130
+ }; //#endregion
1080
2131
  //#region src/reminder/types.d.ts
1081
2132
  type Reminder = {
1082
2133
  id: string;
@@ -1086,7 +2137,17 @@ type Reminder = {
1086
2137
  createdAt: string;
1087
2138
  }; //#endregion
1088
2139
  //#region src/shortcut/types.d.ts
1089
- //#endregion
2140
+ type Shortcut = {
2141
+ id: string;
2142
+ name: string;
2143
+ description: string | null;
2144
+ warp: string;
2145
+ inputs: string[];
2146
+ chat: boolean;
2147
+ tag: boolean;
2148
+ createdAt: string;
2149
+ agent: Agent | null;
2150
+ }; //#endregion
1090
2151
  //#region src/site/types.d.ts
1091
2152
  type SiteTeam = {
1092
2153
  name: string;
@@ -1103,7 +2164,7 @@ type Site = {
1103
2164
  enabled: boolean;
1104
2165
  team: SiteTeam | null;
1105
2166
  agent: SiteAgent | null;
1106
- settings: Record<string, unknown>;
2167
+ settings: Record<string, JsonValue>;
1107
2168
  };
1108
2169
  type SiteRoute = {
1109
2170
  path: string;
@@ -1120,7 +2181,42 @@ type BrandSiteConfig = {
1120
2181
  name?: string;
1121
2182
  logoUrl?: string | null;
1122
2183
  };
2184
+ type SiteBrand = {
2185
+ slug: string;
2186
+ configureRoute: Pick<SiteRoute, 'path' | 'label'> | null;
2187
+ };
1123
2188
  //#endregion
2189
+ //#region src/stats/types.d.ts
2190
+ type UserStats = {
2191
+ totalMessages: number;
2192
+ totalWarpsExecuted: number;
2193
+ totalTasksExecuted: number;
2194
+ totalChallengesCompleted: number;
2195
+ timeSaved: {
2196
+ seconds: number;
2197
+ formatted: string;
2198
+ };
2199
+ avgResponseTime: {
2200
+ seconds: number;
2201
+ formatted: string;
2202
+ };
2203
+ streak: Streak;
2204
+ };
2205
+ type Streak = {
2206
+ current: number;
2207
+ longest: number;
2208
+ multiplier: number;
2209
+ freezesAvailable: number;
2210
+ }; //#endregion
2211
+ //#region src/stats-store/types.d.ts
2212
+ type GamificationData = {
2213
+ stats: UserStats;
2214
+ experience: Experience;
2215
+ challenges: Challenges;
2216
+ achievements: Achievement[];
2217
+ recentExperiences: RecentExperience[];
2218
+ nextMilestones: Milestone[];
2219
+ }; //#endregion
1124
2220
  //#region src/link/types.d.ts
1125
2221
  type LinkScanHistory = {
1126
2222
  daily: number[];
@@ -1179,49 +2275,113 @@ type LinkStats = {
1179
2275
  totalScans: number;
1180
2276
  scanHistory: LinkScanHistory;
1181
2277
  }; //#endregion
1182
- //#region src/store/types.d.ts
1183
- type StoreVisibility = 'private' | 'team' | 'public';
1184
- type StoreEntry = {
1185
- value: number | string | boolean;
1186
- label?: string;
1187
- at: string;
2278
+ //#region src/loyalty/types.d.ts
2279
+ type ProgramSettings = {
2280
+ point_name?: string;
2281
+ 'accrual.type'?: string;
2282
+ 'accrual.value'?: number;
2283
+ 'accrual.min_spend_cents'?: number;
2284
+ 'accrual.exempt_items'?: string[];
2285
+ 'points.expire_months'?: number | null;
1188
2286
  };
1189
- type Store = {
2287
+ type LoyaltyProgram = {
1190
2288
  name: string;
1191
- description: string;
1192
- valueType: 'scalar' | 'series';
1193
- unit?: string;
1194
- visibility: StoreVisibility;
1195
- entryCount: number;
1196
- lastValue?: number | string | boolean;
1197
- lastAt?: string;
2289
+ active: boolean;
2290
+ settings: ProgramSettings;
2291
+ rewardCount: number;
2292
+ tierCount: number;
2293
+ memberCount: number;
1198
2294
  };
1199
- type StoreWithEntries = {
2295
+ type LoyaltyReward = {
2296
+ id: string;
2297
+ type: string;
1200
2298
  name: string;
1201
- description: string;
1202
- unit?: string;
1203
- entries: StoreEntry[];
2299
+ pointsCost: number;
2300
+ config: Record<string, JsonValue> | null;
2301
+ sortOrder: number;
1204
2302
  };
1205
- type StoreCreatePayload = {
2303
+ type LoyaltyTier = {
2304
+ id: string;
1206
2305
  name: string;
1207
- description?: string;
1208
- valueType?: 'scalar' | 'series';
1209
- unit?: string;
1210
- visibility?: StoreVisibility;
2306
+ minPoints: number;
2307
+ pointsMultiplier: number;
2308
+ color: string | null;
2309
+ benefits: {
2310
+ type: string;
2311
+ label: string;
2312
+ }[] | null;
1211
2313
  };
1212
- type StoreEntryPayload = {
1213
- storeName?: string;
1214
- value: number | string | boolean;
1215
- label?: string;
2314
+ type LoyaltyPromotion = {
2315
+ id: string;
2316
+ name: string;
2317
+ type: string;
2318
+ value: number;
2319
+ startsAt: string;
2320
+ endsAt: string;
2321
+ minSpendCents: number | null;
2322
+ active: boolean;
1216
2323
  };
1217
- type StoreEntryResult = {
2324
+ type LoyaltyTierInfo = {
1218
2325
  name: string;
1219
- entryCount: number;
2326
+ multiplier: number;
2327
+ benefits?: {
2328
+ type: string;
2329
+ label: string;
2330
+ }[];
1220
2331
  };
1221
- type StoreToggleResult = {
2332
+ type LoyaltyNextTier = {
1222
2333
  name: string;
1223
- value: number | string | boolean;
1224
- previous: number | string | boolean;
2334
+ pointsNeeded: number;
2335
+ multiplier: number;
2336
+ };
2337
+ type LoyaltyStatus = {
2338
+ contactName: string;
2339
+ points: number;
2340
+ lifetimePoints: number;
2341
+ tier: LoyaltyTierInfo | null;
2342
+ nextTier: LoyaltyNextTier | null;
2343
+ rewardReady: boolean;
2344
+ };
2345
+ type LoyaltyAccount = {
2346
+ contact: Contact;
2347
+ points: number;
2348
+ lifetimePoints: number;
2349
+ tier: {
2350
+ name: string;
2351
+ multiplier: number;
2352
+ } | null;
2353
+ status: LoyaltyStatus | null;
2354
+ };
2355
+ type LoyaltyTransaction = {
2356
+ id: string;
2357
+ type: string;
2358
+ points: number;
2359
+ balanceAfter: number;
2360
+ description: string | null;
2361
+ createdAt: string;
2362
+ };
2363
+ type EarnResponse = {
2364
+ contactName: string;
2365
+ points: number;
2366
+ totalPoints: number;
2367
+ tierName?: string;
2368
+ multiplier?: number;
2369
+ };
2370
+ type RedeemResponse = {
2371
+ rewardName: string;
2372
+ rewardType: string;
2373
+ pointsCost: number;
2374
+ remainingPoints: number;
2375
+ discountConfig?: JsonValue;
2376
+ };
2377
+ type LoyaltyMember = {
2378
+ id: string;
2379
+ contactId: string;
2380
+ contactName: string;
2381
+ points: number;
2382
+ lifetimePoints: number;
2383
+ tier: string | null;
2384
+ updatedAt: string;
1225
2385
  }; //#endregion
1226
2386
  //#region src/update/types.d.ts
1227
2387
  type UpdateType = 'deal' | 'event' | 'update';
@@ -1265,7 +2425,299 @@ type UpdateStats = {
1265
2425
  archivedCount: number;
1266
2426
  creationHistory: number[];
1267
2427
  }; //#endregion
2428
+ //#region src/upgrade/types.d.ts
2429
+ type UpgradeStatus = 'Pending' | 'Accepted' | 'Rejected';
2430
+ type UpgradeSourceType = 'Agent' | 'Marketplace';
2431
+ type Upgrade = {
2432
+ id: string;
2433
+ entityType: string;
2434
+ sourceType: UpgradeSourceType;
2435
+ agentUuid: string | null;
2436
+ originalContent: string | null;
2437
+ proposedContent: string;
2438
+ status: UpgradeStatus;
2439
+ changeReason: string | null;
2440
+ diff: {
2441
+ original: string;
2442
+ proposed: string;
2443
+ hasChanges: boolean;
2444
+ };
2445
+ proposedAt: string;
2446
+ respondedAt: string | null;
2447
+ }; //#endregion
1268
2448
  //#region src/swarm/types.d.ts
2449
+ type Swarm = {
2450
+ id: string;
2451
+ chain: WarpChainInfo;
2452
+ extId: string;
2453
+ entity?: Entity;
2454
+ room: Room;
2455
+ createdAt: string;
2456
+ users: User[];
2457
+ agents: AgentPrivate[];
2458
+ };
2459
+ //#endregion
2460
+ //#region src/task/types.d.ts
2461
+ type Task = {
2462
+ id: string;
2463
+ cronExpression: string | null;
2464
+ room: Room;
2465
+ warp: string;
2466
+ active: boolean;
2467
+ lastRunAt: string | null;
2468
+ startsAt: string | null;
2469
+ endsAt: string | null;
2470
+ maxRuns: number | null;
2471
+ runs: number;
2472
+ createdAt: string;
2473
+ agent: Agent | null;
2474
+ inputs: Record<string, string> | null;
2475
+ };
2476
+ //#endregion
2477
+ //#region src/warp-webhooks/types.d.ts
2478
+ type AgentWebhookTriggerCondition = {
2479
+ path: string;
2480
+ operator: 'exists' | 'equals' | 'contains' | 'not_contains';
2481
+ value?: unknown;
2482
+ };
2483
+ type AgentWebhookTriggerInput = string | {
2484
+ source: 'payload';
2485
+ path: string;
2486
+ } | {
2487
+ source: 'literal';
2488
+ value: unknown;
2489
+ };
2490
+ type AgentWebhookTrigger = {
2491
+ event?: string;
2492
+ contract?: string;
2493
+ when?: AgentWebhookTriggerCondition[];
2494
+ inputs?: Record<string, AgentWebhookTriggerInput>;
2495
+ };
2496
+ type AgentWebhookWarp = {
2497
+ id: number;
2498
+ source: string;
2499
+ event?: string | null;
2500
+ contract?: string | null;
2501
+ next: string;
2502
+ active: boolean;
2503
+ managed: boolean;
2504
+ trigger?: AgentWebhookTrigger | null;
2505
+ warpIdentifier: string | null;
2506
+ createdAt: string;
2507
+ };
2508
+ type ActivateAgentWebhookWarpPayload = {
2509
+ warpIdentifier: string;
2510
+ source?: 'internal';
2511
+ trigger?: AgentWebhookTrigger;
2512
+ }; //#endregion
2513
+ //#region src/webhook/types.d.ts
2514
+ type WebhookTriggerEvent = 'agent.action' | 'agent.message' | 'user.message';
2515
+ type Webhook = {
2516
+ id: string;
2517
+ name: string;
2518
+ url: string;
2519
+ trigger: WebhookTriggerEvent;
2520
+ headers: Record<string, string>;
2521
+ description: string | null;
2522
+ active: boolean;
2523
+ verifySsl: boolean;
2524
+ timeout: number;
2525
+ maxRetries: number;
2526
+ lastTriggeredAt: string | null;
2527
+ createdAt: string;
2528
+ updatedAt: string;
2529
+ webhookableType: string;
2530
+ webhookable?: {
2531
+ type: string;
2532
+ uuid: string;
2533
+ name: string;
2534
+ };
2535
+ }; //#endregion
2536
+ //#region src/workspace/types.d.ts
2537
+ type WorkspaceInfo = {
2538
+ id?: string;
2539
+ teamId?: string;
2540
+ deviceType?: string;
2541
+ workspacePath: string;
2542
+ createdAt: string;
2543
+ filesCount: number;
2544
+ totalSize: number;
2545
+ lastSyncAt: string;
2546
+ };
2547
+ type FileInfo = {
2548
+ name: string;
2549
+ path: string;
2550
+ size: number;
2551
+ mimeType: string;
2552
+ isEncrypted: boolean;
2553
+ modifiedAt: string;
2554
+ };
2555
+ type WorkspaceCloudFile = FileInfo & {
2556
+ id?: string;
2557
+ createdAt?: string;
2558
+ };
2559
+ //#endregion
2560
+ //#region src/resources/agents.d.ts
2561
+ declare class AgentsResource {
2562
+ private readonly http;
2563
+ constructor(http: IHttpService);
2564
+ list(team?: string): Promise<IAppResponse<AgentPrivate[]>>;
2565
+ get(uuid: string): Promise<IAppResponse<AgentPrivate>>;
2566
+ getPublic(uuid: string): Promise<IAppResponse<StoreAgent>>;
2567
+ create(params: {
2568
+ team: string;
2569
+ name: string;
2570
+ wallets?: any;
2571
+ settings?: {
2572
+ trainingUrl?: string | null;
2573
+ };
2574
+ }): Promise<IAppResponse<AgentPrivate>>;
2575
+ update(uuid: string, name: string, description: string | null, avatar?: MediaLibraryItems): Promise<IAppResponse<AgentPrivate>>;
2576
+ delete(uuid: string): Promise<IAppResponse<void>>;
2577
+ updatePassword(uuid: string, password: string): Promise<IAppResponse<void>>;
2578
+ storePassword(uuid: string, password: string): Promise<IAppResponse<AgentPrivate>>;
2579
+ updateSetting(uuid: string, key: keyof AgentSettings, value: boolean | string | number | string[] | null): Promise<IAppResponse<AgentPrivate>>;
2580
+ updateMeta(uuid: string, key: string, value: Record<string, unknown> | null): Promise<IAppResponse<AgentPrivate>>;
2581
+ publish(uuid: string): Promise<IAppResponse<AgentPrivate>>;
2582
+ unpublish(uuid: string): Promise<IAppResponse<AgentPrivate>>;
2583
+ moveToTeam(uuid: string, teamSlug: string): Promise<IAppResponse<AgentPrivate>>;
2584
+ getActions(uuid: string, page?: number): Promise<IAppResponse<AgentActionHistoryEntry[]>>;
2585
+ provisionPhone(uuid: string): Promise<IAppResponse<AgentPrivate>>;
2586
+ execute(agentUuid: string, payload: {
2587
+ sender: string;
2588
+ room: string;
2589
+ message: string;
2590
+ audio?: File;
2591
+ media?: Media[];
2592
+ ghost?: boolean;
2593
+ context?: Record<string, unknown>;
2594
+ }): Promise<IAppResponse<unknown>>;
2595
+ actionCallback(agent: string, room: string, action: string, result: {
2596
+ success: boolean;
2597
+ output?: string;
2598
+ error?: string;
2599
+ meta?: Record<string, any>;
2600
+ }): Promise<IAppResponse<unknown>>;
2601
+ }
2602
+ //#endregion
2603
+ //#region src/resources/alerts.d.ts
2604
+ declare class AlertsResource {
2605
+ private readonly http;
2606
+ constructor(http: IHttpService);
2607
+ list(agent: string, page?: number): Promise<IAppResponse<Alert[]>>;
2608
+ delete(id: string): Promise<IAppResponse<void>>;
2609
+ toggle(id: string): Promise<IAppResponse<Alert>>;
2610
+ }
2611
+ //#endregion
2612
+ //#region src/resources/api-tokens.d.ts
2613
+ declare class ApiTokensResource {
2614
+ private readonly http;
2615
+ constructor(http: IHttpService);
2616
+ list(): Promise<IAppResponse<ApiToken[]>>;
2617
+ create(name: string, teams?: string[] | null): Promise<IAppResponse<ApiToken>>;
2618
+ update(id: number, teams: string[] | null): Promise<IAppResponse<ApiToken>>;
2619
+ delete(id: number): Promise<IAppResponse<void>>;
2620
+ }
2621
+ //#endregion
2622
+ //#region src/resources/characters.d.ts
2623
+ declare class CharactersResource {
2624
+ private readonly http;
2625
+ constructor(http: IHttpService);
2626
+ getByAgent(agent: string): Promise<IAppResponse<Character | null>>;
2627
+ create(agent: string, name: string, system: string, bio: string): Promise<IAppResponse<Character>>;
2628
+ update(id: string, name: string, system: string, bio: string): Promise<IAppResponse<Character>>;
2629
+ }
2630
+ //#endregion
2631
+ //#region src/resources/desk.d.ts
2632
+ type DeskUploadResponse = {
2633
+ media: Array<{
2634
+ id: string;
2635
+ name: string;
2636
+ mime: string;
2637
+ url: string;
2638
+ }>;
2639
+ };
2640
+ declare class DeskResource {
2641
+ private readonly http;
2642
+ constructor(http: IHttpService);
2643
+ upload(agentUuid: string, roomId: string, files: File[]): Promise<IAppResponse<DeskUploadResponse>>;
2644
+ }
2645
+ //#endregion
2646
+ //#region src/resources/elements.d.ts
2647
+ declare class ElementsResource {
2648
+ private readonly http;
2649
+ constructor(http: IHttpService);
2650
+ generateSpec(team: string, payload: {
2651
+ description?: string | null;
2652
+ imageUrl?: string | null;
2653
+ imageDataUrl?: string | null;
2654
+ }): Promise<IAppResponse<ElementSpec>>;
2655
+ list(team: string): Promise<IAppResponse<Element[]>>;
2656
+ get(team: string, elementId: string): Promise<IAppResponse<Element>>;
2657
+ create(team: string, payload: {
2658
+ name: string;
2659
+ type: string;
2660
+ description?: string | null;
2661
+ spec?: ElementSpec | null;
2662
+ media?: any[];
2663
+ }): Promise<IAppResponse<Element>>;
2664
+ update(team: string, elementId: string, payload: {
2665
+ name?: string;
2666
+ type?: string;
2667
+ description?: string | null;
2668
+ spec?: ElementSpec | null;
2669
+ media?: any[];
2670
+ }): Promise<IAppResponse<Element>>;
2671
+ delete(team: string, elementId: string): Promise<IAppResponse<void>>;
2672
+ generateVariation(team: string, elementId: string, payload?: {
2673
+ label?: string | null;
2674
+ overrides?: ElementSpec | null;
2675
+ aspectRatio?: string | null;
2676
+ }): Promise<IAppResponse<ElementVariation>>;
2677
+ updateVariation(team: string, elementId: string, variationId: string, payload: {
2678
+ label?: string | null;
2679
+ overrides?: ElementSpec | null;
2680
+ model?: string | null;
2681
+ aspectRatio?: string | null;
2682
+ }): Promise<IAppResponse<ElementVariation>>;
2683
+ deleteVariation(team: string, elementId: string, variationId: string): Promise<IAppResponse<void>>;
2684
+ regenerateVariation(team: string, elementId: string, variationId: string): Promise<IAppResponse<{
2685
+ status: string;
2686
+ }>>;
2687
+ reorderVariations(team: string, elementId: string, orderedIds: string[]): Promise<IAppResponse<void>>;
2688
+ setVariationPrimaryImage(team: string, elementId: string, variationId: string, mediaId: string): Promise<IAppResponse<ElementVariation>>;
2689
+ }
2690
+ //#endregion
2691
+ //#region src/resources/entities.d.ts
2692
+ declare class EntitiesResource {
2693
+ private readonly http;
2694
+ constructor(http: IHttpService);
2695
+ get(entityId: string, withParams?: string[]): Promise<IAppResponse<Entity>>;
2696
+ listProposals(entityId: string, page?: number): Promise<IAppResponse<Proposal[]>>;
2697
+ getProposal(proposalId: string, withParams?: string[]): Promise<IAppResponse<Proposal>>;
2698
+ }
2699
+ //#endregion
2700
+ //#region src/resources/mcp.d.ts
2701
+ declare class McpResource {
2702
+ private readonly http;
2703
+ constructor(http: IHttpService);
2704
+ listToolCalls(agent: string, page?: number, integration?: string): Promise<IAppResponse<McpToolCall[]>>;
2705
+ }
2706
+ //#endregion
2707
+ //#region src/resources/secrets/index.d.ts
2708
+ declare class SecretsResource {
2709
+ private readonly http;
2710
+ constructor(http: IHttpService);
2711
+ getStatus(agent: string, keys: string[]): Promise<IAppResponse<Record<string, boolean>>>;
2712
+ set(agent: string, key: string, value: string): Promise<IAppResponse<{
2713
+ key: string;
2714
+ isSet: boolean;
2715
+ }>>;
2716
+ clear(agent: string, key: string): Promise<IAppResponse<{
2717
+ key: string;
2718
+ isSet: boolean;
2719
+ }>>;
2720
+ }
1269
2721
  //#endregion
1270
2722
  //#region src/resources/appointments.d.ts
1271
2723
  declare const WEEKDAYS: readonly ["monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"];
@@ -1317,7 +2769,7 @@ declare class AppointmentsResource {
1317
2769
  }[];
1318
2770
  serviceSlug?: string;
1319
2771
  appointmentRequestId?: string;
1320
- configuration?: Record<string, WarpNativeValue>;
2772
+ configuration?: Configuration;
1321
2773
  }): Promise<IAppResponse<AppointmentBooking>>;
1322
2774
  reschedule(agentUuid: string, meetingId: string, data: {
1323
2775
  scheduledAt: string;
@@ -1341,28 +2793,18 @@ declare class AppointmentsResource {
1341
2793
  end: string;
1342
2794
  }[];
1343
2795
  serviceSlug?: string;
1344
- configuration?: Record<string, WarpNativeValue>;
2796
+ configuration?: Configuration;
1345
2797
  }): Promise<IAppResponse<AppointmentRequest>>;
1346
2798
  updateRequest(agentUuid: string, requestId: string, data: {
1347
2799
  status?: string;
1348
- notes?: string;
1349
- failureReason?: string;
1350
- }): Promise<IAppResponse<AppointmentRequest>>;
1351
- }
1352
- //#endregion
1353
- //#region src/resources/agents.d.ts
1354
- declare class AgentsResource {
1355
- private readonly http;
1356
- constructor(http: IHttpService);
1357
- list(): Promise<IAppResponse<AgentPrivate[]>>;
1358
- get(uuid: string): Promise<MarketplaceAgent | null>;
1359
- execute(agentUuid: string, payload: {
1360
- room: string;
1361
- message?: string;
1362
- }): Promise<IAppResponse<unknown>>;
2800
+ notes?: string;
2801
+ failureReason?: string;
2802
+ configuration?: Configuration;
2803
+ }): Promise<IAppResponse<AppointmentRequest>>;
1363
2804
  }
1364
2805
  //#endregion
1365
2806
  //#region src/resources/auth.d.ts
2807
+ type NativeSocialAuthProvider = Extract<SocialAuthProvider, 'apple' | 'google'>;
1366
2808
  type AuthSendCodeRequest = {
1367
2809
  name: string;
1368
2810
  phone?: string;
@@ -1371,112 +2813,137 @@ type AuthSendCodeRequest = {
1371
2813
  table?: string;
1372
2814
  };
1373
2815
  type AuthVerifyResponse = {
1374
- user: {
1375
- id: string;
1376
- name: string;
1377
- phone: string | null;
1378
- email: string | null;
1379
- };
2816
+ user: AuthUser;
1380
2817
  team: {
1381
2818
  slug: string;
1382
2819
  name: string;
1383
2820
  } | null;
1384
- contact: {
1385
- id: string;
1386
- name: string;
1387
- phone: string | null;
1388
- email: string | null;
1389
- } | null;
2821
+ contact: AuthUser | null;
1390
2822
  table: string | null;
1391
2823
  };
2824
+ type AuthLoginResponse = {
2825
+ user: UserPrivate | null;
2826
+ token: string | null;
2827
+ };
2828
+ type AuthApiTokenResponse = {
2829
+ plainTextToken: string;
2830
+ };
1392
2831
  declare class AuthResource {
1393
2832
  private http;
1394
2833
  constructor(http: IHttpService);
1395
2834
  sendCode(data: AuthSendCodeRequest): Promise<IAppResponse<void>>;
2835
+ requestEmail(email: string, redirect?: string): Promise<IAppResponse<AuthLoginResponse>>;
2836
+ loginWithSocialAccessToken(provider: NativeSocialAuthProvider, accessToken: string): Promise<IAppResponse<AuthLoginResponse>>;
1396
2837
  verify(token: string): Promise<IAppResponse<AuthVerifyResponse>>;
1397
- me(): Promise<IAppResponse<{
1398
- id: string;
1399
- name: string;
1400
- phone: string | null;
1401
- email: string | null;
1402
- }>>;
2838
+ me(): Promise<IAppResponse<AuthUser>>;
1403
2839
  logout(): Promise<IAppResponse<void>>;
2840
+ createApiToken(): Promise<IAppResponse<AuthApiTokenResponse>>;
2841
+ verifyWallet(accessToken: string, withMobileApiToken?: boolean): Promise<IAppResponse<UserPrivate>>;
1404
2842
  }
1405
2843
  //#endregion
1406
- //#region src/resources/blueprints.d.ts
1407
- declare class BlueprintsResource {
2844
+ //#region src/resources/billing-addresses.d.ts
2845
+ declare class BillingAddressesResource {
1408
2846
  private readonly http;
1409
2847
  constructor(http: IHttpService);
1410
- list(params?: {
1411
- page?: number;
1412
- size?: number;
1413
- }): Promise<IAppResponse<Blueprint[]>>;
1414
- get(slug: string, locale?: string): Promise<IAppResponse<Blueprint>>;
2848
+ get(contact?: string, team?: string): Promise<IAppResponse<BillingAddress | null>>;
2849
+ store(data: {
2850
+ name: string;
2851
+ addressOne?: string;
2852
+ city?: string;
2853
+ state?: string;
2854
+ zipCode?: string;
2855
+ country: string;
2856
+ vatId?: string;
2857
+ contact?: string;
2858
+ team?: string;
2859
+ }): Promise<IAppResponse<BillingAddress>>;
1415
2860
  }
1416
2861
  //#endregion
1417
- //#region src/resources/carts.d.ts
1418
- declare class CartsResource {
2862
+ //#region src/resources/billing.d.ts
2863
+ type IapReceipt = {
2864
+ productId: string;
2865
+ receipt: string;
2866
+ platform: 'ios' | 'android';
2867
+ };
2868
+ declare class BillingResource {
1419
2869
  private readonly http;
1420
2870
  constructor(http: IHttpService);
1421
- get(): Promise<IAppResponse<Cart>>;
1422
- add(type: 'product' | 'service', id: string, quantity?: number, configuration?: ProductConfiguration): Promise<IAppResponse<Cart>>;
1423
- remove(type: 'product' | 'service', id: string): Promise<IAppResponse<Cart>>;
1424
- updateQuantity(type: 'product' | 'service', id: string, quantity: number): Promise<IAppResponse<Cart>>;
1425
- clear(): Promise<IAppResponse<Cart>>;
1426
- applyCoupon(code: string): Promise<IAppResponse<{
1427
- ok: boolean;
2871
+ plans(type?: 'current' | 'all'): Promise<IAppResponse<Plan[]>>;
2872
+ checkoutProduct(id: string): Promise<IAppResponse<Product>>;
2873
+ orders(team: TeamPrivate | null, page?: number, contactId?: string): Promise<IAppResponse<Order[]>>;
2874
+ payOrder(id: string, provider: string): Promise<IAppResponse<{
2875
+ url: string;
1428
2876
  }>>;
2877
+ deleteOrder(id: string): Promise<IAppResponse<void>>;
2878
+ paymentAccount(team: string, provider: string): Promise<IAppResponse<PaymentAccount>>;
2879
+ createPaymentAccountOnboarding(team: string, provider: string): Promise<IAppResponse<PaymentAccountOnboarding>>;
2880
+ updatePaymentAccount(team: string, provider: string, input: {
2881
+ providerAccountId: string;
2882
+ chargesEnabled?: boolean;
2883
+ payoutsEnabled?: boolean;
2884
+ detailsSubmitted?: boolean;
2885
+ requirements?: string[];
2886
+ }): Promise<IAppResponse<PaymentAccount>>;
2887
+ createTerminalConnectionToken(team: string, provider: string): Promise<IAppResponse<TerminalConnectionToken>>;
2888
+ createTerminalPaymentIntent(orderId: string, provider: string): Promise<IAppResponse<TerminalPaymentIntent>>;
2889
+ captureTerminalPaymentIntent(orderId: string, provider: string, paymentIntentId: string): Promise<IAppResponse<void>>;
2890
+ cancelTerminalPaymentIntent(orderId: string, provider: string, paymentIntentId: string): Promise<IAppResponse<void>>;
2891
+ cancelSubscription(teamSlug: string): Promise<IAppResponse<void>>;
2892
+ resumeSubscription(teamSlug: string): Promise<IAppResponse<void>>;
2893
+ verifyIap(receipt: IapReceipt, team: string, meta?: Record<string, string>): Promise<IAppResponse<PurchaseResult>>;
1429
2894
  }
1430
2895
  //#endregion
1431
- //#region src/resources/flows.d.ts
1432
- declare class FlowsResource {
2896
+ //#region src/resources/blueprints.d.ts
2897
+ declare class BlueprintsResource {
1433
2898
  private readonly http;
1434
2899
  constructor(http: IHttpService);
1435
2900
  list(params?: {
1436
- locale?: string;
1437
2901
  page?: number;
1438
- }): Promise<IAppResponse<Flow[]>>;
1439
- get(slug: string, locale?: string): Promise<IAppResponse<Flow>>;
1440
- }
1441
- //#endregion
1442
- //#region src/resources/marketplace.d.ts
1443
- declare class MarketplaceResource {
1444
- private readonly http;
1445
- constructor(http: IHttpService);
1446
- get(locale?: string): Promise<MarketplaceData>;
2902
+ size?: number;
2903
+ locale?: string;
2904
+ team?: string;
2905
+ verified?: boolean;
2906
+ }): Promise<IAppResponse<Blueprint[]>>;
2907
+ get(slug: string, locale?: string, team?: string): Promise<IAppResponse<Blueprint>>;
2908
+ create(data: {
2909
+ team: string;
2910
+ name: string;
2911
+ description: string | null;
2912
+ settings: BlueprintSettings;
2913
+ price?: number;
2914
+ }): Promise<IAppResponse<Blueprint>>;
2915
+ assemble(blueprint: string, team: string, name?: string): Promise<IAppResponse<AgentPrivate>>;
1447
2916
  }
1448
2917
  //#endregion
1449
- //#region src/resources/services.d.ts
1450
- declare class ServicesResource {
2918
+ //#region src/resources/cards.d.ts
2919
+ declare class CardsResource {
1451
2920
  private readonly http;
1452
2921
  constructor(http: IHttpService);
1453
- list(team?: string): Promise<IAppResponse<Service[]>>;
1454
- get(slug: string): Promise<IAppResponse<Service>>;
1455
- store(team: string, data: {
1456
- name: string;
1457
- price: number;
1458
- durationMinutes: number;
1459
- category?: string;
1460
- description?: string;
1461
- digital?: boolean;
1462
- public?: boolean;
1463
- }): Promise<IAppResponse<Service>>;
1464
- update(id: string, data: Partial<Pick<Service, 'name' | 'price' | 'durationMinutes' | 'category' | 'description' | 'active' | 'digital' | 'public'>>): Promise<IAppResponse<Service>>;
1465
- delete(id: string): Promise<IAppResponse<unknown>>;
2922
+ list(agent: string): Promise<IAppResponse<Card[]>>;
2923
+ create(agent: string, warp: string, inputs?: string[]): Promise<IAppResponse<Card>>;
2924
+ update(id: string, warp: string, inputs?: string[]): Promise<IAppResponse<Card>>;
2925
+ delete(id: string): Promise<IAppResponse<void>>;
2926
+ toggle(id: string): Promise<IAppResponse<Card>>;
1466
2927
  }
1467
2928
  //#endregion
1468
- //#region src/resources/skills.d.ts
1469
- declare class SkillsResource {
2929
+ //#region src/resources/carts.d.ts
2930
+ declare class CartsResource {
1470
2931
  private readonly http;
1471
2932
  constructor(http: IHttpService);
1472
- get(id: string): Promise<IAppResponse<Skill>>;
2933
+ get(): Promise<IAppResponse<Cart>>;
2934
+ add(type: 'product' | 'service', id: string, quantity?: number, configuration?: Configuration): Promise<IAppResponse<Cart>>;
2935
+ remove(type: 'product' | 'service', id: string): Promise<IAppResponse<Cart>>;
2936
+ updateQuantity(type: 'product' | 'service', id: string, quantity: number): Promise<IAppResponse<Cart>>;
2937
+ clear(): Promise<IAppResponse<Cart>>;
2938
+ applyCoupon(code: string): Promise<IAppResponse<void>>;
1473
2939
  }
1474
2940
  //#endregion
1475
- //#region src/resources/hub.d.ts
1476
- declare class HubResource {
2941
+ //#region src/resources/changelog.d.ts
2942
+ declare class ChangelogResource {
1477
2943
  private readonly http;
1478
2944
  constructor(http: IHttpService);
1479
- subscribe(email: string, tag: 'blueprint' | 'digest' | 'marketplace'): Promise<IAppResponse<void>>;
2945
+ get(locale: WarpLocale): Promise<IAppResponse<ChangelogEntry[]>>;
2946
+ subscribe(email: string): Promise<IAppResponse<void>>;
1480
2947
  }
1481
2948
  //#endregion
1482
2949
  //#region src/resources/contacts.d.ts
@@ -1486,28 +2953,62 @@ declare class ContactsResource {
1486
2953
  list(params?: {
1487
2954
  search?: string;
1488
2955
  page?: number;
1489
- }): Promise<IAppResponse<{
1490
- data: Contact[];
1491
- }>>;
2956
+ }): Promise<IAppResponse<Contact[]>>;
1492
2957
  get(id: string): Promise<IAppResponse<Contact>>;
1493
- create(payload: ContactFormData & {
1494
- name: string;
1495
- }): Promise<IAppResponse<Contact>>;
2958
+ create(payload: ContactCreatePayload): Promise<IAppResponse<Contact>>;
1496
2959
  update(id: string, data: ContactFormData): Promise<IAppResponse<Contact>>;
1497
- delete(id: string): Promise<IAppResponse<unknown>>;
2960
+ delete(id: string): Promise<IAppResponse<void>>;
1498
2961
  listActivities(id: string): Promise<IAppResponse<ContactActivity[]>>;
1499
- getTimeline<T = Record<string, unknown>>(id: string, page?: number): Promise<IAppResponse<PaginatedResponse<T>>>;
2962
+ getTimeline<T = Record<string, JsonValue>>(id: string, page?: number): Promise<IAppResponse<PaginatedResponse<T>>>;
1500
2963
  addActivity(id: string, data: {
1501
2964
  type: ContactActivity['type'];
1502
2965
  description?: string;
1503
- meta?: Record<string, unknown>;
2966
+ meta?: Record<string, JsonValue>;
1504
2967
  }): Promise<IAppResponse<ContactActivity>>;
1505
2968
  updateActivity(id: string, activityId: string, data: {
1506
2969
  type?: ContactActivity['type'];
1507
2970
  description?: string | null;
1508
- meta?: Record<string, unknown> | null;
2971
+ meta?: Record<string, JsonValue> | null;
1509
2972
  }): Promise<IAppResponse<ContactActivity>>;
1510
- deleteActivity(id: string, activityId: string): Promise<IAppResponse<unknown>>;
2973
+ deleteActivity(id: string, activityId: string): Promise<IAppResponse<void>>;
2974
+ send(id: string, message: string, integration?: IntegrationType | 'preferred'): Promise<IAppResponse<void>>;
2975
+ }
2976
+ //#endregion
2977
+ //#region src/resources/contracts.d.ts
2978
+ declare class ContractsResource {
2979
+ private readonly http;
2980
+ constructor(http: IHttpService);
2981
+ list(agentUuid: string): Promise<IAppResponse<Contract[]>>;
2982
+ get(uuid: string): Promise<IAppResponse<Contract>>;
2983
+ create(agentUuid: string, name: string, chain: string, category?: ContractCategoryName, isPublic?: boolean, description?: string): Promise<IAppResponse<Contract>>;
2984
+ update(uuid: string, data: {
2985
+ name?: string;
2986
+ description?: string;
2987
+ }): Promise<IAppResponse<Contract>>;
2988
+ delete(uuid: string): Promise<IAppResponse<void>>;
2989
+ deploy(uuid: string, env: string, txHash: string, type: 'deploy' | 'upgrade'): Promise<IAppResponse<ContractVersion>>;
2990
+ setAddress(uuid: string, env: string, address: string): Promise<IAppResponse<Contract>>;
2991
+ resetAddress(uuid: string, env: string): Promise<IAppResponse<Contract>>;
2992
+ listVersions(uuid: string): Promise<IAppResponse<ContractVersion[]>>;
2993
+ uploadAbi(uuid: string, file: File): Promise<IAppResponse<Contract>>;
2994
+ uploadCode(uuid: string, versionId: number, file: File): Promise<IAppResponse<void>>;
2995
+ getCode(uuid: string, versionId: number): Promise<IAppResponse<{
2996
+ code: string;
2997
+ }>>;
2998
+ prepareVerification(uuid: string, data: {
2999
+ env: string;
3000
+ sourceCode: object;
3001
+ dockerImage?: string;
3002
+ }): Promise<IAppResponse<{
3003
+ message: string;
3004
+ }>>;
3005
+ submitVerification(uuid: string, data: {
3006
+ env: string;
3007
+ signature: string;
3008
+ }): Promise<IAppResponse<{
3009
+ taskId: string | null;
3010
+ contract: Contract;
3011
+ }>>;
1511
3012
  }
1512
3013
  //#endregion
1513
3014
  //#region src/resources/documents.d.ts
@@ -1525,40 +3026,289 @@ declare class DocumentsResource {
1525
3026
  title?: string;
1526
3027
  content?: string;
1527
3028
  }): Promise<IAppResponse<Document>>;
1528
- delete(id: string): Promise<IAppResponse<unknown>>;
3029
+ delete(id: string): Promise<IAppResponse<void>>;
3030
+ trainFromUrl(agent: string, url: string): Promise<IAppResponse<Document>>;
3031
+ uploadFile(agentUuid: string, name: string, document: MediaLibraryItems): Promise<IAppResponse<Document>>;
3032
+ }
3033
+ //#endregion
3034
+ //#region src/resources/flows.d.ts
3035
+ declare class FlowsResource {
3036
+ private readonly http;
3037
+ constructor(http: IHttpService);
3038
+ list(params?: {
3039
+ locale?: string;
3040
+ page?: number;
3041
+ team?: string;
3042
+ all?: boolean;
3043
+ }): Promise<IAppResponse<Flow[]>>;
3044
+ get(slug: string, locale?: string): Promise<IAppResponse<Flow>>;
3045
+ create(data: {
3046
+ team: string;
3047
+ name: string;
3048
+ description?: string;
3049
+ }): Promise<IAppResponse<Flow>>;
3050
+ update(slug: string, data: {
3051
+ name?: string;
3052
+ description?: string;
3053
+ steps?: any[];
3054
+ price?: number | null;
3055
+ }): Promise<IAppResponse<Flow>>;
3056
+ delete(slug: string): Promise<IAppResponse<void>>;
1529
3057
  }
1530
3058
  //#endregion
1531
3059
  //#region src/resources/goals.d.ts
1532
3060
  declare class GoalsResource {
1533
3061
  private readonly http;
1534
3062
  constructor(http: IHttpService);
1535
- list(): Promise<IAppResponse<{
1536
- data: Goal[];
1537
- }>>;
3063
+ list(): Promise<IAppResponse<Goal[]>>;
1538
3064
  create(payload: {
1539
3065
  agentId: string;
1540
3066
  } & GoalCreatePayload): Promise<IAppResponse<Goal>>;
1541
3067
  update(id: string, data: Partial<Goal>): Promise<IAppResponse<Goal>>;
3068
+ delete(id: string): Promise<IAppResponse<void>>;
1542
3069
  }
1543
3070
  //#endregion
1544
- //#region src/resources/meetings.d.ts
1545
- declare class MeetingsResource {
3071
+ //#region src/resources/hub.d.ts
3072
+ declare class HubResource {
1546
3073
  private readonly http;
1547
- private readonly config;
1548
- constructor(http: IHttpService, config: JoAiClientConfig);
1549
- listUpcoming(): Promise<IAppResponse<Meeting[]>>;
1550
- get(id: string): Promise<IAppResponse<Meeting>>;
1551
- getSummary(id: string): Promise<IAppResponse<{
1552
- content: string;
3074
+ constructor(http: IHttpService);
3075
+ subscribe(email: string, tag: 'blueprint' | 'digest' | 'marketplace'): Promise<IAppResponse<void>>;
3076
+ }
3077
+ //#endregion
3078
+ //#region src/resources/ingestions.d.ts
3079
+ declare class IngestionsResource {
3080
+ private readonly http;
3081
+ constructor(http: IHttpService);
3082
+ list(params?: {
3083
+ page?: number;
3084
+ size?: number;
3085
+ agent?: string;
3086
+ }): Promise<IAppResponse<AppIngestion[]>>;
3087
+ get(id: string): Promise<IAppResponse<AppIngestion>>;
3088
+ getShared(shareToken: string): Promise<IAppResponse<AppIngestion>>;
3089
+ delete(id: string): Promise<IAppResponse<void>>;
3090
+ publish(id: string): Promise<IAppResponse<{
3091
+ slug: string;
3092
+ url: string;
3093
+ isPublic: boolean;
1553
3094
  }>>;
1554
- join(code: string): Promise<IAppResponse<MeetingJoinInfo>>;
1555
- cancel(code: string): Promise<IAppResponse<Meeting>>;
1556
- share(id: string, recipients: {
3095
+ unpublish(id: string): Promise<IAppResponse<{
3096
+ isPublic: boolean;
3097
+ }>>;
3098
+ }
3099
+ //#endregion
3100
+ //#region src/resources/inquiries.d.ts
3101
+ declare class InquiriesResource {
3102
+ private readonly http;
3103
+ constructor(http: IHttpService);
3104
+ create(content: string, type: InquiryType, message?: string): Promise<IAppResponse<Inquiry>>;
3105
+ }
3106
+ //#endregion
3107
+ //#region src/resources/integrations.d.ts
3108
+ type CalendarEvent = {
3109
+ externalId: string;
3110
+ title: string;
3111
+ description?: string;
3112
+ startAt: string;
3113
+ endAt: string;
3114
+ timezone?: string;
3115
+ location?: string;
3116
+ allDay: boolean;
3117
+ };
3118
+ type PushCalendarEventsPayload = {
3119
+ events: CalendarEvent[];
3120
+ syncWindowFrom: string;
3121
+ syncWindowTo: string;
3122
+ };
3123
+ type PushCalendarEventsResponse = {
3124
+ synced: boolean;
3125
+ pendingEvents: (CalendarEvent & {
3126
+ id: number;
3127
+ })[];
3128
+ };
3129
+ declare class IntegrationsResource {
3130
+ private readonly http;
3131
+ constructor(http: IHttpService);
3132
+ list(agent: string, page?: number): Promise<IAppResponse<Integration[]>>;
3133
+ delete(id: string): Promise<IAppResponse<void>>;
3134
+ toggle(id: string): Promise<IAppResponse<Integration>>;
3135
+ storeBot(platform: SocialPlatform, agent: string, data: Record<string, unknown>): Promise<IAppResponse<SocialBot>>;
3136
+ getBot(platform: SocialPlatform, agent: string): Promise<IAppResponse<SocialBot | null>>;
3137
+ storeWhatsAppEmbeddedSignup(agent: string, data: {
3138
+ code: string;
3139
+ phoneNumberId: string;
3140
+ businessAccountId: string;
3141
+ }): Promise<IAppResponse<SocialBot>>;
3142
+ reconfigureWhatsAppWebhook(agent: string): Promise<IAppResponse<{
3143
+ reconfigured: boolean;
3144
+ }>>;
3145
+ getXStatus(agent: string): Promise<IAppResponse<XIntegrationStatus>>;
3146
+ setupX(agent: string): Promise<IAppResponse<{
3147
+ enabled: boolean;
3148
+ integrationId: string;
3149
+ }>>;
3150
+ getCalendarStatus(agent: string): Promise<IAppResponse<CalendarStatus>>;
3151
+ syncCalendar(agent: string): Promise<IAppResponse<{
3152
+ synced: boolean;
3153
+ }>>;
3154
+ deleteCalendar(agent: string): Promise<IAppResponse<void>>;
3155
+ getEmbedStatus(agentUuid: string): Promise<IAppResponse<EmbedStatus>>;
3156
+ setupEmbed(agentUuid: string, allowedDomains?: string[]): Promise<IAppResponse<EmbedStatus>>;
3157
+ connectDeviceCalendar(agent: string, timezone: string | null): Promise<IAppResponse<{
3158
+ connected: boolean;
3159
+ provider: string;
3160
+ integrationId: number;
3161
+ }>>;
3162
+ pushCalendarEvents(agent: string, payload: PushCalendarEventsPayload): Promise<IAppResponse<PushCalendarEventsResponse>>;
3163
+ confirmDevicePush(agent: string, eventIds: number[]): Promise<IAppResponse<{
3164
+ confirmed: boolean;
3165
+ }>>;
3166
+ updateEmailHandle(agent: string, handle: string | null): Promise<IAppResponse<{
3167
+ emailAddress: string | null;
3168
+ }>>;
3169
+ generateEmailHandle(agent: string): Promise<IAppResponse<{
3170
+ emailAddress: string | null;
3171
+ }>>;
3172
+ getSecretStatus(agent: string, keys: string[]): Promise<IAppResponse<Record<string, boolean>>>;
3173
+ setSecret(agent: string, key: string, value: string): Promise<IAppResponse<{
3174
+ key: string;
3175
+ isSet: boolean;
3176
+ }>>;
3177
+ clearSecret(agent: string, key: string): Promise<IAppResponse<{
3178
+ key: string;
3179
+ isSet: boolean;
3180
+ }>>;
3181
+ }
3182
+ //#endregion
3183
+ //#region src/resources/intents.d.ts
3184
+ declare class IntentsResource {
3185
+ private readonly http;
3186
+ constructor(http: IHttpService);
3187
+ getUnseen(agent: string): Promise<IAppResponse<Intent[]>>;
3188
+ }
3189
+ //#endregion
3190
+ //#region src/resources/items.d.ts
3191
+ declare class ItemsResource {
3192
+ private readonly http;
3193
+ constructor(http: IHttpService);
3194
+ list(params?: {
3195
+ status?: string;
3196
+ }): Promise<IAppResponse<Item[]>>;
3197
+ get(id: string): Promise<IAppResponse<Item>>;
3198
+ create(payload: ItemCreatePayload): Promise<IAppResponse<Item>>;
3199
+ update(id: string, data: ItemUpdatePayload): Promise<IAppResponse<Item>>;
3200
+ delete(id: string): Promise<IAppResponse<void>>;
3201
+ sort(team: string, itemIds: string[]): Promise<IAppResponse<void>>;
3202
+ }
3203
+ //#endregion
3204
+ //#region src/resources/links.d.ts
3205
+ declare class LinksResource {
3206
+ private readonly http;
3207
+ constructor(http: IHttpService);
3208
+ list(params?: {
3209
+ type?: string;
3210
+ active?: boolean;
3211
+ }): Promise<IAppResponse<Link[]>>;
3212
+ create(payload: LinkCreatePayload): Promise<IAppResponse<Link>>;
3213
+ update(id: string, payload: LinkUpdatePayload): Promise<IAppResponse<Link>>;
3214
+ delete(id: string): Promise<IAppResponse<void>>;
3215
+ stats(): Promise<IAppResponse<LinkStats>>;
3216
+ variations(linkId: string): Promise<IAppResponse<LinkVariation[]>>;
3217
+ createVariation(linkId: string, payload: LinkVariationCreatePayload): Promise<IAppResponse<LinkVariation>>;
3218
+ createVariationBatch(linkId: string, payload: LinkVariationBatchCreatePayload): Promise<IAppResponse<LinkVariation[]>>;
3219
+ deleteVariation(linkId: string, variationId: string): Promise<IAppResponse<void>>;
3220
+ }
3221
+ //#endregion
3222
+ //#region src/resources/loyalty.d.ts
3223
+ declare class LoyaltyResource {
3224
+ private readonly http;
3225
+ constructor(http: IHttpService);
3226
+ getProgram(): Promise<IAppResponse<LoyaltyProgram>>;
3227
+ updateProgram(data: {
3228
+ name?: string;
3229
+ settings?: ProgramSettings;
3230
+ }): Promise<IAppResponse<LoyaltyProgram>>;
3231
+ getRewards(): Promise<IAppResponse<LoyaltyReward[]>>;
3232
+ createReward(data: {
3233
+ type: string;
1557
3234
  name: string;
1558
- email: string;
1559
- }[]): Promise<IAppResponse<unknown>>;
1560
- update(id: string, name: string | null, notify?: boolean, speakers?: MeetingSpeakerAssignment[]): Promise<IAppResponse<Meeting>>;
1561
- finalize(id: string, notify: boolean): Promise<IAppResponse<unknown>>;
3235
+ pointsCost: number;
3236
+ config?: JsonValue;
3237
+ sortOrder?: number;
3238
+ }): Promise<IAppResponse<LoyaltyReward>>;
3239
+ updateReward(id: string, data: {
3240
+ type?: string;
3241
+ name?: string;
3242
+ pointsCost?: number;
3243
+ config?: JsonValue;
3244
+ sortOrder?: number;
3245
+ }): Promise<IAppResponse<LoyaltyReward>>;
3246
+ deleteReward(id: string): Promise<IAppResponse<void>>;
3247
+ getTiers(): Promise<IAppResponse<LoyaltyTier[]>>;
3248
+ createTier(data: {
3249
+ name: string;
3250
+ minPoints: number;
3251
+ pointsMultiplier: number;
3252
+ color?: string;
3253
+ benefits?: {
3254
+ type: string;
3255
+ label: string;
3256
+ }[];
3257
+ }): Promise<IAppResponse<LoyaltyTier>>;
3258
+ updateTier(id: string, data: {
3259
+ name?: string;
3260
+ minPoints?: number;
3261
+ pointsMultiplier?: number;
3262
+ color?: string;
3263
+ benefits?: {
3264
+ type: string;
3265
+ label: string;
3266
+ }[];
3267
+ }): Promise<IAppResponse<LoyaltyTier>>;
3268
+ deleteTier(id: string): Promise<IAppResponse<void>>;
3269
+ getPromotions(): Promise<IAppResponse<LoyaltyPromotion[]>>;
3270
+ createPromotion(data: {
3271
+ name: string;
3272
+ type: string;
3273
+ value: number;
3274
+ startsAt: string;
3275
+ endsAt: string;
3276
+ minSpendCents?: number;
3277
+ }): Promise<IAppResponse<LoyaltyPromotion>>;
3278
+ updatePromotion(id: string, data: {
3279
+ name?: string;
3280
+ value?: number;
3281
+ startsAt?: string;
3282
+ endsAt?: string;
3283
+ active?: boolean;
3284
+ }): Promise<IAppResponse<LoyaltyPromotion>>;
3285
+ deletePromotion(id: string): Promise<IAppResponse<void>>;
3286
+ enroll(contactId: string): Promise<IAppResponse<LoyaltyAccount>>;
3287
+ getAccount(contactId: string): Promise<IAppResponse<LoyaltyAccount>>;
3288
+ earn(contactId: string, context?: {
3289
+ spendCents?: number;
3290
+ items?: {
3291
+ id: string;
3292
+ category?: string;
3293
+ }[];
3294
+ category?: string;
3295
+ }): Promise<IAppResponse<EarnResponse>>;
3296
+ redeem(contactId: string, rewardId: string): Promise<IAppResponse<RedeemResponse>>;
3297
+ adjustPoints(contactId: string, points: number, reason: string): Promise<IAppResponse<LoyaltyAccount>>;
3298
+ getTransactionHistory(contactId: string): Promise<IAppResponse<LoyaltyTransaction[]>>;
3299
+ listMembers(): Promise<IAppResponse<LoyaltyMember[]>>;
3300
+ }
3301
+ //#endregion
3302
+ //#region src/resources/store.d.ts
3303
+ declare class StoreResource {
3304
+ private readonly http;
3305
+ constructor(http: IHttpService);
3306
+ get(locale?: string): Promise<StoreData>;
3307
+ earnings(teamSlug: string, page?: number): Promise<IAppResponse<TeamEarning[]>>;
3308
+ earningsBalance(teamSlug: string): Promise<IAppResponse<TeamEarningsBalance>>;
3309
+ commissions(teamSlug: string): Promise<IAppResponse<CommissionAgreement[]>>;
3310
+ priceTiers(): Promise<IAppResponse<StorePriceTier[]>>;
3311
+ purchase(entityType: string, entityId: string, paymentMethod?: string): Promise<IAppResponse<StorePurchaseResult>>;
1562
3312
  }
1563
3313
  //#endregion
1564
3314
  //#region src/resources/media.d.ts
@@ -1578,32 +3328,36 @@ declare class MediaResource {
1578
3328
  label?: string;
1579
3329
  tags?: string[];
1580
3330
  }): Promise<IAppResponse<Media>>;
1581
- }
1582
- //#endregion
1583
- //#region src/resources/ingestions.d.ts
1584
- declare class IngestionsResource {
1585
- private readonly http;
1586
- constructor(http: IHttpService);
1587
- list(params?: {
3331
+ listTeam(team: string, params?: {
1588
3332
  page?: number;
1589
- size?: number;
1590
- }): Promise<IAppResponse<AppIngestion[]>>;
1591
- getShared(shareToken: string): Promise<IAppResponse<AppIngestion>>;
3333
+ mime?: string;
3334
+ }): Promise<IAppResponse<Media[]>>;
3335
+ uploadTeam(team: string, media: MediaLibraryItems, tags?: string[], options?: {
3336
+ preserveOriginal?: boolean;
3337
+ }): Promise<IAppResponse<Media[]>>;
3338
+ deleteTeam(team: string, mediaId: string): Promise<IAppResponse<void>>;
3339
+ updateTeamMedia(team: string, mediaId: string, data: {
3340
+ name: string;
3341
+ }): Promise<IAppResponse<Media>>;
3342
+ updateTeamMediaTags(team: string, mediaId: string, tags: string[]): Promise<IAppResponse<Media>>;
1592
3343
  }
1593
3344
  //#endregion
1594
- //#region src/resources/items.d.ts
1595
- declare class ItemsResource {
3345
+ //#region src/resources/meetings.d.ts
3346
+ declare class MeetingsResource {
1596
3347
  private readonly http;
1597
- constructor(http: IHttpService);
1598
- list(params?: {
1599
- status?: string;
1600
- }): Promise<IAppResponse<{
1601
- data: Item[];
1602
- }>>;
1603
- get(id: string): Promise<IAppResponse<Item>>;
1604
- create(payload: ItemCreatePayload): Promise<IAppResponse<Item>>;
1605
- update(id: string, data: Partial<Item>): Promise<IAppResponse<Item>>;
1606
- delete(id: string): Promise<IAppResponse<unknown>>;
3348
+ private readonly config;
3349
+ constructor(http: IHttpService, config: JoAiClientConfig);
3350
+ listUpcoming(): Promise<IAppResponse<Meeting[]>>;
3351
+ get(id: string): Promise<IAppResponse<Meeting>>;
3352
+ getSummary(id: string): Promise<IAppResponse<MeetingSummary>>;
3353
+ join(code: string): Promise<IAppResponse<MeetingJoinInfo>>;
3354
+ cancel(code: string): Promise<IAppResponse<Meeting>>;
3355
+ share(id: string, recipients: {
3356
+ name: string;
3357
+ email: string;
3358
+ }[]): Promise<IAppResponse<void>>;
3359
+ update(id: string, name: string | null, notify?: boolean, speakers?: MeetingSpeakerAssignment[]): Promise<IAppResponse<Meeting>>;
3360
+ finalize(id: string, notify: boolean): Promise<IAppResponse<Meeting>>;
1607
3361
  }
1608
3362
  //#endregion
1609
3363
  //#region src/resources/memories.d.ts
@@ -1613,9 +3367,7 @@ declare class MemoriesResource {
1613
3367
  list(params?: {
1614
3368
  search?: string;
1615
3369
  contactId?: string;
1616
- }): Promise<IAppResponse<{
1617
- data: Memory[];
1618
- }>>;
3370
+ }): Promise<IAppResponse<Memory[]>>;
1619
3371
  add(payload: {
1620
3372
  agentId: string;
1621
3373
  content: string;
@@ -1625,21 +3377,59 @@ declare class MemoriesResource {
1625
3377
  name: string;
1626
3378
  content: string;
1627
3379
  }): Promise<IAppResponse<Memory>>;
1628
- delete(id: string): Promise<IAppResponse<unknown>>;
3380
+ delete(id: string): Promise<IAppResponse<void>>;
3381
+ }
3382
+ //#endregion
3383
+ //#region src/resources/messages.d.ts
3384
+ declare class MessagesResource {
3385
+ private readonly http;
3386
+ constructor(http: IHttpService);
3387
+ list(team: string, room: string, page?: number, perPage?: number): Promise<IAppResponse<Message[]>>;
3388
+ search(team: string, search: string): Promise<IAppResponse<Message[]>>;
3389
+ delete(messageId: string): Promise<IAppResponse<void>>;
3390
+ pendingApprovals(teams: string[]): Promise<IAppResponse<Message[]>>;
3391
+ generateAudio(messageId: string): Promise<IAppResponse<{
3392
+ audioUrl: string;
3393
+ }>>;
3394
+ storeFeedback(agent: string, message: string, positive: boolean, inquiry: Inquiry | null): Promise<IAppResponse<void>>;
3395
+ }
3396
+ //#endregion
3397
+ //#region src/resources/missions.d.ts
3398
+ declare class MissionsResource {
3399
+ private readonly http;
3400
+ constructor(http: IHttpService);
3401
+ list(agent: string, page?: number): Promise<IAppResponse<Mission[]>>;
3402
+ get(missionId: string): Promise<IAppResponse<Mission>>;
3403
+ create(agent: string, data: MissionCreatePayload): Promise<IAppResponse<Mission>>;
3404
+ cancel(missionId: string): Promise<IAppResponse<Mission>>;
3405
+ pause(missionId: string): Promise<IAppResponse<Mission>>;
3406
+ resume(missionId: string): Promise<IAppResponse<Mission>>;
3407
+ }
3408
+ //#endregion
3409
+ //#region src/resources/notifications.d.ts
3410
+ declare class NotificationsResource {
3411
+ private readonly http;
3412
+ constructor(http: IHttpService);
3413
+ list(page?: number): Promise<IAppResponse<Notification[]>>;
3414
+ getUnread(): Promise<IAppResponse<Notification[]>>;
3415
+ getSettings(): Promise<IAppResponse<NotificationSetting[]>>;
3416
+ updateSettings(notificationType: string, channel: NotificationChannel): Promise<IAppResponse<NotificationSetting[]>>;
3417
+ getAgentSettings(): Promise<IAppResponse<{
3418
+ mutedAgents: string[];
3419
+ }>>;
3420
+ toggleAgent(agentUuid: string): Promise<IAppResponse<{
3421
+ mutedAgents: string[];
3422
+ }>>;
3423
+ }
3424
+ //#endregion
3425
+ //#region src/resources/office.d.ts
3426
+ declare class OfficeResource {
3427
+ private readonly http;
3428
+ constructor(http: IHttpService);
3429
+ getSnapshot(team: string): Promise<IAppResponse<OfficeSnapshot>>;
1629
3430
  }
1630
3431
  //#endregion
1631
3432
  //#region src/resources/orders.d.ts
1632
- type Order = {
1633
- id: string;
1634
- total: number;
1635
- status: string;
1636
- paymentUrl: string | null;
1637
- invoiceUrl: string | null;
1638
- createdAt: string;
1639
- items: OrderItem[];
1640
- configuration: OrderConfigurationItem[];
1641
- contactId: string | null;
1642
- };
1643
3433
  declare class OrdersResource {
1644
3434
  private readonly http;
1645
3435
  constructor(http: IHttpService);
@@ -1650,13 +3440,34 @@ declare class OrdersResource {
1650
3440
  notes?: string;
1651
3441
  team: string;
1652
3442
  fresh?: boolean;
1653
- items: {
3443
+ source?: 'kiosk';
3444
+ context?: OrderContext;
3445
+ linkVariationId?: string;
3446
+ priceMode?: string;
3447
+ sendConfirmation?: boolean;
3448
+ items?: {
1654
3449
  id: string;
1655
3450
  type: 'product' | 'service';
1656
3451
  quantity: number;
1657
- configuration?: ProductConfiguration;
3452
+ configuration?: Configuration;
1658
3453
  }[];
1659
3454
  }): Promise<IAppResponse<Order>>;
3455
+ update(id: string, data: {
3456
+ status?: OrderStatus;
3457
+ date?: string;
3458
+ }): Promise<IAppResponse<Order>>;
3459
+ delete(id: string): Promise<IAppResponse<void>>;
3460
+ pay(id: string, provider: string): Promise<IAppResponse<{
3461
+ url: string;
3462
+ }>>;
3463
+ }
3464
+ //#endregion
3465
+ //#region src/resources/persona.d.ts
3466
+ declare class PersonaResource {
3467
+ private readonly http;
3468
+ constructor(http: IHttpService);
3469
+ recordAnswer(questionKey: string, answer: string | string[]): Promise<IAppResponse<void>>;
3470
+ dismiss(questionKey: string): Promise<IAppResponse<void>>;
1660
3471
  }
1661
3472
  //#endregion
1662
3473
  //#region src/resources/products.d.ts
@@ -1667,81 +3478,238 @@ declare class ProductsResource {
1667
3478
  get(id: string): Promise<IAppResponse<Product>>;
1668
3479
  create(data: {
1669
3480
  name: TranslatableValue;
1670
- unit?: string;
1671
- }): Promise<IAppResponse<Product>>;
3481
+ price?: number;
3482
+ unit?: TranslatableValue;
3483
+ tags?: string[];
3484
+ description?: TranslatableValue | null;
3485
+ virtual?: boolean;
3486
+ public?: boolean;
3487
+ }, teamSlug?: string): Promise<IAppResponse<Product>>;
1672
3488
  update(id: string, data: {
1673
3489
  name?: TranslatableValue;
3490
+ unit?: TranslatableValue | null;
3491
+ tags?: string[] | null;
3492
+ description?: TranslatableValue | null;
3493
+ settings?: Record<string, unknown> | null;
1674
3494
  active?: boolean;
3495
+ public?: boolean;
3496
+ virtual?: boolean;
3497
+ media?: MediaLibraryAttributes[];
1675
3498
  }): Promise<IAppResponse<Product>>;
1676
- delete(id: string): Promise<IAppResponse<unknown>>;
3499
+ delete(id: string): Promise<IAppResponse<void>>;
3500
+ createVariation(productSlug: string, data: {
3501
+ name: TranslatableValue;
3502
+ sku: string;
3503
+ price: number;
3504
+ type?: string;
3505
+ }): Promise<IAppResponse<ProductVariation>>;
3506
+ updateVariation(variationId: string, data: {
3507
+ name?: TranslatableValue;
3508
+ price?: number;
3509
+ active?: boolean;
3510
+ hidden?: boolean;
3511
+ type?: string;
3512
+ settings?: Record<string, unknown> | null;
3513
+ media?: MediaLibraryAttributes[];
3514
+ preview?: MediaLibraryAttributes[];
3515
+ stock?: number | null;
3516
+ weight?: number | null;
3517
+ }): Promise<IAppResponse<ProductVariation>>;
3518
+ sortVariations(ids: string[]): Promise<IAppResponse<unknown>>;
3519
+ deleteVariation(variationId: string): Promise<IAppResponse<unknown>>;
3520
+ createRelation(productSlug: string, data: {
3521
+ relatedProductId: string;
3522
+ type?: string;
3523
+ }): Promise<IAppResponse<ProductRelation>>;
3524
+ deleteRelation(productSlug: string, relatedProductId: string): Promise<IAppResponse<unknown>>;
3525
+ updateVolumePrices(productSlug: string, data: {
3526
+ min_qty: number;
3527
+ unit_price: number;
3528
+ }[]): Promise<IAppResponse<VolumePrice[]>>;
3529
+ }
3530
+ //#endregion
3531
+ //#region src/resources/projects.d.ts
3532
+ declare class ProjectsResource {
3533
+ private readonly http;
3534
+ constructor(http: IHttpService);
3535
+ list(team: string): Promise<IAppResponse<Project[]>>;
3536
+ get(team: string, projectId: string): Promise<IAppResponse<Project>>;
3537
+ update(team: string, agent: string, projectId: string, payload: ProjectMutation): Promise<IAppResponse<Project>>;
3538
+ orchestrate(team: string, agent: string, payload: {
3539
+ message: string;
3540
+ projectId?: string | null;
3541
+ history?: ProjectStudioHistoryEntry[];
3542
+ selectedSkills?: string[];
3543
+ elementIds?: string[];
3544
+ outputPreset?: ProjectOutputPreset | null;
3545
+ outputType?: ProjectOutputType | null;
3546
+ sourceUrl?: string | null;
3547
+ nsfw?: boolean;
3548
+ }): Promise<IAppResponse<{
3549
+ project: Project;
3550
+ }>>;
3551
+ assist(team: string, agent: string, payload: {
3552
+ draft: string;
3553
+ intent: ProjectInputAssistIntent;
3554
+ projectId?: string | null;
3555
+ selectedSkills?: string[];
3556
+ outputPreset?: ProjectOutputPreset | null;
3557
+ }): Promise<IAppResponse<ProjectInputAssistResponse>>;
3558
+ delete(team: string, projectId: string): Promise<IAppResponse<void>>;
3559
+ produce(team: string, agent: string, projectId: string): Promise<IAppResponse<{
3560
+ status: string;
3561
+ }>>;
3562
+ exportProject(team: string, agent: string, projectId: string): Promise<IAppResponse<ProjectExportResponse>>;
1677
3563
  }
1678
3564
  //#endregion
1679
3565
  //#region src/resources/reminders.d.ts
1680
3566
  declare class RemindersResource {
1681
3567
  private readonly http;
1682
3568
  constructor(http: IHttpService);
1683
- list(): Promise<IAppResponse<{
1684
- data: Reminder[];
1685
- }>>;
3569
+ list(): Promise<IAppResponse<Reminder[]>>;
1686
3570
  add(payload: {
1687
3571
  agentId: string;
1688
3572
  text: string;
1689
3573
  scheduledAt: string;
1690
3574
  }): Promise<IAppResponse<Reminder>>;
1691
- delete(id: string): Promise<IAppResponse<unknown>>;
3575
+ delete(id: string): Promise<IAppResponse<void>>;
1692
3576
  }
1693
3577
  //#endregion
1694
3578
  //#region src/resources/rooms.d.ts
1695
3579
  declare class RoomsResource {
1696
3580
  private readonly http;
1697
3581
  constructor(http: IHttpService);
1698
- list(): Promise<IAppResponse<Room[]>>;
3582
+ list(options?: {
3583
+ team?: string;
3584
+ agent?: string;
3585
+ integration?: string;
3586
+ includeArchived?: boolean;
3587
+ }): Promise<IAppResponse<Room[]>>;
3588
+ create(agent: string, name: string, description: string | null, isPublic: boolean, kind?: RoomKind | null, archivedAt?: string | null, meta?: Record<string, unknown>): Promise<IAppResponse<Room>>;
3589
+ update(id: string, data: {
3590
+ name?: string;
3591
+ description?: string | null;
3592
+ public?: boolean;
3593
+ kind?: RoomKind | null;
3594
+ archivedAt?: string | null;
3595
+ active?: boolean;
3596
+ meta?: Record<string, unknown>;
3597
+ }): Promise<IAppResponse<Room>>;
3598
+ delete(id: string): Promise<IAppResponse<void>>;
1699
3599
  messages(roomId: string, params?: {
1700
3600
  perPage?: number;
1701
3601
  }): Promise<IAppResponse<Message[]>>;
1702
3602
  }
1703
3603
  //#endregion
3604
+ //#region src/resources/services.d.ts
3605
+ declare class ServicesResource {
3606
+ private readonly http;
3607
+ constructor(http: IHttpService);
3608
+ list(team?: string): Promise<IAppResponse<Service[]>>;
3609
+ get(slug: string): Promise<IAppResponse<Service>>;
3610
+ store(team: string, data: {
3611
+ name: TranslatableValue;
3612
+ price: number;
3613
+ durationMinutes: number | null;
3614
+ description?: TranslatableValue | null;
3615
+ digital?: boolean;
3616
+ public?: boolean;
3617
+ pricingModel?: string;
3618
+ settings?: Record<string, unknown> | null;
3619
+ }): Promise<IAppResponse<Service>>;
3620
+ update(id: string, data: Partial<Pick<Service, 'name' | 'price' | 'description' | 'active' | 'digital' | 'public'>> & {
3621
+ durationMinutes?: number | null;
3622
+ settings?: Record<string, unknown> | null;
3623
+ }): Promise<IAppResponse<Service>>;
3624
+ delete(id: string): Promise<IAppResponse<void>>;
3625
+ }
3626
+ //#endregion
3627
+ //#region src/resources/shortcuts.d.ts
3628
+ declare class ShortcutsResource {
3629
+ private readonly http;
3630
+ constructor(http: IHttpService);
3631
+ list(agent: string, page?: number): Promise<IAppResponse<Shortcut[]>>;
3632
+ create(agent: string, name: string, warp: string, options?: {
3633
+ description?: string | null;
3634
+ inputs?: string[] | null;
3635
+ chat?: boolean;
3636
+ }): Promise<IAppResponse<Shortcut>>;
3637
+ update(id: string, name: string, warp: string, options?: {
3638
+ description?: string | null;
3639
+ inputs?: string[] | null;
3640
+ chat?: boolean;
3641
+ }): Promise<IAppResponse<Shortcut>>;
3642
+ delete(id: string): Promise<IAppResponse<void>>;
3643
+ }
3644
+ //#endregion
1704
3645
  //#region src/resources/sites.d.ts
1705
3646
  declare class SitesResource {
1706
3647
  private readonly http;
1707
3648
  constructor(http: IHttpService);
3649
+ brands(): Promise<IAppResponse<SiteBrand[]>>;
1708
3650
  listMine(teamSlug: string): Promise<IAppResponse<Site[]>>;
1709
3651
  resolve(teamSlug: string, brandSlug?: string): Promise<IAppResponse<Site>>;
1710
3652
  resolveByDomain(domain: string): Promise<IAppResponse<Site>>;
1711
- update(siteSlug: string, data: {
3653
+ update(siteId: number, data: {
1712
3654
  customDomain?: string | null;
1713
3655
  enabled?: boolean;
1714
3656
  modules?: string[];
1715
- }): Promise<IAppResponse<{
1716
- updated: boolean;
3657
+ }): Promise<IAppResponse<void>>;
3658
+ }
3659
+ //#endregion
3660
+ //#region src/resources/skills.d.ts
3661
+ declare class SkillsResource {
3662
+ private readonly http;
3663
+ constructor(http: IHttpService);
3664
+ list(agent: string): Promise<IAppResponse<Skill[]>>;
3665
+ get(id: string): Promise<IAppResponse<Skill>>;
3666
+ create(params: {
3667
+ agent: string;
3668
+ name: string;
3669
+ content: string;
3670
+ description: string;
3671
+ scope: SkillScopeValue;
3672
+ meta?: Record<string, unknown>;
3673
+ license?: string;
3674
+ compatibility?: string;
3675
+ allowedTools?: string;
3676
+ media?: MediaLibraryItems;
3677
+ active?: boolean;
3678
+ isPublic?: boolean;
3679
+ price?: number;
3680
+ }): Promise<IAppResponse<Skill>>;
3681
+ update(id: string, data: Partial<Omit<Skill, 'media' | 'marketplace'>> & {
3682
+ media?: MediaLibraryItems;
3683
+ public?: boolean;
3684
+ price?: number;
3685
+ }): Promise<IAppResponse<Skill>>;
3686
+ delete(id: string): Promise<IAppResponse<void>>;
3687
+ toggle(id: string): Promise<IAppResponse<Skill>>;
3688
+ parseFile(content: string): Promise<IAppResponse<{
3689
+ name: string;
3690
+ description: string;
3691
+ content: string;
3692
+ meta: Record<string, unknown> | null;
3693
+ }>>;
3694
+ importSkill(agent: string, content: string): Promise<IAppResponse<Skill>>;
3695
+ exportSkill(id: string): Promise<IAppResponse<{
3696
+ content: string;
3697
+ filename: string;
1717
3698
  }>>;
1718
3699
  }
1719
3700
  //#endregion
1720
- //#region src/resources/teams.d.ts
1721
- declare class TeamsResource {
3701
+ //#region src/resources/stats.d.ts
3702
+ declare class StatsResource {
1722
3703
  private readonly http;
1723
3704
  constructor(http: IHttpService);
1724
- list(): Promise<IAppResponse<Team[]>>;
1725
- listPublic(params?: {
1726
- tags?: string;
1727
- }): Promise<IAppResponse<Team[]>>;
1728
- get(slug: string): Promise<IAppResponse<Team>>;
1729
- invite(teamSlug: string, payload: {
1730
- email: string;
1731
- role: 'owner' | 'admin' | 'member';
1732
- }): Promise<IAppResponse<unknown>>;
1733
- updateLogo(teamSlug: string, logo: MediaLibraryItems): Promise<IAppResponse<TeamPrivate>>;
1734
- updateCover(teamSlug: string, cover: MediaLibraryItems): Promise<IAppResponse<TeamPrivate>>;
1735
- updateSetting(teamSlug: string, key: string, value: boolean | string | number | object | null): Promise<IAppResponse<TeamPrivate>>;
3705
+ getGamification(): Promise<IAppResponse<GamificationData>>;
1736
3706
  }
1737
3707
  //#endregion
1738
- //#region src/resources/stores.d.ts
1739
- declare class StoresResource {
3708
+ //#region src/resources/kv.d.ts
3709
+ declare class KvResource {
1740
3710
  private readonly http;
1741
3711
  constructor(http: IHttpService);
1742
- list(): Promise<IAppResponse<{
1743
- data: Store[];
1744
- }>>;
3712
+ list(): Promise<IAppResponse<Store[]>>;
1745
3713
  create(payload: StoreCreatePayload): Promise<IAppResponse<Store>>;
1746
3714
  entries(params?: {
1747
3715
  storeName?: string;
@@ -1752,7 +3720,104 @@ declare class StoresResource {
1752
3720
  setEntry(payload: StoreEntryPayload): Promise<IAppResponse<StoreEntryResult>>;
1753
3721
  appendEntry(payload: StoreEntryPayload): Promise<IAppResponse<StoreEntryResult>>;
1754
3722
  toggle(storeName?: string): Promise<IAppResponse<StoreToggleResult>>;
1755
- delete(storeName: string): Promise<IAppResponse<unknown>>;
3723
+ delete(storeName: string): Promise<IAppResponse<void>>;
3724
+ }
3725
+ //#endregion
3726
+ //#region src/resources/subscriptions.d.ts
3727
+ declare class SubscriptionsResource {
3728
+ private readonly http;
3729
+ constructor(http: IHttpService);
3730
+ list(team: string): Promise<IAppResponse<AppSubscription[]>>;
3731
+ get(id: string): Promise<IAppResponse<AppSubscription>>;
3732
+ cancel(id: string): Promise<IAppResponse<AppSubscription>>;
3733
+ resume(id: string): Promise<IAppResponse<AppSubscription>>;
3734
+ cancelPlan(team: string): Promise<IAppResponse<void>>;
3735
+ resumePlan(team: string): Promise<IAppResponse<void>>;
3736
+ }
3737
+ //#endregion
3738
+ //#region src/resources/swarms.d.ts
3739
+ declare class SwarmsResource {
3740
+ private readonly http;
3741
+ constructor(http: IHttpService);
3742
+ listSwarms(team: string): Promise<IAppResponse<Swarm[]>>;
3743
+ listAgents(swarm: string): Promise<IAppResponse<Agent[]>>;
3744
+ storeProposal(agent: string, swarm: string, title: string, description: string, actions: ProposalAction[], attachments: MediaLibraryItems, poll: ProposalPollOption[]): Promise<IAppResponse<Proposal>>;
3745
+ finalizeProposal(swarm: string, txHash: string, proposal: string): Promise<IAppResponse<void>>;
3746
+ finalizeSignature(swarm: string, txHash: string, proposal: string): Promise<IAppResponse<void>>;
3747
+ finalizeExecution(chain: WarpChainName, txHash: string, actions?: ProposalAction[]): Promise<IAppResponse<void>>;
3748
+ }
3749
+ //#endregion
3750
+ //#region src/resources/tasks.d.ts
3751
+ declare class TasksResource {
3752
+ private readonly http;
3753
+ constructor(http: IHttpService);
3754
+ list(agent: string, page?: number): Promise<IAppResponse<Task[]>>;
3755
+ create(agent: string, room: string, warp: string, options?: {
3756
+ cronExpression?: string;
3757
+ inputs?: string[];
3758
+ maxRuns?: number | null;
3759
+ startsAt?: string | null;
3760
+ endsAt?: string | null;
3761
+ }): Promise<IAppResponse<Task>>;
3762
+ delete(id: string): Promise<IAppResponse<void>>;
3763
+ toggle(id: string): Promise<IAppResponse<Task>>;
3764
+ }
3765
+ //#endregion
3766
+ //#region src/resources/teams.d.ts
3767
+ type TeamInviteInfo = {
3768
+ slug: string;
3769
+ name: string;
3770
+ };
3771
+ type TeamMutationPayload = {
3772
+ name?: string;
3773
+ slug?: string;
3774
+ description?: TranslatableValue | null;
3775
+ tagline?: TranslatableValue | null;
3776
+ category?: TeamCategory;
3777
+ public?: boolean;
3778
+ tags?: string[];
3779
+ features?: TeamFeature[];
3780
+ meta?: Partial<TeamMeta>;
3781
+ settings?: Record<string, JsonValue>;
3782
+ website?: string | null;
3783
+ phone?: string | null;
3784
+ email?: string | null;
3785
+ address?: string | null;
3786
+ location?: string | null;
3787
+ };
3788
+ declare class TeamsResource {
3789
+ private readonly http;
3790
+ constructor(http: IHttpService);
3791
+ list(): Promise<IAppResponse<Team[]>>;
3792
+ listPublic(params?: {
3793
+ tags?: string;
3794
+ }): Promise<IAppResponse<Team[]>>;
3795
+ get(slug: string): Promise<IAppResponse<Team>>;
3796
+ getPublic(slug: string): Promise<IAppResponse<Team>>;
3797
+ create(data: TeamMutationPayload & {
3798
+ name: string;
3799
+ }): Promise<IAppResponse<TeamPrivate>>;
3800
+ delete(teamSlug: string): Promise<IAppResponse<void>>;
3801
+ update(teamSlug: string, data: TeamMutationPayload): Promise<IAppResponse<TeamPrivate>>;
3802
+ updateDescription(teamSlug: string, description: TranslatableValue | null): Promise<IAppResponse<TeamPrivate>>;
3803
+ updateTagline(teamSlug: string, tagline: TranslatableValue | null): Promise<IAppResponse<TeamPrivate>>;
3804
+ invite(teamSlug: string, payload: {
3805
+ email: string;
3806
+ role: 'owner' | 'admin' | 'member';
3807
+ }): Promise<IAppResponse<void>>;
3808
+ inviteMember(teamSlug: string, email: string, role: UserRole): Promise<IAppResponse<void>>;
3809
+ removeMember(teamSlug: string, memberId: string): Promise<IAppResponse<void>>;
3810
+ listMembers(teamSlug: string): Promise<IAppResponse<TeamMember[]>>;
3811
+ updateLogo(teamSlug: string, logo: MediaLibraryItems): Promise<IAppResponse<TeamPrivate>>;
3812
+ updateCover(teamSlug: string, cover: MediaLibraryItems): Promise<IAppResponse<TeamPrivate>>;
3813
+ updateSetting(teamSlug: string, key: string, value: boolean | string | number | object | null): Promise<IAppResponse<TeamPrivate>>;
3814
+ listPrivate(): Promise<IAppResponse<TeamPrivate[]>>;
3815
+ getInviteByToken(token: string): Promise<IAppResponse<TeamInviteInfo>>;
3816
+ acceptInvite(slug: string): Promise<IAppResponse<void>>;
3817
+ usage(teamSlug: string): Promise<IAppResponse<TeamUsage>>;
3818
+ featureUsage(teamSlug: string, feature: PlanFeature): Promise<IAppResponse<TeamFeatureUsage>>;
3819
+ aiCosts(teamSlug: string, page?: number): Promise<IAppResponse<AiCostsResponse>>;
3820
+ topupFinalize(tx: string): Promise<IAppResponse<void>>;
1756
3821
  }
1757
3822
  //#endregion
1758
3823
  //#region src/resources/updates.d.ts
@@ -1768,37 +3833,86 @@ declare class UpdatesResource {
1768
3833
  type?: UpdateType;
1769
3834
  active?: boolean;
1770
3835
  with?: UpdateRelation[];
1771
- }): Promise<IAppResponse<{
1772
- data: Update[];
1773
- }>>;
3836
+ }): Promise<IAppResponse<Update[]>>;
1774
3837
  create(payload: UpdateCreatePayload): Promise<IAppResponse<Update>>;
1775
3838
  update(id: string, payload: UpdateUpdatePayload): Promise<IAppResponse<Update>>;
1776
- delete(id: string): Promise<IAppResponse<unknown>>;
3839
+ delete(id: string): Promise<IAppResponse<void>>;
1777
3840
  stats(): Promise<IAppResponse<UpdateStats>>;
1778
3841
  }
1779
3842
  //#endregion
1780
- //#region src/resources/links.d.ts
1781
- declare class LinksResource {
3843
+ //#region src/resources/upgrades.d.ts
3844
+ declare class UpgradesResource {
1782
3845
  private readonly http;
1783
3846
  constructor(http: IHttpService);
1784
- list(params?: {
1785
- type?: string;
1786
- active?: boolean;
1787
- }): Promise<IAppResponse<{
1788
- data: Link[];
1789
- }>>;
1790
- create(payload: LinkCreatePayload): Promise<IAppResponse<Link>>;
1791
- update(id: string, payload: LinkUpdatePayload): Promise<IAppResponse<Link>>;
1792
- delete(id: string): Promise<IAppResponse<unknown>>;
1793
- stats(): Promise<IAppResponse<LinkStats>>;
1794
- variations(linkId: string): Promise<IAppResponse<{
1795
- data: LinkVariation[];
1796
- }>>;
1797
- createVariation(linkId: string, payload: LinkVariationCreatePayload): Promise<IAppResponse<LinkVariation>>;
1798
- createVariationBatch(linkId: string, payload: LinkVariationBatchCreatePayload): Promise<IAppResponse<{
1799
- data: LinkVariation[];
3847
+ listPendingByTeam(teamSlug: string): Promise<IAppResponse<Upgrade[]>>;
3848
+ listPendingByAgent(agentId: string, entityType?: string, status?: UpgradeStatus): Promise<IAppResponse<Upgrade[]>>;
3849
+ get(agentId: string, upgradeId: string): Promise<IAppResponse<Upgrade>>;
3850
+ accept(agentId: string, upgradeId: string): Promise<IAppResponse<Upgrade>>;
3851
+ reject(agentId: string, upgradeId: string): Promise<IAppResponse<Upgrade>>;
3852
+ propose(agentId: string, entityType: 'character' | 'skill', proposedContent: string, reason?: string | null, entityId?: string | null): Promise<IAppResponse<Upgrade>>;
3853
+ }
3854
+ //#endregion
3855
+ //#region src/resources/users.d.ts
3856
+ declare class UsersResource {
3857
+ private readonly http;
3858
+ constructor(http: IHttpService);
3859
+ getPreference(key: keyof UserSettings): Promise<IAppResponse<{
3860
+ key: typeof key;
3861
+ value: JsonValue;
1800
3862
  }>>;
1801
- deleteVariation(linkId: string, variationId: string): Promise<IAppResponse<unknown>>;
3863
+ updatePreference(key: keyof UserSettings, value: JsonValue): Promise<IAppResponse<UserPrivate>>;
3864
+ getMe(): Promise<IAppResponse<UserPrivate>>;
3865
+ updateMe(name: string, timezone: string): Promise<IAppResponse<UserPrivate>>;
3866
+ updateEmail(email: string): Promise<IAppResponse<UserPrivate>>;
3867
+ resendEmailVerification(): Promise<IAppResponse<UserPrivate>>;
3868
+ deleteMe(): Promise<IAppResponse<void>>;
3869
+ updatePayoutAddress(address: string, chain?: string): Promise<IAppResponse<void>>;
3870
+ getAffiliate(code: string): Promise<IAppResponse<Affiliate>>;
3871
+ getAffiliateTiers(): Promise<IAppResponse<AffiliateTier[]>>;
3872
+ storeAffiliate(name: string, email: string, application: string): Promise<IAppResponse<void>>;
3873
+ getEarnings(page: number): Promise<IAppResponse<Earning[]>>;
3874
+ getPayouts(page: number): Promise<IAppResponse<PayoutEntry[]>>;
3875
+ requestPayout(): Promise<IAppResponse<PayoutEntry>>;
3876
+ }
3877
+ //#endregion
3878
+ //#region src/resources/voice.d.ts
3879
+ type TranscriptionResponse = {
3880
+ text: string;
3881
+ language?: string | null;
3882
+ duration?: number | null;
3883
+ };
3884
+ declare class VoiceResource {
3885
+ private readonly http;
3886
+ constructor(http: IHttpService);
3887
+ transcribe(teamSlug: string, audio: File, language?: string | null, prompt?: string | null): Promise<IAppResponse<TranscriptionResponse>>;
3888
+ }
3889
+ //#endregion
3890
+ //#region src/resources/wallets.d.ts
3891
+ declare class WalletsResource {
3892
+ private readonly http;
3893
+ constructor(http: IHttpService);
3894
+ store(agentUuid: string, provider: WarpWalletProvider, chain: WarpChainName, address: string | null): Promise<IAppResponse<Record<string, unknown>>>;
3895
+ delete(agentUuid: string, chain: WarpChainName): Promise<IAppResponse<void>>;
3896
+ sort(agentUuid: string, walletOrders: {
3897
+ chain: WarpChainName;
3898
+ order: number;
3899
+ }[]): Promise<IAppResponse<Record<string, unknown>>>;
3900
+ getProviders(agentUuid: string): Promise<IAppResponse<Record<string, unknown>>>;
3901
+ }
3902
+ //#endregion
3903
+ //#region src/resources/workspace.d.ts
3904
+ declare class WorkspaceResource {
3905
+ private readonly http;
3906
+ constructor(http: IHttpService);
3907
+ register(teamId: string, deviceId: string, deviceName: string, deviceType: string, workspacePath: string, encryptionKeyHash: string, platformVersion: string, name?: string): Promise<IAppResponse<WorkspaceInfo>>;
3908
+ get(teamIdOrSlug: string): Promise<IAppResponse<WorkspaceInfo[]>>;
3909
+ files(workspaceId: string, opts?: {
3910
+ path?: string;
3911
+ offset?: number;
3912
+ limit?: number;
3913
+ }): Promise<IAppResponse<WorkspaceCloudFile[]>>;
3914
+ uploadFile(workspaceId: string, file: File, pathOverride?: string): Promise<IAppResponse<unknown>>;
3915
+ delete(id: string): Promise<IAppResponse<void>>;
1802
3916
  }
1803
3917
  //#endregion
1804
3918
  //#region src/resources/warps.d.ts
@@ -1809,51 +3923,120 @@ type BackendWarpBrand = {
1809
3923
  logo?: string | null;
1810
3924
  isPublic?: boolean;
1811
3925
  };
3926
+ type WarpDefinition = Record<string, JsonValue>;
3927
+ type BackendWarpCreateResponse = Pick<BackendWarp, 'id' | 'url' | 'definition' | 'brand'>;
3928
+ type BackendWarpUpdateResponse = Pick<BackendWarp, 'id'>;
1812
3929
  type BackendWarp = {
1813
3930
  id: string;
1814
3931
  title: string;
1815
3932
  url: string;
1816
- definition: Record<string, any>;
3933
+ definition: WarpDefinition;
1817
3934
  brand: BackendWarpBrand | null;
1818
3935
  agent?: AgentPrivate | null;
1819
3936
  };
1820
3937
  declare class WarpsResource {
1821
3938
  private readonly http;
1822
3939
  constructor(http: IHttpService);
1823
- list(brand?: string): Promise<IAppResponse<BackendWarp[]>>;
1824
- show(identifier: string): Promise<IAppResponse<BackendWarp>>;
3940
+ list(options?: {
3941
+ brand?: string;
3942
+ creator?: string;
3943
+ primaryAddress?: string;
3944
+ status?: WarpBackendStatus;
3945
+ page?: number;
3946
+ perPage?: number;
3947
+ }): Promise<IAppResponse<WarpBackend[]>>;
3948
+ show(identifier: string): Promise<IAppResponse<WarpBackend>>;
1825
3949
  create(data: {
1826
3950
  brand: string;
1827
- definition: Record<string, any>;
3951
+ definition: WarpDefinition;
1828
3952
  public?: boolean;
1829
3953
  agent?: string | null;
1830
- }): Promise<IAppResponse<{
1831
- id: string;
1832
- url: string;
1833
- definition: Record<string, any>;
1834
- brand: any;
1835
- }>>;
3954
+ }): Promise<IAppResponse<BackendWarpCreateResponse>>;
1836
3955
  update(identifier: string, data: {
1837
- definition?: Record<string, any>;
3956
+ definition?: WarpDefinition;
1838
3957
  agent?: string | null;
1839
3958
  public?: boolean;
1840
- }): Promise<IAppResponse<{
1841
- id: string;
3959
+ }): Promise<IAppResponse<BackendWarpUpdateResponse>>;
3960
+ destroy(identifier: string): Promise<IAppResponse<void>>;
3961
+ execute(identifier: string, inputs: string[], room?: string): Promise<IAppResponse<JsonValue>>;
3962
+ sync(tx: string): Promise<IAppResponse<void>>;
3963
+ listBrands(locale: WarpLocale, options?: {
3964
+ chain?: string | string[];
3965
+ }): Promise<IAppResponse<BrandBackend[]>>;
3966
+ getBrand(slug: string, locale: WarpLocale): Promise<IAppResponse<BrandBackend>>;
3967
+ lookupBrand(hash: string, locale: WarpLocale): Promise<IAppResponse<BrandBackend>>;
3968
+ listPopularBrands(locale: WarpLocale): Promise<IAppResponse<BrandBackend[]>>;
3969
+ previewBrandInvite(code: string): Promise<IAppResponse<{
3970
+ name: string;
3971
+ description: string;
3972
+ logo: string;
3973
+ colors: string;
3974
+ }>>;
3975
+ joinBrand(inviteCode: string, teamSlug: string): Promise<IAppResponse<BrandBackend>>;
3976
+ listTeamBrands(teamSlug: string): Promise<IAppResponse<BrandBackend[]>>;
3977
+ getTeamBrand(teamSlug: string, brandSlug: string): Promise<IAppResponse<BrandBackend>>;
3978
+ createTeamBrand(teamSlug: string, data: {
3979
+ name: string;
3980
+ description?: string;
3981
+ public?: boolean;
3982
+ source?: BrandSourceConfig | null;
3983
+ }): Promise<IAppResponse<BrandBackend>>;
3984
+ updateTeamBrand(teamSlug: string, brandSlug: string, data: {
3985
+ name?: string;
3986
+ description?: string;
3987
+ public?: boolean;
3988
+ logo?: MediaLibraryItems | null;
3989
+ source?: BrandSourceConfig | null;
3990
+ }): Promise<IAppResponse<BrandBackend>>;
3991
+ deleteTeamBrand(teamSlug: string, brandSlug: string): Promise<IAppResponse<void>>;
3992
+ regenerateBrandInvite(teamSlug: string, brandSlug: string): Promise<IAppResponse<{
3993
+ invite_code: string;
1842
3994
  }>>;
1843
- destroy(identifier: string): Promise<IAppResponse<unknown>>;
1844
- execute(identifier: string, inputs: string[], room?: string): Promise<IAppResponse<any>>;
3995
+ createBrandWarp(teamSlug: string, brandSlug: string, data: {
3996
+ name: string;
3997
+ title: Record<string, string>;
3998
+ description?: Record<string, string>;
3999
+ definition: Record<string, any>;
4000
+ agent?: string | null;
4001
+ }): Promise<IAppResponse<WarpBackend>>;
4002
+ updateBrandWarp(teamSlug: string, brandSlug: string, warpHash: string, data: {
4003
+ name?: string;
4004
+ definition?: Record<string, any>;
4005
+ agent?: string | null;
4006
+ }): Promise<IAppResponse<WarpBackend>>;
4007
+ deleteBrandWarp(teamSlug: string, brandSlug: string, warpHash: string): Promise<IAppResponse<void>>;
4008
+ fetchSourceSchemaFromUrl(url: string): Promise<IAppResponse<any>>;
1845
4009
  }
1846
4010
  //#endregion
1847
- //#region src/resources/subscriptions.d.ts
1848
- declare class SubscriptionsResource {
4011
+ //#region src/resources/webhooks.d.ts
4012
+ declare class WebhooksResource {
1849
4013
  private readonly http;
1850
4014
  constructor(http: IHttpService);
1851
- list(team: string): Promise<IAppResponse<{
1852
- data: AppSubscription[];
1853
- }>>;
1854
- get(id: string): Promise<IAppResponse<AppSubscription>>;
1855
- cancel(id: string): Promise<IAppResponse<AppSubscription>>;
1856
- resume(id: string): Promise<IAppResponse<AppSubscription>>;
4015
+ list(agentId: string): Promise<IAppResponse<Webhook[]>>;
4016
+ create(agentId: string, name: string, url: string, trigger: WebhookTriggerEvent, options?: {
4017
+ headers?: Record<string, string>;
4018
+ description?: string;
4019
+ active?: boolean;
4020
+ verifySsl?: boolean;
4021
+ timeout?: number;
4022
+ maxRetries?: number;
4023
+ }): Promise<IAppResponse<Webhook>>;
4024
+ update(agentId: string, webhookId: string, updates: {
4025
+ name?: string;
4026
+ url?: string;
4027
+ trigger?: WebhookTriggerEvent;
4028
+ headers?: Record<string, string>;
4029
+ description?: string;
4030
+ active?: boolean;
4031
+ verifySsl?: boolean;
4032
+ timeout?: number;
4033
+ maxRetries?: number;
4034
+ }): Promise<IAppResponse<Webhook>>;
4035
+ delete(agentId: string, webhookId: string): Promise<IAppResponse<void>>;
4036
+ listWarps(agentId: string): Promise<IAppResponse<AgentWebhookWarp[]>>;
4037
+ activateWarp(agentId: string, payload: ActivateAgentWebhookWarpPayload): Promise<IAppResponse<AgentWebhookWarp>>;
4038
+ deactivateWarp(agentId: string, warpIdentifier: string): Promise<IAppResponse<void>>;
4039
+ deleteWarpHook(agentId: string, webhookId: number): Promise<IAppResponse<void>>;
1857
4040
  }
1858
4041
  //#endregion
1859
4042
  //#region src/cache/types.d.ts
@@ -1874,35 +4057,70 @@ interface JoAiClientConfig {
1874
4057
  declare class JoAiClient {
1875
4058
  readonly http: IHttpService;
1876
4059
  private readonly env;
1877
- readonly appointments: AppointmentsResource;
1878
- readonly hub: HubResource;
1879
- readonly teams: TeamsResource;
4060
+ isReady: boolean;
4061
+ hasApiToken: boolean;
1880
4062
  readonly agents: AgentsResource;
4063
+ readonly alerts: AlertsResource;
4064
+ readonly apiTokens: ApiTokensResource;
4065
+ readonly characters: CharactersResource;
4066
+ readonly desk: DeskResource;
4067
+ readonly elements: ElementsResource;
4068
+ readonly entities: EntitiesResource;
4069
+ readonly mcp: McpResource;
4070
+ readonly appointments: AppointmentsResource;
4071
+ readonly auth: AuthResource;
4072
+ readonly billing: BillingResource;
4073
+ readonly billingAddresses: BillingAddressesResource;
1881
4074
  readonly blueprints: BlueprintsResource;
4075
+ readonly cards: CardsResource;
4076
+ readonly cart: CartsResource;
4077
+ readonly changelog: ChangelogResource;
4078
+ readonly contacts: ContactsResource;
4079
+ readonly contracts: ContractsResource;
4080
+ readonly documents: DocumentsResource;
1882
4081
  readonly flows: FlowsResource;
1883
- readonly marketplace: MarketplaceResource;
1884
- readonly services: ServicesResource;
1885
- readonly skills: SkillsResource;
4082
+ readonly goals: GoalsResource;
4083
+ readonly hub: HubResource;
1886
4084
  readonly ingestions: IngestionsResource;
1887
- readonly rooms: RoomsResource;
1888
- readonly contacts: ContactsResource;
4085
+ readonly inquiries: InquiriesResource;
4086
+ readonly integrations: IntegrationsResource;
4087
+ readonly intents: IntentsResource;
1889
4088
  readonly items: ItemsResource;
4089
+ readonly links: LinksResource;
4090
+ readonly loyalty: LoyaltyResource;
4091
+ readonly store: StoreResource;
4092
+ readonly media: MediaResource;
4093
+ readonly meetings: MeetingsResource;
1890
4094
  readonly memories: MemoriesResource;
1891
- readonly goals: GoalsResource;
1892
- readonly reminders: RemindersResource;
4095
+ readonly messages: MessagesResource;
4096
+ readonly missions: MissionsResource;
4097
+ readonly notifications: NotificationsResource;
4098
+ readonly office: OfficeResource;
1893
4099
  readonly orders: OrdersResource;
4100
+ readonly persona: PersonaResource;
4101
+ readonly privateWarps: WarpsResource;
1894
4102
  readonly products: ProductsResource;
4103
+ readonly projects: ProjectsResource;
4104
+ readonly reminders: RemindersResource;
4105
+ readonly rooms: RoomsResource;
4106
+ readonly secrets: SecretsResource;
4107
+ readonly services: ServicesResource;
4108
+ readonly shortcuts: ShortcutsResource;
1895
4109
  readonly sites: SitesResource;
1896
- readonly documents: DocumentsResource;
1897
- readonly meetings: MeetingsResource;
1898
- readonly media: MediaResource;
1899
- readonly stores: StoresResource;
1900
- readonly updates: UpdatesResource;
1901
- readonly links: LinksResource;
1902
- readonly privateWarps: WarpsResource;
4110
+ readonly skills: SkillsResource;
4111
+ readonly stats: StatsResource;
4112
+ readonly kv: KvResource;
1903
4113
  readonly subscriptions: SubscriptionsResource;
1904
- readonly cart: CartsResource;
1905
- readonly auth: AuthResource;
4114
+ readonly swarms: SwarmsResource;
4115
+ readonly tasks: TasksResource;
4116
+ readonly teams: TeamsResource;
4117
+ readonly updates: UpdatesResource;
4118
+ readonly upgrades: UpgradesResource;
4119
+ readonly users: UsersResource;
4120
+ readonly voice: VoiceResource;
4121
+ readonly wallets: WalletsResource;
4122
+ readonly webhooks: WebhooksResource;
4123
+ readonly workspace: WorkspaceResource;
1906
4124
  constructor(config: JoAiClientConfig);
1907
4125
  clearCache(): void;
1908
4126
  warps(locale?: WarpLocale, currentUrl?: string): WarpClient;
@@ -1919,16 +4137,16 @@ declare class CachedHttpService implements IHttpService {
1919
4137
  private ttlMap;
1920
4138
  private defaultTtl;
1921
4139
  onNetworkError: (error: Error) => void;
1922
- onUnauthorized: (response: IAppResponse<any>) => void;
1923
- onSuccessfulResponse: (response: IAppResponse<any>) => void;
1924
- onMaintenanceMode: (response: IAppResponse<any>) => void;
1925
- onTooManyRequests: (response: IAppResponse<any>) => void;
4140
+ onUnauthorized: (response: IAppResponse<JsonValue>) => void;
4141
+ onSuccessfulResponse: (response: IAppResponse<JsonValue>) => void;
4142
+ onMaintenanceMode: (response: IAppResponse<JsonValue>) => void;
4143
+ onTooManyRequests: (response: IAppResponse<JsonValue>) => void;
1926
4144
  constructor(inner: IHttpService, overrides?: TtlMap, defaultTtl?: number);
1927
4145
  clearCache(): void;
1928
4146
  get<T>(url: string, options?: IRequestOptions): Promise<IAppResponse<T>>;
1929
- post<T>(url: string, data?: any, options?: IRequestOptions): Promise<IAppResponse<T>>;
1930
- put<T>(url: string, data?: any, options?: IRequestOptions): Promise<IAppResponse<T>>;
1931
- patch<T>(url: string, data?: any, options?: IRequestOptions): Promise<IAppResponse<T>>;
4147
+ post<T>(url: string, data?: JsonValue | FormData, options?: IRequestOptions): Promise<IAppResponse<T>>;
4148
+ put<T>(url: string, data?: JsonValue | FormData, options?: IRequestOptions): Promise<IAppResponse<T>>;
4149
+ patch<T>(url: string, data?: JsonValue | FormData, options?: IRequestOptions): Promise<IAppResponse<T>>;
1932
4150
  delete<T>(url: string, options?: IRequestOptions): Promise<IAppResponse<T>>;
1933
4151
  }
1934
4152
  //#endregion
@@ -1938,4 +4156,4 @@ declare class DistributionResource {
1938
4156
  private fetchDistribution;
1939
4157
  }
1940
4158
  //#endregion
1941
- export { AppointmentsResource, AuthResource, type AuthSendCodeRequest, type AuthVerifyResponse, type BackendWarp, type BackendWarpBrand, BlueprintsResource, type CacheConfig, CachedHttpService, CartsResource, ContactsResource, DistributionResource, FlowsResource, IngestionsResource, JoAiClient, type JoAiClientConfig, LinksResource, MarketplaceResource, MeetingsResource, type OpeningHoursEntry, type OpeningHoursFormatOptions, type Order, OrdersResource, type Product, type ProductVariation, ProductsResource, ServicesResource, SitesResource, SkillsResource, StoresResource, SubscriptionsResource, WarpsResource, createClient, formatOpeningHours };
4159
+ export { AgentsResource, AlertsResource, ApiTokensResource, AppointmentsResource, AuthResource, type AuthSendCodeRequest, type AuthVerifyResponse, type BackendWarp, type BackendWarpBrand, BillingAddressesResource, BillingResource, BlueprintsResource, type CacheConfig, CachedHttpService, CardsResource, CartsResource, ChangelogResource, CharactersResource, ContactsResource, ContractsResource, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, GoalsResource, IngestionsResource, InquiriesResource, IntegrationsResource, IntentsResource, ItemsResource, JoAiClient, type JoAiClientConfig, KvResource, LinksResource, LoyaltyResource, McpResource, MeetingsResource, MemoriesResource, MessagesResource, MissionsResource, NotificationsResource, OfficeResource, type OpeningHoursEntry, type OpeningHoursFormatOptions, OrdersResource, PersonaResource, type Product, type ProductVariation, ProductsResource, ProjectsResource, RemindersResource, ServicesResource, ShortcutsResource, SitesResource, SkillsResource, StatsResource, StoreResource, SubscriptionsResource, SwarmsResource, TasksResource, type TeamInviteInfo, TeamsResource, UpdatesResource, UpgradesResource, UsersResource, VoiceResource, WalletsResource, WarpsResource, WebhooksResource, WorkspaceResource, createClient, formatOpeningHours };