@stackframe/stack-shared 2.8.32 → 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 (96) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/config/schema.d.mts +184 -231
  3. package/dist/config/schema.d.ts +184 -231
  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/helpers/production-mode.js +2 -1
  9. package/dist/esm/helpers/production-mode.js.map +1 -1
  10. package/dist/esm/interface/admin-interface.js +28 -8
  11. package/dist/esm/interface/admin-interface.js.map +1 -1
  12. package/dist/esm/interface/client-interface.js +29 -12
  13. package/dist/esm/interface/client-interface.js.map +1 -1
  14. package/dist/esm/interface/crud/users.js +1 -1
  15. package/dist/esm/interface/crud/users.js.map +1 -1
  16. package/dist/esm/interface/server-interface.js +22 -10
  17. package/dist/esm/interface/server-interface.js.map +1 -1
  18. package/dist/esm/known-errors.js +10 -0
  19. package/dist/esm/known-errors.js.map +1 -1
  20. package/dist/esm/schema-fields.js +52 -9
  21. package/dist/esm/schema-fields.js.map +1 -1
  22. package/dist/esm/utils/currencies.js +0 -38
  23. package/dist/esm/utils/currencies.js.map +1 -1
  24. package/dist/esm/utils/currency-constants.js +42 -0
  25. package/dist/esm/utils/currency-constants.js.map +1 -0
  26. package/dist/esm/utils/dates.js +30 -0
  27. package/dist/esm/utils/dates.js.map +1 -1
  28. package/dist/esm/utils/jwt.js +42 -37
  29. package/dist/esm/utils/jwt.js.map +1 -1
  30. package/dist/esm/utils/strings.js +3 -0
  31. package/dist/esm/utils/strings.js.map +1 -1
  32. package/dist/esm/utils/types.js.map +1 -1
  33. package/dist/esm/utils/urls.js +54 -0
  34. package/dist/esm/utils/urls.js.map +1 -1
  35. package/dist/helpers/password.d.mts +1 -1
  36. package/dist/helpers/password.d.ts +1 -1
  37. package/dist/helpers/production-mode.js +2 -1
  38. package/dist/helpers/production-mode.js.map +1 -1
  39. package/dist/index.d.mts +3 -3
  40. package/dist/index.d.ts +3 -3
  41. package/dist/interface/admin-interface.d.mts +15 -7
  42. package/dist/interface/admin-interface.d.ts +15 -7
  43. package/dist/interface/admin-interface.js +28 -8
  44. package/dist/interface/admin-interface.js.map +1 -1
  45. package/dist/interface/client-interface.d.mts +17 -16
  46. package/dist/interface/client-interface.d.ts +17 -16
  47. package/dist/interface/client-interface.js +29 -12
  48. package/dist/interface/client-interface.js.map +1 -1
  49. package/dist/interface/crud/current-user.d.mts +1 -1
  50. package/dist/interface/crud/current-user.d.ts +1 -1
  51. package/dist/interface/crud/project-api-keys.d.mts +4 -4
  52. package/dist/interface/crud/project-api-keys.d.ts +4 -4
  53. package/dist/interface/crud/team-member-profiles.d.mts +2 -2
  54. package/dist/interface/crud/team-member-profiles.d.ts +2 -2
  55. package/dist/interface/crud/users.d.mts +4 -4
  56. package/dist/interface/crud/users.d.ts +4 -4
  57. package/dist/interface/crud/users.js +1 -1
  58. package/dist/interface/crud/users.js.map +1 -1
  59. package/dist/interface/server-interface.d.mts +14 -4
  60. package/dist/interface/server-interface.d.ts +14 -4
  61. package/dist/interface/server-interface.js +22 -10
  62. package/dist/interface/server-interface.js.map +1 -1
  63. package/dist/known-errors.d.mts +6 -3
  64. package/dist/known-errors.d.ts +6 -3
  65. package/dist/known-errors.js +10 -0
  66. package/dist/known-errors.js.map +1 -1
  67. package/dist/schema-fields.d.mts +28 -8
  68. package/dist/schema-fields.d.ts +28 -8
  69. package/dist/schema-fields.js +56 -11
  70. package/dist/schema-fields.js.map +1 -1
  71. package/dist/utils/currencies.d.mts +3 -36
  72. package/dist/utils/currencies.d.ts +3 -36
  73. package/dist/utils/currencies.js +0 -39
  74. package/dist/utils/currencies.js.map +1 -1
  75. package/dist/utils/currency-constants.d.mts +37 -0
  76. package/dist/utils/currency-constants.d.ts +37 -0
  77. package/dist/utils/currency-constants.js +67 -0
  78. package/dist/utils/currency-constants.js.map +1 -0
  79. package/dist/utils/dates.d.mts +3 -1
  80. package/dist/utils/dates.d.ts +3 -1
  81. package/dist/utils/dates.js +32 -0
  82. package/dist/utils/dates.js.map +1 -1
  83. package/dist/utils/jwt.d.mts +11 -11
  84. package/dist/utils/jwt.d.ts +11 -11
  85. package/dist/utils/jwt.js +44 -42
  86. package/dist/utils/jwt.js.map +1 -1
  87. package/dist/utils/strings.js +3 -0
  88. package/dist/utils/strings.js.map +1 -1
  89. package/dist/utils/types.d.mts +16 -5
  90. package/dist/utils/types.d.ts +16 -5
  91. package/dist/utils/types.js.map +1 -1
  92. package/dist/utils/urls.d.mts +3 -1
  93. package/dist/utils/urls.d.ts +3 -1
  94. package/dist/utils/urls.js +56 -0
  95. package/dist/utils/urls.js.map +1 -1
  96. package/package.json +1 -1
@@ -30,19 +30,24 @@ 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
+ groupId?: string | undefined;
40
41
  displayName?: string | undefined;
41
- serverOnly?: boolean | undefined;
42
+ isAddOnTo?: false | Record<string, true> | undefined;
42
43
  freeTrial?: DayInterval | undefined;
43
- customerType?: "user" | "team" | undefined;
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, {
48
+ interval?: DayInterval | undefined;
49
+ freeTrial?: DayInterval | undefined;
50
+ serverOnly?: boolean | undefined;
46
51
  USD?: string | undefined;
47
52
  EUR?: string | undefined;
48
53
  GBP?: string | undefined;
@@ -50,32 +55,22 @@ declare const branchPaymentsSchema: yup.ObjectSchema<{
50
55
  INR?: string | undefined;
51
56
  AUD?: string | undefined;
52
57
  CAD?: string | undefined;
53
- interval?: DayInterval | undefined;
54
- serverOnly?: boolean | undefined;
55
- freeTrial?: DayInterval | undefined;
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
66
  displayName?: string | undefined;
65
- customerType?: "user" | "team" | 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
  }, "">;
@@ -89,18 +84,11 @@ declare const branchConfigSchema: yup.Schema<Omit<Omit<{
89
84
  type: "postgres";
90
85
  connectionString: string;
91
86
  };
92
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
93
- domains: {
94
- allowLocalhost?: boolean | undefined;
95
- };
96
- teams: {
97
- createPersonalTeamOnSignUp?: boolean | undefined;
98
- allowClientTeamCreation?: boolean | undefined;
99
- };
87
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
100
88
  rbac: {
101
89
  permissions: Record<string, {
102
90
  description?: string | undefined;
103
- scope?: "team" | "project" | undefined;
91
+ scope?: "project" | "team" | undefined;
104
92
  containedPermissionIds?: Record<string, true | undefined> | undefined;
105
93
  } | undefined>;
106
94
  defaultPermissions: {
@@ -111,10 +99,13 @@ declare const branchConfigSchema: yup.Schema<Omit<Omit<{
111
99
  };
112
100
  apiKeys: {
113
101
  enabled: {
114
- user?: boolean | undefined;
115
102
  team?: boolean | undefined;
103
+ user?: boolean | undefined;
116
104
  };
117
105
  };
106
+ domains: {
107
+ allowLocalhost?: boolean | undefined;
108
+ };
118
109
  auth: {
119
110
  allowSignUp?: boolean | undefined;
120
111
  password: {
@@ -136,28 +127,28 @@ declare const branchConfigSchema: yup.Schema<Omit<Omit<{
136
127
  };
137
128
  };
138
129
  payments: {
139
- stripeAccountId?: string | undefined;
140
- stripeAccountSetupComplete?: boolean | undefined;
141
130
  autoPay?: {
142
131
  interval?: DayInterval | undefined;
143
132
  } | undefined;
144
133
  items: Record<string, {
145
134
  displayName?: string | undefined;
146
- customerType?: "user" | "team" | undefined;
147
- default: {
148
- repeat?: "never" | DayInterval | undefined;
149
- quantity?: number | undefined;
150
- expires?: "never" | "when-repeated" | undefined;
151
- };
135
+ customerType?: "team" | "user" | "custom" | undefined;
136
+ }>;
137
+ groups: Record<string, {
138
+ displayName?: string | undefined;
152
139
  }>;
153
- exclusivityGroups: Record<string, Record<string, true | undefined>>;
154
140
  offers: Record<string, {
141
+ groupId?: string | undefined;
155
142
  displayName?: string | undefined;
156
- serverOnly?: boolean | undefined;
143
+ isAddOnTo?: false | Record<string, true> | undefined;
157
144
  freeTrial?: DayInterval | undefined;
158
- customerType?: "user" | "team" | undefined;
145
+ serverOnly?: boolean | undefined;
159
146
  stackable?: boolean | undefined;
160
- prices: Record<string, {
147
+ customerType: "team" | "user" | "custom";
148
+ prices: "include-by-default" | Record<string, {
149
+ interval?: DayInterval | undefined;
150
+ freeTrial?: DayInterval | undefined;
151
+ serverOnly?: boolean | undefined;
161
152
  USD?: string | undefined;
162
153
  EUR?: string | undefined;
163
154
  GBP?: string | undefined;
@@ -165,17 +156,18 @@ declare const branchConfigSchema: yup.Schema<Omit<Omit<{
165
156
  INR?: string | undefined;
166
157
  AUD?: string | undefined;
167
158
  CAD?: string | undefined;
168
- interval?: DayInterval | undefined;
169
- serverOnly?: boolean | undefined;
170
- freeTrial?: DayInterval | undefined;
171
159
  }>;
172
160
  includedItems: Record<string, {
173
161
  repeat?: "never" | DayInterval | undefined;
174
- quantity?: number | undefined;
175
162
  expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
163
+ quantity: number;
176
164
  }>;
177
165
  }>;
178
166
  };
167
+ teams: {
168
+ createPersonalTeamOnSignUp?: boolean | undefined;
169
+ allowClientTeamCreation?: boolean | undefined;
170
+ };
179
171
  users: {
180
172
  allowClientUserDeletion?: boolean | undefined;
181
173
  };
@@ -193,7 +185,7 @@ declare const branchConfigSchema: yup.Schema<Omit<Omit<{
193
185
  };
194
186
  }, yup.AnyObject, Omit<Omit<{
195
187
  sourceOfTruth: undefined;
196
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
188
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
197
189
  rbac: {
198
190
  permissions: undefined;
199
191
  defaultPermissions: {
@@ -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
  };
@@ -260,18 +250,11 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
260
250
  type: "postgres";
261
251
  connectionString: string;
262
252
  };
263
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
264
- domains: {
265
- allowLocalhost?: boolean | undefined;
266
- };
267
- teams: {
268
- createPersonalTeamOnSignUp?: boolean | undefined;
269
- allowClientTeamCreation?: boolean | undefined;
270
- };
253
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
271
254
  rbac: {
272
255
  permissions: Record<string, {
273
256
  description?: string | undefined;
274
- scope?: "team" | "project" | undefined;
257
+ scope?: "project" | "team" | undefined;
275
258
  containedPermissionIds?: Record<string, true | undefined> | undefined;
276
259
  } | undefined>;
277
260
  defaultPermissions: {
@@ -282,10 +265,13 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
282
265
  };
283
266
  apiKeys: {
284
267
  enabled: {
285
- user?: boolean | undefined;
286
268
  team?: boolean | undefined;
269
+ user?: boolean | undefined;
287
270
  };
288
271
  };
272
+ domains: {
273
+ allowLocalhost?: boolean | undefined;
274
+ };
289
275
  auth: {
290
276
  allowSignUp?: boolean | undefined;
291
277
  password: {
@@ -307,28 +293,28 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
307
293
  };
308
294
  };
309
295
  payments: {
310
- stripeAccountId?: string | undefined;
311
- stripeAccountSetupComplete?: boolean | undefined;
312
296
  autoPay?: {
313
297
  interval?: DayInterval | undefined;
314
298
  } | undefined;
315
299
  items: Record<string, {
316
300
  displayName?: string | undefined;
317
- customerType?: "user" | "team" | undefined;
318
- default: {
319
- repeat?: "never" | DayInterval | undefined;
320
- quantity?: number | undefined;
321
- expires?: "never" | "when-repeated" | undefined;
322
- };
301
+ customerType?: "team" | "user" | "custom" | undefined;
302
+ }>;
303
+ groups: Record<string, {
304
+ displayName?: string | undefined;
323
305
  }>;
324
- exclusivityGroups: Record<string, Record<string, true | undefined>>;
325
306
  offers: Record<string, {
307
+ groupId?: string | undefined;
326
308
  displayName?: string | undefined;
327
- serverOnly?: boolean | undefined;
309
+ isAddOnTo?: false | Record<string, true> | undefined;
328
310
  freeTrial?: DayInterval | undefined;
329
- customerType?: "user" | "team" | undefined;
311
+ serverOnly?: boolean | undefined;
330
312
  stackable?: boolean | undefined;
331
- prices: Record<string, {
313
+ customerType: "team" | "user" | "custom";
314
+ prices: "include-by-default" | Record<string, {
315
+ interval?: DayInterval | undefined;
316
+ freeTrial?: DayInterval | undefined;
317
+ serverOnly?: boolean | undefined;
332
318
  USD?: string | undefined;
333
319
  EUR?: string | undefined;
334
320
  GBP?: string | undefined;
@@ -336,17 +322,18 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
336
322
  INR?: string | undefined;
337
323
  AUD?: string | undefined;
338
324
  CAD?: string | undefined;
339
- interval?: DayInterval | undefined;
340
- serverOnly?: boolean | undefined;
341
- freeTrial?: DayInterval | undefined;
342
325
  }>;
343
326
  includedItems: Record<string, {
344
327
  repeat?: "never" | DayInterval | undefined;
345
- quantity?: number | undefined;
346
328
  expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
329
+ quantity: number;
347
330
  }>;
348
331
  }>;
349
332
  };
333
+ teams: {
334
+ createPersonalTeamOnSignUp?: boolean | undefined;
335
+ allowClientTeamCreation?: boolean | undefined;
336
+ };
350
337
  users: {
351
338
  allowClientUserDeletion?: boolean | undefined;
352
339
  };
@@ -401,11 +388,11 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
401
388
  }, "providers"> & {
402
389
  providers: Record<string, {
403
390
  type?: "google" | "github" | "microsoft" | "spotify" | "facebook" | "discord" | "gitlab" | "bitbucket" | "linkedin" | "apple" | "x" | "twitch" | undefined;
404
- clientId?: string | undefined;
405
- clientSecret?: string | undefined;
406
391
  allowSignIn?: boolean | undefined;
407
392
  allowConnectedAccounts?: boolean | undefined;
408
393
  isShared?: boolean | undefined;
394
+ clientId?: string | undefined;
395
+ clientSecret?: string | undefined;
409
396
  facebookConfigId?: string | undefined;
410
397
  microsoftTenantId?: string | undefined;
411
398
  }>;
@@ -424,18 +411,18 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
424
411
  }>;
425
412
  }, "server"> & {
426
413
  server: {
414
+ password?: string | undefined;
415
+ isShared?: boolean | undefined;
427
416
  host?: string | undefined;
428
417
  port?: number | undefined;
429
418
  username?: string | undefined;
430
- password?: string | undefined;
431
- isShared?: boolean | undefined;
432
419
  senderName?: string | undefined;
433
420
  senderEmail?: string | undefined;
434
421
  };
435
422
  };
436
423
  }, yup.AnyObject, Omit<NonNullable<Omit<Omit<{
437
424
  sourceOfTruth: undefined;
438
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
425
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
439
426
  rbac: {
440
427
  permissions: undefined;
441
428
  defaultPermissions: {
@@ -482,19 +469,17 @@ 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
  };
494
479
  }>, "domains" | "auth" | "emails"> & {
495
480
  auth: Omit<NonNullable<Omit<Omit<{
496
481
  sourceOfTruth: undefined;
497
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
482
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
498
483
  rbac: {
499
484
  permissions: undefined;
500
485
  defaultPermissions: {
@@ -541,19 +526,17 @@ 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
  };
553
536
  }>, "oauth"> & {
554
537
  oauth: Omit<NonNullable<Omit<Omit<{
555
538
  sourceOfTruth: undefined;
556
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
539
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
557
540
  rbac: {
558
541
  permissions: undefined;
559
542
  defaultPermissions: {
@@ -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
  };
@@ -615,7 +596,7 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
615
596
  };
616
597
  emails: Omit<NonNullable<Omit<Omit<{
617
598
  sourceOfTruth: undefined;
618
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
599
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
619
600
  rbac: {
620
601
  permissions: undefined;
621
602
  defaultPermissions: {
@@ -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
  };
@@ -684,7 +663,7 @@ declare const environmentConfigSchema: yup.Schema<Omit<NonNullable<Omit<Omit<{
684
663
  };
685
664
  domains: Omit<NonNullable<Omit<Omit<{
686
665
  sourceOfTruth: undefined;
687
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
666
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
688
667
  rbac: {
689
668
  permissions: undefined;
690
669
  defaultPermissions: {
@@ -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
  };
@@ -754,18 +731,11 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
754
731
  type: "postgres";
755
732
  connectionString: string;
756
733
  };
757
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
758
- domains: {
759
- allowLocalhost?: boolean | undefined;
760
- };
761
- teams: {
762
- createPersonalTeamOnSignUp?: boolean | undefined;
763
- allowClientTeamCreation?: boolean | undefined;
764
- };
734
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
765
735
  rbac: {
766
736
  permissions: Record<string, {
767
737
  description?: string | undefined;
768
- scope?: "team" | "project" | undefined;
738
+ scope?: "project" | "team" | undefined;
769
739
  containedPermissionIds?: Record<string, true | undefined> | undefined;
770
740
  } | undefined>;
771
741
  defaultPermissions: {
@@ -776,10 +746,13 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
776
746
  };
777
747
  apiKeys: {
778
748
  enabled: {
779
- user?: boolean | undefined;
780
749
  team?: boolean | undefined;
750
+ user?: boolean | undefined;
781
751
  };
782
752
  };
753
+ domains: {
754
+ allowLocalhost?: boolean | undefined;
755
+ };
783
756
  auth: {
784
757
  allowSignUp?: boolean | undefined;
785
758
  password: {
@@ -801,28 +774,28 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
801
774
  };
802
775
  };
803
776
  payments: {
804
- stripeAccountId?: string | undefined;
805
- stripeAccountSetupComplete?: boolean | undefined;
806
777
  autoPay?: {
807
778
  interval?: DayInterval | undefined;
808
779
  } | undefined;
809
780
  items: Record<string, {
810
781
  displayName?: string | undefined;
811
- customerType?: "user" | "team" | undefined;
812
- default: {
813
- repeat?: "never" | DayInterval | undefined;
814
- quantity?: number | undefined;
815
- expires?: "never" | "when-repeated" | undefined;
816
- };
782
+ customerType?: "team" | "user" | "custom" | undefined;
783
+ }>;
784
+ groups: Record<string, {
785
+ displayName?: string | undefined;
817
786
  }>;
818
- exclusivityGroups: Record<string, Record<string, true | undefined>>;
819
787
  offers: Record<string, {
788
+ groupId?: string | undefined;
820
789
  displayName?: string | undefined;
821
- serverOnly?: boolean | undefined;
790
+ isAddOnTo?: false | Record<string, true> | undefined;
822
791
  freeTrial?: DayInterval | undefined;
823
- customerType?: "user" | "team" | undefined;
792
+ serverOnly?: boolean | undefined;
824
793
  stackable?: boolean | undefined;
825
- prices: Record<string, {
794
+ customerType: "team" | "user" | "custom";
795
+ prices: "include-by-default" | Record<string, {
796
+ interval?: DayInterval | undefined;
797
+ freeTrial?: DayInterval | undefined;
798
+ serverOnly?: boolean | undefined;
826
799
  USD?: string | undefined;
827
800
  EUR?: string | undefined;
828
801
  GBP?: string | undefined;
@@ -830,17 +803,18 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
830
803
  INR?: string | undefined;
831
804
  AUD?: string | undefined;
832
805
  CAD?: string | undefined;
833
- interval?: DayInterval | undefined;
834
- serverOnly?: boolean | undefined;
835
- freeTrial?: DayInterval | undefined;
836
806
  }>;
837
807
  includedItems: Record<string, {
838
808
  repeat?: "never" | DayInterval | undefined;
839
- quantity?: number | undefined;
840
809
  expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
810
+ quantity: number;
841
811
  }>;
842
812
  }>;
843
813
  };
814
+ teams: {
815
+ createPersonalTeamOnSignUp?: boolean | undefined;
816
+ allowClientTeamCreation?: boolean | undefined;
817
+ };
844
818
  users: {
845
819
  allowClientUserDeletion?: boolean | undefined;
846
820
  };
@@ -895,11 +869,11 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
895
869
  }, "providers"> & {
896
870
  providers: Record<string, {
897
871
  type?: "google" | "github" | "microsoft" | "spotify" | "facebook" | "discord" | "gitlab" | "bitbucket" | "linkedin" | "apple" | "x" | "twitch" | undefined;
898
- clientId?: string | undefined;
899
- clientSecret?: string | undefined;
900
872
  allowSignIn?: boolean | undefined;
901
873
  allowConnectedAccounts?: boolean | undefined;
902
874
  isShared?: boolean | undefined;
875
+ clientId?: string | undefined;
876
+ clientSecret?: string | undefined;
903
877
  facebookConfigId?: string | undefined;
904
878
  microsoftTenantId?: string | undefined;
905
879
  }>;
@@ -918,18 +892,18 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
918
892
  }>;
919
893
  }, "server"> & {
920
894
  server: {
895
+ password?: string | undefined;
896
+ isShared?: boolean | undefined;
921
897
  host?: string | undefined;
922
898
  port?: number | undefined;
923
899
  username?: string | undefined;
924
- password?: string | undefined;
925
- isShared?: boolean | undefined;
926
900
  senderName?: string | undefined;
927
901
  senderEmail?: string | undefined;
928
902
  };
929
903
  };
930
904
  }>, never> & {}, yup.AnyObject, Omit<NonNullable<Omit<NonNullable<Omit<Omit<{
931
905
  sourceOfTruth: undefined;
932
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
906
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
933
907
  rbac: {
934
908
  permissions: undefined;
935
909
  defaultPermissions: {
@@ -976,19 +950,17 @@ 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
  };
988
960
  }>, "domains" | "auth" | "emails"> & {
989
961
  auth: Omit<NonNullable<Omit<Omit<{
990
962
  sourceOfTruth: undefined;
991
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
963
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
992
964
  rbac: {
993
965
  permissions: undefined;
994
966
  defaultPermissions: {
@@ -1035,19 +1007,17 @@ 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
  };
1047
1017
  }>, "oauth"> & {
1048
1018
  oauth: Omit<NonNullable<Omit<Omit<{
1049
1019
  sourceOfTruth: undefined;
1050
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
1020
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
1051
1021
  rbac: {
1052
1022
  permissions: undefined;
1053
1023
  defaultPermissions: {
@@ -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
  };
@@ -1109,7 +1077,7 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
1109
1077
  };
1110
1078
  emails: Omit<NonNullable<Omit<Omit<{
1111
1079
  sourceOfTruth: undefined;
1112
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
1080
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
1113
1081
  rbac: {
1114
1082
  permissions: undefined;
1115
1083
  defaultPermissions: {
@@ -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
  };
@@ -1178,7 +1144,7 @@ declare const organizationConfigSchema: yup.Schema<Omit<NonNullable<Omit<NonNull
1178
1144
  };
1179
1145
  domains: Omit<NonNullable<Omit<Omit<{
1180
1146
  sourceOfTruth: undefined;
1181
- }, string>, "domains" | "teams" | "rbac" | "apiKeys" | "auth" | "payments" | "users" | "emails"> & {
1147
+ }, string>, "rbac" | "apiKeys" | "domains" | "auth" | "payments" | "teams" | "users" | "emails"> & {
1182
1148
  rbac: {
1183
1149
  permissions: undefined;
1184
1150
  defaultPermissions: {
@@ -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
  };
@@ -1490,15 +1452,59 @@ declare function sanitizeOrganizationConfig(config: OrganizationRenderedConfigBe
1490
1452
  };
1491
1453
  };
1492
1454
  server: {
1455
+ password: string | undefined;
1456
+ isShared: boolean;
1493
1457
  host: string | undefined;
1494
1458
  port: number | undefined;
1495
1459
  username: string | undefined;
1496
- password: string | undefined;
1497
- isShared: boolean;
1498
1460
  senderName: string | undefined;
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: {
@@ -1520,24 +1526,11 @@ declare function sanitizeOrganizationConfig(config: OrganizationRenderedConfigBe
1520
1526
  readonly connectionStrings?: undefined;
1521
1527
  readonly connectionString?: undefined;
1522
1528
  });
1523
- domains: {
1524
- allowLocalhost: boolean;
1525
- trustedDomains: {
1526
- [x: string]: {
1527
- baseUrl: string | undefined;
1528
- handlerPath: string;
1529
- };
1530
- };
1531
- };
1532
- teams: {
1533
- createPersonalTeamOnSignUp: boolean;
1534
- allowClientTeamCreation: boolean;
1535
- };
1536
1529
  rbac: {
1537
1530
  permissions: {
1538
1531
  [x: string]: {
1539
1532
  description: string | undefined;
1540
- scope: "team" | "project" | undefined;
1533
+ scope: "project" | "team" | undefined;
1541
1534
  containedPermissionIds: {
1542
1535
  [x: string]: true | undefined;
1543
1536
  };
@@ -1557,15 +1550,24 @@ declare function sanitizeOrganizationConfig(config: OrganizationRenderedConfigBe
1557
1550
  };
1558
1551
  apiKeys: {
1559
1552
  enabled: {
1560
- user: boolean;
1561
1553
  team: boolean;
1554
+ user: boolean;
1555
+ };
1556
+ };
1557
+ domains: {
1558
+ allowLocalhost: boolean;
1559
+ trustedDomains: {
1560
+ [x: string]: {
1561
+ baseUrl: string | undefined;
1562
+ handlerPath: string;
1563
+ };
1562
1564
  };
1563
1565
  };
1564
1566
  auth: {
1567
+ allowSignUp: boolean;
1565
1568
  password: {
1566
1569
  allowSignIn: boolean;
1567
1570
  };
1568
- allowSignUp: boolean;
1569
1571
  otp: {
1570
1572
  allowSignIn: boolean;
1571
1573
  };
@@ -1577,69 +1579,20 @@ declare function sanitizeOrganizationConfig(config: OrganizationRenderedConfigBe
1577
1579
  providers: {
1578
1580
  [x: string]: {
1579
1581
  type: "google" | "github" | "microsoft" | "spotify" | "facebook" | "discord" | "gitlab" | "bitbucket" | "linkedin" | "apple" | "x" | "twitch" | undefined;
1580
- clientId: string | undefined;
1581
- clientSecret: string | undefined;
1582
1582
  allowSignIn: boolean;
1583
1583
  allowConnectedAccounts: boolean;
1584
1584
  isShared: boolean;
1585
+ clientId: string | undefined;
1586
+ clientSecret: string | undefined;
1585
1587
  facebookConfigId: string | undefined;
1586
1588
  microsoftTenantId: string | undefined;
1587
1589
  };
1588
1590
  };
1589
1591
  };
1590
1592
  };
1591
- payments: {
1592
- items: {
1593
- [x: string]: {
1594
- customerType?: "user" | "team" | undefined;
1595
- default: {
1596
- repeat: "never" | [number, "day" | "week" | "year" | "month"];
1597
- quantity: number;
1598
- expires: "never" | "when-repeated";
1599
- };
1600
- displayName: string;
1601
- };
1602
- };
1603
- stripeAccountId: string | undefined;
1604
- stripeAccountSetupComplete: boolean;
1605
- autoPay: {
1606
- interval?: [number, "day" | "week" | "year" | "month"] | undefined;
1607
- } | undefined;
1608
- exclusivityGroups: {
1609
- [x: string]: {
1610
- [x: string]: true | undefined;
1611
- };
1612
- };
1613
- offers: {
1614
- [x: string]: {
1615
- displayName: string;
1616
- serverOnly: boolean;
1617
- freeTrial: [number, "day" | "week" | "year" | "month"] | undefined;
1618
- customerType: "user" | "team" | undefined;
1619
- stackable: boolean | undefined;
1620
- prices: {
1621
- [x: string]: {
1622
- USD: string | undefined;
1623
- EUR: string | undefined;
1624
- GBP: string | undefined;
1625
- JPY: string | undefined;
1626
- INR: string | undefined;
1627
- AUD: string | undefined;
1628
- CAD: string | undefined;
1629
- interval: [number, "day" | "week" | "year" | "month"] | undefined;
1630
- serverOnly: boolean;
1631
- freeTrial: [number, "day" | "week" | "year" | "month"] | undefined;
1632
- };
1633
- };
1634
- includedItems: {
1635
- [x: string]: {
1636
- repeat: "never" | [number, "day" | "week" | "year" | "month"];
1637
- quantity: number | undefined;
1638
- expires: "never" | "when-purchase-expires" | "when-repeated";
1639
- };
1640
- };
1641
- };
1642
- };
1593
+ teams: {
1594
+ createPersonalTeamOnSignUp: boolean;
1595
+ allowClientTeamCreation: boolean;
1643
1596
  };
1644
1597
  users: {
1645
1598
  allowClientUserDeletion: boolean;