@4players/payment 1.0.1-beta.4 → 1.0.2-beta.2
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.cjs +83 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +536 -3
- package/dist/index.d.ts +536 -3
- package/dist/index.js +83 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -445,8 +445,9 @@ interface paths {
|
|
|
445
445
|
get?: never;
|
|
446
446
|
put?: never;
|
|
447
447
|
/**
|
|
448
|
-
* Activate an API for the specified project
|
|
449
|
-
* @
|
|
448
|
+
* [Deprecated] Activate an API for the specified project. Use /activate-product instead.
|
|
449
|
+
* @deprecated
|
|
450
|
+
* @description Activates the specified API for the project. This endpoint is deprecated - use /activate-product instead.
|
|
450
451
|
*/
|
|
451
452
|
post: operations["activateAPI"];
|
|
452
453
|
delete?: never;
|
|
@@ -455,6 +456,129 @@ interface paths {
|
|
|
455
456
|
patch?: never;
|
|
456
457
|
trace?: never;
|
|
457
458
|
};
|
|
459
|
+
"/products": {
|
|
460
|
+
parameters: {
|
|
461
|
+
query?: never;
|
|
462
|
+
header?: never;
|
|
463
|
+
path?: never;
|
|
464
|
+
cookie?: never;
|
|
465
|
+
};
|
|
466
|
+
/**
|
|
467
|
+
* List all available products
|
|
468
|
+
* @description Returns the catalog of all available products with their features and pricing tiers. No authentication required.
|
|
469
|
+
*/
|
|
470
|
+
get: operations["getProducts"];
|
|
471
|
+
put?: never;
|
|
472
|
+
post?: never;
|
|
473
|
+
delete?: never;
|
|
474
|
+
options?: never;
|
|
475
|
+
head?: never;
|
|
476
|
+
patch?: never;
|
|
477
|
+
trace?: never;
|
|
478
|
+
};
|
|
479
|
+
"/projects/{projectId}/products": {
|
|
480
|
+
parameters: {
|
|
481
|
+
query?: never;
|
|
482
|
+
header?: never;
|
|
483
|
+
path?: never;
|
|
484
|
+
cookie?: never;
|
|
485
|
+
};
|
|
486
|
+
/**
|
|
487
|
+
* Get activated products for a project
|
|
488
|
+
* @description Returns the list of products currently activated for the specified project.
|
|
489
|
+
*/
|
|
490
|
+
get: operations["getProjectProducts"];
|
|
491
|
+
put?: never;
|
|
492
|
+
post?: never;
|
|
493
|
+
delete?: never;
|
|
494
|
+
options?: never;
|
|
495
|
+
head?: never;
|
|
496
|
+
patch?: never;
|
|
497
|
+
trace?: never;
|
|
498
|
+
};
|
|
499
|
+
"/projects/{projectId}/activate-product": {
|
|
500
|
+
parameters: {
|
|
501
|
+
query?: never;
|
|
502
|
+
header?: never;
|
|
503
|
+
path?: never;
|
|
504
|
+
cookie?: never;
|
|
505
|
+
};
|
|
506
|
+
get?: never;
|
|
507
|
+
put?: never;
|
|
508
|
+
/**
|
|
509
|
+
* Activate a product for a project
|
|
510
|
+
* @description Activates the specified product for the project. Dependencies are checked automatically. Returns the updated project.
|
|
511
|
+
*/
|
|
512
|
+
post: operations["activateProduct"];
|
|
513
|
+
delete?: never;
|
|
514
|
+
options?: never;
|
|
515
|
+
head?: never;
|
|
516
|
+
patch?: never;
|
|
517
|
+
trace?: never;
|
|
518
|
+
};
|
|
519
|
+
"/projects/{projectId}/deactivate-product": {
|
|
520
|
+
parameters: {
|
|
521
|
+
query?: never;
|
|
522
|
+
header?: never;
|
|
523
|
+
path?: never;
|
|
524
|
+
cookie?: never;
|
|
525
|
+
};
|
|
526
|
+
get?: never;
|
|
527
|
+
put?: never;
|
|
528
|
+
/**
|
|
529
|
+
* Deactivate a product for a project
|
|
530
|
+
* @description Deactivates the specified product. Fails if other activated products depend on it.
|
|
531
|
+
*/
|
|
532
|
+
post: operations["deactivateProduct"];
|
|
533
|
+
delete?: never;
|
|
534
|
+
options?: never;
|
|
535
|
+
head?: never;
|
|
536
|
+
patch?: never;
|
|
537
|
+
trace?: never;
|
|
538
|
+
};
|
|
539
|
+
"/projects/{projectId}/check-feature": {
|
|
540
|
+
parameters: {
|
|
541
|
+
query?: never;
|
|
542
|
+
header?: never;
|
|
543
|
+
path?: never;
|
|
544
|
+
cookie?: never;
|
|
545
|
+
};
|
|
546
|
+
/**
|
|
547
|
+
* Check if a feature is available for a project
|
|
548
|
+
* @description Checks whether the specified feature is available for the project based on activated products and their dependencies.
|
|
549
|
+
*/
|
|
550
|
+
get: operations["checkFeature"];
|
|
551
|
+
put?: never;
|
|
552
|
+
post?: never;
|
|
553
|
+
delete?: never;
|
|
554
|
+
options?: never;
|
|
555
|
+
head?: never;
|
|
556
|
+
patch?: never;
|
|
557
|
+
trace?: never;
|
|
558
|
+
};
|
|
559
|
+
"/projects/{projectId}/check-product-dependencies": {
|
|
560
|
+
parameters: {
|
|
561
|
+
query?: never;
|
|
562
|
+
header?: never;
|
|
563
|
+
path?: never;
|
|
564
|
+
cookie?: never;
|
|
565
|
+
};
|
|
566
|
+
/**
|
|
567
|
+
* Check product dependencies for a project
|
|
568
|
+
* @description Returns whether a product can be activated for the given project by checking all
|
|
569
|
+
* its dependencies. Each dependency is listed with its current activation status.
|
|
570
|
+
* Use this endpoint to build UI that shows missing dependencies before the user
|
|
571
|
+
* attempts to activate a product.
|
|
572
|
+
*/
|
|
573
|
+
get: operations["checkProductDependencies"];
|
|
574
|
+
put?: never;
|
|
575
|
+
post?: never;
|
|
576
|
+
delete?: never;
|
|
577
|
+
options?: never;
|
|
578
|
+
head?: never;
|
|
579
|
+
patch?: never;
|
|
580
|
+
trace?: never;
|
|
581
|
+
};
|
|
458
582
|
"/projects/{projectId}/create-token": {
|
|
459
583
|
parameters: {
|
|
460
584
|
query?: never;
|
|
@@ -676,6 +800,8 @@ interface components {
|
|
|
676
800
|
type?: string;
|
|
677
801
|
/** @description The billing state history */
|
|
678
802
|
billingStateHistory?: components["schemas"]["BillingState"][];
|
|
803
|
+
/** @description List of products currently activated for this project. */
|
|
804
|
+
activatedProducts?: components["schemas"]["ActivatedProduct"][];
|
|
679
805
|
};
|
|
680
806
|
SetupSession: {
|
|
681
807
|
/** @description The URL that the user needs to be redirected to in order to create a new billing account at Stripe. */
|
|
@@ -1041,6 +1167,107 @@ interface components {
|
|
|
1041
1167
|
/** Format: date */
|
|
1042
1168
|
active?: string;
|
|
1043
1169
|
};
|
|
1170
|
+
/**
|
|
1171
|
+
* @description The unique slug identifier for a product.
|
|
1172
|
+
* @enum {string}
|
|
1173
|
+
*/
|
|
1174
|
+
ProductSlug: "voice" | "rooms" | "fleet" | "cortex";
|
|
1175
|
+
/**
|
|
1176
|
+
* @description The type of pricing model.
|
|
1177
|
+
* @enum {string}
|
|
1178
|
+
*/
|
|
1179
|
+
PricingType: "free" | "pay_as_you_go" | "one_time" | "monthly";
|
|
1180
|
+
ProjectProduct: {
|
|
1181
|
+
slug?: components["schemas"]["ProductSlug"];
|
|
1182
|
+
/** @description Translation key for the product name. */
|
|
1183
|
+
name?: string;
|
|
1184
|
+
/** @description Translation key for the product description. */
|
|
1185
|
+
description?: string;
|
|
1186
|
+
/** @description Icon identifier or URL. */
|
|
1187
|
+
icon?: string | null;
|
|
1188
|
+
/** @description Features available within this product. */
|
|
1189
|
+
features?: components["schemas"]["ProjectProductFeature"][];
|
|
1190
|
+
/** @description Available pricing tiers for this product. */
|
|
1191
|
+
pricing?: components["schemas"]["ProductPricing"][];
|
|
1192
|
+
/** @description Slugs of products that must be activated before this product. */
|
|
1193
|
+
dependencies?: components["schemas"]["ProductSlug"][];
|
|
1194
|
+
};
|
|
1195
|
+
ProjectProductFeature: {
|
|
1196
|
+
/** @description Unique slug for the feature (e.g. cortex.transcription). */
|
|
1197
|
+
slug?: string;
|
|
1198
|
+
/** @description Translation key for the feature name. */
|
|
1199
|
+
name?: string;
|
|
1200
|
+
/** @description Translation key for the feature description. */
|
|
1201
|
+
description?: string;
|
|
1202
|
+
/** @description Product that must be activated for this feature to work. */
|
|
1203
|
+
dependsOnProduct?: components["schemas"]["ProductSlug"];
|
|
1204
|
+
/** @description Slug of another feature this depends on. */
|
|
1205
|
+
dependsOnFeature?: string | null;
|
|
1206
|
+
};
|
|
1207
|
+
ProductPricing: {
|
|
1208
|
+
pricingType?: components["schemas"]["PricingType"];
|
|
1209
|
+
/** @description Stripe price ID for paid tiers. */
|
|
1210
|
+
stripePriceId?: string | null;
|
|
1211
|
+
/** @description Unit label for pay-as-you-go pricing (e.g. PCU-day, instance-day). */
|
|
1212
|
+
unit?: string | null;
|
|
1213
|
+
/** @description Amount in cents. */
|
|
1214
|
+
unitAmount?: number;
|
|
1215
|
+
/**
|
|
1216
|
+
* @description ISO 4217 currency code.
|
|
1217
|
+
* @example EUR
|
|
1218
|
+
*/
|
|
1219
|
+
currency?: string;
|
|
1220
|
+
/** @description Human-readable tier label. */
|
|
1221
|
+
label?: string | null;
|
|
1222
|
+
};
|
|
1223
|
+
ActivatedProduct: {
|
|
1224
|
+
/** @description Encoded unique identifier for the activation. */
|
|
1225
|
+
id?: string;
|
|
1226
|
+
product?: components["schemas"]["ProjectProduct"];
|
|
1227
|
+
/**
|
|
1228
|
+
* Format: date-time
|
|
1229
|
+
* @description When the product was activated.
|
|
1230
|
+
*/
|
|
1231
|
+
activatedAt?: string;
|
|
1232
|
+
/** @description Product-specific configuration (e.g. domain for rooms). */
|
|
1233
|
+
config?: {
|
|
1234
|
+
[key: string]: unknown;
|
|
1235
|
+
} | null;
|
|
1236
|
+
};
|
|
1237
|
+
ActivateProductPayload: {
|
|
1238
|
+
/** @description The slug of the product to activate. */
|
|
1239
|
+
product: components["schemas"]["ProductSlug"];
|
|
1240
|
+
/** @description Optional product-specific configuration (e.g. {"domain":"example"} for rooms). */
|
|
1241
|
+
config?: {
|
|
1242
|
+
[key: string]: unknown;
|
|
1243
|
+
};
|
|
1244
|
+
};
|
|
1245
|
+
DeactivateProductPayload: {
|
|
1246
|
+
/** @description The slug of the product to deactivate. */
|
|
1247
|
+
product: components["schemas"]["ProductSlug"];
|
|
1248
|
+
};
|
|
1249
|
+
FeatureAvailability: {
|
|
1250
|
+
/** @description The feature slug that was checked. */
|
|
1251
|
+
feature?: string;
|
|
1252
|
+
/** @description Whether the feature is currently available for this project. */
|
|
1253
|
+
available?: boolean;
|
|
1254
|
+
/** @description List of product or feature slugs that must be activated first. */
|
|
1255
|
+
missingDependencies?: string[];
|
|
1256
|
+
};
|
|
1257
|
+
ProductDependencyCheck: {
|
|
1258
|
+
/** @description The product slug that was checked. */
|
|
1259
|
+
product?: components["schemas"]["ProductSlug"];
|
|
1260
|
+
/** @description Whether all dependencies are satisfied and the product can be activated. */
|
|
1261
|
+
canActivate?: boolean;
|
|
1262
|
+
/** @description List of required products with their activation status. */
|
|
1263
|
+
dependencies?: components["schemas"]["ProductDependencyStatus"][];
|
|
1264
|
+
};
|
|
1265
|
+
ProductDependencyStatus: {
|
|
1266
|
+
/** @description The slug of the required product. */
|
|
1267
|
+
product?: components["schemas"]["ProductSlug"];
|
|
1268
|
+
/** @description Whether this dependency is currently activated for the project. */
|
|
1269
|
+
satisfied?: boolean;
|
|
1270
|
+
};
|
|
1044
1271
|
};
|
|
1045
1272
|
responses: never;
|
|
1046
1273
|
parameters: never;
|
|
@@ -2171,6 +2398,253 @@ interface operations {
|
|
|
2171
2398
|
};
|
|
2172
2399
|
};
|
|
2173
2400
|
};
|
|
2401
|
+
getProducts: {
|
|
2402
|
+
parameters: {
|
|
2403
|
+
query?: never;
|
|
2404
|
+
header?: never;
|
|
2405
|
+
path?: never;
|
|
2406
|
+
cookie?: never;
|
|
2407
|
+
};
|
|
2408
|
+
requestBody?: never;
|
|
2409
|
+
responses: {
|
|
2410
|
+
/** @description A list of all available products. */
|
|
2411
|
+
200: {
|
|
2412
|
+
headers: {
|
|
2413
|
+
[name: string]: unknown;
|
|
2414
|
+
};
|
|
2415
|
+
content: {
|
|
2416
|
+
"application/json": components["schemas"]["ProjectProduct"][];
|
|
2417
|
+
};
|
|
2418
|
+
};
|
|
2419
|
+
};
|
|
2420
|
+
};
|
|
2421
|
+
getProjectProducts: {
|
|
2422
|
+
parameters: {
|
|
2423
|
+
query?: never;
|
|
2424
|
+
header?: never;
|
|
2425
|
+
path: {
|
|
2426
|
+
/** @description The unique identifier of the project. */
|
|
2427
|
+
projectId: string;
|
|
2428
|
+
};
|
|
2429
|
+
cookie?: never;
|
|
2430
|
+
};
|
|
2431
|
+
requestBody?: never;
|
|
2432
|
+
responses: {
|
|
2433
|
+
/** @description List of activated products. */
|
|
2434
|
+
200: {
|
|
2435
|
+
headers: {
|
|
2436
|
+
[name: string]: unknown;
|
|
2437
|
+
};
|
|
2438
|
+
content: {
|
|
2439
|
+
"application/json": components["schemas"]["ActivatedProduct"][];
|
|
2440
|
+
};
|
|
2441
|
+
};
|
|
2442
|
+
/** @description Unauthorized */
|
|
2443
|
+
401: {
|
|
2444
|
+
headers: {
|
|
2445
|
+
[name: string]: unknown;
|
|
2446
|
+
};
|
|
2447
|
+
content?: never;
|
|
2448
|
+
};
|
|
2449
|
+
/** @description Project not found */
|
|
2450
|
+
404: {
|
|
2451
|
+
headers: {
|
|
2452
|
+
[name: string]: unknown;
|
|
2453
|
+
};
|
|
2454
|
+
content?: never;
|
|
2455
|
+
};
|
|
2456
|
+
};
|
|
2457
|
+
};
|
|
2458
|
+
activateProduct: {
|
|
2459
|
+
parameters: {
|
|
2460
|
+
query?: never;
|
|
2461
|
+
header?: never;
|
|
2462
|
+
path: {
|
|
2463
|
+
projectId: string;
|
|
2464
|
+
};
|
|
2465
|
+
cookie?: never;
|
|
2466
|
+
};
|
|
2467
|
+
requestBody: {
|
|
2468
|
+
content: {
|
|
2469
|
+
"application/json": components["schemas"]["ActivateProductPayload"];
|
|
2470
|
+
};
|
|
2471
|
+
};
|
|
2472
|
+
responses: {
|
|
2473
|
+
/** @description Successfully activated the product. Returns the updated project. */
|
|
2474
|
+
200: {
|
|
2475
|
+
headers: {
|
|
2476
|
+
[name: string]: unknown;
|
|
2477
|
+
};
|
|
2478
|
+
content: {
|
|
2479
|
+
"application/json": components["schemas"]["PaymentProject"];
|
|
2480
|
+
};
|
|
2481
|
+
};
|
|
2482
|
+
/** @description Bad request - missing product slug, dependency not met, already activated, or invalid configuration. */
|
|
2483
|
+
400: {
|
|
2484
|
+
headers: {
|
|
2485
|
+
[name: string]: unknown;
|
|
2486
|
+
};
|
|
2487
|
+
content?: never;
|
|
2488
|
+
};
|
|
2489
|
+
/** @description Unauthorized */
|
|
2490
|
+
401: {
|
|
2491
|
+
headers: {
|
|
2492
|
+
[name: string]: unknown;
|
|
2493
|
+
};
|
|
2494
|
+
content: {
|
|
2495
|
+
"application/json": components["schemas"]["UnauthorizedResponse"];
|
|
2496
|
+
};
|
|
2497
|
+
};
|
|
2498
|
+
/** @description Project or product not found */
|
|
2499
|
+
404: {
|
|
2500
|
+
headers: {
|
|
2501
|
+
[name: string]: unknown;
|
|
2502
|
+
};
|
|
2503
|
+
content?: never;
|
|
2504
|
+
};
|
|
2505
|
+
};
|
|
2506
|
+
};
|
|
2507
|
+
deactivateProduct: {
|
|
2508
|
+
parameters: {
|
|
2509
|
+
query?: never;
|
|
2510
|
+
header?: never;
|
|
2511
|
+
path: {
|
|
2512
|
+
projectId: string;
|
|
2513
|
+
};
|
|
2514
|
+
cookie?: never;
|
|
2515
|
+
};
|
|
2516
|
+
requestBody: {
|
|
2517
|
+
content: {
|
|
2518
|
+
"application/json": components["schemas"]["DeactivateProductPayload"];
|
|
2519
|
+
};
|
|
2520
|
+
};
|
|
2521
|
+
responses: {
|
|
2522
|
+
/** @description Successfully deactivated the product. */
|
|
2523
|
+
200: {
|
|
2524
|
+
headers: {
|
|
2525
|
+
[name: string]: unknown;
|
|
2526
|
+
};
|
|
2527
|
+
content: {
|
|
2528
|
+
"application/json": components["schemas"]["SuccessResponse"];
|
|
2529
|
+
};
|
|
2530
|
+
};
|
|
2531
|
+
/** @description Cannot deactivate - product not active or other products depend on it. */
|
|
2532
|
+
400: {
|
|
2533
|
+
headers: {
|
|
2534
|
+
[name: string]: unknown;
|
|
2535
|
+
};
|
|
2536
|
+
content?: never;
|
|
2537
|
+
};
|
|
2538
|
+
/** @description Unauthorized */
|
|
2539
|
+
401: {
|
|
2540
|
+
headers: {
|
|
2541
|
+
[name: string]: unknown;
|
|
2542
|
+
};
|
|
2543
|
+
content: {
|
|
2544
|
+
"application/json": components["schemas"]["UnauthorizedResponse"];
|
|
2545
|
+
};
|
|
2546
|
+
};
|
|
2547
|
+
/** @description Project or product not found */
|
|
2548
|
+
404: {
|
|
2549
|
+
headers: {
|
|
2550
|
+
[name: string]: unknown;
|
|
2551
|
+
};
|
|
2552
|
+
content?: never;
|
|
2553
|
+
};
|
|
2554
|
+
};
|
|
2555
|
+
};
|
|
2556
|
+
checkFeature: {
|
|
2557
|
+
parameters: {
|
|
2558
|
+
query: {
|
|
2559
|
+
/** @description The feature slug to check (e.g. cortex.transcription, cortex.functions). */
|
|
2560
|
+
feature: string;
|
|
2561
|
+
};
|
|
2562
|
+
header?: never;
|
|
2563
|
+
path: {
|
|
2564
|
+
projectId: string;
|
|
2565
|
+
};
|
|
2566
|
+
cookie?: never;
|
|
2567
|
+
};
|
|
2568
|
+
requestBody?: never;
|
|
2569
|
+
responses: {
|
|
2570
|
+
/** @description Feature availability status. */
|
|
2571
|
+
200: {
|
|
2572
|
+
headers: {
|
|
2573
|
+
[name: string]: unknown;
|
|
2574
|
+
};
|
|
2575
|
+
content: {
|
|
2576
|
+
"application/json": components["schemas"]["FeatureAvailability"];
|
|
2577
|
+
};
|
|
2578
|
+
};
|
|
2579
|
+
/** @description Missing feature query parameter */
|
|
2580
|
+
400: {
|
|
2581
|
+
headers: {
|
|
2582
|
+
[name: string]: unknown;
|
|
2583
|
+
};
|
|
2584
|
+
content?: never;
|
|
2585
|
+
};
|
|
2586
|
+
/** @description Unauthorized */
|
|
2587
|
+
401: {
|
|
2588
|
+
headers: {
|
|
2589
|
+
[name: string]: unknown;
|
|
2590
|
+
};
|
|
2591
|
+
content?: never;
|
|
2592
|
+
};
|
|
2593
|
+
/** @description Project or feature not found */
|
|
2594
|
+
404: {
|
|
2595
|
+
headers: {
|
|
2596
|
+
[name: string]: unknown;
|
|
2597
|
+
};
|
|
2598
|
+
content?: never;
|
|
2599
|
+
};
|
|
2600
|
+
};
|
|
2601
|
+
};
|
|
2602
|
+
checkProductDependencies: {
|
|
2603
|
+
parameters: {
|
|
2604
|
+
query: {
|
|
2605
|
+
/** @description The product slug to check (e.g. rooms, cortex). */
|
|
2606
|
+
product: components["schemas"]["ProductSlug"];
|
|
2607
|
+
};
|
|
2608
|
+
header?: never;
|
|
2609
|
+
path: {
|
|
2610
|
+
projectId: string;
|
|
2611
|
+
};
|
|
2612
|
+
cookie?: never;
|
|
2613
|
+
};
|
|
2614
|
+
requestBody?: never;
|
|
2615
|
+
responses: {
|
|
2616
|
+
/** @description Product dependency check result. */
|
|
2617
|
+
200: {
|
|
2618
|
+
headers: {
|
|
2619
|
+
[name: string]: unknown;
|
|
2620
|
+
};
|
|
2621
|
+
content: {
|
|
2622
|
+
"application/json": components["schemas"]["ProductDependencyCheck"];
|
|
2623
|
+
};
|
|
2624
|
+
};
|
|
2625
|
+
/** @description Missing product query parameter or unknown product */
|
|
2626
|
+
400: {
|
|
2627
|
+
headers: {
|
|
2628
|
+
[name: string]: unknown;
|
|
2629
|
+
};
|
|
2630
|
+
content?: never;
|
|
2631
|
+
};
|
|
2632
|
+
/** @description Unauthorized */
|
|
2633
|
+
401: {
|
|
2634
|
+
headers: {
|
|
2635
|
+
[name: string]: unknown;
|
|
2636
|
+
};
|
|
2637
|
+
content?: never;
|
|
2638
|
+
};
|
|
2639
|
+
/** @description Project not found */
|
|
2640
|
+
404: {
|
|
2641
|
+
headers: {
|
|
2642
|
+
[name: string]: unknown;
|
|
2643
|
+
};
|
|
2644
|
+
content?: never;
|
|
2645
|
+
};
|
|
2646
|
+
};
|
|
2647
|
+
};
|
|
2174
2648
|
createAccessToken: {
|
|
2175
2649
|
parameters: {
|
|
2176
2650
|
query?: never;
|
|
@@ -2490,11 +2964,20 @@ type BillingChangeOptions = components["schemas"]["BillingChangeOptions"];
|
|
|
2490
2964
|
type BillingStateHistory = components["schemas"]["BillingStateHistory"];
|
|
2491
2965
|
type ResourcePackagePrice = components["schemas"]["ResourcePackagePrice"];
|
|
2492
2966
|
type SuccessResponse = components["schemas"]["SuccessResponse"];
|
|
2967
|
+
type ProjectProduct = components["schemas"]["ProjectProduct"];
|
|
2968
|
+
type ProjectProductFeature = components["schemas"]["ProjectProductFeature"];
|
|
2969
|
+
type ProductPricing = components["schemas"]["ProductPricing"];
|
|
2970
|
+
type ActivatedProduct = components["schemas"]["ActivatedProduct"];
|
|
2971
|
+
type FeatureAvailability = components["schemas"]["FeatureAvailability"];
|
|
2972
|
+
type ProductDependencyCheck = components["schemas"]["ProductDependencyCheck"];
|
|
2973
|
+
type ProductDependencyStatus = components["schemas"]["ProductDependencyStatus"];
|
|
2493
2974
|
type APIType = components["schemas"]["APIType"];
|
|
2494
2975
|
type BillingState = components["schemas"]["BillingState"];
|
|
2495
2976
|
type PermissionRole = components["schemas"]["PermissionRole"];
|
|
2496
2977
|
type UserStatus = components["schemas"]["UserStatus"];
|
|
2497
2978
|
type InvoiceStatus = components["schemas"]["InvoiceStatus"];
|
|
2979
|
+
type ProductSlug = components["schemas"]["ProductSlug"];
|
|
2980
|
+
type PricingType = components["schemas"]["PricingType"];
|
|
2498
2981
|
type ActivateAPIPayload = components["schemas"]["ActivateAPIPayload"];
|
|
2499
2982
|
type AddUserToProjectPayload = components["schemas"]["AddUserToProjectPayload"];
|
|
2500
2983
|
type ChangeUserRolePayload = components["schemas"]["ChangeUserRolePayload"];
|
|
@@ -2508,11 +2991,15 @@ type ResourcePackagePricePayload = components["schemas"]["ResourcePackagePricePa
|
|
|
2508
2991
|
type ResourcePackagePricesPayload = components["schemas"]["ResourcePackagePricesPayload"];
|
|
2509
2992
|
type RevokeUserPayload = components["schemas"]["RevokeUserPayload"];
|
|
2510
2993
|
type SetBillingAccountPayload = components["schemas"]["SetBillingAccountPayload"];
|
|
2994
|
+
type ActivateProductPayload = components["schemas"]["ActivateProductPayload"];
|
|
2995
|
+
type DeactivateProductPayload = components["schemas"]["DeactivateProductPayload"];
|
|
2511
2996
|
type GetProjectsQuery = operations["getProjects"]["parameters"]["query"];
|
|
2512
2997
|
type GetPeersOverTimeQuery = operations["getPeersOverTime"]["parameters"]["query"];
|
|
2513
2998
|
type GetRoomsOverTimeQuery = operations["getRoomsOverTime"]["parameters"]["query"];
|
|
2514
2999
|
type GetInstancesOverTimeQuery = operations["getInstancesOverTime"]["parameters"]["query"];
|
|
2515
3000
|
type GetInvoicesQuery = operations["getInvoices"]["parameters"]["query"];
|
|
3001
|
+
type CheckFeatureQuery = operations["checkFeature"]["parameters"]["query"];
|
|
3002
|
+
type CheckProductDependenciesQuery = operations["checkProductDependencies"]["parameters"]["query"];
|
|
2516
3003
|
/**
|
|
2517
3004
|
* 4Players Payment API Client
|
|
2518
3005
|
*
|
|
@@ -2665,11 +3152,57 @@ declare class PaymentClient {
|
|
|
2665
3152
|
/**
|
|
2666
3153
|
* Activate an API for the specified project.
|
|
2667
3154
|
*
|
|
3155
|
+
* @deprecated Use {@link activateProduct} instead.
|
|
2668
3156
|
* @param projectId - The unique identifier of the project
|
|
2669
3157
|
* @param body - The API slug to activate
|
|
2670
3158
|
* @returns Success response
|
|
2671
3159
|
*/
|
|
2672
3160
|
activateAPI(projectId: string, body: ActivateAPIPayload): Promise<SuccessResponse>;
|
|
3161
|
+
/**
|
|
3162
|
+
* List all available products.
|
|
3163
|
+
*
|
|
3164
|
+
* @returns Array of available products with features and pricing
|
|
3165
|
+
*/
|
|
3166
|
+
getProducts(): Promise<ProjectProduct[]>;
|
|
3167
|
+
/**
|
|
3168
|
+
* Get activated products for a project.
|
|
3169
|
+
*
|
|
3170
|
+
* @param projectId - The unique identifier of the project
|
|
3171
|
+
* @returns Array of activated products
|
|
3172
|
+
*/
|
|
3173
|
+
getProjectProducts(projectId: string): Promise<ActivatedProduct[]>;
|
|
3174
|
+
/**
|
|
3175
|
+
* Activate a product for a project.
|
|
3176
|
+
*
|
|
3177
|
+
* @param projectId - The unique identifier of the project
|
|
3178
|
+
* @param body - The product slug and optional configuration
|
|
3179
|
+
* @returns Updated project
|
|
3180
|
+
*/
|
|
3181
|
+
activateProduct(projectId: string, body: ActivateProductPayload): Promise<PaymentProject>;
|
|
3182
|
+
/**
|
|
3183
|
+
* Deactivate a product for a project.
|
|
3184
|
+
*
|
|
3185
|
+
* @param projectId - The unique identifier of the project
|
|
3186
|
+
* @param body - The product slug to deactivate
|
|
3187
|
+
* @returns Success response
|
|
3188
|
+
*/
|
|
3189
|
+
deactivateProduct(projectId: string, body: DeactivateProductPayload): Promise<SuccessResponse>;
|
|
3190
|
+
/**
|
|
3191
|
+
* Check if a feature is available for a project.
|
|
3192
|
+
*
|
|
3193
|
+
* @param projectId - The unique identifier of the project
|
|
3194
|
+
* @param query - Query with the feature slug to check
|
|
3195
|
+
* @returns Feature availability status
|
|
3196
|
+
*/
|
|
3197
|
+
checkFeature(projectId: string, query: CheckFeatureQuery): Promise<FeatureAvailability>;
|
|
3198
|
+
/**
|
|
3199
|
+
* Check product dependencies for a project.
|
|
3200
|
+
*
|
|
3201
|
+
* @param projectId - The unique identifier of the project
|
|
3202
|
+
* @param query - Query with the product slug to check
|
|
3203
|
+
* @returns Dependency check result with activation status of each dependency
|
|
3204
|
+
*/
|
|
3205
|
+
checkProductDependencies(projectId: string, query: CheckProductDependenciesQuery): Promise<ProductDependencyCheck>;
|
|
2673
3206
|
/**
|
|
2674
3207
|
* Get all invoices for the current user, optionally filtered by ID.
|
|
2675
3208
|
*
|
|
@@ -2837,4 +3370,4 @@ declare class PaymentRateLimitError extends PaymentError {
|
|
|
2837
3370
|
constructor(retryAfter?: number);
|
|
2838
3371
|
}
|
|
2839
3372
|
|
|
2840
|
-
export { type APIType, type ActivateAPIPayload, type AddUserToProjectPayload, type BillingAccount, type BillingChangeOptions, type BillingOptions, type BillingState, type BillingStateHistory, type ChangeUserRolePayload, type CreateAccessKeyPayload, type CreateBillingPortalSessionPayload, type CreateSetupSessionPayload, type CreateTokenPayload, type EditAccessKeyPayload, type EditProjectPayload, type GetInstancesOverTimeQuery, type GetInvoicesQuery, type GetPeersOverTimeQuery, type GetProjectsQuery, type GetRoomsOverTimeQuery, type Invoice, type InvoicePosition, type InvoiceStatus, type Invoices, type OdinAccessKey, type OdinUserPermissions, type OdinUserRole, PaymentApiError, PaymentAuthError, PaymentClient, type PaymentClientConfig, PaymentError, PaymentNotFoundError, type PaymentProject, PaymentRateLimitError, PaymentValidationError, type PermissionRole, type PortalSession, type ResourcePackagePrice, type ResourcePackagePricePayload, type ResourcePackagePricesPayload, type RevokeUserPayload, type SetBillingAccountPayload, type SetupSession, type Subscription, type SubscriptionPosition, type SuccessResponse, type TariffParams, type TimeSeriesData, type TokenPayload, type UserStatus, type components, PaymentClient as default, type operations, type paths };
|
|
3373
|
+
export { type APIType, type ActivateAPIPayload, type ActivateProductPayload, type ActivatedProduct, type AddUserToProjectPayload, type BillingAccount, type BillingChangeOptions, type BillingOptions, type BillingState, type BillingStateHistory, type ChangeUserRolePayload, type CheckFeatureQuery, type CheckProductDependenciesQuery, type CreateAccessKeyPayload, type CreateBillingPortalSessionPayload, type CreateSetupSessionPayload, type CreateTokenPayload, type DeactivateProductPayload, type EditAccessKeyPayload, type EditProjectPayload, type FeatureAvailability, type GetInstancesOverTimeQuery, type GetInvoicesQuery, type GetPeersOverTimeQuery, type GetProjectsQuery, type GetRoomsOverTimeQuery, type Invoice, type InvoicePosition, type InvoiceStatus, type Invoices, type OdinAccessKey, type OdinUserPermissions, type OdinUserRole, PaymentApiError, PaymentAuthError, PaymentClient, type PaymentClientConfig, PaymentError, PaymentNotFoundError, type PaymentProject, PaymentRateLimitError, PaymentValidationError, type PermissionRole, type PortalSession, type PricingType, type ProductDependencyCheck, type ProductDependencyStatus, type ProductPricing, type ProductSlug, type ProjectProduct, type ProjectProductFeature, type ResourcePackagePrice, type ResourcePackagePricePayload, type ResourcePackagePricesPayload, type RevokeUserPayload, type SetBillingAccountPayload, type SetupSession, type Subscription, type SubscriptionPosition, type SuccessResponse, type TariffParams, type TimeSeriesData, type TokenPayload, type UserStatus, type components, PaymentClient as default, type operations, type paths };
|