@logto/cloud 0.2.5-50ff8fe → 0.2.5-590fbce

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 (2) hide show
  1. package/lib/routes/index.d.ts +566 -210
  2. package/package.json +8 -7
@@ -3,21 +3,27 @@
3
3
  import { Json, JsonObject, RequestContext } from '@withtyped/server';
4
4
  import { InferModelType } from '@withtyped/server/model';
5
5
 
6
- export type WithAuthContext<Context = RequestContext> = Context & {
7
- auth: {
8
- /** The ID of the authenticated subject (`sub`). */
9
- id: string;
10
- /** The scopes that the subject has (`scope`). */
11
- scopes: string[];
12
- };
13
- };
14
- declare enum VerificationCodeType {
15
- SignIn = "SignIn",
16
- Register = "Register",
17
- ForgotPassword = "ForgotPassword",
18
- Generic = "Generic",
19
- /** @deprecated Use `Generic` type template for sending test sms/email use case */
20
- Test = "Test"
6
+ declare const availableReportableUsageKeys: readonly [
7
+ "tokenLimit",
8
+ "machineToMachineLimit",
9
+ "resourcesLimit",
10
+ "enterpriseSsoLimit",
11
+ "hooksLimit",
12
+ "tenantMembersLimit",
13
+ "mfaEnabled",
14
+ "organizationsEnabled",
15
+ "organizationsLimit",
16
+ "securityFeaturesEnabled",
17
+ "userRolesLimit",
18
+ "machineToMachineRolesLimit",
19
+ "thirdPartyApplicationsLimit",
20
+ "samlApplicationsLimit"
21
+ ];
22
+ export type ReportableUsageKey = (typeof availableReportableUsageKeys)[number];
23
+ export type RealtimeReportableUsageKey = Exclude<ReportableUsageKey, "tokenLimit">;
24
+ declare enum LogtoSkuType {
25
+ Basic = "Basic",
26
+ AddOn = "AddOn"
21
27
  }
22
28
  declare enum TemplateType {
23
29
  /** The template for sending verification code when user is signing in. */
@@ -29,7 +35,13 @@ declare enum TemplateType {
29
35
  /** The template for sending organization invitation. */
30
36
  OrganizationInvitation = "OrganizationInvitation",
31
37
  /** The template for generic usage. */
32
- Generic = "Generic"
38
+ Generic = "Generic",
39
+ /** The template for validating user permission for sensitive operations. */
40
+ UserPermissionValidation = "UserPermissionValidation",
41
+ /** The template for binding a new identifier to an existing account. */
42
+ BindNewIdentifier = "BindNewIdentifier",
43
+ /** The template for sending MFA verification code. */
44
+ MfaVerification = "MfaVerification"
33
45
  }
34
46
  declare enum OrganizationInvitationStatus {
35
47
  Pending = "Pending",
@@ -69,10 +81,6 @@ declare enum TenantRole {
69
81
  /** Collaborator of the tenant, who has permissions to operate the tenant data, but not the tenant settings. */
70
82
  Collaborator = "collaborator"
71
83
  }
72
- declare enum LogtoSkuType {
73
- Basic = "Basic",
74
- AddOn = "AddOn"
75
- }
76
84
  declare const AffiliateProperties: import("@withtyped/server/lib/model/index.js").default<"affiliate_properties", {
77
85
  createdAt: Date;
78
86
  affiliateId: string;
@@ -86,10 +94,47 @@ declare const Affiliates: import("@withtyped/server/lib/model/index.js").default
86
94
  id: string;
87
95
  }, "id" | "createdAt", "id" | "createdAt">;
88
96
  export type Affiliate = InferModelType<typeof Affiliates>;
89
- declare enum RegionName {
90
- EU = "EU",
91
- US = "US"
92
- }
97
+ declare const publicRegionNames: readonly [
98
+ "EU",
99
+ "US",
100
+ "AU",
101
+ "JP"
102
+ ];
103
+ /** The type of region names for the public cloud. */
104
+ export type PublicRegionName = (typeof publicRegionNames)[number];
105
+ /**
106
+ * Data structure representing a Logto Cloud region.
107
+ */
108
+ export type Region = {
109
+ /**
110
+ * The unique identifier for the region.
111
+ */
112
+ id: string;
113
+ /**
114
+ * A human-readable name for the region.
115
+ */
116
+ name: string;
117
+ /**
118
+ * The country where the region is located.
119
+ */
120
+ country: string;
121
+ /**
122
+ * Indicates whether the region is private.
123
+ */
124
+ isPrivate: boolean;
125
+ /**
126
+ * Tenant tags available for selection when creating tenants in this region.
127
+ */
128
+ tags: TenantTag[];
129
+ };
130
+ export type WithAuthContext<Context = RequestContext> = Context & {
131
+ auth: {
132
+ /** The ID of the authenticated subject (`sub`). */
133
+ id: string;
134
+ /** The scopes that the subject has (`scope`). */
135
+ scopes: string[];
136
+ };
137
+ };
93
138
  export type AffiliateData = Affiliate & {
94
139
  properties: Array<Pick<AffiliateProperty, "type" | "value">>;
95
140
  };
@@ -120,9 +165,12 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
120
165
  id: string;
121
166
  name: string;
122
167
  createdAt: Date;
168
+ quota: {
169
+ mauLimit: number | null;
170
+ tokenLimit: number | null;
171
+ };
123
172
  usage: {
124
173
  activeUsers: number;
125
- cost: number;
126
174
  tokenUsage: number;
127
175
  };
128
176
  indicator: string;
@@ -133,6 +181,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
133
181
  planId: string;
134
182
  currentPeriodStart: Date;
135
183
  currentPeriodEnd: Date;
184
+ isEnterprisePlan: boolean;
136
185
  id?: string | undefined;
137
186
  upcomingInvoice?: {
138
187
  subtotal: number;
@@ -141,12 +190,12 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
141
190
  totalExcludingTax: number | null;
142
191
  } | null | undefined;
143
192
  };
144
- regionName: RegionName;
193
+ regionName: string;
145
194
  tag: TenantTag;
146
195
  openInvoices: {
147
- status: "void" | "open" | "draft" | "paid" | "uncollectible" | null;
148
196
  id: string;
149
197
  createdAt: Date;
198
+ status: "void" | "open" | "draft" | "paid" | "uncollectible" | null;
150
199
  updatedAt: Date;
151
200
  customerId: string | null;
152
201
  billingReason: string | null;
@@ -154,6 +203,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
154
203
  periodEnd: Date;
155
204
  amountDue: number;
156
205
  amountPaid: number;
206
+ basicSkuId: string | null;
157
207
  subscriptionId: string | null;
158
208
  hostedInvoiceUrl: string | null;
159
209
  invoicePdf: string | null;
@@ -166,9 +216,12 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
166
216
  id: string;
167
217
  name: string;
168
218
  createdAt: Date;
219
+ quota: {
220
+ mauLimit: number | null;
221
+ tokenLimit: number | null;
222
+ };
169
223
  usage: {
170
224
  activeUsers: number;
171
- cost: number;
172
225
  tokenUsage: number;
173
226
  };
174
227
  indicator: string;
@@ -179,6 +232,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
179
232
  planId: string;
180
233
  currentPeriodStart: Date;
181
234
  currentPeriodEnd: Date;
235
+ isEnterprisePlan: boolean;
182
236
  id?: string | undefined;
183
237
  upcomingInvoice?: {
184
238
  subtotal: number;
@@ -187,12 +241,12 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
187
241
  totalExcludingTax: number | null;
188
242
  } | null | undefined;
189
243
  };
190
- regionName: RegionName;
244
+ regionName: string;
191
245
  tag: TenantTag;
192
246
  openInvoices: {
193
- status: "void" | "open" | "draft" | "paid" | "uncollectible" | null;
194
247
  id: string;
195
248
  createdAt: Date;
249
+ status: "void" | "open" | "draft" | "paid" | "uncollectible" | null;
196
250
  updatedAt: Date;
197
251
  customerId: string | null;
198
252
  billingReason: string | null;
@@ -200,6 +254,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
200
254
  periodEnd: Date;
201
255
  amountDue: number;
202
256
  amountPaid: number;
257
+ basicSkuId: string | null;
203
258
  subscriptionId: string | null;
204
259
  hostedInvoiceUrl: string | null;
205
260
  invoicePdf: string | null;
@@ -208,16 +263,20 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
208
263
  };
209
264
  post: {
210
265
  "/tenants": import("@withtyped/server").PathGuard<"/", unknown, {
266
+ id?: string | undefined;
211
267
  name?: string | undefined;
212
268
  tag?: TenantTag | undefined;
213
- regionName?: RegionName | undefined;
269
+ regionName?: string | undefined;
214
270
  }, {
215
271
  id: string;
216
272
  name: string;
217
273
  createdAt: Date;
274
+ quota: {
275
+ mauLimit: number | null;
276
+ tokenLimit: number | null;
277
+ };
218
278
  usage: {
219
279
  activeUsers: number;
220
- cost: number;
221
280
  tokenUsage: number;
222
281
  };
223
282
  indicator: string;
@@ -228,6 +287,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
228
287
  planId: string;
229
288
  currentPeriodStart: Date;
230
289
  currentPeriodEnd: Date;
290
+ isEnterprisePlan: boolean;
231
291
  id?: string | undefined;
232
292
  upcomingInvoice?: {
233
293
  subtotal: number;
@@ -236,12 +296,12 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
236
296
  totalExcludingTax: number | null;
237
297
  } | null | undefined;
238
298
  };
239
- regionName: RegionName;
299
+ regionName: string;
240
300
  tag: TenantTag;
241
301
  openInvoices: {
242
- status: "void" | "open" | "draft" | "paid" | "uncollectible" | null;
243
302
  id: string;
244
303
  createdAt: Date;
304
+ status: "void" | "open" | "draft" | "paid" | "uncollectible" | null;
245
305
  updatedAt: Date;
246
306
  customerId: string | null;
247
307
  billingReason: string | null;
@@ -249,6 +309,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
249
309
  periodEnd: Date;
250
310
  amountDue: number;
251
311
  amountPaid: number;
312
+ basicSkuId: string | null;
252
313
  subscriptionId: string | null;
253
314
  hostedInvoiceUrl: string | null;
254
315
  invoicePdf: string | null;
@@ -267,9 +328,37 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
267
328
  get: {
268
329
  "/tenants/my/subscription": import("@withtyped/server").PathGuard<"/my/subscription", unknown, unknown, {
269
330
  status: "incomplete" | "incomplete_expired" | "trialing" | "active" | "past_due" | "canceled" | "unpaid" | "paused";
331
+ quota: {
332
+ auditLogsRetentionDays: number | null;
333
+ mauLimit: number | null;
334
+ applicationsLimit: number | null;
335
+ thirdPartyApplicationsLimit: number | null;
336
+ scopesPerResourceLimit: number | null;
337
+ socialConnectorsLimit: number | null;
338
+ userRolesLimit: number | null;
339
+ machineToMachineRolesLimit: number | null;
340
+ scopesPerRoleLimit: number | null;
341
+ hooksLimit: number | null;
342
+ customJwtEnabled: boolean;
343
+ subjectTokenEnabled: boolean;
344
+ bringYourUiEnabled: boolean;
345
+ collectUserProfileEnabled: boolean;
346
+ tokenLimit: number | null;
347
+ machineToMachineLimit: number | null;
348
+ resourcesLimit: number | null;
349
+ enterpriseSsoLimit: number | null;
350
+ tenantMembersLimit: number | null;
351
+ mfaEnabled: boolean;
352
+ organizationsEnabled: boolean;
353
+ organizationsLimit: number | null;
354
+ securityFeaturesEnabled: boolean;
355
+ idpInitiatedSsoEnabled: boolean;
356
+ samlApplicationsLimit: number | null;
357
+ };
270
358
  planId: string;
271
359
  currentPeriodStart: Date;
272
360
  currentPeriodEnd: Date;
361
+ isEnterprisePlan: boolean;
273
362
  id?: string | undefined;
274
363
  upcomingInvoice?: {
275
364
  subtotal: number;
@@ -279,60 +368,110 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
279
368
  } | null | undefined;
280
369
  }>;
281
370
  } & {
282
- "/tenants/my/subscription/quota": import("@withtyped/server").PathGuard<"/my/subscription/quota", unknown, unknown, {
283
- mauLimit: number | null;
284
- tokenLimit: number | null;
285
- applicationsLimit: number | null;
286
- machineToMachineLimit: number | null;
287
- resourcesLimit: number | null;
288
- scopesPerResourceLimit: number | null;
289
- socialConnectorsLimit: number | null;
290
- machineToMachineRolesLimit: number | null;
291
- scopesPerRoleLimit: number | null;
292
- hooksLimit: number | null;
293
- auditLogsRetentionDays: number | null;
294
- mfaEnabled: boolean;
295
- organizationsEnabled: boolean;
296
- thirdPartyApplicationsLimit: number | null;
297
- tenantMembersLimit: number | null;
298
- customJwtEnabled: boolean;
299
- subjectTokenEnabled: boolean;
300
- bringYourUiEnabled: boolean;
301
- userRolesLimit: number | null;
302
- enterpriseSsoLimit: number | null;
371
+ "/tenants/my/subscription-usage": import("@withtyped/server").PathGuard<"/my/subscription-usage", unknown, unknown, {
372
+ usage: {
373
+ applicationsLimit: number;
374
+ thirdPartyApplicationsLimit: number;
375
+ scopesPerResourceLimit: number;
376
+ socialConnectorsLimit: number;
377
+ userRolesLimit: number;
378
+ machineToMachineRolesLimit: number;
379
+ scopesPerRoleLimit: number;
380
+ hooksLimit: number;
381
+ customJwtEnabled: boolean;
382
+ subjectTokenEnabled: boolean;
383
+ bringYourUiEnabled: boolean;
384
+ collectUserProfileEnabled: boolean;
385
+ machineToMachineLimit: number;
386
+ resourcesLimit: number;
387
+ enterpriseSsoLimit: number;
388
+ tenantMembersLimit: number;
389
+ mfaEnabled: boolean;
390
+ organizationsEnabled: boolean;
391
+ organizationsLimit: number;
392
+ securityFeaturesEnabled: boolean;
393
+ idpInitiatedSsoEnabled: boolean;
394
+ samlApplicationsLimit: number;
395
+ };
396
+ resources: Record<string, number>;
397
+ roles: Record<string, number>;
398
+ quota: {
399
+ auditLogsRetentionDays: number | null;
400
+ mauLimit: number | null;
401
+ applicationsLimit: number | null;
402
+ thirdPartyApplicationsLimit: number | null;
403
+ scopesPerResourceLimit: number | null;
404
+ socialConnectorsLimit: number | null;
405
+ userRolesLimit: number | null;
406
+ machineToMachineRolesLimit: number | null;
407
+ scopesPerRoleLimit: number | null;
408
+ hooksLimit: number | null;
409
+ customJwtEnabled: boolean;
410
+ subjectTokenEnabled: boolean;
411
+ bringYourUiEnabled: boolean;
412
+ collectUserProfileEnabled: boolean;
413
+ tokenLimit: number | null;
414
+ machineToMachineLimit: number | null;
415
+ resourcesLimit: number | null;
416
+ enterpriseSsoLimit: number | null;
417
+ tenantMembersLimit: number | null;
418
+ mfaEnabled: boolean;
419
+ organizationsEnabled: boolean;
420
+ organizationsLimit: number | null;
421
+ securityFeaturesEnabled: boolean;
422
+ idpInitiatedSsoEnabled: boolean;
423
+ samlApplicationsLimit: number | null;
424
+ };
425
+ basicQuota: {
426
+ auditLogsRetentionDays: number | null;
427
+ mauLimit: number | null;
428
+ applicationsLimit: number | null;
429
+ thirdPartyApplicationsLimit: number | null;
430
+ scopesPerResourceLimit: number | null;
431
+ socialConnectorsLimit: number | null;
432
+ userRolesLimit: number | null;
433
+ machineToMachineRolesLimit: number | null;
434
+ scopesPerRoleLimit: number | null;
435
+ hooksLimit: number | null;
436
+ customJwtEnabled: boolean;
437
+ subjectTokenEnabled: boolean;
438
+ bringYourUiEnabled: boolean;
439
+ collectUserProfileEnabled: boolean;
440
+ tokenLimit: number | null;
441
+ machineToMachineLimit: number | null;
442
+ resourcesLimit: number | null;
443
+ enterpriseSsoLimit: number | null;
444
+ tenantMembersLimit: number | null;
445
+ mfaEnabled: boolean;
446
+ organizationsEnabled: boolean;
447
+ organizationsLimit: number | null;
448
+ securityFeaturesEnabled: boolean;
449
+ idpInitiatedSsoEnabled: boolean;
450
+ samlApplicationsLimit: number | null;
451
+ };
303
452
  }>;
304
- } & {
305
- "/tenants/my/subscription/usage": import("@withtyped/server").PathGuard<"/my/subscription/usage", unknown, unknown, {
306
- mauLimit: number;
307
- tokenLimit: number;
308
- applicationsLimit: number;
309
- machineToMachineLimit: number;
310
- resourcesLimit: number;
311
- scopesPerResourceLimit: number;
312
- socialConnectorsLimit: number;
313
- machineToMachineRolesLimit: number;
314
- scopesPerRoleLimit: number;
315
- hooksLimit: number;
316
- mfaEnabled: boolean;
317
- organizationsEnabled: boolean;
318
- thirdPartyApplicationsLimit: number;
319
- tenantMembersLimit: number;
320
- customJwtEnabled: boolean;
321
- subjectTokenEnabled: boolean;
322
- bringYourUiEnabled: boolean;
323
- userRolesLimit: number;
324
- enterpriseSsoLimit: number;
453
+ };
454
+ post: {
455
+ "/tenants/my/subscription/item-updates": import("@withtyped/server").PathGuard<"/my/subscription/item-updates", unknown, {
456
+ usageKey: RealtimeReportableUsageKey;
457
+ }, {
458
+ message: string;
325
459
  }>;
326
- } & {
327
- "/tenants/my/subscription/usage/:entityName/scopes": import("@withtyped/server").PathGuard<"/my/subscription/usage/:entityName/scopes", {
328
- entityId?: string | undefined;
329
- }, unknown, Record<string, number>>;
330
- } & {
460
+ };
461
+ put: {};
462
+ delete: {};
463
+ copy: {};
464
+ head: {};
465
+ }, "/api">>, import("@withtyped/server").RoutesWithPrefix<{
466
+ patch: {};
467
+ options: {};
468
+ get: {
331
469
  "/tenants/:tenantId/subscription": import("@withtyped/server").PathGuard<"/:tenantId/subscription", unknown, unknown, {
332
470
  status: "incomplete" | "incomplete_expired" | "trialing" | "active" | "past_due" | "canceled" | "unpaid" | "paused";
333
471
  planId: string;
334
472
  currentPeriodStart: Date;
335
473
  currentPeriodEnd: Date;
474
+ isEnterprisePlan: boolean;
336
475
  id?: string | undefined;
337
476
  upcomingInvoice?: {
338
477
  subtotal: number;
@@ -342,60 +481,138 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
342
481
  } | null | undefined;
343
482
  }>;
344
483
  } & {
345
- "/tenants/:tenantId/subscription/quota": import("@withtyped/server").PathGuard<"/:tenantId/subscription/quota", unknown, unknown, {
346
- mauLimit: number | null;
347
- tokenLimit: number | null;
348
- applicationsLimit: number | null;
349
- machineToMachineLimit: number | null;
350
- resourcesLimit: number | null;
351
- scopesPerResourceLimit: number | null;
352
- socialConnectorsLimit: number | null;
353
- machineToMachineRolesLimit: number | null;
354
- scopesPerRoleLimit: number | null;
355
- hooksLimit: number | null;
356
- auditLogsRetentionDays: number | null;
357
- mfaEnabled: boolean;
358
- organizationsEnabled: boolean;
359
- thirdPartyApplicationsLimit: number | null;
360
- tenantMembersLimit: number | null;
361
- customJwtEnabled: boolean;
362
- subjectTokenEnabled: boolean;
363
- bringYourUiEnabled: boolean;
364
- userRolesLimit: number | null;
365
- enterpriseSsoLimit: number | null;
484
+ "/tenants/:tenantId/subscription-usage": import("@withtyped/server").PathGuard<"/:tenantId/subscription-usage", unknown, unknown, {
485
+ usage: {
486
+ applicationsLimit: number;
487
+ thirdPartyApplicationsLimit: number;
488
+ scopesPerResourceLimit: number;
489
+ socialConnectorsLimit: number;
490
+ userRolesLimit: number;
491
+ machineToMachineRolesLimit: number;
492
+ scopesPerRoleLimit: number;
493
+ hooksLimit: number;
494
+ customJwtEnabled: boolean;
495
+ subjectTokenEnabled: boolean;
496
+ bringYourUiEnabled: boolean;
497
+ collectUserProfileEnabled: boolean;
498
+ machineToMachineLimit: number;
499
+ resourcesLimit: number;
500
+ enterpriseSsoLimit: number;
501
+ tenantMembersLimit: number;
502
+ mfaEnabled: boolean;
503
+ organizationsEnabled: boolean;
504
+ organizationsLimit: number;
505
+ securityFeaturesEnabled: boolean;
506
+ idpInitiatedSsoEnabled: boolean;
507
+ samlApplicationsLimit: number;
508
+ };
509
+ resources: Record<string, number>;
510
+ roles: Record<string, number>;
511
+ quota: {
512
+ auditLogsRetentionDays: number | null;
513
+ mauLimit: number | null;
514
+ applicationsLimit: number | null;
515
+ thirdPartyApplicationsLimit: number | null;
516
+ scopesPerResourceLimit: number | null;
517
+ socialConnectorsLimit: number | null;
518
+ userRolesLimit: number | null;
519
+ machineToMachineRolesLimit: number | null;
520
+ scopesPerRoleLimit: number | null;
521
+ hooksLimit: number | null;
522
+ customJwtEnabled: boolean;
523
+ subjectTokenEnabled: boolean;
524
+ bringYourUiEnabled: boolean;
525
+ collectUserProfileEnabled: boolean;
526
+ tokenLimit: number | null;
527
+ machineToMachineLimit: number | null;
528
+ resourcesLimit: number | null;
529
+ enterpriseSsoLimit: number | null;
530
+ tenantMembersLimit: number | null;
531
+ mfaEnabled: boolean;
532
+ organizationsEnabled: boolean;
533
+ organizationsLimit: number | null;
534
+ securityFeaturesEnabled: boolean;
535
+ idpInitiatedSsoEnabled: boolean;
536
+ samlApplicationsLimit: number | null;
537
+ };
538
+ basicQuota: {
539
+ auditLogsRetentionDays: number | null;
540
+ mauLimit: number | null;
541
+ applicationsLimit: number | null;
542
+ thirdPartyApplicationsLimit: number | null;
543
+ scopesPerResourceLimit: number | null;
544
+ socialConnectorsLimit: number | null;
545
+ userRolesLimit: number | null;
546
+ machineToMachineRolesLimit: number | null;
547
+ scopesPerRoleLimit: number | null;
548
+ hooksLimit: number | null;
549
+ customJwtEnabled: boolean;
550
+ subjectTokenEnabled: boolean;
551
+ bringYourUiEnabled: boolean;
552
+ collectUserProfileEnabled: boolean;
553
+ tokenLimit: number | null;
554
+ machineToMachineLimit: number | null;
555
+ resourcesLimit: number | null;
556
+ enterpriseSsoLimit: number | null;
557
+ tenantMembersLimit: number | null;
558
+ mfaEnabled: boolean;
559
+ organizationsEnabled: boolean;
560
+ organizationsLimit: number | null;
561
+ securityFeaturesEnabled: boolean;
562
+ idpInitiatedSsoEnabled: boolean;
563
+ samlApplicationsLimit: number | null;
564
+ };
366
565
  }>;
367
566
  } & {
368
- "/tenants/:tenantId/subscription/usage": import("@withtyped/server").PathGuard<"/:tenantId/subscription/usage", unknown, unknown, {
567
+ "/tenants/:tenantId/subscription/periodic-usage": import("@withtyped/server").PathGuard<"/:tenantId/subscription/periodic-usage", unknown, unknown, {
369
568
  mauLimit: number;
370
569
  tokenLimit: number;
371
- applicationsLimit: number;
372
- machineToMachineLimit: number;
373
- resourcesLimit: number;
374
- scopesPerResourceLimit: number;
375
- socialConnectorsLimit: number;
376
- machineToMachineRolesLimit: number;
377
- scopesPerRoleLimit: number;
378
- hooksLimit: number;
379
- mfaEnabled: boolean;
380
- organizationsEnabled: boolean;
381
- thirdPartyApplicationsLimit: number;
382
- tenantMembersLimit: number;
383
- customJwtEnabled: boolean;
384
- subjectTokenEnabled: boolean;
385
- bringYourUiEnabled: boolean;
386
- userRolesLimit: number;
387
- enterpriseSsoLimit: number;
388
570
  }>;
389
571
  } & {
390
- "/tenants/:tenantId/subscription/usage/:entityName/scopes": import("@withtyped/server").PathGuard<"/:tenantId/subscription/usage/:entityName/scopes", {
391
- entityId?: string | undefined;
392
- }, unknown, Record<string, number>>;
572
+ "/tenants/:tenantId/subscription/add-on-skus": import("@withtyped/server").PathGuard<"/:tenantId/subscription/add-on-skus", unknown, unknown, Partial<Record<"tokenLimit" | "machineToMachineLimit" | "resourcesLimit" | "enterpriseSsoLimit" | "hooksLimit" | "tenantMembersLimit" | "mfaEnabled" | "organizationsEnabled" | "organizationsLimit" | "securityFeaturesEnabled" | "userRolesLimit" | "machineToMachineRolesLimit" | "thirdPartyApplicationsLimit" | "samlApplicationsLimit", {
573
+ id: string;
574
+ name: string | null;
575
+ createdAt: Date;
576
+ defaultPriceId: string | null;
577
+ unitPrice: number | null;
578
+ type: LogtoSkuType;
579
+ quota: {
580
+ auditLogsRetentionDays?: number | null | undefined;
581
+ mauLimit?: number | null | undefined;
582
+ applicationsLimit?: number | null | undefined;
583
+ thirdPartyApplicationsLimit?: number | null | undefined;
584
+ scopesPerResourceLimit?: number | null | undefined;
585
+ socialConnectorsLimit?: number | null | undefined;
586
+ userRolesLimit?: number | null | undefined;
587
+ machineToMachineRolesLimit?: number | null | undefined;
588
+ scopesPerRoleLimit?: number | null | undefined;
589
+ hooksLimit?: number | null | undefined;
590
+ customJwtEnabled?: boolean | undefined;
591
+ subjectTokenEnabled?: boolean | undefined;
592
+ bringYourUiEnabled?: boolean | undefined;
593
+ collectUserProfileEnabled?: boolean | undefined;
594
+ tokenLimit?: number | null | undefined;
595
+ machineToMachineLimit?: number | null | undefined;
596
+ resourcesLimit?: number | null | undefined;
597
+ enterpriseSsoLimit?: number | null | undefined;
598
+ tenantMembersLimit?: number | null | undefined;
599
+ mfaEnabled?: boolean | undefined;
600
+ organizationsEnabled?: boolean | undefined;
601
+ organizationsLimit?: number | null | undefined;
602
+ securityFeaturesEnabled?: boolean | undefined;
603
+ idpInitiatedSsoEnabled?: boolean | undefined;
604
+ samlApplicationsLimit?: number | null | undefined;
605
+ };
606
+ isDefault: boolean;
607
+ updatedAt: Date;
608
+ productId: string | null;
609
+ }>>>;
393
610
  } & {
394
611
  "/tenants/:tenantId/invoices": import("@withtyped/server").PathGuard<"/:tenantId/invoices", unknown, unknown, {
395
612
  invoices: {
396
- status: "void" | "open" | "draft" | "paid" | "uncollectible" | null;
397
613
  id: string;
398
614
  createdAt: Date;
615
+ status: "void" | "open" | "draft" | "paid" | "uncollectible" | null;
399
616
  updatedAt: Date;
400
617
  customerId: string | null;
401
618
  billingReason: string | null;
@@ -403,6 +620,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
403
620
  periodEnd: Date;
404
621
  amountDue: number;
405
622
  amountPaid: number;
623
+ basicSkuId: string | null;
406
624
  subscriptionId: string | null;
407
625
  hostedInvoiceUrl: string | null;
408
626
  invoicePdf: string | null;
@@ -410,24 +628,53 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
410
628
  skuId?: string | null | undefined;
411
629
  }[];
412
630
  }>;
631
+ } & {
632
+ "/tenants/:tenantId/available-skus": import("@withtyped/server").PathGuard<"/:tenantId/available-skus", {
633
+ type?: LogtoSkuType | undefined;
634
+ }, unknown, {
635
+ id: string;
636
+ name: string | null;
637
+ createdAt: Date;
638
+ defaultPriceId: string | null;
639
+ unitPrice: number | null;
640
+ type: LogtoSkuType;
641
+ quota: {
642
+ auditLogsRetentionDays?: number | null | undefined;
643
+ mauLimit?: number | null | undefined;
644
+ applicationsLimit?: number | null | undefined;
645
+ thirdPartyApplicationsLimit?: number | null | undefined;
646
+ scopesPerResourceLimit?: number | null | undefined;
647
+ socialConnectorsLimit?: number | null | undefined;
648
+ userRolesLimit?: number | null | undefined;
649
+ machineToMachineRolesLimit?: number | null | undefined;
650
+ scopesPerRoleLimit?: number | null | undefined;
651
+ hooksLimit?: number | null | undefined;
652
+ customJwtEnabled?: boolean | undefined;
653
+ subjectTokenEnabled?: boolean | undefined;
654
+ bringYourUiEnabled?: boolean | undefined;
655
+ collectUserProfileEnabled?: boolean | undefined;
656
+ tokenLimit?: number | null | undefined;
657
+ machineToMachineLimit?: number | null | undefined;
658
+ resourcesLimit?: number | null | undefined;
659
+ enterpriseSsoLimit?: number | null | undefined;
660
+ tenantMembersLimit?: number | null | undefined;
661
+ mfaEnabled?: boolean | undefined;
662
+ organizationsEnabled?: boolean | undefined;
663
+ organizationsLimit?: number | null | undefined;
664
+ securityFeaturesEnabled?: boolean | undefined;
665
+ idpInitiatedSsoEnabled?: boolean | undefined;
666
+ samlApplicationsLimit?: number | null | undefined;
667
+ };
668
+ isDefault: boolean;
669
+ updatedAt: Date;
670
+ productId: string | null;
671
+ }[]>;
413
672
  } & {
414
673
  "/tenants/:tenantId/invoices/:invoiceId/hosted-invoice-url": import("@withtyped/server").PathGuard<"/:tenantId/invoices/:invoiceId/hosted-invoice-url", unknown, unknown, {
415
674
  hostedInvoiceUrl: string;
416
675
  }>;
417
- } & {
418
- "/tenants/:tenantId/usage": import("@withtyped/server").PathGuard<"/:tenantId/usage", unknown, unknown, {
419
- activeUsers: number;
420
- cost: number;
421
- tokenUsage: number;
422
- }>;
423
676
  };
424
677
  post: {
425
- "/tenants/my/subscription/item-updates": import("@withtyped/server").PathGuard<"/my/subscription/item-updates", unknown, {
426
- usageKey: "tokenLimit" | "machineToMachineLimit" | "resourcesLimit" | "enterpriseSsoLimit" | "tenantMembersLimit" | "mfaEnabled" | "organizationsEnabled";
427
- }, {
428
- message: string;
429
- }>;
430
- } & {
431
678
  "/tenants/:tenantId/stripe-customer-portal": import("@withtyped/server").PathGuard<"/:tenantId/stripe-customer-portal", unknown, {
432
679
  callbackUrl?: string | undefined;
433
680
  }, {
@@ -453,11 +700,14 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
453
700
  post: {
454
701
  "/services/mails": import("@withtyped/server").PathGuard<"/mails", unknown, {
455
702
  data: {
456
- type: TemplateType | VerificationCodeType;
703
+ type: TemplateType;
457
704
  payload: {
458
- code?: string | undefined;
459
705
  link?: string | undefined;
460
- } & Record<string, string> & {
706
+ code?: string | undefined;
707
+ locale?: string | undefined;
708
+ } & {
709
+ [k: string]: unknown;
710
+ } & {
461
711
  senderName?: string | undefined;
462
712
  companyInformation?: string | undefined;
463
713
  appLogo?: string | undefined;
@@ -468,27 +718,30 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
468
718
  } & {
469
719
  "/services/send-sms": import("@withtyped/server").PathGuard<"/send-sms", unknown, {
470
720
  data: {
471
- type: TemplateType | VerificationCodeType;
721
+ type: TemplateType;
472
722
  to: string;
473
723
  payload: {
474
724
  code?: string | undefined;
475
725
  link?: string | undefined;
476
- } & Record<string, string>;
726
+ locale?: string | undefined;
727
+ } & {
728
+ [k: string]: unknown;
729
+ };
477
730
  };
478
731
  }, unknown>;
479
732
  } & {
480
733
  "/services/custom-jwt": import("@withtyped/server").PathGuard<"/custom-jwt", {
481
734
  isTest?: string | undefined;
482
735
  }, {
736
+ token: Record<string, Json>;
483
737
  context: Record<string, Json>;
484
- script: string;
485
738
  tokenType: LogtoJwtTokenKeyType.AccessToken;
486
- token: Record<string, Json>;
739
+ script: string;
487
740
  environmentVariables?: Record<string, string> | undefined;
488
741
  } | {
489
- script: string;
490
- tokenType: LogtoJwtTokenKeyType.ClientCredentials;
491
742
  token: Record<string, Json>;
743
+ tokenType: LogtoJwtTokenKeyType.ClientCredentials;
744
+ script: string;
492
745
  environmentVariables?: Record<string, string> | undefined;
493
746
  }, Record<string, unknown>>;
494
747
  };
@@ -513,96 +766,178 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
513
766
  patch: {};
514
767
  options: {};
515
768
  get: {
516
- "/subscription-plans": import("@withtyped/server").PathGuard<"/", unknown, unknown, {
769
+ "/skus": import("@withtyped/server").PathGuard<"/", {
770
+ type?: LogtoSkuType | undefined;
771
+ }, unknown, {
517
772
  id: string;
773
+ name: string | null;
518
774
  createdAt: Date;
519
- name: string;
775
+ defaultPriceId: string | null;
776
+ unitPrice: number | null;
777
+ type: LogtoSkuType;
778
+ quota: {
779
+ auditLogsRetentionDays?: number | null | undefined;
780
+ mauLimit?: number | null | undefined;
781
+ applicationsLimit?: number | null | undefined;
782
+ thirdPartyApplicationsLimit?: number | null | undefined;
783
+ scopesPerResourceLimit?: number | null | undefined;
784
+ socialConnectorsLimit?: number | null | undefined;
785
+ userRolesLimit?: number | null | undefined;
786
+ machineToMachineRolesLimit?: number | null | undefined;
787
+ scopesPerRoleLimit?: number | null | undefined;
788
+ hooksLimit?: number | null | undefined;
789
+ customJwtEnabled?: boolean | undefined;
790
+ subjectTokenEnabled?: boolean | undefined;
791
+ bringYourUiEnabled?: boolean | undefined;
792
+ collectUserProfileEnabled?: boolean | undefined;
793
+ tokenLimit?: number | null | undefined;
794
+ machineToMachineLimit?: number | null | undefined;
795
+ resourcesLimit?: number | null | undefined;
796
+ enterpriseSsoLimit?: number | null | undefined;
797
+ tenantMembersLimit?: number | null | undefined;
798
+ mfaEnabled?: boolean | undefined;
799
+ organizationsEnabled?: boolean | undefined;
800
+ organizationsLimit?: number | null | undefined;
801
+ securityFeaturesEnabled?: boolean | undefined;
802
+ idpInitiatedSsoEnabled?: boolean | undefined;
803
+ samlApplicationsLimit?: number | null | undefined;
804
+ };
805
+ isDefault: boolean;
520
806
  updatedAt: Date;
807
+ productId: string | null;
808
+ }[]>;
809
+ };
810
+ post: {
811
+ "/skus": import("@withtyped/server").PathGuard<"/", unknown, {
812
+ type: LogtoSkuType.AddOn;
813
+ quota: {
814
+ tokenLimit?: number | null | undefined;
815
+ machineToMachineLimit?: number | null | undefined;
816
+ resourcesLimit?: number | null | undefined;
817
+ enterpriseSsoLimit?: number | null | undefined;
818
+ hooksLimit?: number | null | undefined;
819
+ tenantMembersLimit?: number | null | undefined;
820
+ mfaEnabled?: boolean | undefined;
821
+ organizationsEnabled?: boolean | undefined;
822
+ organizationsLimit?: number | null | undefined;
823
+ securityFeaturesEnabled?: boolean | undefined;
824
+ userRolesLimit?: number | null | undefined;
825
+ machineToMachineRolesLimit?: number | null | undefined;
826
+ thirdPartyApplicationsLimit?: number | null | undefined;
827
+ samlApplicationsLimit?: number | null | undefined;
828
+ auditLogsRetentionDays?: number | null | undefined;
829
+ mauLimit?: number | null | undefined;
830
+ applicationsLimit?: number | null | undefined;
831
+ scopesPerResourceLimit?: number | null | undefined;
832
+ socialConnectorsLimit?: number | null | undefined;
833
+ scopesPerRoleLimit?: number | null | undefined;
834
+ customJwtEnabled?: boolean | undefined;
835
+ subjectTokenEnabled?: boolean | undefined;
836
+ bringYourUiEnabled?: boolean | undefined;
837
+ collectUserProfileEnabled?: boolean | undefined;
838
+ idpInitiatedSsoEnabled?: boolean | undefined;
839
+ };
840
+ isDefault?: boolean | undefined;
841
+ } | {
842
+ type: LogtoSkuType.Basic;
521
843
  quota: {
844
+ auditLogsRetentionDays: number | null;
522
845
  mauLimit: number | null;
523
- tokenLimit: number | null;
524
846
  applicationsLimit: number | null;
525
- machineToMachineLimit: number | null;
526
- resourcesLimit: number | null;
847
+ thirdPartyApplicationsLimit: number | null;
527
848
  scopesPerResourceLimit: number | null;
528
- customDomainEnabled: boolean;
529
- omniSignInEnabled: boolean;
530
- builtInEmailConnectorEnabled: boolean;
531
849
  socialConnectorsLimit: number | null;
532
- standardConnectorsLimit: number | null;
533
- rolesLimit: number | null;
850
+ userRolesLimit: number | null;
534
851
  machineToMachineRolesLimit: number | null;
535
852
  scopesPerRoleLimit: number | null;
536
853
  hooksLimit: number | null;
537
- auditLogsRetentionDays: number | null;
538
- mfaEnabled: boolean;
539
- organizationsEnabled: boolean;
540
- ssoEnabled: boolean;
541
- thirdPartyApplicationsLimit: number | null;
542
- tenantMembersLimit: number | null;
543
854
  customJwtEnabled: boolean;
544
855
  subjectTokenEnabled: boolean;
545
856
  bringYourUiEnabled: boolean;
857
+ collectUserProfileEnabled: boolean;
858
+ tokenLimit: number | null;
859
+ machineToMachineLimit: number | null;
860
+ resourcesLimit: number | null;
861
+ enterpriseSsoLimit: number | null;
862
+ tenantMembersLimit: number | null;
863
+ mfaEnabled: boolean;
864
+ organizationsEnabled: boolean;
865
+ organizationsLimit: number | null;
866
+ securityFeaturesEnabled: boolean;
867
+ idpInitiatedSsoEnabled: boolean;
868
+ samlApplicationsLimit: number | null;
546
869
  };
547
- stripeProducts: {
548
- type: "flat" | "tier1" | "tier2" | "tier3";
549
- id: string;
550
- name: string;
551
- price: {
552
- id: string;
553
- unitAmountDecimal: string;
554
- quantity?: 1 | undefined;
555
- unitAmount?: number | null | undefined;
556
- };
557
- description?: string | undefined;
558
- }[];
559
- }[]>;
560
- };
561
- post: {};
562
- put: {};
563
- delete: {};
564
- copy: {};
565
- head: {};
566
- }, "/api">>, import("@withtyped/server").RoutesWithPrefix<{
567
- patch: {};
568
- options: {};
569
- get: {
570
- "/skus": import("@withtyped/server").PathGuard<"/", {
571
- type?: LogtoSkuType | undefined;
572
- }, unknown, {
573
- type: LogtoSkuType;
870
+ addOnRelations: {
871
+ tokenLimit?: string | undefined;
872
+ machineToMachineLimit?: string | undefined;
873
+ resourcesLimit?: string | undefined;
874
+ enterpriseSsoLimit?: string | undefined;
875
+ tenantMembersLimit?: string | undefined;
876
+ mfaEnabled?: string | undefined;
877
+ organizationsLimit?: string | undefined;
878
+ securityFeaturesEnabled?: string | undefined;
879
+ };
880
+ isDefault?: boolean | undefined;
881
+ }, {
574
882
  id: string;
575
- name: string | null;
883
+ createdAt: Date;
884
+ type: LogtoSkuType;
885
+ isDefault: boolean;
886
+ updatedAt: Date;
576
887
  quota: {
888
+ auditLogsRetentionDays?: number | null | undefined;
577
889
  mauLimit?: number | null | undefined;
578
- tokenLimit?: number | null | undefined;
579
890
  applicationsLimit?: number | null | undefined;
580
- machineToMachineLimit?: number | null | undefined;
581
- resourcesLimit?: number | null | undefined;
891
+ thirdPartyApplicationsLimit?: number | null | undefined;
582
892
  scopesPerResourceLimit?: number | null | undefined;
583
893
  socialConnectorsLimit?: number | null | undefined;
894
+ userRolesLimit?: number | null | undefined;
584
895
  machineToMachineRolesLimit?: number | null | undefined;
585
896
  scopesPerRoleLimit?: number | null | undefined;
586
897
  hooksLimit?: number | null | undefined;
587
- auditLogsRetentionDays?: number | null | undefined;
588
- mfaEnabled?: boolean | undefined;
589
- organizationsEnabled?: boolean | undefined;
590
- thirdPartyApplicationsLimit?: number | null | undefined;
591
- tenantMembersLimit?: number | null | undefined;
592
898
  customJwtEnabled?: boolean | undefined;
593
899
  subjectTokenEnabled?: boolean | undefined;
594
900
  bringYourUiEnabled?: boolean | undefined;
595
- userRolesLimit?: number | null | undefined;
901
+ collectUserProfileEnabled?: boolean | undefined;
902
+ tokenLimit?: number | null | undefined;
903
+ machineToMachineLimit?: number | null | undefined;
904
+ resourcesLimit?: number | null | undefined;
596
905
  enterpriseSsoLimit?: number | null | undefined;
906
+ tenantMembersLimit?: number | null | undefined;
907
+ mfaEnabled?: boolean | undefined;
908
+ organizationsEnabled?: boolean | undefined;
909
+ organizationsLimit?: number | null | undefined;
910
+ securityFeaturesEnabled?: boolean | undefined;
911
+ idpInitiatedSsoEnabled?: boolean | undefined;
912
+ samlApplicationsLimit?: number | null | undefined;
597
913
  };
598
- createdAt: Date;
599
- updatedAt: Date;
600
- unitPrice: number | null;
601
- }[]>;
914
+ }>;
915
+ } & {
916
+ "/skus/:skuId/products": import("@withtyped/server").PathGuard<"/:skuId/products", {
917
+ isOneTime?: string | undefined;
918
+ }, {
919
+ name: string;
920
+ unitPrice: number;
921
+ }, {
922
+ productId: string;
923
+ }>;
924
+ } & {
925
+ "/skus/basic-sku-usage-add-on-relations": import("@withtyped/server").PathGuard<"/basic-sku-usage-add-on-relations", unknown, {
926
+ basicSkuId: string;
927
+ usageKey: "tokenLimit" | "machineToMachineLimit" | "resourcesLimit" | "enterpriseSsoLimit" | "hooksLimit" | "tenantMembersLimit" | "mfaEnabled" | "organizationsEnabled" | "organizationsLimit" | "securityFeaturesEnabled" | "userRolesLimit" | "machineToMachineRolesLimit" | "thirdPartyApplicationsLimit" | "samlApplicationsLimit";
928
+ addOnSkuId: string;
929
+ }, {
930
+ basicSkuId: string;
931
+ usageKey: "tokenLimit" | "machineToMachineLimit" | "resourcesLimit" | "enterpriseSsoLimit" | "hooksLimit" | "tenantMembersLimit" | "mfaEnabled" | "organizationsEnabled" | "organizationsLimit" | "securityFeaturesEnabled" | "userRolesLimit" | "machineToMachineRolesLimit" | "thirdPartyApplicationsLimit" | "samlApplicationsLimit";
932
+ addOnSkuId: string;
933
+ }>;
602
934
  };
603
- post: {};
604
935
  put: {};
605
- delete: {};
936
+ delete: {
937
+ "/skus/:skuId": import("@withtyped/server").PathGuard<"/:skuId", unknown, unknown, unknown>;
938
+ } & {
939
+ "/skus/basic-sku-usage-add-on-relations/:basicSkuId/:usageKey": import("@withtyped/server").PathGuard<"/basic-sku-usage-add-on-relations/:basicSkuId/:usageKey", unknown, unknown, unknown>;
940
+ };
606
941
  copy: {};
607
942
  head: {};
608
943
  }, "/api">>, import("@withtyped/server").RoutesWithPrefix<{
@@ -616,19 +951,18 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
616
951
  status: "open" | "complete" | "expired";
617
952
  tenantId: string | null;
618
953
  updatedAt: Date;
619
- planId: string;
620
954
  skuId: string | null;
955
+ planId: string | null;
621
956
  }>;
622
957
  };
623
958
  post: {
624
959
  "/checkout-session": import("@withtyped/server").PathGuard<"/", unknown, {
625
- planId: string;
626
960
  successCallbackUrl: string;
627
961
  tenantId?: string | undefined;
628
962
  skuId?: string | undefined;
629
963
  tenantName?: string | undefined;
630
964
  tenantTag?: TenantTag | undefined;
631
- tenantRegionName?: RegionName | undefined;
965
+ tenantRegionName?: string | undefined;
632
966
  cancelCallbackUrl?: string | undefined;
633
967
  }, {
634
968
  sessionId: string;
@@ -746,7 +1080,17 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
746
1080
  }, "/api">>, import("@withtyped/server").RoutesWithPrefix<{
747
1081
  patch: {};
748
1082
  options: {};
749
- get: {};
1083
+ get: {
1084
+ "/me/regions": import("@withtyped/server").PathGuard<"/regions", unknown, unknown, {
1085
+ regions: {
1086
+ id: string;
1087
+ name: string;
1088
+ country: string;
1089
+ isPrivate: boolean;
1090
+ tags: TenantTag[];
1091
+ }[];
1092
+ }>;
1093
+ };
750
1094
  post: {};
751
1095
  put: {};
752
1096
  delete: {
@@ -813,7 +1157,7 @@ export declare const tenantAuthRouter: import("@withtyped/server").Router<Reques
813
1157
  };
814
1158
  post: {
815
1159
  "/:tenantId/invitations": import("@withtyped/server").PathGuard<"/:tenantId/invitations", unknown, {
816
- invitee: string;
1160
+ invitee: string | string[];
817
1161
  roleName: TenantRole;
818
1162
  expiresAt?: number | undefined;
819
1163
  }, {
@@ -828,7 +1172,19 @@ export declare const tenantAuthRouter: import("@withtyped/server").Router<Reques
828
1172
  organizationId: string;
829
1173
  expiresAt: number;
830
1174
  organizationRoles: OrganizationRoleEntity[];
831
- }>;
1175
+ } | {
1176
+ id: string;
1177
+ createdAt: number;
1178
+ status: OrganizationInvitationStatus;
1179
+ tenantId: string;
1180
+ updatedAt: number;
1181
+ inviterId: string | null;
1182
+ invitee: string;
1183
+ acceptedUserId: string | null;
1184
+ organizationId: string;
1185
+ expiresAt: number;
1186
+ organizationRoles: OrganizationRoleEntity[];
1187
+ }[]>;
832
1188
  } & {
833
1189
  "/:tenantId/invitations/:invitationId/message": import("@withtyped/server").PathGuard<"/:tenantId/invitations/:invitationId/message", unknown, unknown, unknown>;
834
1190
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@logto/cloud",
3
- "version": "0.2.5-50ff8fe",
3
+ "version": "0.2.5-590fbce",
4
4
  "description": "Logto Cloud service.",
5
5
  "main": "build/index.js",
6
6
  "author": "Silverhand Inc. <contact@silverhand.io>",
@@ -21,7 +21,7 @@
21
21
  "@types/accepts": "^1.3.5",
22
22
  "@types/http-proxy": "^1.17.9",
23
23
  "@types/mime-types": "^2.1.1",
24
- "@types/node": "^20.0.0",
24
+ "@types/node": "^22.14.0",
25
25
  "@types/yargs": "^17.0.24",
26
26
  "dts-bundle-generator": "^9.3.1",
27
27
  "eslint": "^8.57.0",
@@ -29,11 +29,11 @@
29
29
  "nodemon": "^3.0.0",
30
30
  "prettier": "^3.0.0",
31
31
  "typescript": "^5.3.3",
32
- "vite-tsconfig-paths": "^4.3.1",
33
- "vitest": "^2.0.0"
32
+ "vite-tsconfig-paths": "^5.0.0",
33
+ "vitest": "^3.1.1"
34
34
  },
35
35
  "engines": {
36
- "node": "^20.9.0"
36
+ "node": "^22.14.0"
37
37
  },
38
38
  "eslintConfig": {
39
39
  "extends": "@silverhand",
@@ -49,8 +49,8 @@
49
49
  "access": "public"
50
50
  },
51
51
  "dependencies": {
52
- "@silverhand/essentials": "^2.9.1",
53
- "@withtyped/server": "^0.13.6"
52
+ "@silverhand/essentials": "^2.9.2",
53
+ "@withtyped/server": "^0.14.0"
54
54
  },
55
55
  "scripts": {
56
56
  "precommit": "lint-staged",
@@ -63,6 +63,7 @@
63
63
  "start": "NODE_ENV=production node .",
64
64
  "test": "vitest && pnpm build:lib && pnpm test:types",
65
65
  "test:types": "tsc -p tsconfig.test.types.json",
66
+ "test:only": "vitest",
66
67
  "cli": "node ./build/cli/index.js"
67
68
  }
68
69
  }