@logto/cloud 0.2.5-c1f6f94 → 0.2.5-c450763

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 +288 -75
  2. package/package.json +2 -1
@@ -12,7 +12,12 @@ declare const availableReportableUsageKeys: readonly [
12
12
  "tenantMembersLimit",
13
13
  "mfaEnabled",
14
14
  "organizationsEnabled",
15
- "organizationsLimit"
15
+ "organizationsLimit",
16
+ "securityFeaturesEnabled",
17
+ "userRolesLimit",
18
+ "machineToMachineRolesLimit",
19
+ "thirdPartyApplicationsLimit",
20
+ "samlApplicationsLimit"
16
21
  ];
17
22
  export type ReportableUsageKey = (typeof availableReportableUsageKeys)[number];
18
23
  export type RealtimeReportableUsageKey = Exclude<ReportableUsageKey, "tokenLimit">;
@@ -34,7 +39,11 @@ declare enum TemplateType {
34
39
  /** The template for validating user permission for sensitive operations. */
35
40
  UserPermissionValidation = "UserPermissionValidation",
36
41
  /** The template for binding a new identifier to an existing account. */
37
- BindNewIdentifier = "BindNewIdentifier"
42
+ BindNewIdentifier = "BindNewIdentifier",
43
+ /** The template for sending MFA verification code. */
44
+ MfaVerification = "MfaVerification",
45
+ /** The template for binding MFA verification. */
46
+ BindMfa = "BindMfa"
38
47
  }
39
48
  declare enum OrganizationInvitationStatus {
40
49
  Pending = "Pending",
@@ -87,23 +96,45 @@ declare const Affiliates: import("@withtyped/server/lib/model/index.js").default
87
96
  id: string;
88
97
  }, "id" | "createdAt", "id" | "createdAt">;
89
98
  export type Affiliate = InferModelType<typeof Affiliates>;
90
- declare enum RegionName {
91
- EU = "EU",
92
- US = "US",
93
- AU = "AU",
94
- JP = "JP",
95
- CrescLabJP = "CRESCLAB_JP"
96
- }
97
99
  declare const publicRegionNames: readonly [
98
100
  "EU",
99
101
  "US",
100
102
  "AU",
101
103
  "JP"
102
104
  ];
105
+ /** The type of region names for the public cloud. */
106
+ export type PublicRegionName = (typeof publicRegionNames)[number];
107
+ declare enum DatabaseRegionAccessRole {
108
+ /** Instance administrator - can manage collaborators and create tenants */
109
+ Admin = "admin",
110
+ /** Collaborator user - can only create tenants in the instance */
111
+ Collaborator = "collaborator"
112
+ }
103
113
  /**
104
- * The type of region names for the public cloud.
114
+ * Data structure representing a Logto Cloud region.
105
115
  */
106
- export type PublicRegionName = (typeof publicRegionNames)[number];
116
+ export type Region = {
117
+ /**
118
+ * The unique identifier for the region.
119
+ */
120
+ id: string;
121
+ /**
122
+ * A human-readable name for the region.
123
+ */
124
+ name: string;
125
+ /**
126
+ * The country where the region is located.
127
+ */
128
+ country: string;
129
+ /**
130
+ * Indicates whether the region is private.
131
+ */
132
+ isPrivate: boolean;
133
+ /**
134
+ * Tenant tags available for selection when creating tenants in this region.
135
+ */
136
+ tags: TenantTag[];
137
+ };
107
138
  export type WithAuthContext<Context = RequestContext> = Context & {
108
139
  auth: {
109
140
  /** The ID of the authenticated subject (`sub`). */
@@ -134,7 +165,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
134
165
  body?: Json | undefined;
135
166
  bodyRaw?: Buffer | undefined;
136
167
  };
137
- }>, import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").BaseRoutes, import("@withtyped/server").RoutesWithPrefix<{
168
+ }>, import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").MergeRoutes<import("@withtyped/server").BaseRoutes, import("@withtyped/server").RoutesWithPrefix<{
138
169
  patch: {
139
170
  "/tenants/:tenantId": import("@withtyped/server").PathGuard<"/:tenantId", unknown, {
140
171
  name?: string | undefined;
@@ -167,7 +198,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
167
198
  totalExcludingTax: number | null;
168
199
  } | null | undefined;
169
200
  };
170
- regionName: RegionName;
201
+ regionName: string;
171
202
  tag: TenantTag;
172
203
  openInvoices: {
173
204
  id: string;
@@ -184,7 +215,12 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
184
215
  subscriptionId: string | null;
185
216
  hostedInvoiceUrl: string | null;
186
217
  invoicePdf: string | null;
218
+ collectionMethod: "charge_automatically" | "send_invoice" | null;
219
+ dueDate: Date | null;
187
220
  }[];
221
+ featureFlags?: {
222
+ isMultipleCustomDomainsEnabled?: boolean | undefined;
223
+ } | undefined;
188
224
  }>;
189
225
  };
190
226
  options: {};
@@ -218,7 +254,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
218
254
  totalExcludingTax: number | null;
219
255
  } | null | undefined;
220
256
  };
221
- regionName: RegionName;
257
+ regionName: string;
222
258
  tag: TenantTag;
223
259
  openInvoices: {
224
260
  id: string;
@@ -235,15 +271,20 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
235
271
  subscriptionId: string | null;
236
272
  hostedInvoiceUrl: string | null;
237
273
  invoicePdf: string | null;
274
+ collectionMethod: "charge_automatically" | "send_invoice" | null;
275
+ dueDate: Date | null;
238
276
  }[];
277
+ featureFlags?: {
278
+ isMultipleCustomDomainsEnabled?: boolean | undefined;
279
+ } | undefined;
239
280
  }[]>;
240
281
  };
241
282
  post: {
242
283
  "/tenants": import("@withtyped/server").PathGuard<"/", unknown, {
243
284
  id?: string | undefined;
244
285
  name?: string | undefined;
286
+ regionName?: string | undefined;
245
287
  tag?: TenantTag | undefined;
246
- regionName?: RegionName | undefined;
247
288
  }, {
248
289
  id: string;
249
290
  name: string;
@@ -273,7 +314,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
273
314
  totalExcludingTax: number | null;
274
315
  } | null | undefined;
275
316
  };
276
- regionName: RegionName;
317
+ regionName: string;
277
318
  tag: TenantTag;
278
319
  openInvoices: {
279
320
  id: string;
@@ -290,8 +331,23 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
290
331
  subscriptionId: string | null;
291
332
  hostedInvoiceUrl: string | null;
292
333
  invoicePdf: string | null;
334
+ collectionMethod: "charge_automatically" | "send_invoice" | null;
335
+ dueDate: Date | null;
293
336
  }[];
337
+ featureFlags?: {
338
+ isMultipleCustomDomainsEnabled?: boolean | undefined;
339
+ } | undefined;
294
340
  }>;
341
+ } & {
342
+ "/tenants/subscriptions/plan": import("@withtyped/server").PathGuard<"/subscriptions/plan", unknown, {
343
+ planId: string;
344
+ tenantIds: string[];
345
+ }, {
346
+ tenantId: string;
347
+ success: boolean;
348
+ error?: string | undefined;
349
+ updatedLineItems?: unknown[] | undefined;
350
+ }[]>;
295
351
  };
296
352
  put: {};
297
353
  delete: {
@@ -319,6 +375,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
319
375
  customJwtEnabled: boolean;
320
376
  subjectTokenEnabled: boolean;
321
377
  bringYourUiEnabled: boolean;
378
+ collectUserProfileEnabled: boolean;
322
379
  tokenLimit: number | null;
323
380
  machineToMachineLimit: number | null;
324
381
  resourcesLimit: number | null;
@@ -327,9 +384,9 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
327
384
  mfaEnabled: boolean;
328
385
  organizationsEnabled: boolean;
329
386
  organizationsLimit: number | null;
387
+ securityFeaturesEnabled: boolean;
330
388
  idpInitiatedSsoEnabled: boolean;
331
389
  samlApplicationsLimit: number | null;
332
- captchaEnabled: boolean;
333
390
  };
334
391
  planId: string;
335
392
  currentPeriodStart: Date;
@@ -357,6 +414,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
357
414
  customJwtEnabled: boolean;
358
415
  subjectTokenEnabled: boolean;
359
416
  bringYourUiEnabled: boolean;
417
+ collectUserProfileEnabled: boolean;
360
418
  machineToMachineLimit: number;
361
419
  resourcesLimit: number;
362
420
  enterpriseSsoLimit: number;
@@ -364,9 +422,9 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
364
422
  mfaEnabled: boolean;
365
423
  organizationsEnabled: boolean;
366
424
  organizationsLimit: number;
425
+ securityFeaturesEnabled: boolean;
367
426
  idpInitiatedSsoEnabled: boolean;
368
427
  samlApplicationsLimit: number;
369
- captchaEnabled: boolean;
370
428
  };
371
429
  resources: Record<string, number>;
372
430
  roles: Record<string, number>;
@@ -384,6 +442,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
384
442
  customJwtEnabled: boolean;
385
443
  subjectTokenEnabled: boolean;
386
444
  bringYourUiEnabled: boolean;
445
+ collectUserProfileEnabled: boolean;
387
446
  tokenLimit: number | null;
388
447
  machineToMachineLimit: number | null;
389
448
  resourcesLimit: number | null;
@@ -392,9 +451,9 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
392
451
  mfaEnabled: boolean;
393
452
  organizationsEnabled: boolean;
394
453
  organizationsLimit: number | null;
454
+ securityFeaturesEnabled: boolean;
395
455
  idpInitiatedSsoEnabled: boolean;
396
456
  samlApplicationsLimit: number | null;
397
- captchaEnabled: boolean;
398
457
  };
399
458
  basicQuota: {
400
459
  auditLogsRetentionDays: number | null;
@@ -410,6 +469,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
410
469
  customJwtEnabled: boolean;
411
470
  subjectTokenEnabled: boolean;
412
471
  bringYourUiEnabled: boolean;
472
+ collectUserProfileEnabled: boolean;
413
473
  tokenLimit: number | null;
414
474
  machineToMachineLimit: number | null;
415
475
  resourcesLimit: number | null;
@@ -418,9 +478,9 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
418
478
  mfaEnabled: boolean;
419
479
  organizationsEnabled: boolean;
420
480
  organizationsLimit: number | null;
481
+ securityFeaturesEnabled: boolean;
421
482
  idpInitiatedSsoEnabled: boolean;
422
483
  samlApplicationsLimit: number | null;
423
- captchaEnabled: boolean;
424
484
  };
425
485
  }>;
426
486
  };
@@ -467,6 +527,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
467
527
  customJwtEnabled: boolean;
468
528
  subjectTokenEnabled: boolean;
469
529
  bringYourUiEnabled: boolean;
530
+ collectUserProfileEnabled: boolean;
470
531
  machineToMachineLimit: number;
471
532
  resourcesLimit: number;
472
533
  enterpriseSsoLimit: number;
@@ -474,9 +535,9 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
474
535
  mfaEnabled: boolean;
475
536
  organizationsEnabled: boolean;
476
537
  organizationsLimit: number;
538
+ securityFeaturesEnabled: boolean;
477
539
  idpInitiatedSsoEnabled: boolean;
478
540
  samlApplicationsLimit: number;
479
- captchaEnabled: boolean;
480
541
  };
481
542
  resources: Record<string, number>;
482
543
  roles: Record<string, number>;
@@ -494,6 +555,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
494
555
  customJwtEnabled: boolean;
495
556
  subjectTokenEnabled: boolean;
496
557
  bringYourUiEnabled: boolean;
558
+ collectUserProfileEnabled: boolean;
497
559
  tokenLimit: number | null;
498
560
  machineToMachineLimit: number | null;
499
561
  resourcesLimit: number | null;
@@ -502,9 +564,9 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
502
564
  mfaEnabled: boolean;
503
565
  organizationsEnabled: boolean;
504
566
  organizationsLimit: number | null;
567
+ securityFeaturesEnabled: boolean;
505
568
  idpInitiatedSsoEnabled: boolean;
506
569
  samlApplicationsLimit: number | null;
507
- captchaEnabled: boolean;
508
570
  };
509
571
  basicQuota: {
510
572
  auditLogsRetentionDays: number | null;
@@ -520,6 +582,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
520
582
  customJwtEnabled: boolean;
521
583
  subjectTokenEnabled: boolean;
522
584
  bringYourUiEnabled: boolean;
585
+ collectUserProfileEnabled: boolean;
523
586
  tokenLimit: number | null;
524
587
  machineToMachineLimit: number | null;
525
588
  resourcesLimit: number | null;
@@ -528,9 +591,9 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
528
591
  mfaEnabled: boolean;
529
592
  organizationsEnabled: boolean;
530
593
  organizationsLimit: number | null;
594
+ securityFeaturesEnabled: boolean;
531
595
  idpInitiatedSsoEnabled: boolean;
532
596
  samlApplicationsLimit: number | null;
533
- captchaEnabled: boolean;
534
597
  };
535
598
  }>;
536
599
  } & {
@@ -539,44 +602,44 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
539
602
  tokenLimit: number;
540
603
  }>;
541
604
  } & {
542
- "/tenants/:tenantId/subscription/add-on-skus": import("@withtyped/server").PathGuard<"/:tenantId/subscription/add-on-skus", unknown, unknown, {
543
- tokenLimit?: {
544
- id: string;
545
- name: string | null;
546
- createdAt: Date;
547
- defaultPriceId: string | null;
548
- unitPrice: number | null;
549
- type: LogtoSkuType;
550
- quota: {
551
- auditLogsRetentionDays?: number | null | undefined;
552
- mauLimit?: number | null | undefined;
553
- applicationsLimit?: number | null | undefined;
554
- thirdPartyApplicationsLimit?: number | null | undefined;
555
- scopesPerResourceLimit?: number | null | undefined;
556
- socialConnectorsLimit?: number | null | undefined;
557
- userRolesLimit?: number | null | undefined;
558
- machineToMachineRolesLimit?: number | null | undefined;
559
- scopesPerRoleLimit?: number | null | undefined;
560
- hooksLimit?: number | null | undefined;
561
- customJwtEnabled?: boolean | undefined;
562
- subjectTokenEnabled?: boolean | undefined;
563
- bringYourUiEnabled?: boolean | undefined;
564
- tokenLimit?: number | null | undefined;
565
- machineToMachineLimit?: number | null | undefined;
566
- resourcesLimit?: number | null | undefined;
567
- enterpriseSsoLimit?: number | null | undefined;
568
- tenantMembersLimit?: number | null | undefined;
569
- mfaEnabled?: boolean | undefined;
570
- organizationsEnabled?: boolean | undefined;
571
- organizationsLimit?: number | null | undefined;
572
- idpInitiatedSsoEnabled?: boolean | undefined;
573
- samlApplicationsLimit?: number | null | undefined;
574
- captchaEnabled?: boolean | undefined;
575
- };
576
- updatedAt: Date;
577
- productId: string | null;
578
- } | undefined;
579
- }>;
605
+ "/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", {
606
+ id: string;
607
+ name: string | null;
608
+ createdAt: Date;
609
+ defaultPriceId: string | null;
610
+ unitPrice: number | null;
611
+ type: LogtoSkuType;
612
+ quota: {
613
+ auditLogsRetentionDays?: number | null | undefined;
614
+ mauLimit?: number | null | undefined;
615
+ applicationsLimit?: number | null | undefined;
616
+ thirdPartyApplicationsLimit?: number | null | undefined;
617
+ scopesPerResourceLimit?: number | null | undefined;
618
+ socialConnectorsLimit?: number | null | undefined;
619
+ userRolesLimit?: number | null | undefined;
620
+ machineToMachineRolesLimit?: number | null | undefined;
621
+ scopesPerRoleLimit?: number | null | undefined;
622
+ hooksLimit?: number | null | undefined;
623
+ customJwtEnabled?: boolean | undefined;
624
+ subjectTokenEnabled?: boolean | undefined;
625
+ bringYourUiEnabled?: boolean | undefined;
626
+ collectUserProfileEnabled?: boolean | undefined;
627
+ tokenLimit?: number | null | undefined;
628
+ machineToMachineLimit?: number | null | undefined;
629
+ resourcesLimit?: number | null | undefined;
630
+ enterpriseSsoLimit?: number | null | undefined;
631
+ tenantMembersLimit?: number | null | undefined;
632
+ mfaEnabled?: boolean | undefined;
633
+ organizationsEnabled?: boolean | undefined;
634
+ organizationsLimit?: number | null | undefined;
635
+ securityFeaturesEnabled?: boolean | undefined;
636
+ idpInitiatedSsoEnabled?: boolean | undefined;
637
+ samlApplicationsLimit?: number | null | undefined;
638
+ };
639
+ isDefault: boolean;
640
+ updatedAt: Date;
641
+ productId: string | null;
642
+ }>>>;
580
643
  } & {
581
644
  "/tenants/:tenantId/invoices": import("@withtyped/server").PathGuard<"/:tenantId/invoices", unknown, unknown, {
582
645
  invoices: {
@@ -594,6 +657,8 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
594
657
  subscriptionId: string | null;
595
658
  hostedInvoiceUrl: string | null;
596
659
  invoicePdf: string | null;
660
+ collectionMethod: "charge_automatically" | "send_invoice" | null;
661
+ dueDate: Date | null;
597
662
  planName: string | null;
598
663
  skuId?: string | null | undefined;
599
664
  }[];
@@ -622,6 +687,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
622
687
  customJwtEnabled?: boolean | undefined;
623
688
  subjectTokenEnabled?: boolean | undefined;
624
689
  bringYourUiEnabled?: boolean | undefined;
690
+ collectUserProfileEnabled?: boolean | undefined;
625
691
  tokenLimit?: number | null | undefined;
626
692
  machineToMachineLimit?: number | null | undefined;
627
693
  resourcesLimit?: number | null | undefined;
@@ -630,10 +696,11 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
630
696
  mfaEnabled?: boolean | undefined;
631
697
  organizationsEnabled?: boolean | undefined;
632
698
  organizationsLimit?: number | null | undefined;
699
+ securityFeaturesEnabled?: boolean | undefined;
633
700
  idpInitiatedSsoEnabled?: boolean | undefined;
634
701
  samlApplicationsLimit?: number | null | undefined;
635
- captchaEnabled?: boolean | undefined;
636
702
  };
703
+ isDefault: boolean;
637
704
  updatedAt: Date;
638
705
  productId: string | null;
639
706
  }[]>;
@@ -673,6 +740,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
673
740
  link?: string | undefined;
674
741
  code?: string | undefined;
675
742
  locale?: string | undefined;
743
+ uiLocales?: string | undefined;
676
744
  } & {
677
745
  [k: string]: unknown;
678
746
  } & {
@@ -692,6 +760,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
692
760
  code?: string | undefined;
693
761
  link?: string | undefined;
694
762
  locale?: string | undefined;
763
+ uiLocales?: string | undefined;
695
764
  } & {
696
765
  [k: string]: unknown;
697
766
  };
@@ -703,13 +772,13 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
703
772
  }, {
704
773
  token: Record<string, Json>;
705
774
  context: Record<string, Json>;
706
- script: string;
707
775
  tokenType: LogtoJwtTokenKeyType.AccessToken;
776
+ script: string;
708
777
  environmentVariables?: Record<string, string> | undefined;
709
778
  } | {
710
779
  token: Record<string, Json>;
711
- script: string;
712
780
  tokenType: LogtoJwtTokenKeyType.ClientCredentials;
781
+ script: string;
713
782
  environmentVariables?: Record<string, string> | undefined;
714
783
  }, Record<string, unknown>>;
715
784
  };
@@ -757,6 +826,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
757
826
  customJwtEnabled?: boolean | undefined;
758
827
  subjectTokenEnabled?: boolean | undefined;
759
828
  bringYourUiEnabled?: boolean | undefined;
829
+ collectUserProfileEnabled?: boolean | undefined;
760
830
  tokenLimit?: number | null | undefined;
761
831
  machineToMachineLimit?: number | null | undefined;
762
832
  resourcesLimit?: number | null | undefined;
@@ -765,10 +835,11 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
765
835
  mfaEnabled?: boolean | undefined;
766
836
  organizationsEnabled?: boolean | undefined;
767
837
  organizationsLimit?: number | null | undefined;
838
+ securityFeaturesEnabled?: boolean | undefined;
768
839
  idpInitiatedSsoEnabled?: boolean | undefined;
769
840
  samlApplicationsLimit?: number | null | undefined;
770
- captchaEnabled?: boolean | undefined;
771
841
  };
842
+ isDefault: boolean;
772
843
  updatedAt: Date;
773
844
  productId: string | null;
774
845
  }[]>;
@@ -786,22 +857,25 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
786
857
  mfaEnabled?: boolean | undefined;
787
858
  organizationsEnabled?: boolean | undefined;
788
859
  organizationsLimit?: number | null | undefined;
860
+ securityFeaturesEnabled?: boolean | undefined;
861
+ userRolesLimit?: number | null | undefined;
862
+ machineToMachineRolesLimit?: number | null | undefined;
863
+ thirdPartyApplicationsLimit?: number | null | undefined;
864
+ samlApplicationsLimit?: number | null | undefined;
789
865
  auditLogsRetentionDays?: number | null | undefined;
790
866
  mauLimit?: number | null | undefined;
791
867
  applicationsLimit?: number | null | undefined;
792
- thirdPartyApplicationsLimit?: number | null | undefined;
793
868
  scopesPerResourceLimit?: number | null | undefined;
794
869
  socialConnectorsLimit?: number | null | undefined;
795
- userRolesLimit?: number | null | undefined;
796
- machineToMachineRolesLimit?: number | null | undefined;
797
870
  scopesPerRoleLimit?: number | null | undefined;
798
871
  customJwtEnabled?: boolean | undefined;
799
872
  subjectTokenEnabled?: boolean | undefined;
800
873
  bringYourUiEnabled?: boolean | undefined;
874
+ collectUserProfileEnabled?: boolean | undefined;
801
875
  idpInitiatedSsoEnabled?: boolean | undefined;
802
- samlApplicationsLimit?: number | null | undefined;
803
- captchaEnabled?: boolean | undefined;
804
876
  };
877
+ id?: string | undefined;
878
+ isDefault?: boolean | undefined;
805
879
  } | {
806
880
  type: LogtoSkuType.Basic;
807
881
  quota: {
@@ -818,6 +892,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
818
892
  customJwtEnabled: boolean;
819
893
  subjectTokenEnabled: boolean;
820
894
  bringYourUiEnabled: boolean;
895
+ collectUserProfileEnabled: boolean;
821
896
  tokenLimit: number | null;
822
897
  machineToMachineLimit: number | null;
823
898
  resourcesLimit: number | null;
@@ -826,17 +901,27 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
826
901
  mfaEnabled: boolean;
827
902
  organizationsEnabled: boolean;
828
903
  organizationsLimit: number | null;
904
+ securityFeaturesEnabled: boolean;
829
905
  idpInitiatedSsoEnabled: boolean;
830
906
  samlApplicationsLimit: number | null;
831
- captchaEnabled: boolean;
832
907
  };
833
908
  addOnRelations: {
834
- tokenLimit: string;
909
+ tokenLimit?: string | undefined;
910
+ machineToMachineLimit?: string | undefined;
911
+ resourcesLimit?: string | undefined;
912
+ enterpriseSsoLimit?: string | undefined;
913
+ tenantMembersLimit?: string | undefined;
914
+ mfaEnabled?: string | undefined;
915
+ organizationsLimit?: string | undefined;
916
+ securityFeaturesEnabled?: string | undefined;
835
917
  };
918
+ id?: string | undefined;
919
+ isDefault?: boolean | undefined;
836
920
  }, {
837
921
  id: string;
838
922
  createdAt: Date;
839
923
  type: LogtoSkuType;
924
+ isDefault: boolean;
840
925
  updatedAt: Date;
841
926
  quota: {
842
927
  auditLogsRetentionDays?: number | null | undefined;
@@ -852,6 +937,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
852
937
  customJwtEnabled?: boolean | undefined;
853
938
  subjectTokenEnabled?: boolean | undefined;
854
939
  bringYourUiEnabled?: boolean | undefined;
940
+ collectUserProfileEnabled?: boolean | undefined;
855
941
  tokenLimit?: number | null | undefined;
856
942
  machineToMachineLimit?: number | null | undefined;
857
943
  resourcesLimit?: number | null | undefined;
@@ -860,9 +946,9 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
860
946
  mfaEnabled?: boolean | undefined;
861
947
  organizationsEnabled?: boolean | undefined;
862
948
  organizationsLimit?: number | null | undefined;
949
+ securityFeaturesEnabled?: boolean | undefined;
863
950
  idpInitiatedSsoEnabled?: boolean | undefined;
864
951
  samlApplicationsLimit?: number | null | undefined;
865
- captchaEnabled?: boolean | undefined;
866
952
  };
867
953
  }>;
868
954
  } & {
@@ -874,10 +960,22 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
874
960
  }, {
875
961
  productId: string;
876
962
  }>;
963
+ } & {
964
+ "/skus/basic-sku-usage-add-on-relations": import("@withtyped/server").PathGuard<"/basic-sku-usage-add-on-relations", unknown, {
965
+ basicSkuId: string;
966
+ usageKey: "tokenLimit" | "machineToMachineLimit" | "resourcesLimit" | "enterpriseSsoLimit" | "hooksLimit" | "tenantMembersLimit" | "mfaEnabled" | "organizationsEnabled" | "organizationsLimit" | "securityFeaturesEnabled" | "userRolesLimit" | "machineToMachineRolesLimit" | "thirdPartyApplicationsLimit" | "samlApplicationsLimit";
967
+ addOnSkuId: string;
968
+ }, {
969
+ basicSkuId: string;
970
+ usageKey: "tokenLimit" | "machineToMachineLimit" | "resourcesLimit" | "enterpriseSsoLimit" | "hooksLimit" | "tenantMembersLimit" | "mfaEnabled" | "organizationsEnabled" | "organizationsLimit" | "securityFeaturesEnabled" | "userRolesLimit" | "machineToMachineRolesLimit" | "thirdPartyApplicationsLimit" | "samlApplicationsLimit";
971
+ addOnSkuId: string;
972
+ }>;
877
973
  };
878
974
  put: {};
879
975
  delete: {
880
976
  "/skus/:skuId": import("@withtyped/server").PathGuard<"/:skuId", unknown, unknown, unknown>;
977
+ } & {
978
+ "/skus/basic-sku-usage-add-on-relations/:basicSkuId/:usageKey": import("@withtyped/server").PathGuard<"/basic-sku-usage-add-on-relations/:basicSkuId/:usageKey", unknown, unknown, unknown>;
881
979
  };
882
980
  copy: {};
883
981
  head: {};
@@ -903,7 +1001,7 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
903
1001
  skuId?: string | undefined;
904
1002
  tenantName?: string | undefined;
905
1003
  tenantTag?: TenantTag | undefined;
906
- tenantRegionName?: RegionName | undefined;
1004
+ tenantRegionName?: string | undefined;
907
1005
  cancelCallbackUrl?: string | undefined;
908
1006
  }, {
909
1007
  sessionId: string;
@@ -1021,7 +1119,17 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
1021
1119
  }, "/api">>, import("@withtyped/server").RoutesWithPrefix<{
1022
1120
  patch: {};
1023
1121
  options: {};
1024
- get: {};
1122
+ get: {
1123
+ "/me/regions": import("@withtyped/server").PathGuard<"/regions", unknown, unknown, {
1124
+ regions: {
1125
+ id: string;
1126
+ name: string;
1127
+ country: string;
1128
+ isPrivate: boolean;
1129
+ tags: TenantTag[];
1130
+ }[];
1131
+ }>;
1132
+ };
1025
1133
  post: {};
1026
1134
  put: {};
1027
1135
  delete: {
@@ -1029,6 +1137,111 @@ declare const router: import("@withtyped/server").Router<RequestContext, WithAut
1029
1137
  };
1030
1138
  copy: {};
1031
1139
  head: {};
1140
+ }, "/api">>, import("@withtyped/server").RoutesWithPrefix<{
1141
+ patch: {
1142
+ "/regions/:regionName/users/:userId": import("@withtyped/server").PathGuard<"/:regionName/users/:userId", unknown, {
1143
+ role: DatabaseRegionAccessRole;
1144
+ }, {
1145
+ role: DatabaseRegionAccessRole;
1146
+ userId: string;
1147
+ }>;
1148
+ };
1149
+ options: {};
1150
+ get: {
1151
+ "/regions/:regionName/users": import("@withtyped/server").PathGuard<"/:regionName/users", unknown, unknown, {
1152
+ users: {
1153
+ role: DatabaseRegionAccessRole;
1154
+ userId: string;
1155
+ }[];
1156
+ }>;
1157
+ };
1158
+ post: {
1159
+ "/regions/:regionName/users": import("@withtyped/server").PathGuard<"/:regionName/users", unknown, {
1160
+ role: DatabaseRegionAccessRole;
1161
+ userId: string;
1162
+ }, {
1163
+ role: DatabaseRegionAccessRole;
1164
+ userId: string;
1165
+ }>;
1166
+ };
1167
+ put: {};
1168
+ delete: {
1169
+ "/regions/:regionName/users/:userId": import("@withtyped/server").PathGuard<"/:regionName/users/:userId", unknown, unknown, unknown>;
1170
+ };
1171
+ copy: {};
1172
+ head: {};
1173
+ }, "/api">>, import("@withtyped/server").RoutesWithPrefix<{
1174
+ patch: {};
1175
+ options: {};
1176
+ get: {};
1177
+ post: {
1178
+ "/system-limits": import("@withtyped/server").PathGuard<"/", unknown, {
1179
+ limits: {
1180
+ applicationsLimit?: number | null | undefined;
1181
+ thirdPartyApplicationsLimit?: number | null | undefined;
1182
+ scopesPerResourceLimit?: number | null | undefined;
1183
+ socialConnectorsLimit?: number | null | undefined;
1184
+ userRolesLimit?: number | null | undefined;
1185
+ machineToMachineRolesLimit?: number | null | undefined;
1186
+ scopesPerRoleLimit?: number | null | undefined;
1187
+ hooksLimit?: number | null | undefined;
1188
+ machineToMachineLimit?: number | null | undefined;
1189
+ resourcesLimit?: number | null | undefined;
1190
+ enterpriseSsoLimit?: number | null | undefined;
1191
+ tenantMembersLimit?: number | null | undefined;
1192
+ organizationsLimit?: number | null | undefined;
1193
+ samlApplicationsLimit?: number | null | undefined;
1194
+ usersPerOrganizationLimit?: number | null | undefined;
1195
+ organizationUserRolesLimit?: number | null | undefined;
1196
+ organizationMachineToMachineRolesLimit?: number | null | undefined;
1197
+ organizationScopesLimit?: number | null | undefined;
1198
+ };
1199
+ id?: string | undefined;
1200
+ }, {
1201
+ id: string;
1202
+ createdAt: Date;
1203
+ updatedAt: Date;
1204
+ limits: {
1205
+ applicationsLimit?: number | null | undefined;
1206
+ thirdPartyApplicationsLimit?: number | null | undefined;
1207
+ scopesPerResourceLimit?: number | null | undefined;
1208
+ socialConnectorsLimit?: number | null | undefined;
1209
+ userRolesLimit?: number | null | undefined;
1210
+ machineToMachineRolesLimit?: number | null | undefined;
1211
+ scopesPerRoleLimit?: number | null | undefined;
1212
+ hooksLimit?: number | null | undefined;
1213
+ machineToMachineLimit?: number | null | undefined;
1214
+ resourcesLimit?: number | null | undefined;
1215
+ enterpriseSsoLimit?: number | null | undefined;
1216
+ tenantMembersLimit?: number | null | undefined;
1217
+ organizationsLimit?: number | null | undefined;
1218
+ samlApplicationsLimit?: number | null | undefined;
1219
+ usersPerOrganizationLimit?: number | null | undefined;
1220
+ organizationUserRolesLimit?: number | null | undefined;
1221
+ organizationMachineToMachineRolesLimit?: number | null | undefined;
1222
+ organizationScopesLimit?: number | null | undefined;
1223
+ };
1224
+ }>;
1225
+ } & {
1226
+ "/system-limits/:systemLimitId/basic-sku-relations": import("@withtyped/server").PathGuard<"/:systemLimitId/basic-sku-relations", unknown, {
1227
+ basicSkuIds: string[];
1228
+ }, {
1229
+ relations: {
1230
+ createdAt: Date;
1231
+ updatedAt: Date;
1232
+ basicSkuId: string;
1233
+ systemLimitId: string;
1234
+ }[];
1235
+ }>;
1236
+ };
1237
+ put: {};
1238
+ delete: {
1239
+ "/system-limits/:systemLimitId/basic-sku-relations": import("@withtyped/server").PathGuard<"/:systemLimitId/basic-sku-relations", unknown, {
1240
+ basicSkuIds: string[];
1241
+ }, unknown>;
1242
+ };
1243
+ copy: {};
1244
+ head: {};
1032
1245
  }, "/api">>, "/api">;
1033
1246
  export declare const tenantAuthRouter: import("@withtyped/server").Router<RequestContext, import("@withtyped/server").WithBodyContext<import("@withtyped/server").BaseContext & {
1034
1247
  request: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@logto/cloud",
3
- "version": "0.2.5-c1f6f94",
3
+ "version": "0.2.5-c450763",
4
4
  "description": "Logto Cloud service.",
5
5
  "main": "build/index.js",
6
6
  "author": "Silverhand Inc. <contact@silverhand.io>",
@@ -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
  }