@atlasauth/backend 0.15.0 → 0.16.0

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 (44) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/botid.d.ts +70 -0
  3. package/dist/botid.js +88 -0
  4. package/dist/botid.js.map +1 -0
  5. package/dist/client/action-gallery.d.ts +215 -0
  6. package/dist/client/action-gallery.js +66 -0
  7. package/dist/client/action-gallery.js.map +1 -0
  8. package/dist/client/actions.d.ts +21 -0
  9. package/dist/client/actions.js.map +1 -1
  10. package/dist/client/attack-protection.d.ts +33 -1
  11. package/dist/client/attack-protection.js.map +1 -1
  12. package/dist/client/billing-plans.d.ts +93 -0
  13. package/dist/client/billing-plans.js +31 -0
  14. package/dist/client/billing-plans.js.map +1 -1
  15. package/dist/client/custom-oauth-providers.d.ts +243 -0
  16. package/dist/client/custom-oauth-providers.js +60 -0
  17. package/dist/client/custom-oauth-providers.js.map +1 -0
  18. package/dist/client/email-templates.d.ts +1 -1
  19. package/dist/client/email-templates.js.map +1 -1
  20. package/dist/client/index.d.ts +108 -0
  21. package/dist/client/index.js +7 -0
  22. package/dist/client/index.js.map +1 -1
  23. package/dist/client/instance-security.d.ts +70 -0
  24. package/dist/client/instance-security.js +20 -0
  25. package/dist/client/instance-security.js.map +1 -1
  26. package/dist/client/oauth-clients.d.ts +29 -2
  27. package/dist/client/oauth-clients.js.map +1 -1
  28. package/dist/client/resource-servers.d.ts +22 -2
  29. package/dist/client/resource-servers.js.map +1 -1
  30. package/dist/client/risk-based-mfa.d.ts +3 -0
  31. package/dist/client/risk-based-mfa.js.map +1 -1
  32. package/dist/client/sessions.d.ts +16 -0
  33. package/dist/client/sessions.js +15 -0
  34. package/dist/client/sessions.js.map +1 -1
  35. package/dist/client/sso-connections.d.ts +83 -0
  36. package/dist/client/sso-connections.js +29 -0
  37. package/dist/client/sso-connections.js.map +1 -1
  38. package/dist/index.d.ts +3 -2
  39. package/dist/index.js +6 -1
  40. package/dist/index.js.map +1 -1
  41. package/dist/oauth-resource.d.ts +81 -1
  42. package/dist/oauth-resource.js +204 -29
  43. package/dist/oauth-resource.js.map +1 -1
  44. package/package.json +3 -3
@@ -180,6 +180,8 @@ declare function buildNamespaces(request: RequestFn): {
180
180
  id: string;
181
181
  status: "revoked";
182
182
  }>;
183
+ setCustomData(id: string, customData: Record<string, unknown> | null): Promise<import("./sessions").Session>;
184
+ updateCustomData(id: string, patch: Record<string, unknown>): Promise<import("./sessions").Session>;
183
185
  touch(id: string): Promise<import("./sessions").TouchedSession>;
184
186
  getToken(id: string, template: string): Promise<import("./sessions").SessionTemplateToken>;
185
187
  };
@@ -403,7 +405,23 @@ declare function buildNamespaces(request: RequestFn): {
403
405
  id: string;
404
406
  deleted: true;
405
407
  }>;
408
+ previewProfileMapping(id: string, body: import("./custom-oauth-providers").ProfileMappingPreviewBody): Promise<import("./custom-oauth-providers").ProfileMappingPreview>;
409
+ signingKeys(id: string): {
410
+ list(): Promise<import("./types").ListPage<import("./custom-oauth-providers").UpstreamSigningKey>>;
411
+ rotate(body?: {
412
+ alg?: "RS256" | "PS256" | "ES256";
413
+ }, idempotencyKey?: string): Promise<import("./custom-oauth-providers").UpstreamSigningKey>;
414
+ retire(kid: string): Promise<{
415
+ object: "upstream_signing_key";
416
+ kid: string;
417
+ status: "retired";
418
+ }>;
419
+ };
406
420
  samlMetadata(id: string): Promise<import("./sso-connections").SamlMetadata>;
421
+ getSamlEncryptionKey(id: string): Promise<import("./sso-connections").SamlEncryptionKey>;
422
+ createSamlEncryptionKey(id: string, idempotencyKey?: string): Promise<import("./sso-connections").SamlEncryptionKey>;
423
+ retirePreviousSamlEncryptionKey(id: string): Promise<import("./sso-connections").SamlEncryptionKey>;
424
+ deleteSamlEncryptionKey(id: string): Promise<import("./sso-connections").SamlEncryptionKey>;
407
425
  };
408
426
  scimTokens: {
409
427
  list(): Promise<import("./types").ListPage<import("./scim-tokens").ScimToken>>;
@@ -853,6 +871,35 @@ declare function buildNamespaces(request: RequestFn): {
853
871
  getBindings(trigger: import("./actions").ActionTrigger): Promise<import("./actions").ActionBindingList>;
854
872
  setBindings(trigger: import("./actions").ActionTrigger, actionIds: string[]): Promise<import("./actions").ActionBindingList>;
855
873
  };
874
+ actionGallery: {
875
+ list(filter?: import("./action-gallery").ActionGalleryFilter): Promise<import("./types").ListPage<import("./action-gallery").ActionGalleryEntry>>;
876
+ get(slug: string): Promise<import("./action-gallery").ActionGalleryDetail>;
877
+ install(slug: string, body?: import("./action-gallery").InstallTemplateBody, idempotencyKey?: string): Promise<import("./action-gallery").ActionGalleryInstallResult>;
878
+ installs(): Promise<import("./types").ListPage<import("./action-gallery").ActionGalleryInstallation>>;
879
+ update(actionId: string, body?: {
880
+ secrets?: Record<string, string>;
881
+ }): Promise<import("./action-gallery").ActionGalleryUpdateResult>;
882
+ };
883
+ actionTemplates: {
884
+ list(): Promise<import("./types").ListPage<import("./action-gallery").ActionTemplate>>;
885
+ create(body: import("./action-gallery").CreateActionTemplateBody, idempotencyKey?: string): Promise<import("./action-gallery").ActionTemplate>;
886
+ get(id: string): Promise<import("./action-gallery").ActionTemplate>;
887
+ update(id: string, body: import("./action-gallery").ActionTemplateListing): Promise<import("./action-gallery").ActionTemplate>;
888
+ delete(id: string): Promise<{
889
+ object: "action_template";
890
+ id: string;
891
+ deleted: true;
892
+ }>;
893
+ addVersion(id: string, body: import("./action-gallery").NewTemplateVersion): Promise<import("./action-gallery").ActionTemplateVersion>;
894
+ submitVersion(id: string, version: string): Promise<import("./action-gallery").ActionTemplateVersion>;
895
+ deleteVersion(id: string, version: string): Promise<{
896
+ object: "action_template_version";
897
+ version: string;
898
+ deleted: true;
899
+ }>;
900
+ publish(id: string): Promise<import("./action-gallery").ActionTemplate>;
901
+ unlist(id: string): Promise<import("./action-gallery").ActionTemplate>;
902
+ };
856
903
  billing: {
857
904
  listPlans(): Promise<import("./types").ListPage<import("./billing-plans").BillingPlan>>;
858
905
  createPlan(body: import("./billing-plans").CreateBillingPlanBody, idempotencyKey?: string): Promise<import("./billing-plans").BillingPlan>;
@@ -864,6 +911,18 @@ declare function buildNamespaces(request: RequestFn): {
864
911
  deleted: true;
865
912
  }>;
866
913
  listSubscriptions(params?: import("./billing-plans").ListSubscriptionsParams): Promise<import("./types").ListPage<import("./billing-plans").BillingSubscription>>;
914
+ getSubscription(id: string): Promise<import("./billing-plans").BillingSubscription>;
915
+ changeSubscription(id: string, body: import("./billing-plans").ChangeBillingSubscriptionBody): Promise<import("./billing-plans").BillingSubscription & {
916
+ scheduled: boolean;
917
+ }>;
918
+ cancelSubscription(id: string, body?: {
919
+ immediately?: boolean;
920
+ }): Promise<import("./billing-plans").BillingSubscription>;
921
+ restoreSubscription(id: string): Promise<import("./billing-plans").BillingSubscription>;
922
+ syncPlanEntitlements(id: string): Promise<import("./billing-plans").BillingPlan>;
923
+ getSettings(): Promise<import("./billing-plans").BillingSettings>;
924
+ updateSettings(body: import("./billing-plans").UpdateBillingSettingsBody): Promise<import("./billing-plans").BillingSettings>;
925
+ checkFeature(body: import("./billing-plans").CheckBillingFeatureBody): Promise<import("./billing-plans").BillingFeatureCheck>;
867
926
  importSubscription(body: import("./billing-plans").ImportBillingSubscriptionBody, idempotencyKey?: string): Promise<import("./billing-plans").BillingSubscription>;
868
927
  reportUsage(body: import("./billing-plans").ReportBillingUsageBody): Promise<import("./billing-plans").BillingUsageReport>;
869
928
  syncSeats(subjectType: "user" | "org", subjectId: string): Promise<import("./billing-plans").BillingSeatSync>;
@@ -976,10 +1035,21 @@ declare function buildNamespaces(request: RequestFn): {
976
1035
  data: import("./instance-security").SigningKey[];
977
1036
  }>;
978
1037
  rotateSigningKey(body?: import("./instance-security").RotateSigningKeyBody): Promise<import("./instance-security").SigningKeyRotation>;
1038
+ getSigningKeyProvider(): Promise<import("./instance-security").SigningKeyProviderSettings>;
1039
+ setSigningKeyProvider(body: import("./instance-security").SetSigningKeyProviderBody): Promise<import("./instance-security").SigningKeyProviderSettings & {
1040
+ rotation: import("./instance-security").SigningKeyRotation;
1041
+ }>;
1042
+ removeSigningKeyProvider(body?: import("./instance-security").RotateSigningKeyBody): Promise<{
1043
+ object: "signing_key_provider";
1044
+ provider: "local";
1045
+ deleted: true;
1046
+ rotation: import("./instance-security").SigningKeyRotation | null;
1047
+ }>;
979
1048
  get(): Promise<import("./instance-security").InstanceSecurity>;
980
1049
  update(body: import("./instance-security").UpdateInstanceSecurityBody): Promise<import("./instance-security").InstanceSecurityResult>;
981
1050
  setCaptchaSecret(body: {
982
1051
  secret: string;
1052
+ provider?: string;
983
1053
  }): Promise<{
984
1054
  object: "captcha_secret";
985
1055
  provider: string;
@@ -990,6 +1060,14 @@ declare function buildNamespaces(request: RequestFn): {
990
1060
  provider: string;
991
1061
  deleted: true;
992
1062
  }>;
1063
+ setWalletRpcSecret(body: {
1064
+ chain_id: number;
1065
+ url: string;
1066
+ }): Promise<{
1067
+ object: "wallet_rpc_secret";
1068
+ chain_id: number;
1069
+ set: boolean;
1070
+ }>;
993
1071
  setKerberosSecret(body: {
994
1072
  secret: string;
995
1073
  }): Promise<{
@@ -1168,6 +1246,34 @@ declare function buildNamespaces(request: RequestFn): {
1168
1246
  data: import("./connectors").ConnectorDirectoryEntry[];
1169
1247
  }>;
1170
1248
  };
1249
+ customOAuthProviders: {
1250
+ list(): Promise<import("./types").ListPage<import("./custom-oauth-providers").CustomOAuthProvider>>;
1251
+ get(id: string): Promise<import("./custom-oauth-providers").CustomOAuthProvider>;
1252
+ create(body: import("./custom-oauth-providers").CreateCustomOAuthProviderBody, idempotencyKey?: string): Promise<import("./custom-oauth-providers").CustomOAuthProvider>;
1253
+ update(id: string, body: import("./custom-oauth-providers").CustomOAuthProviderSettings, idempotencyKey?: string): Promise<import("./custom-oauth-providers").CustomOAuthProvider>;
1254
+ delete(id: string): Promise<{
1255
+ object: "custom_oauth_provider";
1256
+ id: string;
1257
+ provider_key: string;
1258
+ deleted: true;
1259
+ }>;
1260
+ discover(body: {
1261
+ issuer: string;
1262
+ discovery_url?: string;
1263
+ }): Promise<import("./custom-oauth-providers").OidcDiscoveryResult>;
1264
+ previewProfileMapping(body: import("./custom-oauth-providers").ProfileMappingPreviewBody, id?: string): Promise<import("./custom-oauth-providers").ProfileMappingPreview>;
1265
+ signingKeys(id: string): {
1266
+ list(): Promise<import("./types").ListPage<import("./custom-oauth-providers").UpstreamSigningKey>>;
1267
+ rotate(body?: {
1268
+ alg?: "RS256" | "PS256" | "ES256";
1269
+ }, idempotencyKey?: string): Promise<import("./custom-oauth-providers").UpstreamSigningKey>;
1270
+ retire(kid: string): Promise<{
1271
+ object: "upstream_signing_key";
1272
+ kid: string;
1273
+ status: "retired";
1274
+ }>;
1275
+ };
1276
+ };
1171
1277
  notifications: {
1172
1278
  send(body: import("./notifications").SendNotificationBody, idempotencyKey?: string): Promise<import("./notifications").SentNotification>;
1173
1279
  categories: {
@@ -1384,6 +1490,7 @@ export * from './email-templates';
1384
1490
  export * from './sms-templates';
1385
1491
  export * from './localizations';
1386
1492
  export * from './actions';
1493
+ export * from './action-gallery';
1387
1494
  export * from './billing-plans';
1388
1495
  export * from './messaging';
1389
1496
  export * from './import-export';
@@ -1403,6 +1510,7 @@ export * from './organization-settings-schema';
1403
1510
  export * from './email-addresses';
1404
1511
  export * from './openfga';
1405
1512
  export * from './connectors';
1513
+ export * from './custom-oauth-providers';
1406
1514
  export * from './notifications';
1407
1515
  export * from './audit-events';
1408
1516
  export * from './activity';
@@ -53,6 +53,7 @@ const email_templates_1 = require("./email-templates");
53
53
  const sms_templates_1 = require("./sms-templates");
54
54
  const localizations_1 = require("./localizations");
55
55
  const actions_1 = require("./actions");
56
+ const action_gallery_1 = require("./action-gallery");
56
57
  const billing_plans_1 = require("./billing-plans");
57
58
  const messaging_1 = require("./messaging");
58
59
  const import_export_1 = require("./import-export");
@@ -72,6 +73,7 @@ const organization_settings_schema_1 = require("./organization-settings-schema")
72
73
  const email_addresses_1 = require("./email-addresses");
73
74
  const openfga_1 = require("./openfga");
74
75
  const connectors_1 = require("./connectors");
76
+ const custom_oauth_providers_1 = require("./custom-oauth-providers");
75
77
  const notifications_1 = require("./notifications");
76
78
  const audit_events_1 = require("./audit-events");
77
79
  const activity_1 = require("./activity");
@@ -144,6 +146,8 @@ function buildNamespaces(request) {
144
146
  smsTemplates: (0, sms_templates_1.smsTemplatesResource)(request),
145
147
  localizations: (0, localizations_1.localizationsResource)(request),
146
148
  actions: (0, actions_1.actionsResource)(request),
149
+ actionGallery: (0, action_gallery_1.actionGalleryResource)(request),
150
+ actionTemplates: (0, action_gallery_1.actionTemplatesResource)(request),
147
151
  billing: (0, billing_plans_1.billingResource)(request),
148
152
  messaging: (0, messaging_1.messagingResource)(request),
149
153
  importExport: (0, import_export_1.importExportResource)(request),
@@ -169,6 +173,7 @@ function buildNamespaces(request) {
169
173
  // OpenFGA-wire ReBAC stores, models and tuples.
170
174
  openfga: (0, openfga_1.openfgaResource)(request),
171
175
  connectors: (0, connectors_1.connectorsResource)(request),
176
+ customOAuthProviders: (0, custom_oauth_providers_1.customOAuthProvidersResource)(request),
172
177
  notifications: (0, notifications_1.notificationsResource)(request),
173
178
  // The tenant's own custom audit events (distinct from Atlas's auditLogs).
174
179
  auditEvents: (0, audit_events_1.auditEventsResource)(request),
@@ -238,6 +243,7 @@ __exportStar(require("./email-templates"), exports);
238
243
  __exportStar(require("./sms-templates"), exports);
239
244
  __exportStar(require("./localizations"), exports);
240
245
  __exportStar(require("./actions"), exports);
246
+ __exportStar(require("./action-gallery"), exports);
241
247
  __exportStar(require("./billing-plans"), exports);
242
248
  __exportStar(require("./messaging"), exports);
243
249
  __exportStar(require("./import-export"), exports);
@@ -257,6 +263,7 @@ __exportStar(require("./organization-settings-schema"), exports);
257
263
  __exportStar(require("./email-addresses"), exports);
258
264
  __exportStar(require("./openfga"), exports);
259
265
  __exportStar(require("./connectors"), exports);
266
+ __exportStar(require("./custom-oauth-providers"), exports);
260
267
  __exportStar(require("./notifications"), exports);
261
268
  __exportStar(require("./audit-events"), exports);
262
269
  __exportStar(require("./activity"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
@@ -73,6 +73,43 @@ export interface SigningKey {
73
73
  role: 'main' | 'secondary';
74
74
  /** When a previous key leaves the JWKS (epoch ms); null for a current key. */
75
75
  retires_at: number | null;
76
+ /** On the current main key: `local`, or the KMS that holds its private half. */
77
+ provider?: 'local' | SigningKeyProviderKind;
78
+ }
79
+ /** The cloud key management services a signing key can live in. */
80
+ export type SigningKeyProviderKind = 'aws_kms' | 'gcp_kms' | 'azure_key_vault';
81
+ /** The instance's key management service (`GET /v1/instance/signing_key_provider`). Never carries credentials. */
82
+ export interface SigningKeyProviderSettings {
83
+ object: 'signing_key_provider';
84
+ id?: string;
85
+ provider: 'local' | SigningKeyProviderKind;
86
+ /** The non-secret settings (region, key / key ring / vault, algorithm). Null for `local`. */
87
+ config: Record<string, unknown> | null;
88
+ /** True when the current main key is in this KMS. */
89
+ active: boolean;
90
+ /** The KMS key version tokens are signed with (ARN, resource name or key id). */
91
+ key_version: string | null;
92
+ last_verified_at?: number | null;
93
+ created_at?: number;
94
+ updated_at?: number;
95
+ }
96
+ /**
97
+ * Switch signing to a key in your own KMS. Config and credentials per provider:
98
+ * - `aws_kms`: config `{ region, key_id?, alg? }`, credentials `{ access_key_id, secret_access_key, session_token? }`
99
+ * - `gcp_kms`: config `{ crypto_key, key_version? }`, credentials `{ service_account_json }` (the key file)
100
+ * - `azure_key_vault`: config `{ vault_url, key_name, key_version?, alg? }`, credentials `{ tenant_id, client_id, client_secret }`
101
+ * Without a key id / version Atlas creates a new key version in the KMS. Add
102
+ * `config.secondary` for a second key of the other algorithm (aws: `{ alg, key_id? }`;
103
+ * gcp: `{ crypto_key, key_version? }`; azure: `{ key_name, key_version?, alg }`).
104
+ */
105
+ export interface SetSigningKeyProviderBody {
106
+ provider: SigningKeyProviderKind;
107
+ config: Record<string, unknown>;
108
+ credentials: Record<string, unknown>;
109
+ /** How long the previous key stays published (default 86400, at most 2592000). */
110
+ grace_period_seconds?: number;
111
+ /** Publish only the new key now. */
112
+ emergency?: boolean;
76
113
  }
77
114
  export interface RotateSigningKeyBody {
78
115
  /** How long the previous key stays published (default 86400, at most 2592000). */
@@ -81,6 +118,8 @@ export interface RotateSigningKeyBody {
81
118
  emergency?: boolean;
82
119
  /** The new main key's algorithm; omit to keep the current one. */
83
120
  alg?: 'RS256' | 'ES256';
121
+ /** With keys in a key management service: rotate only the `main` or the `secondary` key (default both). */
122
+ key?: 'main' | 'secondary';
84
123
  }
85
124
  export interface SigningKeyRotation {
86
125
  object: 'signing_key_rotation';
@@ -89,6 +128,10 @@ export interface SigningKeyRotation {
89
128
  previous_kid: string | null;
90
129
  previous_retires_at: number | null;
91
130
  emergency: boolean;
131
+ /** Where the key lives (`local` or the key management service). */
132
+ provider?: 'local' | SigningKeyProviderKind;
133
+ /** With keys in a key management service: the current second-algorithm key, if configured. */
134
+ secondary_kid?: string | null;
92
135
  }
93
136
  export declare function instanceSecurityResource(request: RequestFn): {
94
137
  /** The published token-signing keys, newest first. */
@@ -98,11 +141,25 @@ export declare function instanceSecurityResource(request: RequestFn): {
98
141
  }>;
99
142
  /** Rotate the signing key (optionally switching between RS256 and ES256). */
100
143
  rotateSigningKey(body?: RotateSigningKeyBody): Promise<SigningKeyRotation>;
144
+ /** The key management service the signing key lives in (`local` when none). */
145
+ getSigningKeyProvider(): Promise<SigningKeyProviderSettings>;
146
+ /** Sign every token with a key in your own AWS KMS, Google Cloud KMS or Azure Key Vault. */
147
+ setSigningKeyProvider(body: SetSigningKeyProviderBody): Promise<SigningKeyProviderSettings & {
148
+ rotation: SigningKeyRotation;
149
+ }>;
150
+ /** Stop using the KMS: rotate back to a key Atlas holds and forget the credentials. */
151
+ removeSigningKeyProvider(body?: RotateSigningKeyBody): Promise<{
152
+ object: "signing_key_provider";
153
+ provider: "local";
154
+ deleted: true;
155
+ rotation: SigningKeyRotation | null;
156
+ }>;
101
157
  get(): Promise<InstanceSecurity>;
102
158
  update(body: UpdateInstanceSecurityBody): Promise<InstanceSecurityResult>;
103
159
  /** Store the captcha provider secret. Refused while the provider is `none`. */
104
160
  setCaptchaSecret(body: {
105
161
  secret: string;
162
+ provider?: string;
106
163
  }): Promise<{
107
164
  object: "captcha_secret";
108
165
  provider: string;
@@ -113,6 +170,19 @@ export declare function instanceSecurityResource(request: RequestFn): {
113
170
  provider: string;
114
171
  deleted: true;
115
172
  }>;
173
+ /**
174
+ * Store (write-only, encrypted) the wallet RPC endpoint for an EIP-155 chain
175
+ * — used by wallet token gating and the Sign in with Ethereum ENS lookup. An
176
+ * empty url removes it. The URL is never returned.
177
+ */
178
+ setWalletRpcSecret(body: {
179
+ chain_id: number;
180
+ url: string;
181
+ }): Promise<{
182
+ object: "wallet_rpc_secret";
183
+ chain_id: number;
184
+ set: boolean;
185
+ }>;
116
186
  /** Store the Kerberos/IWA trusted-proxy secret. Refused while the strategy is off. */
117
187
  setKerberosSecret(body: {
118
188
  secret: string;
@@ -12,6 +12,18 @@ function instanceSecurityResource(request) {
12
12
  rotateSigningKey(body = {}) {
13
13
  return request({ method: 'POST', path: '/v1/instance/signing_keys/rotate', body });
14
14
  },
15
+ /** The key management service the signing key lives in (`local` when none). */
16
+ getSigningKeyProvider() {
17
+ return request({ method: 'GET', path: '/v1/instance/signing_key_provider' });
18
+ },
19
+ /** Sign every token with a key in your own AWS KMS, Google Cloud KMS or Azure Key Vault. */
20
+ setSigningKeyProvider(body) {
21
+ return request({ method: 'PUT', path: '/v1/instance/signing_key_provider', body });
22
+ },
23
+ /** Stop using the KMS: rotate back to a key Atlas holds and forget the credentials. */
24
+ removeSigningKeyProvider(body = {}) {
25
+ return request({ method: 'DELETE', path: '/v1/instance/signing_key_provider', body });
26
+ },
15
27
  get() {
16
28
  return request({ method: 'GET', path: '/v1/instance/security' });
17
29
  },
@@ -25,6 +37,14 @@ function instanceSecurityResource(request) {
25
37
  deleteCaptchaSecret() {
26
38
  return request({ method: 'DELETE', path: '/v1/instance/captcha_secret' });
27
39
  },
40
+ /**
41
+ * Store (write-only, encrypted) the wallet RPC endpoint for an EIP-155 chain
42
+ * — used by wallet token gating and the Sign in with Ethereum ENS lookup. An
43
+ * empty url removes it. The URL is never returned.
44
+ */
45
+ setWalletRpcSecret(body) {
46
+ return request({ method: 'PUT', path: '/v1/instance/wallet_rpc_secret', body });
47
+ },
28
48
  /** Store the Kerberos/IWA trusted-proxy secret. Refused while the strategy is off. */
29
49
  setKerberosSecret(body) {
30
50
  return request({ method: 'PUT', path: '/v1/instance/kerberos_secret', body });
@@ -1 +1 @@
1
- {"version":3,"file":"instance-security.js","sourceRoot":"","sources":["../../src/client/instance-security.ts"],"names":[],"mappings":";;AAwGA,4DAqEC;AA7KD,uCAAgD;AAwGhD,SAAgB,wBAAwB,CAAC,OAAkB;IACzD,OAAO;QACL,sDAAsD;QACtD,eAAe;YACb,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,6EAA6E;QAC7E,gBAAgB,CAAC,OAA6B,EAAE;YAC9C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,GAAG;YACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,CAAC,IAAgC;YACrC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,+EAA+E;QAC/E,gBAAgB,CACd,IAAwB;YAExB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,mBAAmB;YACjB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC,CAAC;QAC5E,CAAC;QAED,sFAAsF;QACtF,iBAAiB,CAAC,IAAwB;YACxC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,8BAA8B,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,oBAAoB;YAClB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC,CAAC;QAC7E,CAAC;QAED,wEAAwE;QACxE,cAAc;YACZ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,iHAAiH;QACjH,iBAAiB,CAAC,OAA8B,EAAE;YAChD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,qEAAqE;QACrE,iBAAiB;YACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED;oEAC4D;QAC5D,mBAAmB,CACjB,YAAoB,EACpB,IAA+B;YAE/B,OAAO,OAAO,CAAC;gBACb,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,iCAAiC,IAAA,aAAG,EAAC,YAAY,CAAC,gBAAgB;gBACxE,IAAI;aACL,CAAC,CAAC;QACL,CAAC;QACD,sBAAsB,CACpB,YAAoB;YAEpB,OAAO,OAAO,CAAC;gBACb,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,iCAAiC,IAAA,aAAG,EAAC,YAAY,CAAC,gBAAgB;aACzE,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"instance-security.js","sourceRoot":"","sources":["../../src/client/instance-security.ts"],"names":[],"mappings":"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"}
@@ -43,9 +43,36 @@ export interface OAuthClient {
43
43
  sector_identifier_uri?: string | null;
44
44
  /** When the current secret stops authenticating (epoch ms); null = never. */
45
45
  client_secret_expires_at?: number | null;
46
+ /** `jwt` or `opaque` access tokens for this client; null = inherited from the API / instance. */
47
+ access_token_format?: AccessTokenFormat | null;
48
+ /** This client's token lifetime overrides (seconds); a null field is inherited. */
49
+ token_lifetimes?: OAuthTokenLifetimes;
46
50
  created_at: number;
47
51
  updated_at: number;
48
52
  }
53
+ /** Signed JWT access tokens, or opaque references validated by introspection. */
54
+ export type AccessTokenFormat = 'jwt' | 'opaque';
55
+ /**
56
+ * Token lifetimes in seconds. A field left out (or null) inherits the API's,
57
+ * then the instance's, then Atlas's default. Bounds: access / id token 60–86400;
58
+ * refresh token 300–31536000 (idle ≤ absolute); authorization code 10–600;
59
+ * device code 60–1800.
60
+ */
61
+ export interface OAuthTokenLifetimes {
62
+ access_token_ttl_seconds?: number | null;
63
+ id_token_ttl_seconds?: number | null;
64
+ refresh_token_absolute_ttl_seconds?: number | null;
65
+ refresh_token_idle_ttl_seconds?: number | null;
66
+ authorization_code_ttl_seconds?: number | null;
67
+ device_code_ttl_seconds?: number | null;
68
+ }
69
+ /** Access-token format and lifetimes, accepted on create and update. */
70
+ export interface OAuthClientTokenFields {
71
+ /** `jwt` or `opaque`; null inherits. */
72
+ access_token_format?: AccessTokenFormat | null;
73
+ /** Replaces the overrides; null clears them all. */
74
+ token_lifetimes?: OAuthTokenLifetimes | null;
75
+ }
49
76
  /** OIDC Core §8 subject settings, accepted on create and update. */
50
77
  export interface OAuthClientSubjectFields {
51
78
  /** `public` (default): the user id. `pairwise`: a per-sector identifier. */
@@ -120,7 +147,7 @@ export interface ClientGrant {
120
147
  created_at: number;
121
148
  updated_at: number;
122
149
  }
123
- export interface CreateOAuthClientBody extends OAuthClientLogoutFields, OAuthClientSubjectFields {
150
+ export interface CreateOAuthClientBody extends OAuthClientLogoutFields, OAuthClientSubjectFields, OAuthClientTokenFields {
124
151
  name: string;
125
152
  redirect_uris: string[];
126
153
  allowed_scopes?: string[];
@@ -131,7 +158,7 @@ export interface CreateOAuthClientBody extends OAuthClientLogoutFields, OAuthCli
131
158
  /** How long the issued secret authenticates, in seconds; omit for no expiry. */
132
159
  secret_expires_in_seconds?: number;
133
160
  }
134
- export interface UpdateOAuthClientBody extends OAuthClientLogoutFields, OAuthClientSubjectFields {
161
+ export interface UpdateOAuthClientBody extends OAuthClientLogoutFields, OAuthClientSubjectFields, OAuthClientTokenFields {
135
162
  name?: string;
136
163
  redirect_uris?: string[];
137
164
  allowed_scopes?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-clients.js","sourceRoot":"","sources":["../../src/client/oauth-clients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-clients.js","sourceRoot":"","sources":["../../src/client/oauth-clients.ts"],"names":[],"mappings":"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"}
@@ -15,10 +15,30 @@ export interface ResourceServer {
15
15
  signing_alg: 'RS256' | 'ES256' | string;
16
16
  /** RFC 9728: Atlas serves protected-resource metadata for this API. */
17
17
  publish_resource_metadata?: boolean;
18
+ /** `jwt` or `opaque` access tokens for this API; null = inherited from the client / instance. */
19
+ access_token_format?: 'jwt' | 'opaque' | null;
20
+ /** Refresh-token lifetimes for grants issued for this API (seconds); null = inherited. */
21
+ refresh_token_absolute_ttl_seconds?: number | null;
22
+ refresh_token_idle_ttl_seconds?: number | null;
23
+ /** client_ids of the confidential clients allowed to introspect this API's tokens. */
24
+ introspection_client_ids?: string[];
18
25
  created_at: number;
19
26
  updated_at: number;
20
27
  }
21
- export interface CreateResourceServerBody {
28
+ /** Token settings an API can carry (create and update). */
29
+ export interface ResourceServerTokenFields {
30
+ /** The access-token lifetime, 60–86400 seconds. */
31
+ token_ttl_seconds?: number;
32
+ /** `jwt` or `opaque`; null inherits. */
33
+ access_token_format?: 'jwt' | 'opaque' | null;
34
+ /** 300–31536000 seconds; null inherits. */
35
+ refresh_token_absolute_ttl_seconds?: number | null;
36
+ /** 300–31536000 seconds, at most the absolute lifetime; null inherits. */
37
+ refresh_token_idle_ttl_seconds?: number | null;
38
+ /** client_ids of confidential clients (e.g. this API's backend) that may introspect its tokens. */
39
+ introspection_client_ids?: string[];
40
+ }
41
+ export interface CreateResourceServerBody extends ResourceServerTokenFields {
22
42
  identifier: string;
23
43
  name: string;
24
44
  /** Each scope is a bare string or `{ value, description? }`. */
@@ -29,7 +49,7 @@ export interface CreateResourceServerBody {
29
49
  /** RFC 9728: serve protected-resource metadata for this API. */
30
50
  publish_resource_metadata?: boolean;
31
51
  }
32
- export interface UpdateResourceServerBody {
52
+ export interface UpdateResourceServerBody extends ResourceServerTokenFields {
33
53
  name?: string;
34
54
  scopes?: Array<string | ResourceServerScope>;
35
55
  token_ttl_seconds?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"resource-servers.js","sourceRoot":"","sources":["../../src/client/resource-servers.ts"],"names":[],"mappings":";;AA+CA,0DAkBC;AAjED,uCAAgD;AA+ChD,SAAgB,uBAAuB,CAAC,OAAkB;IACxD,OAAO;QACL,IAAI;YACF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,GAAG,CAAC,EAAU;YACZ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,wBAAwB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,CAAC,IAA8B;YACnC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,CAAC,EAAU,EAAE,IAA8B;YAC/C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,wBAAwB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,CAAC,EAAU;YACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resource-servers.js","sourceRoot":"","sources":["../../src/client/resource-servers.ts"],"names":[],"mappings":";;AAoEA,0DAkBC;AAtFD,uCAAgD;AAoEhD,SAAgB,uBAAuB,CAAC,OAAkB;IACxD,OAAO;QACL,IAAI;YACF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,GAAG,CAAC,EAAU;YACZ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,wBAAwB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,CAAC,IAA8B;YACnC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,CAAC,EAAU,EAAE,IAA8B;YAC/C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,wBAAwB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,CAAC,EAAU;YACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -10,6 +10,8 @@ export interface RiskWeights {
10
10
  newIp: number;
11
11
  velocity: number;
12
12
  impossibleTravel: number;
13
+ /** The account was idle past the dormant-account threshold before this sign-in. */
14
+ dormantAccount?: number;
13
15
  }
14
16
  /** Per-signal on/off toggles. A disabled signal contributes nothing. */
15
17
  export interface RiskSignalToggles {
@@ -18,6 +20,7 @@ export interface RiskSignalToggles {
18
20
  newIp: boolean;
19
21
  velocity: boolean;
20
22
  impossibleTravel: boolean;
23
+ dormantAccount?: boolean;
21
24
  }
22
25
  /**
23
26
  * Adaptive / risk-based MFA config (Auth0 "Adaptive MFA" parity). OFF by
@@ -1 +1 @@
1
- {"version":3,"file":"risk-based-mfa.js","sourceRoot":"","sources":["../../src/client/risk-based-mfa.ts"],"names":[],"mappings":";;AAoDA,oDAWC;AAfD;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,OAAkB;IACrD,OAAO;QACL,4CAA4C;QAC5C,GAAG;YACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,0EAA0E;QAC1E,MAAM,CAAC,IAA4B;YACjC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"risk-based-mfa.js","sourceRoot":"","sources":["../../src/client/risk-based-mfa.ts"],"names":[],"mappings":";;AAuDA,oDAWC;AAfD;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,OAAkB;IACrD,OAAO;QACL,4CAA4C;QAC5C,GAAG;YACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,0EAA0E;QAC1E,MAAM,CAAC,IAA4B;YACjC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -17,6 +17,8 @@ export interface Session {
17
17
  */
18
18
  idle_expires_at?: number;
19
19
  created_at: number;
20
+ /** Custom per-session data your backend (or a post_login Action) attached; null when none. */
21
+ custom_data?: Record<string, unknown> | null;
20
22
  }
21
23
  /** The session after a keep-alive {@link sessionsResource} `touch`. */
22
24
  export interface TouchedSession extends Session {
@@ -35,6 +37,8 @@ export interface CreateSessionParams {
35
37
  actor?: {
36
38
  sub: string;
37
39
  };
40
+ /** Custom per-session data to attach (a JSON object, at most 2 KB). */
41
+ custom_data?: Record<string, unknown>;
38
42
  }
39
43
  /**
40
44
  * A freshly-minted session. Unlike a listed {@link Session}, this carries the
@@ -52,6 +56,7 @@ export interface MintedSession {
52
56
  impersonated_by?: {
53
57
  sub: string;
54
58
  };
59
+ custom_data?: Record<string, unknown> | null;
55
60
  }
56
61
  /** A JWT minted from a named JWT template. */
57
62
  export interface SessionTemplateToken {
@@ -74,6 +79,17 @@ export declare function sessionsResource(request: RequestFn): {
74
79
  id: string;
75
80
  status: "revoked";
76
81
  }>;
82
+ /**
83
+ * `PUT /v1/sessions/:id/custom_data` — replace the session's custom data
84
+ * (null clears it). At most 2 KB; only an active session can be changed.
85
+ * Not for secrets: the signed-in user can read it.
86
+ */
87
+ setCustomData(id: string, customData: Record<string, unknown> | null): Promise<Session>;
88
+ /**
89
+ * `PATCH /v1/sessions/:id/custom_data` — merge keys into the session's custom
90
+ * data; a key set to null is removed.
91
+ */
92
+ updateCustomData(id: string, patch: Record<string, unknown>): Promise<Session>;
77
93
  /**
78
94
  * `POST /v1/sessions/:id/touch` — keep a session alive from your backend:
79
95
  * slides its inactivity window as if the user had just loaded a page. Never
@@ -21,6 +21,21 @@ function sessionsResource(request) {
21
21
  revoke(id) {
22
22
  return request({ method: 'POST', path: `/v1/sessions/${(0, request_1.enc)(id)}/revoke` });
23
23
  },
24
+ /**
25
+ * `PUT /v1/sessions/:id/custom_data` — replace the session's custom data
26
+ * (null clears it). At most 2 KB; only an active session can be changed.
27
+ * Not for secrets: the signed-in user can read it.
28
+ */
29
+ setCustomData(id, customData) {
30
+ return request({ method: 'PUT', path: `/v1/sessions/${(0, request_1.enc)(id)}/custom_data`, body: { custom_data: customData } });
31
+ },
32
+ /**
33
+ * `PATCH /v1/sessions/:id/custom_data` — merge keys into the session's custom
34
+ * data; a key set to null is removed.
35
+ */
36
+ updateCustomData(id, patch) {
37
+ return request({ method: 'PATCH', path: `/v1/sessions/${(0, request_1.enc)(id)}/custom_data`, body: { custom_data: patch } });
38
+ },
24
39
  /**
25
40
  * `POST /v1/sessions/:id/touch` — keep a session alive from your backend:
26
41
  * slides its inactivity window as if the user had just loaded a page. Never
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/client/sessions.ts"],"names":[],"mappings":";;AAiEA,4CAwCC;AAzGD,uCAAgD;AAiEhD,SAAgB,gBAAgB,CAAC,OAAkB;IACjD,OAAO;QACL;;;WAGG;QACH,MAAM,CAAC,MAA2B;YAChC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,wDAAwD;QACxD,IAAI,CAAC,MAA0B;YAC7B,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,GAAG,CAAC,EAAU;YACZ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,MAAM,CAAC,EAAU;YACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD;;;;;;WAMG;QACH,KAAK,CAAC,EAAU;YACd,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD;;;WAGG;QACH,QAAQ,CAAC,EAAU,EAAE,QAAgB;YACnC,OAAO,OAAO,CAAC;gBACb,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,WAAW,IAAA,aAAG,EAAC,QAAQ,CAAC,EAAE;aACxD,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/client/sessions.ts"],"names":[],"mappings":";;AAsEA,4CAuDC;AA7HD,uCAAgD;AAsEhD,SAAgB,gBAAgB,CAAC,OAAkB;IACjD,OAAO;QACL;;;WAGG;QACH,MAAM,CAAC,MAA2B;YAChC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,wDAAwD;QACxD,IAAI,CAAC,MAA0B;YAC7B,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,GAAG,CAAC,EAAU;YACZ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,MAAM,CAAC,EAAU;YACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD;;;;WAIG;QACH,aAAa,CAAC,EAAU,EAAE,UAA0C;YAClE,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;QACpH,CAAC;QACD;;;WAGG;QACH,gBAAgB,CAAC,EAAU,EAAE,KAA8B;YACzD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACjH,CAAC;QACD;;;;;;WAMG;QACH,KAAK,CAAC,EAAU;YACd,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD;;;WAGG;QACH,QAAQ,CAAC,EAAU,EAAE,QAAgB;YACnC,OAAO,OAAO,CAAC;gBACb,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,gBAAgB,IAAA,aAAG,EAAC,EAAE,CAAC,WAAW,IAAA,aAAG,EAAC,QAAQ,CAAC,EAAE;aACxD,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}