@logto/cloud 0.2.5-ab8a489 → 0.2.5-adb5eaf

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