@structured-id/ui-core 1.1.0 → 1.3.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 (101) hide show
  1. package/README.md +9 -5
  2. package/dist/browser-vp/index.d.cts +0 -11
  3. package/dist/browser-vp/index.d.ts +0 -11
  4. package/dist/index.cjs +13721 -9514
  5. package/dist/index.d.cts +4362 -2375
  6. package/dist/index.d.ts +4362 -2375
  7. package/dist/index.js +13937 -9730
  8. package/package.json +3 -3
  9. package/src/browser-vp/crypto.ts +0 -1
  10. package/src/browser-vp/index.ts +0 -2
  11. package/src/browser-vp/prf.ts +0 -2
  12. package/src/browser-vp/storage.ts +0 -2
  13. package/src/browser-vp/types.ts +0 -2
  14. package/src/browser-vp/vp.ts +0 -2
  15. package/src/composables/index.ts +6 -1
  16. package/src/composables/useAccountTransport.test.ts +121 -0
  17. package/src/composables/useAccountTransport.ts +69 -0
  18. package/src/composables/useBffAuth.ts +44 -34
  19. package/src/generated/google/api/httpbody.ts +159 -0
  20. package/src/generated/google/protobuf/any.ts +326 -0
  21. package/src/generated/google/rpc/error_details.ts +1386 -0
  22. package/src/generated/google/rpc/status.ts +127 -0
  23. package/src/generated/sid/v1/account/account.ts +1 -1
  24. package/src/generated/sid/v1/admin/admin.client.ts +15 -12
  25. package/src/generated/sid/v1/admin/admin.ts +24 -89
  26. package/src/generated/sid/v1/admin/enrollment.client.ts +24 -12
  27. package/src/generated/sid/v1/admin/enrollment.ts +65 -3
  28. package/src/generated/sid/v1/admin/events.client.ts +8 -8
  29. package/src/generated/sid/v1/admin/flow.ts +1 -1
  30. package/src/generated/sid/v1/admin/keys.ts +1 -1
  31. package/src/generated/sid/v1/admin/notifications.client.ts +12 -6
  32. package/src/generated/sid/v1/admin/notifications.ts +11 -70
  33. package/src/generated/sid/v1/admin/operations.ts +20 -35
  34. package/src/generated/sid/v1/admin/organizations.client.ts +2 -2
  35. package/src/generated/sid/v1/admin/organizations.ts +15 -32
  36. package/src/generated/sid/v1/admin/provisioning.client.ts +232 -0
  37. package/src/generated/sid/v1/admin/provisioning.ts +1383 -0
  38. package/src/generated/sid/v1/admin/scopes.ts +1 -1
  39. package/src/generated/sid/v1/admin/security.client.ts +22 -24
  40. package/src/generated/sid/v1/admin/security.ts +13 -22
  41. package/src/generated/sid/v1/admin/settings.client.ts +29 -18
  42. package/src/generated/sid/v1/admin/settings.ts +2 -82
  43. package/src/generated/sid/v1/attestation/attestation.client.ts +6 -6
  44. package/src/generated/sid/v1/attestation/attestation.ts +8 -8
  45. package/src/generated/sid/v1/authn/auth.client.ts +101 -58
  46. package/src/generated/sid/v1/authn/auth.ts +842 -414
  47. package/src/generated/sid/v1/authn/flows.ts +0 -12
  48. package/src/generated/sid/v1/authn/issuer.client.ts +489 -0
  49. package/src/generated/sid/v1/authn/issuer.ts +1600 -0
  50. package/src/generated/sid/v1/authn/password_history.client.ts +57 -0
  51. package/src/generated/sid/v1/authn/password_history.ts +578 -0
  52. package/src/generated/sid/v1/authn/system_integration.client.ts +73 -0
  53. package/src/generated/sid/v1/authn/system_integration.ts +218 -0
  54. package/src/generated/sid/v1/authz/authz.ts +1498 -317
  55. package/src/generated/sid/v1/authz/forward_auth.client.ts +97 -0
  56. package/src/generated/sid/v1/authz/forward_auth.ts +79 -0
  57. package/src/generated/sid/v1/authz/governance.client.ts +2 -2
  58. package/src/generated/sid/v1/authz/governance.ts +61 -4
  59. package/src/generated/sid/v1/common/errors.ts +532 -6
  60. package/src/generated/sid/v1/events/event_stream.client.ts +2 -2
  61. package/src/generated/sid/v1/events/event_stream.ts +2 -1
  62. package/src/generated/sid/v1/identity/identity.ts +98 -58
  63. package/src/generated/sid/v1/ids/ids.ts +395 -0
  64. package/src/generated/sid/v1/machine/machine_user.ts +0 -36
  65. package/src/generated/sid/v1/machine/pat.client.ts +2 -19
  66. package/src/generated/sid/v1/machine/pat.ts +1 -186
  67. package/src/generated/sid/v1/projects/projects.client.ts +137 -19
  68. package/src/generated/sid/v1/projects/projects.ts +2105 -405
  69. package/src/generated/sid/v1/scim/scim.client.ts +248 -2
  70. package/src/generated/sid/v1/scim/scim.ts +153 -14
  71. package/src/generated/sid/v1/test/test.ts +1 -1
  72. package/src/i18n/index.ts +0 -11
  73. package/src/index.ts +36 -2
  74. package/src/package-exports.test.ts +18 -0
  75. package/src/profile/components/SidLoginForm.vue +5 -2
  76. package/src/profile/components/SidRegistrationForm.test.ts +58 -1
  77. package/src/profile/components/SidRegistrationForm.vue +118 -12
  78. package/src/profile/components/index.ts +4 -0
  79. package/src/profile/composables/index.ts +2 -1
  80. package/src/profile/composables/useAccountApi.ts +20 -7
  81. package/src/profile/composables/useAuth.test.ts +453 -0
  82. package/src/profile/composables/useAuth.ts +414 -0
  83. package/src/profile/composables/useAuthApi.opaque.test.ts +18 -0
  84. package/src/profile/composables/useAuthApi.ts +188 -20
  85. package/src/profile/composables/useEnrollmentApi.test.ts +33 -0
  86. package/src/profile/composables/useEnrollmentApi.ts +26 -0
  87. package/src/profile/composables/useIdentityApi.ts +17 -7
  88. package/src/profile/composables/useLoginSuccess.test.ts +97 -3
  89. package/src/profile/composables/useLoginSuccess.ts +80 -22
  90. package/src/profile/composables/useSecurityLevel.test.ts +10 -3
  91. package/src/profile/composables/useSecurityLevel.ts +12 -3
  92. package/src/quasar/SidPrincipalInput.vue +4 -7
  93. package/src/utils/normalizePrincipal.test.ts +19 -5
  94. package/src/utils/normalizePrincipal.ts +7 -9
  95. package/src/utils/rpcRefusal.test.ts +151 -0
  96. package/src/utils/rpcRefusal.ts +252 -0
  97. package/src/utils/validators.test.ts +9 -0
  98. package/src/utils/validators.ts +14 -2
  99. package/src/composables/useAuth.ts +0 -40
  100. package/src/profile/composables/useOpaqueAuth.test.ts +0 -290
  101. package/src/profile/composables/useOpaqueAuth.ts +0 -191
@@ -365,7 +365,7 @@ export enum ClaimSource {
365
365
  */
366
366
  STATIC = 5,
367
367
  /**
368
- * CEL expression (EE)
368
+ * CEL expression
369
369
  *
370
370
  * @generated from protobuf enum value: CLAIM_SOURCE_EXPRESSION = 6;
371
371
  */
@@ -43,7 +43,7 @@ import type { GetPasswordPolicyRequest } from "./security";
43
43
  import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
44
44
  import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
45
45
  /**
46
- * ── Password Policy (Page 10.7) ──
46
+ * ── Password Policy ──
47
47
  *
48
48
  * @generated from protobuf service sid.v1.admin.SecurityService
49
49
  */
@@ -56,7 +56,7 @@ export interface ISecurityServiceClient {
56
56
  * @generated from protobuf rpc: UpdatePasswordPolicy
57
57
  */
58
58
  updatePasswordPolicy(input: PasswordPolicy, options?: RpcOptions): UnaryCall<PasswordPolicy, PasswordPolicy>;
59
- // ── Brute Force Protection (Page 10.7) ──
59
+ // ── Brute Force Protection ──
60
60
 
61
61
  /**
62
62
  * @generated from protobuf rpc: GetBruteForceConfig
@@ -66,7 +66,7 @@ export interface ISecurityServiceClient {
66
66
  * @generated from protobuf rpc: UpdateBruteForceConfig
67
67
  */
68
68
  updateBruteForceConfig(input: BruteForceConfig, options?: RpcOptions): UnaryCall<BruteForceConfig, BruteForceConfig>;
69
- // ── Security Headers (Page 10.7) ──
69
+ // ── Security Headers ──
70
70
 
71
71
  /**
72
72
  * @generated from protobuf rpc: GetSecurityHeaders
@@ -76,7 +76,7 @@ export interface ISecurityServiceClient {
76
76
  * @generated from protobuf rpc: UpdateSecurityHeaders
77
77
  */
78
78
  updateSecurityHeaders(input: SecurityHeaders, options?: RpcOptions): UnaryCall<SecurityHeaders, SecurityHeaders>;
79
- // ── Rate Limits (Page 17.1) ──
79
+ // ── Rate Limits ──
80
80
 
81
81
  /**
82
82
  * @generated from protobuf rpc: GetRateLimitConfig
@@ -86,7 +86,7 @@ export interface ISecurityServiceClient {
86
86
  * @generated from protobuf rpc: GetRateLimitDashboard
87
87
  */
88
88
  getRateLimitDashboard(input: GetRateLimitDashboardRequest, options?: RpcOptions): UnaryCall<GetRateLimitDashboardRequest, RateLimitDashboard>;
89
- // ── Anomaly Rules (Page 17.2) ──
89
+ // ── Anomaly Rules ──
90
90
 
91
91
  /**
92
92
  * @generated from protobuf rpc: ListAnomalyRules
@@ -96,7 +96,7 @@ export interface ISecurityServiceClient {
96
96
  * @generated from protobuf rpc: GetAnomalyEventLog
97
97
  */
98
98
  getAnomalyEventLog(input: GetAnomalyEventLogRequest, options?: RpcOptions): UnaryCall<GetAnomalyEventLogRequest, AnomalyEventLog>;
99
- // ── CAPTCHA (Page 17.3) ──
99
+ // ── CAPTCHA ──
100
100
 
101
101
  /**
102
102
  * @generated from protobuf rpc: GetCaptchaConfig
@@ -110,7 +110,7 @@ export interface ISecurityServiceClient {
110
110
  * @generated from protobuf rpc: TestCaptchaProvider
111
111
  */
112
112
  testCaptchaProvider(input: TestCaptchaProviderRequest, options?: RpcOptions): UnaryCall<TestCaptchaProviderRequest, TestCaptchaProviderResponse>;
113
- // ── Security Policy (Page 17.4) ──
113
+ // ── Security Policy ──
114
114
 
115
115
  /**
116
116
  * @generated from protobuf rpc: GetSecurityPolicy
@@ -135,7 +135,7 @@ export interface ISecurityServiceClient {
135
135
  * @generated from protobuf rpc: EvaluateEnforcement
136
136
  */
137
137
  evaluateEnforcement(input: EvaluateEnforcementRequest, options?: RpcOptions): UnaryCall<EvaluateEnforcementRequest, EvaluateEnforcementResponse>;
138
- // ── Network Policy (Page 17.6) ──
138
+ // ── Network Policy ──
139
139
 
140
140
  /**
141
141
  * @generated from protobuf rpc: GetNetworkPolicy
@@ -145,7 +145,7 @@ export interface ISecurityServiceClient {
145
145
  * @generated from protobuf rpc: UpdateNetworkPolicy
146
146
  */
147
147
  updateNetworkPolicy(input: NetworkPolicy, options?: RpcOptions): UnaryCall<NetworkPolicy, NetworkPolicy>;
148
- // ── Breach Detection (Page 17.7) ──
148
+ // ── Breach Detection ──
149
149
 
150
150
  /**
151
151
  * @generated from protobuf rpc: GetBreachDetectionConfig
@@ -155,11 +155,10 @@ export interface ISecurityServiceClient {
155
155
  * @generated from protobuf rpc: UpdateBreachDetectionConfig
156
156
  */
157
157
  updateBreachDetectionConfig(input: BreachDetectionConfig, options?: RpcOptions): UnaryCall<BreachDetectionConfig, BreachDetectionConfig>;
158
- // ── Data Integrity (Page 17.8) ──
158
+ // ── Data Integrity ──
159
159
 
160
160
  /**
161
- * Run integrity verification across all layers.
162
- * CE: audit chain + graph consistency. EE: all 5 layers.
161
+ * Run integrity verification across the layers this server checks.
163
162
  *
164
163
  * @generated from protobuf rpc: RunIntegrityCheck
165
164
  */
@@ -187,7 +186,7 @@ export interface ISecurityServiceClient {
187
186
  removeIpAllowlistEntry(input: RemoveIpAllowlistEntryRequest, options?: RpcOptions): UnaryCall<RemoveIpAllowlistEntryRequest, IpAllowlistResponse>;
188
187
  }
189
188
  /**
190
- * ── Password Policy (Page 10.7) ──
189
+ * ── Password Policy ──
191
190
  *
192
191
  * @generated from protobuf service sid.v1.admin.SecurityService
193
192
  */
@@ -211,7 +210,7 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
211
210
  const method = this.methods[1], opt = this._transport.mergeOptions(options);
212
211
  return stackIntercept<PasswordPolicy, PasswordPolicy>("unary", this._transport, method, opt, input);
213
212
  }
214
- // ── Brute Force Protection (Page 10.7) ──
213
+ // ── Brute Force Protection ──
215
214
 
216
215
  /**
217
216
  * @generated from protobuf rpc: GetBruteForceConfig
@@ -227,7 +226,7 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
227
226
  const method = this.methods[3], opt = this._transport.mergeOptions(options);
228
227
  return stackIntercept<BruteForceConfig, BruteForceConfig>("unary", this._transport, method, opt, input);
229
228
  }
230
- // ── Security Headers (Page 10.7) ──
229
+ // ── Security Headers ──
231
230
 
232
231
  /**
233
232
  * @generated from protobuf rpc: GetSecurityHeaders
@@ -243,7 +242,7 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
243
242
  const method = this.methods[5], opt = this._transport.mergeOptions(options);
244
243
  return stackIntercept<SecurityHeaders, SecurityHeaders>("unary", this._transport, method, opt, input);
245
244
  }
246
- // ── Rate Limits (Page 17.1) ──
245
+ // ── Rate Limits ──
247
246
 
248
247
  /**
249
248
  * @generated from protobuf rpc: GetRateLimitConfig
@@ -259,7 +258,7 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
259
258
  const method = this.methods[7], opt = this._transport.mergeOptions(options);
260
259
  return stackIntercept<GetRateLimitDashboardRequest, RateLimitDashboard>("unary", this._transport, method, opt, input);
261
260
  }
262
- // ── Anomaly Rules (Page 17.2) ──
261
+ // ── Anomaly Rules ──
263
262
 
264
263
  /**
265
264
  * @generated from protobuf rpc: ListAnomalyRules
@@ -275,7 +274,7 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
275
274
  const method = this.methods[9], opt = this._transport.mergeOptions(options);
276
275
  return stackIntercept<GetAnomalyEventLogRequest, AnomalyEventLog>("unary", this._transport, method, opt, input);
277
276
  }
278
- // ── CAPTCHA (Page 17.3) ──
277
+ // ── CAPTCHA ──
279
278
 
280
279
  /**
281
280
  * @generated from protobuf rpc: GetCaptchaConfig
@@ -298,7 +297,7 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
298
297
  const method = this.methods[12], opt = this._transport.mergeOptions(options);
299
298
  return stackIntercept<TestCaptchaProviderRequest, TestCaptchaProviderResponse>("unary", this._transport, method, opt, input);
300
299
  }
301
- // ── Security Policy (Page 17.4) ──
300
+ // ── Security Policy ──
302
301
 
303
302
  /**
304
303
  * @generated from protobuf rpc: GetSecurityPolicy
@@ -335,7 +334,7 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
335
334
  const method = this.methods[16], opt = this._transport.mergeOptions(options);
336
335
  return stackIntercept<EvaluateEnforcementRequest, EvaluateEnforcementResponse>("unary", this._transport, method, opt, input);
337
336
  }
338
- // ── Network Policy (Page 17.6) ──
337
+ // ── Network Policy ──
339
338
 
340
339
  /**
341
340
  * @generated from protobuf rpc: GetNetworkPolicy
@@ -351,7 +350,7 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
351
350
  const method = this.methods[18], opt = this._transport.mergeOptions(options);
352
351
  return stackIntercept<NetworkPolicy, NetworkPolicy>("unary", this._transport, method, opt, input);
353
352
  }
354
- // ── Breach Detection (Page 17.7) ──
353
+ // ── Breach Detection ──
355
354
 
356
355
  /**
357
356
  * @generated from protobuf rpc: GetBreachDetectionConfig
@@ -367,11 +366,10 @@ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInf
367
366
  const method = this.methods[20], opt = this._transport.mergeOptions(options);
368
367
  return stackIntercept<BreachDetectionConfig, BreachDetectionConfig>("unary", this._transport, method, opt, input);
369
368
  }
370
- // ── Data Integrity (Page 17.8) ──
369
+ // ── Data Integrity ──
371
370
 
372
371
  /**
373
- * Run integrity verification across all layers.
374
- * CE: audit chain + graph consistency. EE: all 5 layers.
372
+ * Run integrity verification across the layers this server checks.
375
373
  *
376
374
  * @generated from protobuf rpc: RunIntegrityCheck
377
375
  */
@@ -314,13 +314,12 @@ export interface AnomalyRule {
314
314
  */
315
315
  enabled: boolean;
316
316
  /**
317
+ * Contribution of the rule to the risk score (0-100). Read-only where the
318
+ * server does not let administrators tune rules.
319
+ *
317
320
  * @generated from protobuf field: int32 weight = 6
318
321
  */
319
- weight: number; // CE: fixed, EE: configurable
320
- /**
321
- * @generated from protobuf field: string tier = 7
322
- */
323
- tier: string; // "ce" or "ee"
322
+ weight: number;
324
323
  }
325
324
  /**
326
325
  * @generated from protobuf message sid.v1.admin.ListAnomalyRulesResponse
@@ -462,9 +461,8 @@ export interface TestCaptchaProviderResponse {
462
461
  // ══════════════════════════════════════════════════════════════════════════
463
462
 
464
463
  /**
465
- * Full org-level security policy response.
466
- * CE: returns hardcoded values (read-only).
467
- * EE: returns configurable stored policy.
464
+ * Full org-level security policy response: the stored policy, or the
465
+ * server's fixed baseline when it is not configurable (`read_only`).
468
466
  *
469
467
  * @generated from protobuf message sid.v1.admin.SecurityPolicyResponse
470
468
  */
@@ -546,7 +544,7 @@ export interface SecurityPolicyResponse {
546
544
  */
547
545
  network?: NetworkPolicy;
548
546
  /**
549
- * Whether policy is configurable (false for CE).
547
+ * Whether the policy is the server's fixed baseline and cannot be changed.
550
548
  *
551
549
  * @generated from protobuf field: bool read_only = 17
552
550
  */
@@ -753,8 +751,9 @@ export interface NetworkPolicy {
753
751
  */
754
752
  export interface RunIntegrityCheckRequest {
755
753
  /**
756
- * Which layers to check (empty = all available).
757
- * CE: "audit_chain", "graph_consistency". Others return pass with 0 entities.
754
+ * Which layers to check (empty = all the server checks), e.g.
755
+ * "audit_chain", "graph_consistency". A layer the server does not check
756
+ * returns pass with 0 entities.
758
757
  *
759
758
  * @generated from protobuf field: repeated string layers = 1
760
759
  */
@@ -1109,7 +1108,7 @@ export enum NetworkViolationReaction {
1109
1108
  */
1110
1109
  UNSPECIFIED = 0,
1111
1110
  /**
1112
- * Deny login immediately. Default for CE.
1111
+ * Deny login immediately. The default.
1113
1112
  *
1114
1113
  * @generated from protobuf enum value: NETWORK_VIOLATION_REACTION_BLOCK = 1;
1115
1114
  */
@@ -1121,7 +1120,7 @@ export enum NetworkViolationReaction {
1121
1120
  */
1122
1121
  STEP_UP = 2,
1123
1122
  /**
1124
- * Allow but trigger alert to admin (EE, audit mode).
1123
+ * Allow but trigger alert to admin (audit mode).
1125
1124
  *
1126
1125
  * @generated from protobuf enum value: NETWORK_VIOLATION_REACTION_ALERT = 3;
1127
1126
  */
@@ -2239,8 +2238,7 @@ class AnomalyRule$Type extends MessageType<AnomalyRule> {
2239
2238
  { no: 3, name: "description", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
2240
2239
  { no: 4, name: "type", kind: "enum", T: () => ["sid.v1.admin.AnomalyRuleType", AnomalyRuleType, "ANOMALY_RULE_TYPE_"] },
2241
2240
  { no: 5, name: "enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
2242
- { no: 6, name: "weight", kind: "scalar", T: 5 /*ScalarType.INT32*/ },
2243
- { no: 7, name: "tier", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
2241
+ { no: 6, name: "weight", kind: "scalar", T: 5 /*ScalarType.INT32*/ }
2244
2242
  ]);
2245
2243
  }
2246
2244
  create(value?: PartialMessage<AnomalyRule>): AnomalyRule {
@@ -2251,7 +2249,6 @@ class AnomalyRule$Type extends MessageType<AnomalyRule> {
2251
2249
  message.type = 0;
2252
2250
  message.enabled = false;
2253
2251
  message.weight = 0;
2254
- message.tier = "";
2255
2252
  if (value !== undefined)
2256
2253
  reflectionMergePartial<AnomalyRule>(this, message, value);
2257
2254
  return message;
@@ -2279,9 +2276,6 @@ class AnomalyRule$Type extends MessageType<AnomalyRule> {
2279
2276
  case /* int32 weight */ 6:
2280
2277
  message.weight = reader.int32();
2281
2278
  break;
2282
- case /* string tier */ 7:
2283
- message.tier = reader.string();
2284
- break;
2285
2279
  default:
2286
2280
  let u = options.readUnknownField;
2287
2281
  if (u === "throw")
@@ -2312,9 +2306,6 @@ class AnomalyRule$Type extends MessageType<AnomalyRule> {
2312
2306
  /* int32 weight = 6; */
2313
2307
  if (message.weight !== 0)
2314
2308
  writer.tag(6, WireType.Varint).int32(message.weight);
2315
- /* string tier = 7; */
2316
- if (message.tier !== "")
2317
- writer.tag(7, WireType.LengthDelimited).string(message.tier);
2318
2309
  let u = options.writeUnknownFields;
2319
2310
  if (u !== false)
2320
2311
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -21,7 +21,6 @@ import type { SetTranslationOverrideRequest } from "./settings";
21
21
  import type { ListTranslationOverridesResponse } from "./settings";
22
22
  import type { ListTranslationOverridesRequest } from "./settings";
23
23
  import type { LocalizationSettings } from "./settings";
24
- import type { TestEmailResponse } from "./settings";
25
24
  import type { EmailSettings } from "./settings";
26
25
  import type { Empty } from "../../../google/protobuf/empty";
27
26
  import type { UpdateLoginSettingsRequest } from "./settings";
@@ -38,7 +37,7 @@ import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
38
37
  // ────────────────────────────────────────────────────────────────────────────
39
38
 
40
39
  /**
41
- * ── General Settings (Page 10.1) ──
40
+ * ── General Settings ──
42
41
  *
43
42
  * @generated from protobuf service sid.v1.admin.RealmService
44
43
  */
@@ -51,7 +50,7 @@ export interface IRealmServiceClient {
51
50
  * @generated from protobuf rpc: UpdateRealm
52
51
  */
53
52
  updateRealm(input: UpdateRealmRequest, options?: RpcOptions): UnaryCall<UpdateRealmRequest, RealmSettings>;
54
- // ── Login Configuration (Page 10.2) ──
53
+ // ── Login Configuration ──
55
54
 
56
55
  /**
57
56
  * @generated from protobuf rpc: GetLoginSettings
@@ -61,7 +60,7 @@ export interface IRealmServiceClient {
61
60
  * @generated from protobuf rpc: UpdateLoginSettings
62
61
  */
63
62
  updateLoginSettings(input: UpdateLoginSettingsRequest, options?: RpcOptions): UnaryCall<UpdateLoginSettingsRequest, LoginSettings>;
64
- // ── Email Configuration (Page 10.3) ──
63
+ // ── Email Configuration ──
65
64
 
66
65
  /**
67
66
  * @generated from protobuf rpc: GetEmailSettings
@@ -72,10 +71,16 @@ export interface IRealmServiceClient {
72
71
  */
73
72
  updateEmailSettings(input: EmailSettings, options?: RpcOptions): UnaryCall<EmailSettings, EmailSettings>;
74
73
  /**
74
+ * Connect to the configured email provider and authenticate, sending
75
+ * nothing. Succeeds when the provider accepts the connection. No provider
76
+ * configured is FEATURE_NOT_CONFIGURED; a stored configuration that cannot
77
+ * be used is INVALID_STATE; a provider that refuses or does not answer is
78
+ * DEPENDENCY_UNAVAILABLE with a RetryInfo delay.
79
+ *
75
80
  * @generated from protobuf rpc: TestEmailConnection
76
81
  */
77
- testEmailConnection(input: Empty, options?: RpcOptions): UnaryCall<Empty, TestEmailResponse>;
78
- // ── Localization (Page 10.5) ──
82
+ testEmailConnection(input: Empty, options?: RpcOptions): UnaryCall<Empty, Empty>;
83
+ // ── Localization ──
79
84
 
80
85
  /**
81
86
  * @generated from protobuf rpc: GetLocalizationSettings
@@ -97,7 +102,7 @@ export interface IRealmServiceClient {
97
102
  * @generated from protobuf rpc: DeleteTranslationOverride
98
103
  */
99
104
  deleteTranslationOverride(input: DeleteTranslationOverrideRequest, options?: RpcOptions): UnaryCall<DeleteTranslationOverrideRequest, Empty>;
100
- // ── Import / Export (Page 10.10) ──
105
+ // ── Import / Export ──
101
106
 
102
107
  /**
103
108
  * @generated from protobuf rpc: ExportRealm
@@ -111,7 +116,7 @@ export interface IRealmServiceClient {
111
116
  * @generated from protobuf rpc: PreviewImport
112
117
  */
113
118
  previewImport(input: ImportRealmRequest, options?: RpcOptions): UnaryCall<ImportRealmRequest, ImportPreviewResponse>;
114
- // ── Session Configuration (Page 10.8) ──
119
+ // ── Session Configuration ──
115
120
 
116
121
  /**
117
122
  * @generated from protobuf rpc: GetSessionConfig
@@ -121,7 +126,7 @@ export interface IRealmServiceClient {
121
126
  * @generated from protobuf rpc: UpdateSessionConfig
122
127
  */
123
128
  updateSessionConfig(input: SessionConfig, options?: RpcOptions): UnaryCall<SessionConfig, SessionConfig>;
124
- // ── Token Configuration (Page 10.8) ──
129
+ // ── Token Configuration ──
125
130
 
126
131
  /**
127
132
  * @generated from protobuf rpc: GetTokenConfig
@@ -137,7 +142,7 @@ export interface IRealmServiceClient {
137
142
  // ────────────────────────────────────────────────────────────────────────────
138
143
 
139
144
  /**
140
- * ── General Settings (Page 10.1) ──
145
+ * ── General Settings ──
141
146
  *
142
147
  * @generated from protobuf service sid.v1.admin.RealmService
143
148
  */
@@ -161,7 +166,7 @@ export class RealmServiceClient implements IRealmServiceClient, ServiceInfo {
161
166
  const method = this.methods[1], opt = this._transport.mergeOptions(options);
162
167
  return stackIntercept<UpdateRealmRequest, RealmSettings>("unary", this._transport, method, opt, input);
163
168
  }
164
- // ── Login Configuration (Page 10.2) ──
169
+ // ── Login Configuration ──
165
170
 
166
171
  /**
167
172
  * @generated from protobuf rpc: GetLoginSettings
@@ -177,7 +182,7 @@ export class RealmServiceClient implements IRealmServiceClient, ServiceInfo {
177
182
  const method = this.methods[3], opt = this._transport.mergeOptions(options);
178
183
  return stackIntercept<UpdateLoginSettingsRequest, LoginSettings>("unary", this._transport, method, opt, input);
179
184
  }
180
- // ── Email Configuration (Page 10.3) ──
185
+ // ── Email Configuration ──
181
186
 
182
187
  /**
183
188
  * @generated from protobuf rpc: GetEmailSettings
@@ -194,13 +199,19 @@ export class RealmServiceClient implements IRealmServiceClient, ServiceInfo {
194
199
  return stackIntercept<EmailSettings, EmailSettings>("unary", this._transport, method, opt, input);
195
200
  }
196
201
  /**
202
+ * Connect to the configured email provider and authenticate, sending
203
+ * nothing. Succeeds when the provider accepts the connection. No provider
204
+ * configured is FEATURE_NOT_CONFIGURED; a stored configuration that cannot
205
+ * be used is INVALID_STATE; a provider that refuses or does not answer is
206
+ * DEPENDENCY_UNAVAILABLE with a RetryInfo delay.
207
+ *
197
208
  * @generated from protobuf rpc: TestEmailConnection
198
209
  */
199
- testEmailConnection(input: Empty, options?: RpcOptions): UnaryCall<Empty, TestEmailResponse> {
210
+ testEmailConnection(input: Empty, options?: RpcOptions): UnaryCall<Empty, Empty> {
200
211
  const method = this.methods[6], opt = this._transport.mergeOptions(options);
201
- return stackIntercept<Empty, TestEmailResponse>("unary", this._transport, method, opt, input);
212
+ return stackIntercept<Empty, Empty>("unary", this._transport, method, opt, input);
202
213
  }
203
- // ── Localization (Page 10.5) ──
214
+ // ── Localization ──
204
215
 
205
216
  /**
206
217
  * @generated from protobuf rpc: GetLocalizationSettings
@@ -237,7 +248,7 @@ export class RealmServiceClient implements IRealmServiceClient, ServiceInfo {
237
248
  const method = this.methods[11], opt = this._transport.mergeOptions(options);
238
249
  return stackIntercept<DeleteTranslationOverrideRequest, Empty>("unary", this._transport, method, opt, input);
239
250
  }
240
- // ── Import / Export (Page 10.10) ──
251
+ // ── Import / Export ──
241
252
 
242
253
  /**
243
254
  * @generated from protobuf rpc: ExportRealm
@@ -260,7 +271,7 @@ export class RealmServiceClient implements IRealmServiceClient, ServiceInfo {
260
271
  const method = this.methods[14], opt = this._transport.mergeOptions(options);
261
272
  return stackIntercept<ImportRealmRequest, ImportPreviewResponse>("unary", this._transport, method, opt, input);
262
273
  }
263
- // ── Session Configuration (Page 10.8) ──
274
+ // ── Session Configuration ──
264
275
 
265
276
  /**
266
277
  * @generated from protobuf rpc: GetSessionConfig
@@ -276,7 +287,7 @@ export class RealmServiceClient implements IRealmServiceClient, ServiceInfo {
276
287
  const method = this.methods[16], opt = this._transport.mergeOptions(options);
277
288
  return stackIntercept<SessionConfig, SessionConfig>("unary", this._transport, method, opt, input);
278
289
  }
279
- // ── Token Configuration (Page 10.8) ──
290
+ // ── Token Configuration ──
280
291
 
281
292
  /**
282
293
  * @generated from protobuf rpc: GetTokenConfig
@@ -254,10 +254,6 @@ export interface Feature {
254
254
  * @generated from protobuf field: bool enabled = 4
255
255
  */
256
256
  enabled: boolean;
257
- /**
258
- * @generated from protobuf field: string tier = 5
259
- */
260
- tier: string; // "ce", "ee", "saas"
261
257
  }
262
258
  /**
263
259
  * @generated from protobuf message sid.v1.admin.ListFeaturesResponse
@@ -386,19 +382,6 @@ export interface EmailSettings {
386
382
  */
387
383
  xoauth2TokenEndpoint: string;
388
384
  }
389
- /**
390
- * @generated from protobuf message sid.v1.admin.TestEmailResponse
391
- */
392
- export interface TestEmailResponse {
393
- /**
394
- * @generated from protobuf field: bool success = 1
395
- */
396
- success: boolean;
397
- /**
398
- * @generated from protobuf field: string error_message = 2
399
- */
400
- errorMessage: string;
401
- }
402
385
  // ── Localization messages ──
403
386
 
404
387
  /**
@@ -1392,8 +1375,7 @@ class Feature$Type extends MessageType<Feature> {
1392
1375
  { no: 1, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
1393
1376
  { no: 2, name: "display_name", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
1394
1377
  { no: 3, name: "description", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
1395
- { no: 4, name: "enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
1396
- { no: 5, name: "tier", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
1378
+ { no: 4, name: "enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
1397
1379
  ]);
1398
1380
  }
1399
1381
  create(value?: PartialMessage<Feature>): Feature {
@@ -1402,7 +1384,6 @@ class Feature$Type extends MessageType<Feature> {
1402
1384
  message.displayName = "";
1403
1385
  message.description = "";
1404
1386
  message.enabled = false;
1405
- message.tier = "";
1406
1387
  if (value !== undefined)
1407
1388
  reflectionMergePartial<Feature>(this, message, value);
1408
1389
  return message;
@@ -1424,9 +1405,6 @@ class Feature$Type extends MessageType<Feature> {
1424
1405
  case /* bool enabled */ 4:
1425
1406
  message.enabled = reader.bool();
1426
1407
  break;
1427
- case /* string tier */ 5:
1428
- message.tier = reader.string();
1429
- break;
1430
1408
  default:
1431
1409
  let u = options.readUnknownField;
1432
1410
  if (u === "throw")
@@ -1451,9 +1429,6 @@ class Feature$Type extends MessageType<Feature> {
1451
1429
  /* bool enabled = 4; */
1452
1430
  if (message.enabled !== false)
1453
1431
  writer.tag(4, WireType.Varint).bool(message.enabled);
1454
- /* string tier = 5; */
1455
- if (message.tier !== "")
1456
- writer.tag(5, WireType.LengthDelimited).string(message.tier);
1457
1432
  let u = options.writeUnknownFields;
1458
1433
  if (u !== false)
1459
1434
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -1726,61 +1701,6 @@ class EmailSettings$Type extends MessageType<EmailSettings> {
1726
1701
  */
1727
1702
  export const EmailSettings = new EmailSettings$Type();
1728
1703
  // @generated message type with reflection information, may provide speed optimized methods
1729
- class TestEmailResponse$Type extends MessageType<TestEmailResponse> {
1730
- constructor() {
1731
- super("sid.v1.admin.TestEmailResponse", [
1732
- { no: 1, name: "success", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
1733
- { no: 2, name: "error_message", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
1734
- ]);
1735
- }
1736
- create(value?: PartialMessage<TestEmailResponse>): TestEmailResponse {
1737
- const message = globalThis.Object.create((this.messagePrototype!));
1738
- message.success = false;
1739
- message.errorMessage = "";
1740
- if (value !== undefined)
1741
- reflectionMergePartial<TestEmailResponse>(this, message, value);
1742
- return message;
1743
- }
1744
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TestEmailResponse): TestEmailResponse {
1745
- let message = target ?? this.create(), end = reader.pos + length;
1746
- while (reader.pos < end) {
1747
- let [fieldNo, wireType] = reader.tag();
1748
- switch (fieldNo) {
1749
- case /* bool success */ 1:
1750
- message.success = reader.bool();
1751
- break;
1752
- case /* string error_message */ 2:
1753
- message.errorMessage = reader.string();
1754
- break;
1755
- default:
1756
- let u = options.readUnknownField;
1757
- if (u === "throw")
1758
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
1759
- let d = reader.skip(wireType);
1760
- if (u !== false)
1761
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
1762
- }
1763
- }
1764
- return message;
1765
- }
1766
- internalBinaryWrite(message: TestEmailResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
1767
- /* bool success = 1; */
1768
- if (message.success !== false)
1769
- writer.tag(1, WireType.Varint).bool(message.success);
1770
- /* string error_message = 2; */
1771
- if (message.errorMessage !== "")
1772
- writer.tag(2, WireType.LengthDelimited).string(message.errorMessage);
1773
- let u = options.writeUnknownFields;
1774
- if (u !== false)
1775
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
1776
- return writer;
1777
- }
1778
- }
1779
- /**
1780
- * @generated MessageType for protobuf message sid.v1.admin.TestEmailResponse
1781
- */
1782
- export const TestEmailResponse = new TestEmailResponse$Type();
1783
- // @generated message type with reflection information, may provide speed optimized methods
1784
1704
  class LocalizationSettings$Type extends MessageType<LocalizationSettings> {
1785
1705
  constructor() {
1786
1706
  super("sid.v1.admin.LocalizationSettings", [
@@ -2515,7 +2435,7 @@ export const RealmService = new ServiceType("sid.v1.admin.RealmService", [
2515
2435
  { name: "UpdateLoginSettings", idempotency: "IDEMPOTENT", options: { "google.api.http": { patch: "/v1/admin/realm/login", body: "*" } }, I: UpdateLoginSettingsRequest, O: LoginSettings },
2516
2436
  { name: "GetEmailSettings", idempotency: "NO_SIDE_EFFECTS", options: { "google.api.http": { get: "/v1/admin/realm/email" } }, I: Empty, O: EmailSettings },
2517
2437
  { name: "UpdateEmailSettings", idempotency: "IDEMPOTENT", options: { "google.api.http": { patch: "/v1/admin/realm/email", body: "*" } }, I: EmailSettings, O: EmailSettings },
2518
- { name: "TestEmailConnection", options: { "google.api.http": { post: "/v1/admin/realm/email/test", body: "*" } }, I: Empty, O: TestEmailResponse },
2438
+ { name: "TestEmailConnection", options: { "google.api.http": { post: "/v1/admin/realm/email/test", body: "*" } }, I: Empty, O: Empty },
2519
2439
  { name: "GetLocalizationSettings", idempotency: "NO_SIDE_EFFECTS", options: { "google.api.http": { get: "/v1/admin/realm/localization" } }, I: Empty, O: LocalizationSettings },
2520
2440
  { name: "UpdateLocalizationSettings", idempotency: "IDEMPOTENT", options: { "google.api.http": { patch: "/v1/admin/realm/localization", body: "*" } }, I: LocalizationSettings, O: LocalizationSettings },
2521
2441
  { name: "ListTranslationOverrides", idempotency: "NO_SIDE_EFFECTS", options: { "google.api.http": { get: "/v1/admin/realm/localization/overrides" } }, I: ListTranslationOverridesRequest, O: ListTranslationOverridesResponse },
@@ -22,9 +22,9 @@ import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
22
22
  */
23
23
  export interface IAttestationServiceClient {
24
24
  /**
25
- * Register a device key with platform attestation.
26
- * CE: stores attestation data, marks device as hardware_attested.
27
- * EE: additionally verifies attestation chain and AAGUID policy.
25
+ * Register a device key with platform attestation: stores the attestation
26
+ * data and marks the device as hardware_attested; a server that verifies
27
+ * attestation also checks the chain and the AAGUID policy.
28
28
  *
29
29
  * @generated from protobuf rpc: RegisterDeviceKey
30
30
  */
@@ -66,9 +66,9 @@ export class AttestationServiceClient implements IAttestationServiceClient, Serv
66
66
  constructor(private readonly _transport: RpcTransport) {
67
67
  }
68
68
  /**
69
- * Register a device key with platform attestation.
70
- * CE: stores attestation data, marks device as hardware_attested.
71
- * EE: additionally verifies attestation chain and AAGUID policy.
69
+ * Register a device key with platform attestation: stores the attestation
70
+ * data and marks the device as hardware_attested; a server that verifies
71
+ * attestation also checks the chain and the AAGUID policy.
72
72
  *
73
73
  * @generated from protobuf rpc: RegisterDeviceKey
74
74
  */