@joai/sdk 1.0.1 → 1.2.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.
- package/dist/index.d.mts +252 -67
- package/dist/index.mjs +106 -6
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -310,7 +310,7 @@ type TeamBrand = {
|
|
|
310
310
|
fg?: string;
|
|
311
311
|
label?: string;
|
|
312
312
|
logo?: string;
|
|
313
|
-
|
|
313
|
+
bankAccountHolder?: string;
|
|
314
314
|
bankIban?: string;
|
|
315
315
|
bankBic?: string;
|
|
316
316
|
invoiceAddress?: string;
|
|
@@ -422,6 +422,7 @@ type JsonValue = string | number | boolean | null | JsonValue[] | {
|
|
|
422
422
|
[key: string]: JsonValue;
|
|
423
423
|
}; //#endregion
|
|
424
424
|
//#region src/contact/types.d.ts
|
|
425
|
+
type ContactHealth = 'active' | 'lukewarm' | 'cold' | 'stale' | 'unknown';
|
|
425
426
|
type Contact = {
|
|
426
427
|
id: string;
|
|
427
428
|
name: string;
|
|
@@ -439,6 +440,11 @@ type Contact = {
|
|
|
439
440
|
userId: string | null;
|
|
440
441
|
locale?: string | null;
|
|
441
442
|
props?: Record<string, string> | null;
|
|
443
|
+
settings?: {
|
|
444
|
+
marketingOptOut?: boolean;
|
|
445
|
+
} | null;
|
|
446
|
+
lastActivityAt?: string | null;
|
|
447
|
+
health?: ContactHealth;
|
|
442
448
|
};
|
|
443
449
|
type ContactActivityType = 'note' | 'call' | 'meeting' | 'task' | 'update' | 'custom' | 'form' | 'loyalty';
|
|
444
450
|
type ContactActivityAuthor = {
|
|
@@ -468,6 +474,9 @@ type ContactFormData = {
|
|
|
468
474
|
tags?: string[] | null;
|
|
469
475
|
locale?: string | null;
|
|
470
476
|
props?: Record<string, string> | null;
|
|
477
|
+
settings?: {
|
|
478
|
+
marketingOptOut?: boolean;
|
|
479
|
+
};
|
|
471
480
|
};
|
|
472
481
|
type ContactCreatePayload = ContactFormData & {
|
|
473
482
|
name: string;
|
|
@@ -504,7 +513,7 @@ type TranslatableValue = Partial<Record<WarpLocale, string>>;
|
|
|
504
513
|
type OrderStatus = 'pending' | 'completed' | 'delivered' | 'canceled';
|
|
505
514
|
type OrderSource = 'auto' | 'manual' | 'kiosk';
|
|
506
515
|
type OrderType = 'order' | 'quote';
|
|
507
|
-
type SubscriptionStatus = 'active' | 'canceled' | 'past_due';
|
|
516
|
+
type SubscriptionStatus = 'active' | 'canceled' | 'past_due' | 'pending';
|
|
508
517
|
type SubscriptionInterval = 'weekly' | 'biweekly' | 'monthly' | 'quarterly' | 'yearly';
|
|
509
518
|
type PricingModel = 'free' | 'one-time' | 'weekly' | 'biweekly' | 'monthly' | 'quarterly' | 'yearly' | 'per-run';
|
|
510
519
|
type AppSubscription = {
|
|
@@ -711,6 +720,7 @@ type Order = {
|
|
|
711
720
|
invoiceDate: string;
|
|
712
721
|
meta: Record<string, JsonValue> | null;
|
|
713
722
|
contactId: string | null;
|
|
723
|
+
contact?: Contact | null;
|
|
714
724
|
source: OrderSource | null;
|
|
715
725
|
context: OrderContext | null;
|
|
716
726
|
paymentMode: string | null;
|
|
@@ -746,10 +756,14 @@ type Cart = {
|
|
|
746
756
|
coupon: Coupon | null;
|
|
747
757
|
couponDiscount: number;
|
|
748
758
|
};
|
|
759
|
+
type CouponCondition = 'none' | 'onetime-use' | 'previous-purchase';
|
|
749
760
|
type Coupon = {
|
|
761
|
+
id: string;
|
|
750
762
|
code: string;
|
|
751
|
-
amount: number;
|
|
752
|
-
percent: number;
|
|
763
|
+
amount: number | null;
|
|
764
|
+
percent: number | null;
|
|
765
|
+
condition: CouponCondition;
|
|
766
|
+
usesLeft: number | null;
|
|
753
767
|
expiresAt: string | null;
|
|
754
768
|
};
|
|
755
769
|
type PurchaseResult = {
|
|
@@ -802,6 +816,7 @@ type Integration = {
|
|
|
802
816
|
type: IntegrationType;
|
|
803
817
|
name: string;
|
|
804
818
|
active: boolean;
|
|
819
|
+
configured: boolean;
|
|
805
820
|
createdAt: string;
|
|
806
821
|
meta?: IntegrationMeta;
|
|
807
822
|
details?: IntegrationDetails;
|
|
@@ -939,6 +954,64 @@ type AgentSettings = {
|
|
|
939
954
|
'email_provider'?: EmailProvider | null;
|
|
940
955
|
};
|
|
941
956
|
//#endregion
|
|
957
|
+
//#region src/link/types.d.ts
|
|
958
|
+
type LinkScanHistory = {
|
|
959
|
+
daily: number[];
|
|
960
|
+
geography: Record<string, number>;
|
|
961
|
+
devices?: Record<string, number>;
|
|
962
|
+
operatingSystems?: Record<string, number>;
|
|
963
|
+
browsers?: Record<string, number>;
|
|
964
|
+
};
|
|
965
|
+
type Link = {
|
|
966
|
+
id: string;
|
|
967
|
+
url: string;
|
|
968
|
+
shortUrl: string;
|
|
969
|
+
status: 'active' | 'paused' | 'expired';
|
|
970
|
+
title: string | null;
|
|
971
|
+
scanCount: number;
|
|
972
|
+
scanHistory: LinkScanHistory;
|
|
973
|
+
lastScannedAt: string | null;
|
|
974
|
+
createdAt: string;
|
|
975
|
+
updatedAt: string;
|
|
976
|
+
};
|
|
977
|
+
type LinkVariation = {
|
|
978
|
+
id: string;
|
|
979
|
+
linkId: string;
|
|
980
|
+
title: string | null;
|
|
981
|
+
values: Record<string, string>;
|
|
982
|
+
url: string;
|
|
983
|
+
shortUrl: string;
|
|
984
|
+
status: 'active' | 'paused' | 'expired';
|
|
985
|
+
scanCount: number;
|
|
986
|
+
lastScannedAt: string | null;
|
|
987
|
+
createdAt: string;
|
|
988
|
+
updatedAt: string;
|
|
989
|
+
};
|
|
990
|
+
type LinkVariationCreatePayload = {
|
|
991
|
+
title?: string | null;
|
|
992
|
+
values: Record<string, string>;
|
|
993
|
+
};
|
|
994
|
+
type LinkVariationBatchCreatePayload = {
|
|
995
|
+
placeholder: string;
|
|
996
|
+
labelTemplate?: string | null;
|
|
997
|
+
from?: number | null;
|
|
998
|
+
to?: number | null;
|
|
999
|
+
values?: Array<{
|
|
1000
|
+
value: string;
|
|
1001
|
+
label?: string | null;
|
|
1002
|
+
}>;
|
|
1003
|
+
};
|
|
1004
|
+
type LinkCreatePayload = {
|
|
1005
|
+
url: string;
|
|
1006
|
+
title: string;
|
|
1007
|
+
};
|
|
1008
|
+
type LinkUpdatePayload = Partial<LinkCreatePayload>;
|
|
1009
|
+
type LinkStats = {
|
|
1010
|
+
totalLinks: number;
|
|
1011
|
+
activeLinks: number;
|
|
1012
|
+
totalScans: number;
|
|
1013
|
+
scanHistory: LinkScanHistory;
|
|
1014
|
+
}; //#endregion
|
|
942
1015
|
//#region src/warp/types.d.ts
|
|
943
1016
|
type WarpExtrasFaq = {
|
|
944
1017
|
question: string;
|
|
@@ -968,17 +1041,31 @@ type WarpBackend = {
|
|
|
968
1041
|
active: boolean;
|
|
969
1042
|
category: WarpBackendCategory;
|
|
970
1043
|
featured: boolean;
|
|
1044
|
+
form: boolean;
|
|
1045
|
+
store: boolean;
|
|
1046
|
+
executions: number;
|
|
971
1047
|
price?: number | null;
|
|
972
1048
|
primaryAddress: string | null;
|
|
973
1049
|
primaryFunc: string | null;
|
|
974
1050
|
locales: WarpLocale[];
|
|
975
1051
|
brand: BrandBackend | null;
|
|
1052
|
+
team?: Team | null;
|
|
976
1053
|
definition?: Record<string, any> | null;
|
|
977
1054
|
extras?: WarpExtras | null;
|
|
978
1055
|
agent?: AgentSimple | null;
|
|
1056
|
+
link?: Link | null;
|
|
1057
|
+
executionHistory?: number[] | null;
|
|
979
1058
|
};
|
|
980
1059
|
type WarpBackendStatus = 'unverified' | 'verified' | 'blacklisted';
|
|
981
1060
|
type WarpBackendCategory = 'none';
|
|
1061
|
+
type WarpExecutionBackend = {
|
|
1062
|
+
id: string;
|
|
1063
|
+
room: string | null;
|
|
1064
|
+
inputs: Record<string, unknown> | null;
|
|
1065
|
+
status: string;
|
|
1066
|
+
agent: AgentSimple | null;
|
|
1067
|
+
createdAt: string;
|
|
1068
|
+
};
|
|
982
1069
|
type BrandSourceConfig = {
|
|
983
1070
|
type: string;
|
|
984
1071
|
chain?: string;
|
|
@@ -1124,6 +1211,9 @@ type StoreItem = {
|
|
|
1124
1211
|
} | {
|
|
1125
1212
|
type: 'skill';
|
|
1126
1213
|
item: Skill;
|
|
1214
|
+
} | {
|
|
1215
|
+
type: 'form';
|
|
1216
|
+
item: WarpBackend;
|
|
1127
1217
|
};
|
|
1128
1218
|
type StoreData = {
|
|
1129
1219
|
blueprints: Blueprint[];
|
|
@@ -1131,6 +1221,7 @@ type StoreData = {
|
|
|
1131
1221
|
flows: Flow[];
|
|
1132
1222
|
creators: BrandBackend[];
|
|
1133
1223
|
agents: StoreAgent[];
|
|
1224
|
+
forms: WarpBackend[];
|
|
1134
1225
|
items: StoreItem[];
|
|
1135
1226
|
};
|
|
1136
1227
|
type StorePriceTier = {
|
|
@@ -2230,64 +2321,6 @@ type GamificationData = {
|
|
|
2230
2321
|
recentExperiences: RecentExperience[];
|
|
2231
2322
|
nextMilestones: Milestone[];
|
|
2232
2323
|
}; //#endregion
|
|
2233
|
-
//#region src/link/types.d.ts
|
|
2234
|
-
type LinkScanHistory = {
|
|
2235
|
-
daily: number[];
|
|
2236
|
-
geography: Record<string, number>;
|
|
2237
|
-
devices?: Record<string, number>;
|
|
2238
|
-
operatingSystems?: Record<string, number>;
|
|
2239
|
-
browsers?: Record<string, number>;
|
|
2240
|
-
};
|
|
2241
|
-
type Link = {
|
|
2242
|
-
id: string;
|
|
2243
|
-
url: string;
|
|
2244
|
-
shortUrl: string;
|
|
2245
|
-
status: 'active' | 'paused' | 'expired';
|
|
2246
|
-
title: string | null;
|
|
2247
|
-
scanCount: number;
|
|
2248
|
-
scanHistory: LinkScanHistory;
|
|
2249
|
-
lastScannedAt: string | null;
|
|
2250
|
-
createdAt: string;
|
|
2251
|
-
updatedAt: string;
|
|
2252
|
-
};
|
|
2253
|
-
type LinkVariation = {
|
|
2254
|
-
id: string;
|
|
2255
|
-
linkId: string;
|
|
2256
|
-
title: string | null;
|
|
2257
|
-
values: Record<string, string>;
|
|
2258
|
-
url: string;
|
|
2259
|
-
shortUrl: string;
|
|
2260
|
-
status: 'active' | 'paused' | 'expired';
|
|
2261
|
-
scanCount: number;
|
|
2262
|
-
lastScannedAt: string | null;
|
|
2263
|
-
createdAt: string;
|
|
2264
|
-
updatedAt: string;
|
|
2265
|
-
};
|
|
2266
|
-
type LinkVariationCreatePayload = {
|
|
2267
|
-
title?: string | null;
|
|
2268
|
-
values: Record<string, string>;
|
|
2269
|
-
};
|
|
2270
|
-
type LinkVariationBatchCreatePayload = {
|
|
2271
|
-
placeholder: string;
|
|
2272
|
-
labelTemplate?: string | null;
|
|
2273
|
-
from?: number | null;
|
|
2274
|
-
to?: number | null;
|
|
2275
|
-
values?: Array<{
|
|
2276
|
-
value: string;
|
|
2277
|
-
label?: string | null;
|
|
2278
|
-
}>;
|
|
2279
|
-
};
|
|
2280
|
-
type LinkCreatePayload = {
|
|
2281
|
-
url: string;
|
|
2282
|
-
title: string;
|
|
2283
|
-
};
|
|
2284
|
-
type LinkUpdatePayload = Partial<LinkCreatePayload>;
|
|
2285
|
-
type LinkStats = {
|
|
2286
|
-
totalLinks: number;
|
|
2287
|
-
activeLinks: number;
|
|
2288
|
-
totalScans: number;
|
|
2289
|
-
scanHistory: LinkScanHistory;
|
|
2290
|
-
}; //#endregion
|
|
2291
2324
|
//#region src/loyalty/types.d.ts
|
|
2292
2325
|
type ProgramSettings = {
|
|
2293
2326
|
point_name?: string;
|
|
@@ -2381,6 +2414,11 @@ type EarnResponse = {
|
|
|
2381
2414
|
tierName?: string;
|
|
2382
2415
|
multiplier?: number;
|
|
2383
2416
|
};
|
|
2417
|
+
type StampResponse = {
|
|
2418
|
+
contactName: string;
|
|
2419
|
+
stamps: number;
|
|
2420
|
+
rewardReady: boolean;
|
|
2421
|
+
};
|
|
2384
2422
|
type RedeemResponse = {
|
|
2385
2423
|
rewardName: string;
|
|
2386
2424
|
rewardType: string;
|
|
@@ -2415,6 +2453,69 @@ type LoyaltyMember = {
|
|
|
2415
2453
|
tier: string | null;
|
|
2416
2454
|
updatedAt: string;
|
|
2417
2455
|
}; //#endregion
|
|
2456
|
+
//#region src/segment/types.d.ts
|
|
2457
|
+
type SegmentConditionType = 'tag' | 'has_email' | 'has_phone' | 'created_after' | 'created_before' | 'email_contains';
|
|
2458
|
+
type SegmentCondition = {
|
|
2459
|
+
type: SegmentConditionType;
|
|
2460
|
+
value: string | boolean;
|
|
2461
|
+
};
|
|
2462
|
+
type SegmentGroup = {
|
|
2463
|
+
match: 'all' | 'any';
|
|
2464
|
+
conditions: SegmentCondition[];
|
|
2465
|
+
};
|
|
2466
|
+
type Segment = {
|
|
2467
|
+
id: string;
|
|
2468
|
+
name: string;
|
|
2469
|
+
conditions: SegmentGroup[];
|
|
2470
|
+
count: number;
|
|
2471
|
+
campaignsCount: number;
|
|
2472
|
+
createdAt: string;
|
|
2473
|
+
updatedAt: string;
|
|
2474
|
+
};
|
|
2475
|
+
type SegmentCreatePayload = {
|
|
2476
|
+
name: string;
|
|
2477
|
+
conditions: SegmentGroup[];
|
|
2478
|
+
};
|
|
2479
|
+
type SegmentCountPayload = {
|
|
2480
|
+
conditions: SegmentGroup[];
|
|
2481
|
+
channel?: string;
|
|
2482
|
+
};
|
|
2483
|
+
type SegmentCountResult = {
|
|
2484
|
+
count: number;
|
|
2485
|
+
reachable: number | null;
|
|
2486
|
+
}; //#endregion
|
|
2487
|
+
//#region src/campaign/types.d.ts
|
|
2488
|
+
type CampaignChannel = 'email' | 'whatsapp' | 'sms';
|
|
2489
|
+
type CampaignStatus = 'draft' | 'sending' | 'completed' | 'failed';
|
|
2490
|
+
type Campaign = {
|
|
2491
|
+
id: string;
|
|
2492
|
+
name: string;
|
|
2493
|
+
channel: CampaignChannel;
|
|
2494
|
+
subject: string | null;
|
|
2495
|
+
content: string;
|
|
2496
|
+
tags: string[];
|
|
2497
|
+
status: CampaignStatus;
|
|
2498
|
+
totalCount: number;
|
|
2499
|
+
remainingCount: number;
|
|
2500
|
+
sentCount: number;
|
|
2501
|
+
failedCount: number;
|
|
2502
|
+
skippedCount: number;
|
|
2503
|
+
createdAt: string;
|
|
2504
|
+
updatedAt: string;
|
|
2505
|
+
};
|
|
2506
|
+
type CampaignCreatePayload = {
|
|
2507
|
+
name: string;
|
|
2508
|
+
channel: CampaignChannel;
|
|
2509
|
+
subject?: string;
|
|
2510
|
+
content: string;
|
|
2511
|
+
tags?: string[];
|
|
2512
|
+
contactIds?: string[];
|
|
2513
|
+
};
|
|
2514
|
+
type CampaignStats = {
|
|
2515
|
+
totalCampaigns: number;
|
|
2516
|
+
draftCampaigns: number;
|
|
2517
|
+
totalSent: number;
|
|
2518
|
+
}; //#endregion
|
|
2418
2519
|
//#region src/update/types.d.ts
|
|
2419
2520
|
type UpdateType = 'deal' | 'event' | 'news';
|
|
2420
2521
|
type UpdateStatus = 'draft' | 'published' | 'archived';
|
|
@@ -2620,7 +2721,7 @@ declare class AgentsResource {
|
|
|
2620
2721
|
updatePassword(uuid: string, password: string): Promise<IAppResponse<void>>;
|
|
2621
2722
|
storePassword(uuid: string, password: string): Promise<IAppResponse<AgentPrivate>>;
|
|
2622
2723
|
updateSetting<K extends keyof AgentSettings>(uuid: string, key: K, value: AgentSettings[K]): Promise<IAppResponse<AgentPrivate>>;
|
|
2623
|
-
updateMeta(uuid: string, key: string, value:
|
|
2724
|
+
updateMeta(uuid: string, key: string, value: unknown): Promise<IAppResponse<AgentPrivate>>;
|
|
2624
2725
|
publish(uuid: string): Promise<IAppResponse<AgentPrivate>>;
|
|
2625
2726
|
unpublish(uuid: string): Promise<IAppResponse<AgentPrivate>>;
|
|
2626
2727
|
moveToTeam(uuid: string, teamSlug: string): Promise<IAppResponse<AgentPrivate>>;
|
|
@@ -2981,6 +3082,26 @@ declare class CartsResource {
|
|
|
2981
3082
|
applyCoupon(code: string): Promise<IAppResponse<void>>;
|
|
2982
3083
|
}
|
|
2983
3084
|
//#endregion
|
|
3085
|
+
//#region src/resources/coupons.d.ts
|
|
3086
|
+
type CouponPayload = {
|
|
3087
|
+
code: string;
|
|
3088
|
+
percent?: number | null;
|
|
3089
|
+
amount?: number | null;
|
|
3090
|
+
condition?: CouponCondition;
|
|
3091
|
+
usesLeft?: number | null;
|
|
3092
|
+
expiresAt?: string | null;
|
|
3093
|
+
};
|
|
3094
|
+
declare class CouponsResource {
|
|
3095
|
+
private readonly http;
|
|
3096
|
+
constructor(http: IHttpService);
|
|
3097
|
+
list(team: string): Promise<IAppResponse<Coupon[]>>;
|
|
3098
|
+
create(team: string, data: CouponPayload): Promise<IAppResponse<Coupon>>;
|
|
3099
|
+
update(id: string, data: Partial<CouponPayload> & {
|
|
3100
|
+
clearExpiry?: boolean;
|
|
3101
|
+
}): Promise<IAppResponse<Coupon>>;
|
|
3102
|
+
delete(id: string): Promise<IAppResponse<void>>;
|
|
3103
|
+
}
|
|
3104
|
+
//#endregion
|
|
2984
3105
|
//#region src/resources/changelog.d.ts
|
|
2985
3106
|
declare class ChangelogResource {
|
|
2986
3107
|
private readonly http;
|
|
@@ -2996,6 +3117,7 @@ declare class ContactsResource {
|
|
|
2996
3117
|
list(params?: {
|
|
2997
3118
|
search?: string;
|
|
2998
3119
|
page?: number;
|
|
3120
|
+
staleDays?: number;
|
|
2999
3121
|
}): Promise<IAppResponse<Contact[]>>;
|
|
3000
3122
|
get(id: string): Promise<IAppResponse<Contact>>;
|
|
3001
3123
|
create(payload: ContactCreatePayload): Promise<IAppResponse<Contact>>;
|
|
@@ -3320,6 +3442,7 @@ declare class LoyaltyResource {
|
|
|
3320
3442
|
deletePromotion(id: string): Promise<IAppResponse<void>>;
|
|
3321
3443
|
enroll(contactId: string): Promise<IAppResponse<LoyaltyAccount>>;
|
|
3322
3444
|
getAccount(contactId: string): Promise<IAppResponse<LoyaltyAccount>>;
|
|
3445
|
+
stamp(contactId: string): Promise<IAppResponse<StampResponse>>;
|
|
3323
3446
|
earn(contactId: string, context?: {
|
|
3324
3447
|
spendCents?: number;
|
|
3325
3448
|
items?: {
|
|
@@ -3508,6 +3631,9 @@ declare class OrdersResource {
|
|
|
3508
3631
|
pay(id: string, provider: string): Promise<IAppResponse<{
|
|
3509
3632
|
url: string;
|
|
3510
3633
|
}>>;
|
|
3634
|
+
notify(id: string, type?: string): Promise<IAppResponse<{
|
|
3635
|
+
message: string;
|
|
3636
|
+
}>>;
|
|
3511
3637
|
}
|
|
3512
3638
|
//#endregion
|
|
3513
3639
|
//#region src/resources/persona.d.ts
|
|
@@ -3522,7 +3648,9 @@ declare class PersonaResource {
|
|
|
3522
3648
|
declare class ProductsResource {
|
|
3523
3649
|
private readonly http;
|
|
3524
3650
|
constructor(http: IHttpService);
|
|
3525
|
-
list(
|
|
3651
|
+
list(params?: {
|
|
3652
|
+
includePrivate?: boolean;
|
|
3653
|
+
}): Promise<IAppResponse<Product[]>>;
|
|
3526
3654
|
get(id: string): Promise<IAppResponse<Product>>;
|
|
3527
3655
|
create(data: {
|
|
3528
3656
|
name: TranslatableValue;
|
|
@@ -3654,7 +3782,9 @@ declare class RoomsResource {
|
|
|
3654
3782
|
declare class ServicesResource {
|
|
3655
3783
|
private readonly http;
|
|
3656
3784
|
constructor(http: IHttpService);
|
|
3657
|
-
list(
|
|
3785
|
+
list(params?: {
|
|
3786
|
+
includePrivate?: boolean;
|
|
3787
|
+
}): Promise<IAppResponse<Service[]>>;
|
|
3658
3788
|
get(slug: string): Promise<IAppResponse<Service>>;
|
|
3659
3789
|
store(team: string, data: {
|
|
3660
3790
|
name: TranslatableValue;
|
|
@@ -3837,6 +3967,8 @@ type TeamMutationPayload = {
|
|
|
3837
3967
|
email?: string | null;
|
|
3838
3968
|
address?: string | null;
|
|
3839
3969
|
location?: string | null;
|
|
3970
|
+
logoMediaId?: string | null;
|
|
3971
|
+
coverMediaId?: string | null;
|
|
3840
3972
|
};
|
|
3841
3973
|
declare class TeamsResource {
|
|
3842
3974
|
private readonly http;
|
|
@@ -3873,6 +4005,32 @@ declare class TeamsResource {
|
|
|
3873
4005
|
topupFinalize(tx: string): Promise<IAppResponse<void>>;
|
|
3874
4006
|
}
|
|
3875
4007
|
//#endregion
|
|
4008
|
+
//#region src/resources/campaigns.d.ts
|
|
4009
|
+
declare class CampaignsResource {
|
|
4010
|
+
private readonly http;
|
|
4011
|
+
constructor(http: IHttpService);
|
|
4012
|
+
stats(): Promise<IAppResponse<CampaignStats>>;
|
|
4013
|
+
list(): Promise<IAppResponse<Campaign[]>>;
|
|
4014
|
+
get(id: string): Promise<IAppResponse<Campaign>>;
|
|
4015
|
+
create(payload: CampaignCreatePayload): Promise<IAppResponse<Campaign>>;
|
|
4016
|
+
send(id: string): Promise<IAppResponse<Campaign>>;
|
|
4017
|
+
delete(id: string): Promise<IAppResponse<void>>;
|
|
4018
|
+
}
|
|
4019
|
+
//#endregion
|
|
4020
|
+
//#region src/resources/segments.d.ts
|
|
4021
|
+
declare class SegmentsResource {
|
|
4022
|
+
private readonly http;
|
|
4023
|
+
constructor(http: IHttpService);
|
|
4024
|
+
list(): Promise<IAppResponse<Segment[]>>;
|
|
4025
|
+
create(payload: SegmentCreatePayload): Promise<IAppResponse<Segment>>;
|
|
4026
|
+
update(id: string, payload: SegmentCreatePayload): Promise<IAppResponse<Segment>>;
|
|
4027
|
+
delete(id: string): Promise<IAppResponse<void>>;
|
|
4028
|
+
count(payload: SegmentCountPayload): Promise<IAppResponse<SegmentCountResult>>;
|
|
4029
|
+
tags(): Promise<IAppResponse<{
|
|
4030
|
+
tags: string[];
|
|
4031
|
+
}>>;
|
|
4032
|
+
}
|
|
4033
|
+
//#endregion
|
|
3876
4034
|
//#region src/resources/updates.d.ts
|
|
3877
4035
|
declare class UpdatesResource {
|
|
3878
4036
|
private readonly http;
|
|
@@ -3982,11 +4140,13 @@ type BackendWarpCreateResponse = Pick<BackendWarp, 'id' | 'url' | 'definition' |
|
|
|
3982
4140
|
type BackendWarpUpdateResponse = Pick<BackendWarp, 'id'>;
|
|
3983
4141
|
type BackendWarp = {
|
|
3984
4142
|
id: string;
|
|
4143
|
+
hash: string;
|
|
3985
4144
|
title: string;
|
|
3986
4145
|
url: string;
|
|
3987
4146
|
definition: WarpDefinition;
|
|
3988
4147
|
brand: BackendWarpBrand | null;
|
|
3989
4148
|
agent?: AgentPrivate | null;
|
|
4149
|
+
link?: Link | null;
|
|
3990
4150
|
};
|
|
3991
4151
|
declare class WarpsResource {
|
|
3992
4152
|
private readonly http;
|
|
@@ -3996,23 +4156,41 @@ declare class WarpsResource {
|
|
|
3996
4156
|
creator?: string;
|
|
3997
4157
|
primaryAddress?: string;
|
|
3998
4158
|
status?: WarpBackendStatus;
|
|
4159
|
+
form?: boolean;
|
|
4160
|
+
store?: boolean;
|
|
3999
4161
|
page?: number;
|
|
4000
4162
|
perPage?: number;
|
|
4001
4163
|
}): Promise<IAppResponse<WarpBackend[]>>;
|
|
4002
4164
|
show(identifier: string): Promise<IAppResponse<WarpBackend>>;
|
|
4003
4165
|
create(data: {
|
|
4004
|
-
brand
|
|
4166
|
+
brand?: string | null;
|
|
4005
4167
|
definition: WarpDefinition;
|
|
4168
|
+
title?: TranslatableValue;
|
|
4169
|
+
description?: TranslatableValue | null;
|
|
4170
|
+
extras?: Record<string, any> | null;
|
|
4006
4171
|
public?: boolean;
|
|
4172
|
+
form?: boolean;
|
|
4173
|
+
store?: boolean;
|
|
4007
4174
|
agent?: string | null;
|
|
4008
4175
|
}): Promise<IAppResponse<BackendWarpCreateResponse>>;
|
|
4009
4176
|
update(identifier: string, data: {
|
|
4177
|
+
name?: string;
|
|
4178
|
+
title?: TranslatableValue;
|
|
4179
|
+
description?: TranslatableValue | null;
|
|
4010
4180
|
definition?: WarpDefinition;
|
|
4181
|
+
extras?: Record<string, any> | null;
|
|
4182
|
+
form?: boolean;
|
|
4183
|
+
store?: boolean;
|
|
4011
4184
|
agent?: string | null;
|
|
4012
4185
|
public?: boolean;
|
|
4013
4186
|
}): Promise<IAppResponse<BackendWarpUpdateResponse>>;
|
|
4014
4187
|
destroy(identifier: string): Promise<IAppResponse<void>>;
|
|
4015
4188
|
execute(identifier: string, inputs: string[], room?: string): Promise<IAppResponse<JsonValue>>;
|
|
4189
|
+
executions(identifier: string, page?: number, perPage?: number): Promise<IAppResponse<WarpExecutionBackend[]>>;
|
|
4190
|
+
ensureLink(identifier: string): Promise<IAppResponse<Link>>;
|
|
4191
|
+
install(identifier: string): Promise<IAppResponse<{
|
|
4192
|
+
identifier: string;
|
|
4193
|
+
}>>;
|
|
4016
4194
|
sync(tx: string): Promise<IAppResponse<void>>;
|
|
4017
4195
|
listBrands(locale: WarpLocale, options?: {
|
|
4018
4196
|
chain?: string | string[];
|
|
@@ -4053,12 +4231,16 @@ declare class WarpsResource {
|
|
|
4053
4231
|
definition: Record<string, any>;
|
|
4054
4232
|
extras?: Record<string, any>;
|
|
4055
4233
|
agent?: string | null;
|
|
4234
|
+
form?: boolean;
|
|
4235
|
+
store?: boolean;
|
|
4056
4236
|
}): Promise<IAppResponse<WarpBackend>>;
|
|
4057
4237
|
updateBrandWarp(teamSlug: string, brandSlug: string, warpHash: string, data: {
|
|
4058
4238
|
name?: string;
|
|
4059
4239
|
definition?: Record<string, any>;
|
|
4060
4240
|
extras?: Record<string, any>;
|
|
4061
4241
|
agent?: string | null;
|
|
4242
|
+
form?: boolean;
|
|
4243
|
+
store?: boolean;
|
|
4062
4244
|
}): Promise<IAppResponse<WarpBackend>>;
|
|
4063
4245
|
deleteBrandWarp(teamSlug: string, brandSlug: string, warpHash: string): Promise<IAppResponse<void>>;
|
|
4064
4246
|
fetchSourceSchemaFromUrl(url: string): Promise<IAppResponse<any>>;
|
|
@@ -4153,6 +4335,7 @@ declare class JoAiClient {
|
|
|
4153
4335
|
readonly notifications: NotificationsResource;
|
|
4154
4336
|
readonly office: OfficeResource;
|
|
4155
4337
|
readonly orders: OrdersResource;
|
|
4338
|
+
readonly coupons: CouponsResource;
|
|
4156
4339
|
readonly persona: PersonaResource;
|
|
4157
4340
|
readonly privateWarps: WarpsResource;
|
|
4158
4341
|
readonly products: ProductsResource;
|
|
@@ -4170,6 +4353,8 @@ declare class JoAiClient {
|
|
|
4170
4353
|
readonly swarms: SwarmsResource;
|
|
4171
4354
|
readonly tasks: TasksResource;
|
|
4172
4355
|
readonly teams: TeamsResource;
|
|
4356
|
+
readonly campaigns: CampaignsResource;
|
|
4357
|
+
readonly segments: SegmentsResource;
|
|
4173
4358
|
readonly updates: UpdatesResource;
|
|
4174
4359
|
readonly upgrades: UpgradesResource;
|
|
4175
4360
|
readonly users: UsersResource;
|
|
@@ -4215,4 +4400,4 @@ declare class DistributionResource {
|
|
|
4215
4400
|
private fetchDistribution;
|
|
4216
4401
|
}
|
|
4217
4402
|
//#endregion
|
|
4218
|
-
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 };
|
|
4403
|
+
export { AgentsResource, AlertsResource, ApiTokensResource, AppointmentsResource, AuthResource, type AuthSendCodeRequest, type AuthVerifyResponse, type BackendWarp, type BackendWarpBrand, BillingAddressesResource, BillingResource, BlueprintsResource, type CacheConfig, CachedHttpService, CampaignsResource, 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, SegmentsResource, ServicesResource, ShortcutsResource, SitesResource, SkillsResource, StatsResource, StoreResource, SubscriptionsResource, SwarmsResource, TasksResource, type TeamInviteInfo, TeamsResource, UpdatesResource, UpgradesResource, UsersResource, VoiceResource, WalletsResource, WarpsResource, WebhooksResource, WorkspaceResource, createClient, formatOpeningHours };
|
package/dist/index.mjs
CHANGED
|
@@ -692,6 +692,25 @@ var CartsResource = class {
|
|
|
692
692
|
}
|
|
693
693
|
};
|
|
694
694
|
//#endregion
|
|
695
|
+
//#region src/resources/coupons.ts
|
|
696
|
+
var CouponsResource = class {
|
|
697
|
+
constructor(http) {
|
|
698
|
+
this.http = http;
|
|
699
|
+
}
|
|
700
|
+
list(team) {
|
|
701
|
+
return this.http.get("coupons", { headers: { "X-Team": team } });
|
|
702
|
+
}
|
|
703
|
+
create(team, data) {
|
|
704
|
+
return this.http.post("coupons", data, { headers: { "X-Team": team } });
|
|
705
|
+
}
|
|
706
|
+
update(id, data) {
|
|
707
|
+
return this.http.put(`coupons/${id}`, data);
|
|
708
|
+
}
|
|
709
|
+
delete(id) {
|
|
710
|
+
return this.http.delete(`coupons/${id}`);
|
|
711
|
+
}
|
|
712
|
+
};
|
|
713
|
+
//#endregion
|
|
695
714
|
//#region src/resources/changelog.ts
|
|
696
715
|
var ChangelogResource = class {
|
|
697
716
|
constructor(http) {
|
|
@@ -714,6 +733,7 @@ var ContactsResource = class {
|
|
|
714
733
|
const query = new URLSearchParams();
|
|
715
734
|
if (params?.search) query.set("filter[search]", params.search);
|
|
716
735
|
if (params?.page) query.set("page", String(params.page));
|
|
736
|
+
if (params?.staleDays) query.set("filter[stale_days]", String(params.staleDays));
|
|
717
737
|
const qs = query.toString();
|
|
718
738
|
return this.http.get(`contacts${qs ? "?" + qs : ""}`);
|
|
719
739
|
}
|
|
@@ -1163,6 +1183,9 @@ var LoyaltyResource = class {
|
|
|
1163
1183
|
getAccount(contactId) {
|
|
1164
1184
|
return this.http.get(`loyalty/accounts/${contactId}`);
|
|
1165
1185
|
}
|
|
1186
|
+
stamp(contactId) {
|
|
1187
|
+
return this.http.post("loyalty/stamp", { contactId });
|
|
1188
|
+
}
|
|
1166
1189
|
earn(contactId, context) {
|
|
1167
1190
|
return this.http.post("loyalty/earn", {
|
|
1168
1191
|
contactId,
|
|
@@ -1209,15 +1232,17 @@ var StoreResource = class {
|
|
|
1209
1232
|
flows: [],
|
|
1210
1233
|
creators: [],
|
|
1211
1234
|
agents: [],
|
|
1235
|
+
forms: [],
|
|
1212
1236
|
items: []
|
|
1213
1237
|
};
|
|
1214
|
-
const { blueprints = [], skills = [], flows = [], creators = [], agents = [] } = res.data;
|
|
1238
|
+
const { blueprints = [], skills = [], flows = [], creators = [], agents = [], forms = [] } = res.data;
|
|
1215
1239
|
return {
|
|
1216
1240
|
blueprints,
|
|
1217
1241
|
skills,
|
|
1218
1242
|
flows,
|
|
1219
1243
|
creators,
|
|
1220
1244
|
agents,
|
|
1245
|
+
forms,
|
|
1221
1246
|
items: [
|
|
1222
1247
|
...agents.map((item) => ({
|
|
1223
1248
|
type: "agent",
|
|
@@ -1234,6 +1259,10 @@ var StoreResource = class {
|
|
|
1234
1259
|
...skills.map((item) => ({
|
|
1235
1260
|
type: "skill",
|
|
1236
1261
|
item
|
|
1262
|
+
})),
|
|
1263
|
+
...forms.map((item) => ({
|
|
1264
|
+
type: "form",
|
|
1265
|
+
item
|
|
1237
1266
|
}))
|
|
1238
1267
|
]
|
|
1239
1268
|
};
|
|
@@ -1492,6 +1521,9 @@ var OrdersResource = class {
|
|
|
1492
1521
|
pay(id, provider) {
|
|
1493
1522
|
return this.http.post(`orders/${id}/pay`, { provider });
|
|
1494
1523
|
}
|
|
1524
|
+
notify(id, type = "confirmation") {
|
|
1525
|
+
return this.http.post(`orders/${id}/notify`, { type });
|
|
1526
|
+
}
|
|
1495
1527
|
};
|
|
1496
1528
|
//#endregion
|
|
1497
1529
|
//#region src/resources/persona.ts
|
|
@@ -1515,8 +1547,10 @@ var ProductsResource = class {
|
|
|
1515
1547
|
constructor(http) {
|
|
1516
1548
|
this.http = http;
|
|
1517
1549
|
}
|
|
1518
|
-
list() {
|
|
1519
|
-
|
|
1550
|
+
list(params) {
|
|
1551
|
+
let url = "products";
|
|
1552
|
+
if (params?.includePrivate) url += "?includePrivate=1";
|
|
1553
|
+
return this.http.get(url);
|
|
1520
1554
|
}
|
|
1521
1555
|
get(id) {
|
|
1522
1556
|
return this.http.get(`products/${id}`);
|
|
@@ -1659,8 +1693,10 @@ var ServicesResource = class {
|
|
|
1659
1693
|
constructor(http) {
|
|
1660
1694
|
this.http = http;
|
|
1661
1695
|
}
|
|
1662
|
-
list() {
|
|
1663
|
-
|
|
1696
|
+
list(params) {
|
|
1697
|
+
let url = "services";
|
|
1698
|
+
if (params?.includePrivate) url += "?includePrivate=1";
|
|
1699
|
+
return this.http.get(url);
|
|
1664
1700
|
}
|
|
1665
1701
|
get(slug) {
|
|
1666
1702
|
return this.http.get(`services/${slug}`);
|
|
@@ -1990,6 +2026,56 @@ var TeamsResource = class {
|
|
|
1990
2026
|
}
|
|
1991
2027
|
};
|
|
1992
2028
|
//#endregion
|
|
2029
|
+
//#region src/resources/campaigns.ts
|
|
2030
|
+
var CampaignsResource = class {
|
|
2031
|
+
constructor(http) {
|
|
2032
|
+
this.http = http;
|
|
2033
|
+
}
|
|
2034
|
+
stats() {
|
|
2035
|
+
return this.http.get("campaigns/stats");
|
|
2036
|
+
}
|
|
2037
|
+
list() {
|
|
2038
|
+
return this.http.get("campaigns");
|
|
2039
|
+
}
|
|
2040
|
+
get(id) {
|
|
2041
|
+
return this.http.get(`campaigns/${id}`);
|
|
2042
|
+
}
|
|
2043
|
+
create(payload) {
|
|
2044
|
+
return this.http.post("campaigns", payload);
|
|
2045
|
+
}
|
|
2046
|
+
send(id) {
|
|
2047
|
+
return this.http.post(`campaigns/${id}/send`);
|
|
2048
|
+
}
|
|
2049
|
+
delete(id) {
|
|
2050
|
+
return this.http.delete(`campaigns/${id}`);
|
|
2051
|
+
}
|
|
2052
|
+
};
|
|
2053
|
+
//#endregion
|
|
2054
|
+
//#region src/resources/segments.ts
|
|
2055
|
+
var SegmentsResource = class {
|
|
2056
|
+
constructor(http) {
|
|
2057
|
+
this.http = http;
|
|
2058
|
+
}
|
|
2059
|
+
list() {
|
|
2060
|
+
return this.http.get("segments");
|
|
2061
|
+
}
|
|
2062
|
+
create(payload) {
|
|
2063
|
+
return this.http.post("segments", payload);
|
|
2064
|
+
}
|
|
2065
|
+
update(id, payload) {
|
|
2066
|
+
return this.http.patch(`segments/${id}`, payload);
|
|
2067
|
+
}
|
|
2068
|
+
delete(id) {
|
|
2069
|
+
return this.http.delete(`segments/${id}`);
|
|
2070
|
+
}
|
|
2071
|
+
count(payload) {
|
|
2072
|
+
return this.http.post("segments/count", payload);
|
|
2073
|
+
}
|
|
2074
|
+
tags() {
|
|
2075
|
+
return this.http.get("segments/tags");
|
|
2076
|
+
}
|
|
2077
|
+
};
|
|
2078
|
+
//#endregion
|
|
1993
2079
|
//#region src/resources/updates.ts
|
|
1994
2080
|
var UpdatesResource = class {
|
|
1995
2081
|
constructor(http) {
|
|
@@ -2218,6 +2304,8 @@ var WarpsResource = class {
|
|
|
2218
2304
|
if (options?.creator) params.set("creator", options.creator);
|
|
2219
2305
|
if (options?.primaryAddress) params.set("primaryAddress", options.primaryAddress);
|
|
2220
2306
|
if (options?.status) params.set("status", options.status);
|
|
2307
|
+
if (options?.form !== void 0) params.set("form", options.form ? "1" : "0");
|
|
2308
|
+
if (options?.store !== void 0) params.set("store", options.store ? "1" : "0");
|
|
2221
2309
|
if (options?.page) params.set("page", options.page.toString());
|
|
2222
2310
|
if (options?.perPage) params.set("perPage", options.perPage.toString());
|
|
2223
2311
|
const qs = params.toString();
|
|
@@ -2241,6 +2329,15 @@ var WarpsResource = class {
|
|
|
2241
2329
|
...room ? { room } : {}
|
|
2242
2330
|
});
|
|
2243
2331
|
}
|
|
2332
|
+
executions(identifier, page = 1, perPage = 20) {
|
|
2333
|
+
return this.http.get(`warps/${identifier}/executions?page=${page}&perPage=${perPage}`);
|
|
2334
|
+
}
|
|
2335
|
+
ensureLink(identifier) {
|
|
2336
|
+
return this.http.post(`warps/${identifier}/link`, {});
|
|
2337
|
+
}
|
|
2338
|
+
install(identifier) {
|
|
2339
|
+
return this.http.post(`warps/${identifier}/install`, {});
|
|
2340
|
+
}
|
|
2244
2341
|
sync(tx) {
|
|
2245
2342
|
return this.http.post("warps/sync", { tx });
|
|
2246
2343
|
}
|
|
@@ -2511,6 +2608,7 @@ var JoAiClient = class {
|
|
|
2511
2608
|
this.notifications = new NotificationsResource(this.http);
|
|
2512
2609
|
this.office = new OfficeResource(this.http);
|
|
2513
2610
|
this.orders = new OrdersResource(this.http);
|
|
2611
|
+
this.coupons = new CouponsResource(this.http);
|
|
2514
2612
|
this.persona = new PersonaResource(this.http);
|
|
2515
2613
|
this.privateWarps = new WarpsResource(this.http);
|
|
2516
2614
|
this.products = new ProductsResource(this.http);
|
|
@@ -2528,6 +2626,8 @@ var JoAiClient = class {
|
|
|
2528
2626
|
this.swarms = new SwarmsResource(this.http);
|
|
2529
2627
|
this.tasks = new TasksResource(this.http);
|
|
2530
2628
|
this.teams = new TeamsResource(this.http);
|
|
2629
|
+
this.campaigns = new CampaignsResource(this.http);
|
|
2630
|
+
this.segments = new SegmentsResource(this.http);
|
|
2531
2631
|
this.updates = new UpdatesResource(this.http);
|
|
2532
2632
|
this.upgrades = new UpgradesResource(this.http);
|
|
2533
2633
|
this.users = new UsersResource(this.http);
|
|
@@ -2579,4 +2679,4 @@ var DistributionResource = class {
|
|
|
2579
2679
|
}
|
|
2580
2680
|
};
|
|
2581
2681
|
//#endregion
|
|
2582
|
-
export { AgentsResource, AlertsResource, ApiTokensResource, AppointmentsResource, AuthResource, BillingAddressesResource, BillingResource, BlueprintsResource, CachedHttpService, CardsResource, CartsResource, ChangelogResource, CharactersResource, ContactsResource, ContractsResource, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, GoalsResource, IngestionsResource, InquiriesResource, IntegrationsResource, IntentsResource, ItemsResource, JoAiClient, KvResource, LinksResource, LoyaltyResource, McpResource, MeetingsResource, MemoriesResource, MessagesResource, MissionsResource, NotificationsResource, OfficeResource, OrdersResource, PersonaResource, ProductsResource, ProjectsResource, RemindersResource, ServicesResource, ShortcutsResource, SitesResource, SkillsResource, StatsResource, StoreResource, SubscriptionsResource, SwarmsResource, TasksResource, TeamsResource, UpdatesResource, UpgradesResource, UsersResource, VoiceResource, WalletsResource, WarpsResource, WebhooksResource, WorkspaceResource, createClient, formatOpeningHours };
|
|
2682
|
+
export { AgentsResource, AlertsResource, ApiTokensResource, AppointmentsResource, AuthResource, BillingAddressesResource, BillingResource, BlueprintsResource, CachedHttpService, CampaignsResource, CardsResource, CartsResource, ChangelogResource, CharactersResource, ContactsResource, ContractsResource, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, GoalsResource, IngestionsResource, InquiriesResource, IntegrationsResource, IntentsResource, ItemsResource, JoAiClient, KvResource, LinksResource, LoyaltyResource, McpResource, MeetingsResource, MemoriesResource, MessagesResource, MissionsResource, NotificationsResource, OfficeResource, OrdersResource, PersonaResource, ProductsResource, ProjectsResource, RemindersResource, SegmentsResource, ServicesResource, ShortcutsResource, SitesResource, SkillsResource, StatsResource, StoreResource, SubscriptionsResource, SwarmsResource, TasksResource, TeamsResource, UpdatesResource, UpgradesResource, UsersResource, VoiceResource, WalletsResource, WarpsResource, WebhooksResource, WorkspaceResource, createClient, formatOpeningHours };
|