@stackframe/stack-shared 2.8.34 → 2.8.35

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 (74) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/config/schema.d.mts +100 -147
  3. package/dist/config/schema.d.ts +100 -147
  4. package/dist/config/schema.js +39 -31
  5. package/dist/config/schema.js.map +1 -1
  6. package/dist/esm/config/schema.js +39 -31
  7. package/dist/esm/config/schema.js.map +1 -1
  8. package/dist/esm/interface/admin-interface.js +12 -8
  9. package/dist/esm/interface/admin-interface.js.map +1 -1
  10. package/dist/esm/interface/client-interface.js +18 -4
  11. package/dist/esm/interface/client-interface.js.map +1 -1
  12. package/dist/esm/interface/server-interface.js +19 -10
  13. package/dist/esm/interface/server-interface.js.map +1 -1
  14. package/dist/esm/known-errors.js.map +1 -1
  15. package/dist/esm/schema-fields.js +22 -9
  16. package/dist/esm/schema-fields.js.map +1 -1
  17. package/dist/esm/utils/currencies.js +0 -38
  18. package/dist/esm/utils/currencies.js.map +1 -1
  19. package/dist/esm/utils/currency-constants.js +42 -0
  20. package/dist/esm/utils/currency-constants.js.map +1 -0
  21. package/dist/esm/utils/dates.js +30 -0
  22. package/dist/esm/utils/dates.js.map +1 -1
  23. package/dist/esm/utils/strings.js +3 -0
  24. package/dist/esm/utils/strings.js.map +1 -1
  25. package/dist/esm/utils/types.js.map +1 -1
  26. package/dist/helpers/password.d.mts +1 -1
  27. package/dist/helpers/password.d.ts +1 -1
  28. package/dist/index.d.mts +1 -1
  29. package/dist/index.d.ts +1 -1
  30. package/dist/interface/admin-interface.d.mts +12 -5
  31. package/dist/interface/admin-interface.d.ts +12 -5
  32. package/dist/interface/admin-interface.js +12 -8
  33. package/dist/interface/admin-interface.js.map +1 -1
  34. package/dist/interface/client-interface.d.mts +11 -6
  35. package/dist/interface/client-interface.d.ts +11 -6
  36. package/dist/interface/client-interface.js +18 -4
  37. package/dist/interface/client-interface.js.map +1 -1
  38. package/dist/interface/crud/current-user.d.mts +1 -1
  39. package/dist/interface/crud/current-user.d.ts +1 -1
  40. package/dist/interface/crud/project-api-keys.d.mts +4 -4
  41. package/dist/interface/crud/project-api-keys.d.ts +4 -4
  42. package/dist/interface/crud/team-member-profiles.d.mts +2 -2
  43. package/dist/interface/crud/team-member-profiles.d.ts +2 -2
  44. package/dist/interface/crud/users.d.mts +4 -4
  45. package/dist/interface/crud/users.d.ts +4 -4
  46. package/dist/interface/server-interface.d.mts +11 -2
  47. package/dist/interface/server-interface.d.ts +11 -2
  48. package/dist/interface/server-interface.js +19 -10
  49. package/dist/interface/server-interface.js.map +1 -1
  50. package/dist/known-errors.d.mts +3 -3
  51. package/dist/known-errors.d.ts +3 -3
  52. package/dist/known-errors.js.map +1 -1
  53. package/dist/schema-fields.d.mts +24 -8
  54. package/dist/schema-fields.d.ts +24 -8
  55. package/dist/schema-fields.js +25 -11
  56. package/dist/schema-fields.js.map +1 -1
  57. package/dist/utils/currencies.d.mts +3 -36
  58. package/dist/utils/currencies.d.ts +3 -36
  59. package/dist/utils/currencies.js +0 -39
  60. package/dist/utils/currencies.js.map +1 -1
  61. package/dist/utils/currency-constants.d.mts +37 -0
  62. package/dist/utils/currency-constants.d.ts +37 -0
  63. package/dist/utils/currency-constants.js +67 -0
  64. package/dist/utils/currency-constants.js.map +1 -0
  65. package/dist/utils/dates.d.mts +3 -1
  66. package/dist/utils/dates.d.ts +3 -1
  67. package/dist/utils/dates.js +32 -0
  68. package/dist/utils/dates.js.map +1 -1
  69. package/dist/utils/strings.js +3 -0
  70. package/dist/utils/strings.js.map +1 -1
  71. package/dist/utils/types.d.mts +5 -4
  72. package/dist/utils/types.d.ts +5 -4
  73. package/dist/utils/types.js.map +1 -1
  74. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @stackframe/stack-shared
2
2
 
3
+ ## 2.8.35
4
+
5
+ ### Patch Changes
6
+
7
+ - Various changes
8
+
3
9
  ## 2.8.34
4
10
 
5
11
  ### Patch Changes
@@ -30,19 +30,21 @@ declare const projectConfigSchema: yup.ObjectSchema<{
30
30
  sourceOfTruth: undefined;
31
31
  }, "">;
32
32
  declare const branchPaymentsSchema: yup.ObjectSchema<{
33
- stripeAccountId: string | undefined;
34
- stripeAccountSetupComplete: boolean | undefined;
35
33
  autoPay: {
36
34
  interval?: DayInterval | undefined;
37
35
  } | undefined;
38
- exclusivityGroups: Record<string, Record<string, true | undefined>>;
36
+ groups: Record<string, {
37
+ displayName?: string | undefined;
38
+ }>;
39
39
  offers: Record<string, {
40
- customerType?: "team" | "user" | undefined;
40
+ groupId?: string | undefined;
41
41
  displayName?: string | undefined;
42
+ isAddOnTo?: false | Record<string, true> | undefined;
42
43
  freeTrial?: DayInterval | undefined;
43
44
  serverOnly?: boolean | undefined;
44
45
  stackable?: boolean | undefined;
45
- prices: Record<string, {
46
+ customerType: "team" | "user" | "custom";
47
+ prices: "include-by-default" | Record<string, {
46
48
  interval?: DayInterval | undefined;
47
49
  freeTrial?: DayInterval | undefined;
48
50
  serverOnly?: boolean | undefined;
@@ -56,26 +58,19 @@ declare const branchPaymentsSchema: yup.ObjectSchema<{
56
58
  }>;
57
59
  includedItems: Record<string, {
58
60
  repeat?: "never" | DayInterval | undefined;
59
- quantity?: number | undefined;
60
61
  expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
62
+ quantity: number;
61
63
  }>;
62
64
  }>;
63
65
  items: Record<string, {
64
- customerType?: "team" | "user" | undefined;
65
66
  displayName?: string | undefined;
66
- default: {
67
- repeat?: "never" | DayInterval | undefined;
68
- quantity?: number | undefined;
69
- expires?: "never" | "when-repeated" | undefined;
70
- };
67
+ customerType?: "team" | "user" | "custom" | undefined;
71
68
  }>;
72
69
  }, yup.AnyObject, {
73
- stripeAccountId: undefined;
74
- stripeAccountSetupComplete: undefined;
75
70
  autoPay: {
76
71
  interval: undefined;
77
72
  };
78
- exclusivityGroups: undefined;
73
+ groups: undefined;
79
74
  offers: undefined;
80
75
  items: undefined;
81
76
  }, "">;
@@ -132,28 +127,25 @@ declare const branchConfigSchema: yup.Schema<Omit<Omit<{
132
127
  };
133
128
  };
134
129
  payments: {
135
- stripeAccountId?: string | undefined;
136
- stripeAccountSetupComplete?: boolean | undefined;
137
130
  autoPay?: {
138
131
  interval?: DayInterval | undefined;
139
132
  } | undefined;
140
133
  items: Record<string, {
141
- customerType?: "team" | "user" | undefined;
142
134
  displayName?: string | undefined;
143
- default: {
144
- repeat?: "never" | DayInterval | undefined;
145
- quantity?: number | undefined;
146
- expires?: "never" | "when-repeated" | undefined;
147
- };
135
+ customerType?: "team" | "user" | "custom" | undefined;
136
+ }>;
137
+ groups: Record<string, {
138
+ displayName?: string | undefined;
148
139
  }>;
149
- exclusivityGroups: Record<string, Record<string, true | undefined>>;
150
140
  offers: Record<string, {
151
- customerType?: "team" | "user" | undefined;
141
+ groupId?: string | undefined;
152
142
  displayName?: string | undefined;
143
+ isAddOnTo?: false | Record<string, true> | undefined;
153
144
  freeTrial?: DayInterval | undefined;
154
145
  serverOnly?: boolean | undefined;
155
146
  stackable?: boolean | undefined;
156
- prices: Record<string, {
147
+ customerType: "team" | "user" | "custom";
148
+ prices: "include-by-default" | Record<string, {
157
149
  interval?: DayInterval | undefined;
158
150
  freeTrial?: DayInterval | undefined;
159
151
  serverOnly?: boolean | undefined;
@@ -167,8 +159,8 @@ declare const branchConfigSchema: yup.Schema<Omit<Omit<{
167
159
  }>;
168
160
  includedItems: Record<string, {
169
161
  repeat?: "never" | DayInterval | undefined;
170
- quantity?: number | undefined;
171
162
  expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
163
+ quantity: number;
172
164
  }>;
173
165
  }>;
174
166
  };
@@ -240,12 +232,10 @@ declare const branchConfigSchema: yup.Schema<Omit<Omit<{
240
232
  templates: undefined;
241
233
  };
242
234
  payments: {
243
- stripeAccountId: undefined;
244
- stripeAccountSetupComplete: undefined;
245
235
  autoPay: {
246
236
  interval: undefined;
247
237
  };
248
- exclusivityGroups: undefined;
238
+ groups: undefined;
249
239
  offers: undefined;
250
240
  items: undefined;
251
241
  };
@@ -303,28 +293,25 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
303
293
  };
304
294
  };
305
295
  payments: {
306
- stripeAccountId?: string | undefined;
307
- stripeAccountSetupComplete?: boolean | undefined;
308
296
  autoPay?: {
309
297
  interval?: DayInterval | undefined;
310
298
  } | undefined;
311
299
  items: Record<string, {
312
- customerType?: "team" | "user" | undefined;
313
300
  displayName?: string | undefined;
314
- default: {
315
- repeat?: "never" | DayInterval | undefined;
316
- quantity?: number | undefined;
317
- expires?: "never" | "when-repeated" | undefined;
318
- };
301
+ customerType?: "team" | "user" | "custom" | undefined;
302
+ }>;
303
+ groups: Record<string, {
304
+ displayName?: string | undefined;
319
305
  }>;
320
- exclusivityGroups: Record<string, Record<string, true | undefined>>;
321
306
  offers: Record<string, {
322
- customerType?: "team" | "user" | undefined;
307
+ groupId?: string | undefined;
323
308
  displayName?: string | undefined;
309
+ isAddOnTo?: false | Record<string, true> | undefined;
324
310
  freeTrial?: DayInterval | undefined;
325
311
  serverOnly?: boolean | undefined;
326
312
  stackable?: boolean | undefined;
327
- prices: Record<string, {
313
+ customerType: "team" | "user" | "custom";
314
+ prices: "include-by-default" | Record<string, {
328
315
  interval?: DayInterval | undefined;
329
316
  freeTrial?: DayInterval | undefined;
330
317
  serverOnly?: boolean | undefined;
@@ -338,8 +325,8 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
338
325
  }>;
339
326
  includedItems: Record<string, {
340
327
  repeat?: "never" | DayInterval | undefined;
341
- quantity?: number | undefined;
342
328
  expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
329
+ quantity: number;
343
330
  }>;
344
331
  }>;
345
332
  };
@@ -482,12 +469,10 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
482
469
  templates: undefined;
483
470
  };
484
471
  payments: {
485
- stripeAccountId: undefined;
486
- stripeAccountSetupComplete: undefined;
487
472
  autoPay: {
488
473
  interval: undefined;
489
474
  };
490
- exclusivityGroups: undefined;
475
+ groups: undefined;
491
476
  offers: undefined;
492
477
  items: undefined;
493
478
  };
@@ -541,12 +526,10 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
541
526
  templates: undefined;
542
527
  };
543
528
  payments: {
544
- stripeAccountId: undefined;
545
- stripeAccountSetupComplete: undefined;
546
529
  autoPay: {
547
530
  interval: undefined;
548
531
  };
549
- exclusivityGroups: undefined;
532
+ groups: undefined;
550
533
  offers: undefined;
551
534
  items: undefined;
552
535
  };
@@ -600,12 +583,10 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
600
583
  templates: undefined;
601
584
  };
602
585
  payments: {
603
- stripeAccountId: undefined;
604
- stripeAccountSetupComplete: undefined;
605
586
  autoPay: {
606
587
  interval: undefined;
607
588
  };
608
- exclusivityGroups: undefined;
589
+ groups: undefined;
609
590
  offers: undefined;
610
591
  items: undefined;
611
592
  };
@@ -662,12 +643,10 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
662
643
  templates: undefined;
663
644
  };
664
645
  payments: {
665
- stripeAccountId: undefined;
666
- stripeAccountSetupComplete: undefined;
667
646
  autoPay: {
668
647
  interval: undefined;
669
648
  };
670
- exclusivityGroups: undefined;
649
+ groups: undefined;
671
650
  offers: undefined;
672
651
  items: undefined;
673
652
  };
@@ -731,12 +710,10 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
731
710
  templates: undefined;
732
711
  };
733
712
  payments: {
734
- stripeAccountId: undefined;
735
- stripeAccountSetupComplete: undefined;
736
713
  autoPay: {
737
714
  interval: undefined;
738
715
  };
739
- exclusivityGroups: undefined;
716
+ groups: undefined;
740
717
  offers: undefined;
741
718
  items: undefined;
742
719
  };
@@ -797,28 +774,25 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
797
774
  };
798
775
  };
799
776
  payments: {
800
- stripeAccountId?: string | undefined;
801
- stripeAccountSetupComplete?: boolean | undefined;
802
777
  autoPay?: {
803
778
  interval?: DayInterval | undefined;
804
779
  } | undefined;
805
780
  items: Record<string, {
806
- customerType?: "team" | "user" | undefined;
807
781
  displayName?: string | undefined;
808
- default: {
809
- repeat?: "never" | DayInterval | undefined;
810
- quantity?: number | undefined;
811
- expires?: "never" | "when-repeated" | undefined;
812
- };
782
+ customerType?: "team" | "user" | "custom" | undefined;
783
+ }>;
784
+ groups: Record<string, {
785
+ displayName?: string | undefined;
813
786
  }>;
814
- exclusivityGroups: Record<string, Record<string, true | undefined>>;
815
787
  offers: Record<string, {
816
- customerType?: "team" | "user" | undefined;
788
+ groupId?: string | undefined;
817
789
  displayName?: string | undefined;
790
+ isAddOnTo?: false | Record<string, true> | undefined;
818
791
  freeTrial?: DayInterval | undefined;
819
792
  serverOnly?: boolean | undefined;
820
793
  stackable?: boolean | undefined;
821
- prices: Record<string, {
794
+ customerType: "team" | "user" | "custom";
795
+ prices: "include-by-default" | Record<string, {
822
796
  interval?: DayInterval | undefined;
823
797
  freeTrial?: DayInterval | undefined;
824
798
  serverOnly?: boolean | undefined;
@@ -832,8 +806,8 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
832
806
  }>;
833
807
  includedItems: Record<string, {
834
808
  repeat?: "never" | DayInterval | undefined;
835
- quantity?: number | undefined;
836
809
  expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
810
+ quantity: number;
837
811
  }>;
838
812
  }>;
839
813
  };
@@ -976,12 +950,10 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
976
950
  templates: undefined;
977
951
  };
978
952
  payments: {
979
- stripeAccountId: undefined;
980
- stripeAccountSetupComplete: undefined;
981
953
  autoPay: {
982
954
  interval: undefined;
983
955
  };
984
- exclusivityGroups: undefined;
956
+ groups: undefined;
985
957
  offers: undefined;
986
958
  items: undefined;
987
959
  };
@@ -1035,12 +1007,10 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
1035
1007
  templates: undefined;
1036
1008
  };
1037
1009
  payments: {
1038
- stripeAccountId: undefined;
1039
- stripeAccountSetupComplete: undefined;
1040
1010
  autoPay: {
1041
1011
  interval: undefined;
1042
1012
  };
1043
- exclusivityGroups: undefined;
1013
+ groups: undefined;
1044
1014
  offers: undefined;
1045
1015
  items: undefined;
1046
1016
  };
@@ -1094,12 +1064,10 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
1094
1064
  templates: undefined;
1095
1065
  };
1096
1066
  payments: {
1097
- stripeAccountId: undefined;
1098
- stripeAccountSetupComplete: undefined;
1099
1067
  autoPay: {
1100
1068
  interval: undefined;
1101
1069
  };
1102
- exclusivityGroups: undefined;
1070
+ groups: undefined;
1103
1071
  offers: undefined;
1104
1072
  items: undefined;
1105
1073
  };
@@ -1156,12 +1124,10 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
1156
1124
  templates: undefined;
1157
1125
  };
1158
1126
  payments: {
1159
- stripeAccountId: undefined;
1160
- stripeAccountSetupComplete: undefined;
1161
1127
  autoPay: {
1162
1128
  interval: undefined;
1163
1129
  };
1164
- exclusivityGroups: undefined;
1130
+ groups: undefined;
1165
1131
  offers: undefined;
1166
1132
  items: undefined;
1167
1133
  };
@@ -1225,12 +1191,10 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
1225
1191
  templates: undefined;
1226
1192
  };
1227
1193
  payments: {
1228
- stripeAccountId: undefined;
1229
- stripeAccountSetupComplete: undefined;
1230
1194
  autoPay: {
1231
1195
  interval: undefined;
1232
1196
  };
1233
- exclusivityGroups: undefined;
1197
+ groups: undefined;
1234
1198
  offers: undefined;
1235
1199
  items: undefined;
1236
1200
  };
@@ -1363,16 +1327,18 @@ declare const organizationConfigDefaults: {
1363
1327
  };
1364
1328
  };
1365
1329
  readonly payments: {
1366
- readonly stripeAccountId: undefined;
1367
- readonly stripeAccountSetupComplete: false;
1368
1330
  readonly autoPay: undefined;
1369
- readonly exclusivityGroups: (key: string) => (key: string) => undefined;
1331
+ readonly groups: (key: string) => {
1332
+ displayName: undefined;
1333
+ };
1370
1334
  readonly offers: (key: string) => {
1371
1335
  readonly displayName: string;
1372
- readonly customerType: undefined;
1336
+ readonly groupId: undefined;
1337
+ readonly customerType: "user";
1373
1338
  readonly freeTrial: undefined;
1374
1339
  readonly serverOnly: false;
1375
1340
  readonly stackable: undefined;
1341
+ readonly isAddOnTo: false;
1376
1342
  readonly prices: (key: string) => {
1377
1343
  interval: undefined;
1378
1344
  serverOnly: false;
@@ -1386,18 +1352,14 @@ declare const organizationConfigDefaults: {
1386
1352
  CAD: undefined;
1387
1353
  };
1388
1354
  readonly includedItems: (key: string) => {
1389
- quantity: undefined;
1355
+ quantity: number;
1390
1356
  repeat: "never";
1391
1357
  expires: "when-repeated";
1392
1358
  };
1393
1359
  };
1394
1360
  readonly items: (key: string) => {
1395
1361
  readonly displayName: string;
1396
- readonly default: {
1397
- readonly quantity: 0;
1398
- readonly expires: "when-repeated";
1399
- readonly repeat: "never";
1400
- };
1362
+ readonly customerType: "user";
1401
1363
  };
1402
1364
  };
1403
1365
  };
@@ -1499,6 +1461,50 @@ declare function sanitizeOrganizationConfig(config: OrganizationRenderedConfigBe
1499
1461
  senderEmail: string | undefined;
1500
1462
  };
1501
1463
  };
1464
+ payments: {
1465
+ offers: Record<string, {
1466
+ isAddOnTo: false | Record<string, true>;
1467
+ prices: "include-by-default" | Record<string, {
1468
+ interval?: [number, "day" | "week" | "month" | "year"] | undefined;
1469
+ freeTrial?: [number, "day" | "week" | "month" | "year"] | undefined;
1470
+ serverOnly: boolean;
1471
+ USD?: string | undefined;
1472
+ EUR?: string | undefined;
1473
+ GBP?: string | undefined;
1474
+ JPY?: string | undefined;
1475
+ INR?: string | undefined;
1476
+ AUD?: string | undefined;
1477
+ CAD?: string | undefined;
1478
+ }>;
1479
+ groupId: string | undefined;
1480
+ displayName: string;
1481
+ customerType: "team" | "user" | "custom";
1482
+ freeTrial: [number, "day" | "week" | "month" | "year"] | undefined;
1483
+ serverOnly: boolean;
1484
+ stackable: boolean | undefined;
1485
+ includedItems: {
1486
+ [x: string]: {
1487
+ repeat: "never" | [number, "day" | "week" | "month" | "year"];
1488
+ quantity: number;
1489
+ expires: "never" | "when-purchase-expires" | "when-repeated";
1490
+ };
1491
+ };
1492
+ }>;
1493
+ items: {
1494
+ [x: string]: {
1495
+ displayName: string;
1496
+ customerType: "team" | "user" | "custom";
1497
+ };
1498
+ };
1499
+ autoPay: {
1500
+ interval?: [number, "day" | "week" | "month" | "year"] | undefined;
1501
+ } | undefined;
1502
+ groups: {
1503
+ [x: string]: {
1504
+ displayName: string | undefined;
1505
+ };
1506
+ };
1507
+ };
1502
1508
  sourceOfTruth: {
1503
1509
  type: "hosted" | "neon" | "postgres";
1504
1510
  connectionStrings: {
@@ -1584,59 +1590,6 @@ declare function sanitizeOrganizationConfig(config: OrganizationRenderedConfigBe
1584
1590
  };
1585
1591
  };
1586
1592
  };
1587
- payments: {
1588
- stripeAccountId: string | undefined;
1589
- stripeAccountSetupComplete: boolean;
1590
- items: {
1591
- [x: string]: {
1592
- customerType?: "team" | "user" | undefined;
1593
- default: {
1594
- repeat: "never" | [number, "day" | "week" | "month" | "year"];
1595
- quantity: number;
1596
- expires: "never" | "when-repeated";
1597
- };
1598
- displayName: string;
1599
- };
1600
- };
1601
- autoPay: {
1602
- interval?: [number, "day" | "week" | "month" | "year"] | undefined;
1603
- } | undefined;
1604
- exclusivityGroups: {
1605
- [x: string]: {
1606
- [x: string]: true | undefined;
1607
- };
1608
- };
1609
- offers: {
1610
- [x: string]: {
1611
- customerType: "team" | "user" | undefined;
1612
- displayName: string;
1613
- freeTrial: [number, "day" | "week" | "month" | "year"] | undefined;
1614
- serverOnly: boolean;
1615
- stackable: boolean | undefined;
1616
- prices: {
1617
- [x: string]: {
1618
- interval: [number, "day" | "week" | "month" | "year"] | undefined;
1619
- freeTrial: [number, "day" | "week" | "month" | "year"] | undefined;
1620
- serverOnly: boolean;
1621
- USD: string | undefined;
1622
- EUR: string | undefined;
1623
- GBP: string | undefined;
1624
- JPY: string | undefined;
1625
- INR: string | undefined;
1626
- AUD: string | undefined;
1627
- CAD: string | undefined;
1628
- };
1629
- };
1630
- includedItems: {
1631
- [x: string]: {
1632
- repeat: "never" | [number, "day" | "week" | "month" | "year"];
1633
- quantity: number | undefined;
1634
- expires: "never" | "when-purchase-expires" | "when-repeated";
1635
- };
1636
- };
1637
- };
1638
- };
1639
- };
1640
1593
  teams: {
1641
1594
  createPersonalTeamOnSignUp: boolean;
1642
1595
  allowClientTeamCreation: boolean;