@structured-id/ui-core 0.1.5

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 (156) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +47 -0
  3. package/dist/browser-vp/index.cjs +349 -0
  4. package/dist/browser-vp/index.d.cts +287 -0
  5. package/dist/browser-vp/index.d.ts +287 -0
  6. package/dist/browser-vp/index.js +349 -0
  7. package/dist/chunk-C3Q766CY.cjs +125 -0
  8. package/dist/chunk-J5YXRXB5.js +125 -0
  9. package/dist/index.cjs +19360 -0
  10. package/dist/index.d.cts +9536 -0
  11. package/dist/index.d.ts +9536 -0
  12. package/dist/index.js +19360 -0
  13. package/dist/storage-4CB2JTLW.cjs +22 -0
  14. package/dist/storage-THRWREZP.js +22 -0
  15. package/package.json +93 -0
  16. package/src/browser-vp/crypto.ts +254 -0
  17. package/src/browser-vp/index.test.ts +10 -0
  18. package/src/browser-vp/index.ts +118 -0
  19. package/src/browser-vp/prf.ts +181 -0
  20. package/src/browser-vp/storage.test.ts +9 -0
  21. package/src/browser-vp/storage.ts +165 -0
  22. package/src/browser-vp/types.ts +97 -0
  23. package/src/browser-vp/vp.test.ts +43 -0
  24. package/src/browser-vp/vp.ts +113 -0
  25. package/src/components/SidAvatar.vue +106 -0
  26. package/src/components/SidConfirmDialog.vue +125 -0
  27. package/src/components/SidStatusBadge.vue +71 -0
  28. package/src/components/index.ts +5 -0
  29. package/src/composables/index.ts +10 -0
  30. package/src/composables/useAuth.ts +40 -0
  31. package/src/composables/useBffAuth.ts +147 -0
  32. package/src/composables/useGrpc.test.ts +196 -0
  33. package/src/composables/useGrpc.ts +120 -0
  34. package/src/composables/useSession.ts +80 -0
  35. package/src/generated/google/api/http.ts +687 -0
  36. package/src/generated/google/protobuf/descriptor.ts +4865 -0
  37. package/src/generated/google/protobuf/duration.ts +230 -0
  38. package/src/generated/google/protobuf/empty.ts +94 -0
  39. package/src/generated/google/protobuf/struct.ts +484 -0
  40. package/src/generated/google/protobuf/timestamp.ts +287 -0
  41. package/src/generated/sid/v1/account/account.client.ts +527 -0
  42. package/src/generated/sid/v1/account/account.ts +3261 -0
  43. package/src/generated/sid/v1/admin/admin.client.ts +136 -0
  44. package/src/generated/sid/v1/admin/admin.ts +846 -0
  45. package/src/generated/sid/v1/admin/admin_roles.client.ts +181 -0
  46. package/src/generated/sid/v1/admin/admin_roles.ts +1606 -0
  47. package/src/generated/sid/v1/admin/analytics.client.ts +106 -0
  48. package/src/generated/sid/v1/admin/analytics.ts +1017 -0
  49. package/src/generated/sid/v1/admin/branding.client.ts +166 -0
  50. package/src/generated/sid/v1/admin/branding.ts +1906 -0
  51. package/src/generated/sid/v1/admin/enrollment.client.ts +165 -0
  52. package/src/generated/sid/v1/admin/enrollment.ts +1704 -0
  53. package/src/generated/sid/v1/admin/events.client.ts +195 -0
  54. package/src/generated/sid/v1/admin/events.ts +1900 -0
  55. package/src/generated/sid/v1/admin/flow.client.ts +183 -0
  56. package/src/generated/sid/v1/admin/flow.ts +1552 -0
  57. package/src/generated/sid/v1/admin/keys.client.ts +107 -0
  58. package/src/generated/sid/v1/admin/keys.ts +931 -0
  59. package/src/generated/sid/v1/admin/login_experience.client.ts +160 -0
  60. package/src/generated/sid/v1/admin/login_experience.ts +1061 -0
  61. package/src/generated/sid/v1/admin/migration.client.ts +127 -0
  62. package/src/generated/sid/v1/admin/migration.ts +1948 -0
  63. package/src/generated/sid/v1/admin/notifications.client.ts +128 -0
  64. package/src/generated/sid/v1/admin/notifications.ts +1332 -0
  65. package/src/generated/sid/v1/admin/operations.client.ts +241 -0
  66. package/src/generated/sid/v1/admin/operations.ts +2648 -0
  67. package/src/generated/sid/v1/admin/organizations.client.ts +57 -0
  68. package/src/generated/sid/v1/admin/organizations.ts +349 -0
  69. package/src/generated/sid/v1/admin/scopes.client.ts +171 -0
  70. package/src/generated/sid/v1/admin/scopes.ts +1324 -0
  71. package/src/generated/sid/v1/admin/security.client.ts +412 -0
  72. package/src/generated/sid/v1/admin/security.ts +4086 -0
  73. package/src/generated/sid/v1/admin/sessions.client.ts +114 -0
  74. package/src/generated/sid/v1/admin/sessions.ts +923 -0
  75. package/src/generated/sid/v1/admin/settings.client.ts +340 -0
  76. package/src/generated/sid/v1/admin/settings.ts +2395 -0
  77. package/src/generated/sid/v1/admin/user_profile.client.ts +57 -0
  78. package/src/generated/sid/v1/admin/user_profile.ts +730 -0
  79. package/src/generated/sid/v1/admin/webhooks.client.ts +269 -0
  80. package/src/generated/sid/v1/admin/webhooks.ts +2804 -0
  81. package/src/generated/sid/v1/attestation/attestation.client.ts +115 -0
  82. package/src/generated/sid/v1/attestation/attestation.ts +813 -0
  83. package/src/generated/sid/v1/authn/auth.client.ts +900 -0
  84. package/src/generated/sid/v1/authn/auth.ts +9287 -0
  85. package/src/generated/sid/v1/authn/flows.client.ts +413 -0
  86. package/src/generated/sid/v1/authn/flows.ts +3217 -0
  87. package/src/generated/sid/v1/authz/authz.client.ts +459 -0
  88. package/src/generated/sid/v1/authz/authz.ts +5343 -0
  89. package/src/generated/sid/v1/authz/governance.client.ts +102 -0
  90. package/src/generated/sid/v1/authz/governance.ts +818 -0
  91. package/src/generated/sid/v1/common/errors.ts +184 -0
  92. package/src/generated/sid/v1/common/pagination.ts +152 -0
  93. package/src/generated/sid/v1/common/transport.ts +227 -0
  94. package/src/generated/sid/v1/common/types.ts +151 -0
  95. package/src/generated/sid/v1/events/event_stream.client.ts +67 -0
  96. package/src/generated/sid/v1/events/event_stream.ts +374 -0
  97. package/src/generated/sid/v1/federation/upstream.client.ts +142 -0
  98. package/src/generated/sid/v1/federation/upstream.ts +1736 -0
  99. package/src/generated/sid/v1/identity/identity.client.ts +467 -0
  100. package/src/generated/sid/v1/identity/identity.ts +5613 -0
  101. package/src/generated/sid/v1/machine/machine_user.client.ts +219 -0
  102. package/src/generated/sid/v1/machine/machine_user.ts +2400 -0
  103. package/src/generated/sid/v1/machine/pat.client.ts +147 -0
  104. package/src/generated/sid/v1/machine/pat.ts +1268 -0
  105. package/src/generated/sid/v1/projects/projects.client.ts +286 -0
  106. package/src/generated/sid/v1/projects/projects.ts +2714 -0
  107. package/src/generated/sid/v1/scim/scim.client.ts +274 -0
  108. package/src/generated/sid/v1/scim/scim.ts +3043 -0
  109. package/src/generated/sid/v1/test/test.client.ts +232 -0
  110. package/src/generated/sid/v1/test/test.ts +1136 -0
  111. package/src/i18n/index.ts +40 -0
  112. package/src/index.ts +157 -0
  113. package/src/profile/auth.ts +15 -0
  114. package/src/profile/components/ConsentManager.vue +88 -0
  115. package/src/profile/components/ProfileEditor.vue +146 -0
  116. package/src/profile/components/SecuritySettings.vue +170 -0
  117. package/src/profile/components/SessionList.vue +100 -0
  118. package/src/profile/components/SidLoginForm.test.ts +80 -0
  119. package/src/profile/components/SidLoginForm.vue +230 -0
  120. package/src/profile/components/SidMfaChallenge.test.ts +127 -0
  121. package/src/profile/components/SidMfaChallenge.vue +243 -0
  122. package/src/profile/components/SidRegistrationForm.test.ts +79 -0
  123. package/src/profile/components/SidRegistrationForm.vue +317 -0
  124. package/src/profile/components/index.ts +11 -0
  125. package/src/profile/composables/index.ts +6 -0
  126. package/src/profile/composables/useAccountApi.ts +203 -0
  127. package/src/profile/composables/useAuthApi.opaque.test.ts +140 -0
  128. package/src/profile/composables/useAuthApi.ts +617 -0
  129. package/src/profile/composables/useIdentityApi.ts +123 -0
  130. package/src/profile/composables/useLoginSuccess.test.ts +112 -0
  131. package/src/profile/composables/useLoginSuccess.ts +65 -0
  132. package/src/profile/composables/useOpaqueAuth.test.ts +290 -0
  133. package/src/profile/composables/useOpaqueAuth.ts +191 -0
  134. package/src/profile/composables/useSecurityLevel.test.ts +198 -0
  135. package/src/profile/composables/useSecurityLevel.ts +324 -0
  136. package/src/profile/index.ts +18 -0
  137. package/src/quasar/SidPrincipalInput.vue +209 -0
  138. package/src/quasar/index.ts +8 -0
  139. package/src/stores/auth.test.ts +83 -0
  140. package/src/stores/auth.ts +92 -0
  141. package/src/stores/index.ts +1 -0
  142. package/src/transport/adaptive.test.ts +728 -0
  143. package/src/transport/adaptive.ts +308 -0
  144. package/src/transport/framing.test.ts +227 -0
  145. package/src/transport/framing.ts +98 -0
  146. package/src/transport/webtransport.test.ts +728 -0
  147. package/src/transport/webtransport.ts +323 -0
  148. package/src/types/auth.ts +58 -0
  149. package/src/types/index.ts +1 -0
  150. package/src/utils/formatters.test.ts +26 -0
  151. package/src/utils/formatters.ts +69 -0
  152. package/src/utils/index.ts +16 -0
  153. package/src/utils/normalizePrincipal.test.ts +188 -0
  154. package/src/utils/normalizePrincipal.ts +159 -0
  155. package/src/utils/validators.test.ts +75 -0
  156. package/src/utils/validators.ts +36 -0
@@ -0,0 +1,412 @@
1
+ // @generated by protobuf-ts 2.11.1 with parameter client_generic,generate_dependencies
2
+ // @generated from protobuf file "sid/v1/admin/security.proto" (package "sid.v1.admin", syntax proto3)
3
+ // tslint:disable
4
+ import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
5
+ import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
6
+ import { SecurityService } from "./security";
7
+ import type { RemoveIpAllowlistEntryRequest } from "./security";
8
+ import type { AddIpAllowlistEntryRequest } from "./security";
9
+ import type { IpAllowlistResponse } from "./security";
10
+ import type { ListIpAllowlistEntriesRequest } from "./security";
11
+ import type { IntegrityCheckResponse } from "./security";
12
+ import type { RunIntegrityCheckRequest } from "./security";
13
+ import type { BreachDetectionConfig } from "./security";
14
+ import type { GetBreachDetectionConfigRequest } from "./security";
15
+ import type { NetworkPolicy } from "./security";
16
+ import type { GetNetworkPolicyRequest } from "./security";
17
+ import type { EvaluateEnforcementResponse } from "./security";
18
+ import type { EvaluateEnforcementRequest } from "./security";
19
+ import type { GetEffectivePolicyRequest } from "./security";
20
+ import type { ListApplicationOverridesResponse } from "./security";
21
+ import type { ListApplicationOverridesRequest } from "./security";
22
+ import type { SecurityPolicyResponse } from "./security";
23
+ import type { GetSecurityPolicyRequest } from "./security";
24
+ import type { TestCaptchaProviderResponse } from "./security";
25
+ import type { TestCaptchaProviderRequest } from "./security";
26
+ import type { CaptchaConfig } from "./security";
27
+ import type { GetCaptchaConfigRequest } from "./security";
28
+ import type { AnomalyEventLog } from "./security";
29
+ import type { GetAnomalyEventLogRequest } from "./security";
30
+ import type { ListAnomalyRulesResponse } from "./security";
31
+ import type { ListAnomalyRulesRequest } from "./security";
32
+ import type { RateLimitDashboard } from "./security";
33
+ import type { GetRateLimitDashboardRequest } from "./security";
34
+ import type { RateLimitConfig } from "./security";
35
+ import type { GetRateLimitConfigRequest } from "./security";
36
+ import type { SecurityHeaders } from "./security";
37
+ import type { GetSecurityHeadersRequest } from "./security";
38
+ import type { BruteForceConfig } from "./security";
39
+ import type { GetBruteForceConfigRequest } from "./security";
40
+ import { stackIntercept } from "@protobuf-ts/runtime-rpc";
41
+ import type { PasswordPolicy } from "./security";
42
+ import type { GetPasswordPolicyRequest } from "./security";
43
+ import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
44
+ import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
45
+ /**
46
+ * ── Password Policy (Page 10.7) ──
47
+ *
48
+ * @generated from protobuf service sid.v1.admin.SecurityService
49
+ */
50
+ export interface ISecurityServiceClient {
51
+ /**
52
+ * @generated from protobuf rpc: GetPasswordPolicy
53
+ */
54
+ getPasswordPolicy(input: GetPasswordPolicyRequest, options?: RpcOptions): UnaryCall<GetPasswordPolicyRequest, PasswordPolicy>;
55
+ /**
56
+ * @generated from protobuf rpc: UpdatePasswordPolicy
57
+ */
58
+ updatePasswordPolicy(input: PasswordPolicy, options?: RpcOptions): UnaryCall<PasswordPolicy, PasswordPolicy>;
59
+ // ── Brute Force Protection (Page 10.7) ──
60
+
61
+ /**
62
+ * @generated from protobuf rpc: GetBruteForceConfig
63
+ */
64
+ getBruteForceConfig(input: GetBruteForceConfigRequest, options?: RpcOptions): UnaryCall<GetBruteForceConfigRequest, BruteForceConfig>;
65
+ /**
66
+ * @generated from protobuf rpc: UpdateBruteForceConfig
67
+ */
68
+ updateBruteForceConfig(input: BruteForceConfig, options?: RpcOptions): UnaryCall<BruteForceConfig, BruteForceConfig>;
69
+ // ── Security Headers (Page 10.7) ──
70
+
71
+ /**
72
+ * @generated from protobuf rpc: GetSecurityHeaders
73
+ */
74
+ getSecurityHeaders(input: GetSecurityHeadersRequest, options?: RpcOptions): UnaryCall<GetSecurityHeadersRequest, SecurityHeaders>;
75
+ /**
76
+ * @generated from protobuf rpc: UpdateSecurityHeaders
77
+ */
78
+ updateSecurityHeaders(input: SecurityHeaders, options?: RpcOptions): UnaryCall<SecurityHeaders, SecurityHeaders>;
79
+ // ── Rate Limits (Page 17.1) ──
80
+
81
+ /**
82
+ * @generated from protobuf rpc: GetRateLimitConfig
83
+ */
84
+ getRateLimitConfig(input: GetRateLimitConfigRequest, options?: RpcOptions): UnaryCall<GetRateLimitConfigRequest, RateLimitConfig>;
85
+ /**
86
+ * @generated from protobuf rpc: GetRateLimitDashboard
87
+ */
88
+ getRateLimitDashboard(input: GetRateLimitDashboardRequest, options?: RpcOptions): UnaryCall<GetRateLimitDashboardRequest, RateLimitDashboard>;
89
+ // ── Anomaly Rules (Page 17.2) ──
90
+
91
+ /**
92
+ * @generated from protobuf rpc: ListAnomalyRules
93
+ */
94
+ listAnomalyRules(input: ListAnomalyRulesRequest, options?: RpcOptions): UnaryCall<ListAnomalyRulesRequest, ListAnomalyRulesResponse>;
95
+ /**
96
+ * @generated from protobuf rpc: GetAnomalyEventLog
97
+ */
98
+ getAnomalyEventLog(input: GetAnomalyEventLogRequest, options?: RpcOptions): UnaryCall<GetAnomalyEventLogRequest, AnomalyEventLog>;
99
+ // ── CAPTCHA (Page 17.3) ──
100
+
101
+ /**
102
+ * @generated from protobuf rpc: GetCaptchaConfig
103
+ */
104
+ getCaptchaConfig(input: GetCaptchaConfigRequest, options?: RpcOptions): UnaryCall<GetCaptchaConfigRequest, CaptchaConfig>;
105
+ /**
106
+ * @generated from protobuf rpc: UpdateCaptchaConfig
107
+ */
108
+ updateCaptchaConfig(input: CaptchaConfig, options?: RpcOptions): UnaryCall<CaptchaConfig, CaptchaConfig>;
109
+ /**
110
+ * @generated from protobuf rpc: TestCaptchaProvider
111
+ */
112
+ testCaptchaProvider(input: TestCaptchaProviderRequest, options?: RpcOptions): UnaryCall<TestCaptchaProviderRequest, TestCaptchaProviderResponse>;
113
+ // ── Security Policy (Page 17.4) ──
114
+
115
+ /**
116
+ * @generated from protobuf rpc: GetSecurityPolicy
117
+ */
118
+ getSecurityPolicy(input: GetSecurityPolicyRequest, options?: RpcOptions): UnaryCall<GetSecurityPolicyRequest, SecurityPolicyResponse>;
119
+ /**
120
+ * @generated from protobuf rpc: ListApplicationOverrides
121
+ */
122
+ listApplicationOverrides(input: ListApplicationOverridesRequest, options?: RpcOptions): UnaryCall<ListApplicationOverridesRequest, ListApplicationOverridesResponse>;
123
+ /**
124
+ * Get effective policy for a specific application (org policy + app overrides merged).
125
+ * Returns the combined policy that would be applied when a user logs in to this app.
126
+ *
127
+ * @generated from protobuf rpc: GetEffectivePolicy
128
+ */
129
+ getEffectivePolicy(input: GetEffectivePolicyRequest, options?: RpcOptions): UnaryCall<GetEffectivePolicyRequest, SecurityPolicyResponse>;
130
+ /**
131
+ * Evaluate enforcement decision for a profile + application.
132
+ * Returns what would happen if this user tried to log in to this app right now.
133
+ * Used for admin debugging and policy preview.
134
+ *
135
+ * @generated from protobuf rpc: EvaluateEnforcement
136
+ */
137
+ evaluateEnforcement(input: EvaluateEnforcementRequest, options?: RpcOptions): UnaryCall<EvaluateEnforcementRequest, EvaluateEnforcementResponse>;
138
+ // ── Network Policy (Page 17.6) ──
139
+
140
+ /**
141
+ * @generated from protobuf rpc: GetNetworkPolicy
142
+ */
143
+ getNetworkPolicy(input: GetNetworkPolicyRequest, options?: RpcOptions): UnaryCall<GetNetworkPolicyRequest, NetworkPolicy>;
144
+ /**
145
+ * @generated from protobuf rpc: UpdateNetworkPolicy
146
+ */
147
+ updateNetworkPolicy(input: NetworkPolicy, options?: RpcOptions): UnaryCall<NetworkPolicy, NetworkPolicy>;
148
+ // ── Breach Detection (Page 17.7) ──
149
+
150
+ /**
151
+ * @generated from protobuf rpc: GetBreachDetectionConfig
152
+ */
153
+ getBreachDetectionConfig(input: GetBreachDetectionConfigRequest, options?: RpcOptions): UnaryCall<GetBreachDetectionConfigRequest, BreachDetectionConfig>;
154
+ /**
155
+ * @generated from protobuf rpc: UpdateBreachDetectionConfig
156
+ */
157
+ updateBreachDetectionConfig(input: BreachDetectionConfig, options?: RpcOptions): UnaryCall<BreachDetectionConfig, BreachDetectionConfig>;
158
+ // ── Data Integrity (Page 17.8) ──
159
+
160
+ /**
161
+ * Run integrity verification across all layers.
162
+ * CE: audit chain + graph consistency. EE: all 5 layers.
163
+ *
164
+ * @generated from protobuf rpc: RunIntegrityCheck
165
+ */
166
+ runIntegrityCheck(input: RunIntegrityCheckRequest, options?: RpcOptions): UnaryCall<RunIntegrityCheckRequest, IntegrityCheckResponse>;
167
+ // ── IP Allowlist (IP Intelligence) ──
168
+
169
+ /**
170
+ * List all admin-configured IP allowlist entries.
171
+ * Allowlisted IPs/CIDRs override ALL negative IP intelligence labels.
172
+ *
173
+ * @generated from protobuf rpc: ListIpAllowlistEntries
174
+ */
175
+ listIpAllowlistEntries(input: ListIpAllowlistEntriesRequest, options?: RpcOptions): UnaryCall<ListIpAllowlistEntriesRequest, IpAllowlistResponse>;
176
+ /**
177
+ * Add an IP or CIDR to the allowlist.
178
+ *
179
+ * @generated from protobuf rpc: AddIpAllowlistEntry
180
+ */
181
+ addIpAllowlistEntry(input: AddIpAllowlistEntryRequest, options?: RpcOptions): UnaryCall<AddIpAllowlistEntryRequest, IpAllowlistResponse>;
182
+ /**
183
+ * Remove an IP or CIDR from the allowlist.
184
+ *
185
+ * @generated from protobuf rpc: RemoveIpAllowlistEntry
186
+ */
187
+ removeIpAllowlistEntry(input: RemoveIpAllowlistEntryRequest, options?: RpcOptions): UnaryCall<RemoveIpAllowlistEntryRequest, IpAllowlistResponse>;
188
+ }
189
+ /**
190
+ * ── Password Policy (Page 10.7) ──
191
+ *
192
+ * @generated from protobuf service sid.v1.admin.SecurityService
193
+ */
194
+ export class SecurityServiceClient implements ISecurityServiceClient, ServiceInfo {
195
+ typeName = SecurityService.typeName;
196
+ methods = SecurityService.methods;
197
+ options = SecurityService.options;
198
+ constructor(private readonly _transport: RpcTransport) {
199
+ }
200
+ /**
201
+ * @generated from protobuf rpc: GetPasswordPolicy
202
+ */
203
+ getPasswordPolicy(input: GetPasswordPolicyRequest, options?: RpcOptions): UnaryCall<GetPasswordPolicyRequest, PasswordPolicy> {
204
+ const method = this.methods[0], opt = this._transport.mergeOptions(options);
205
+ return stackIntercept<GetPasswordPolicyRequest, PasswordPolicy>("unary", this._transport, method, opt, input);
206
+ }
207
+ /**
208
+ * @generated from protobuf rpc: UpdatePasswordPolicy
209
+ */
210
+ updatePasswordPolicy(input: PasswordPolicy, options?: RpcOptions): UnaryCall<PasswordPolicy, PasswordPolicy> {
211
+ const method = this.methods[1], opt = this._transport.mergeOptions(options);
212
+ return stackIntercept<PasswordPolicy, PasswordPolicy>("unary", this._transport, method, opt, input);
213
+ }
214
+ // ── Brute Force Protection (Page 10.7) ──
215
+
216
+ /**
217
+ * @generated from protobuf rpc: GetBruteForceConfig
218
+ */
219
+ getBruteForceConfig(input: GetBruteForceConfigRequest, options?: RpcOptions): UnaryCall<GetBruteForceConfigRequest, BruteForceConfig> {
220
+ const method = this.methods[2], opt = this._transport.mergeOptions(options);
221
+ return stackIntercept<GetBruteForceConfigRequest, BruteForceConfig>("unary", this._transport, method, opt, input);
222
+ }
223
+ /**
224
+ * @generated from protobuf rpc: UpdateBruteForceConfig
225
+ */
226
+ updateBruteForceConfig(input: BruteForceConfig, options?: RpcOptions): UnaryCall<BruteForceConfig, BruteForceConfig> {
227
+ const method = this.methods[3], opt = this._transport.mergeOptions(options);
228
+ return stackIntercept<BruteForceConfig, BruteForceConfig>("unary", this._transport, method, opt, input);
229
+ }
230
+ // ── Security Headers (Page 10.7) ──
231
+
232
+ /**
233
+ * @generated from protobuf rpc: GetSecurityHeaders
234
+ */
235
+ getSecurityHeaders(input: GetSecurityHeadersRequest, options?: RpcOptions): UnaryCall<GetSecurityHeadersRequest, SecurityHeaders> {
236
+ const method = this.methods[4], opt = this._transport.mergeOptions(options);
237
+ return stackIntercept<GetSecurityHeadersRequest, SecurityHeaders>("unary", this._transport, method, opt, input);
238
+ }
239
+ /**
240
+ * @generated from protobuf rpc: UpdateSecurityHeaders
241
+ */
242
+ updateSecurityHeaders(input: SecurityHeaders, options?: RpcOptions): UnaryCall<SecurityHeaders, SecurityHeaders> {
243
+ const method = this.methods[5], opt = this._transport.mergeOptions(options);
244
+ return stackIntercept<SecurityHeaders, SecurityHeaders>("unary", this._transport, method, opt, input);
245
+ }
246
+ // ── Rate Limits (Page 17.1) ──
247
+
248
+ /**
249
+ * @generated from protobuf rpc: GetRateLimitConfig
250
+ */
251
+ getRateLimitConfig(input: GetRateLimitConfigRequest, options?: RpcOptions): UnaryCall<GetRateLimitConfigRequest, RateLimitConfig> {
252
+ const method = this.methods[6], opt = this._transport.mergeOptions(options);
253
+ return stackIntercept<GetRateLimitConfigRequest, RateLimitConfig>("unary", this._transport, method, opt, input);
254
+ }
255
+ /**
256
+ * @generated from protobuf rpc: GetRateLimitDashboard
257
+ */
258
+ getRateLimitDashboard(input: GetRateLimitDashboardRequest, options?: RpcOptions): UnaryCall<GetRateLimitDashboardRequest, RateLimitDashboard> {
259
+ const method = this.methods[7], opt = this._transport.mergeOptions(options);
260
+ return stackIntercept<GetRateLimitDashboardRequest, RateLimitDashboard>("unary", this._transport, method, opt, input);
261
+ }
262
+ // ── Anomaly Rules (Page 17.2) ──
263
+
264
+ /**
265
+ * @generated from protobuf rpc: ListAnomalyRules
266
+ */
267
+ listAnomalyRules(input: ListAnomalyRulesRequest, options?: RpcOptions): UnaryCall<ListAnomalyRulesRequest, ListAnomalyRulesResponse> {
268
+ const method = this.methods[8], opt = this._transport.mergeOptions(options);
269
+ return stackIntercept<ListAnomalyRulesRequest, ListAnomalyRulesResponse>("unary", this._transport, method, opt, input);
270
+ }
271
+ /**
272
+ * @generated from protobuf rpc: GetAnomalyEventLog
273
+ */
274
+ getAnomalyEventLog(input: GetAnomalyEventLogRequest, options?: RpcOptions): UnaryCall<GetAnomalyEventLogRequest, AnomalyEventLog> {
275
+ const method = this.methods[9], opt = this._transport.mergeOptions(options);
276
+ return stackIntercept<GetAnomalyEventLogRequest, AnomalyEventLog>("unary", this._transport, method, opt, input);
277
+ }
278
+ // ── CAPTCHA (Page 17.3) ──
279
+
280
+ /**
281
+ * @generated from protobuf rpc: GetCaptchaConfig
282
+ */
283
+ getCaptchaConfig(input: GetCaptchaConfigRequest, options?: RpcOptions): UnaryCall<GetCaptchaConfigRequest, CaptchaConfig> {
284
+ const method = this.methods[10], opt = this._transport.mergeOptions(options);
285
+ return stackIntercept<GetCaptchaConfigRequest, CaptchaConfig>("unary", this._transport, method, opt, input);
286
+ }
287
+ /**
288
+ * @generated from protobuf rpc: UpdateCaptchaConfig
289
+ */
290
+ updateCaptchaConfig(input: CaptchaConfig, options?: RpcOptions): UnaryCall<CaptchaConfig, CaptchaConfig> {
291
+ const method = this.methods[11], opt = this._transport.mergeOptions(options);
292
+ return stackIntercept<CaptchaConfig, CaptchaConfig>("unary", this._transport, method, opt, input);
293
+ }
294
+ /**
295
+ * @generated from protobuf rpc: TestCaptchaProvider
296
+ */
297
+ testCaptchaProvider(input: TestCaptchaProviderRequest, options?: RpcOptions): UnaryCall<TestCaptchaProviderRequest, TestCaptchaProviderResponse> {
298
+ const method = this.methods[12], opt = this._transport.mergeOptions(options);
299
+ return stackIntercept<TestCaptchaProviderRequest, TestCaptchaProviderResponse>("unary", this._transport, method, opt, input);
300
+ }
301
+ // ── Security Policy (Page 17.4) ──
302
+
303
+ /**
304
+ * @generated from protobuf rpc: GetSecurityPolicy
305
+ */
306
+ getSecurityPolicy(input: GetSecurityPolicyRequest, options?: RpcOptions): UnaryCall<GetSecurityPolicyRequest, SecurityPolicyResponse> {
307
+ const method = this.methods[13], opt = this._transport.mergeOptions(options);
308
+ return stackIntercept<GetSecurityPolicyRequest, SecurityPolicyResponse>("unary", this._transport, method, opt, input);
309
+ }
310
+ /**
311
+ * @generated from protobuf rpc: ListApplicationOverrides
312
+ */
313
+ listApplicationOverrides(input: ListApplicationOverridesRequest, options?: RpcOptions): UnaryCall<ListApplicationOverridesRequest, ListApplicationOverridesResponse> {
314
+ const method = this.methods[14], opt = this._transport.mergeOptions(options);
315
+ return stackIntercept<ListApplicationOverridesRequest, ListApplicationOverridesResponse>("unary", this._transport, method, opt, input);
316
+ }
317
+ /**
318
+ * Get effective policy for a specific application (org policy + app overrides merged).
319
+ * Returns the combined policy that would be applied when a user logs in to this app.
320
+ *
321
+ * @generated from protobuf rpc: GetEffectivePolicy
322
+ */
323
+ getEffectivePolicy(input: GetEffectivePolicyRequest, options?: RpcOptions): UnaryCall<GetEffectivePolicyRequest, SecurityPolicyResponse> {
324
+ const method = this.methods[15], opt = this._transport.mergeOptions(options);
325
+ return stackIntercept<GetEffectivePolicyRequest, SecurityPolicyResponse>("unary", this._transport, method, opt, input);
326
+ }
327
+ /**
328
+ * Evaluate enforcement decision for a profile + application.
329
+ * Returns what would happen if this user tried to log in to this app right now.
330
+ * Used for admin debugging and policy preview.
331
+ *
332
+ * @generated from protobuf rpc: EvaluateEnforcement
333
+ */
334
+ evaluateEnforcement(input: EvaluateEnforcementRequest, options?: RpcOptions): UnaryCall<EvaluateEnforcementRequest, EvaluateEnforcementResponse> {
335
+ const method = this.methods[16], opt = this._transport.mergeOptions(options);
336
+ return stackIntercept<EvaluateEnforcementRequest, EvaluateEnforcementResponse>("unary", this._transport, method, opt, input);
337
+ }
338
+ // ── Network Policy (Page 17.6) ──
339
+
340
+ /**
341
+ * @generated from protobuf rpc: GetNetworkPolicy
342
+ */
343
+ getNetworkPolicy(input: GetNetworkPolicyRequest, options?: RpcOptions): UnaryCall<GetNetworkPolicyRequest, NetworkPolicy> {
344
+ const method = this.methods[17], opt = this._transport.mergeOptions(options);
345
+ return stackIntercept<GetNetworkPolicyRequest, NetworkPolicy>("unary", this._transport, method, opt, input);
346
+ }
347
+ /**
348
+ * @generated from protobuf rpc: UpdateNetworkPolicy
349
+ */
350
+ updateNetworkPolicy(input: NetworkPolicy, options?: RpcOptions): UnaryCall<NetworkPolicy, NetworkPolicy> {
351
+ const method = this.methods[18], opt = this._transport.mergeOptions(options);
352
+ return stackIntercept<NetworkPolicy, NetworkPolicy>("unary", this._transport, method, opt, input);
353
+ }
354
+ // ── Breach Detection (Page 17.7) ──
355
+
356
+ /**
357
+ * @generated from protobuf rpc: GetBreachDetectionConfig
358
+ */
359
+ getBreachDetectionConfig(input: GetBreachDetectionConfigRequest, options?: RpcOptions): UnaryCall<GetBreachDetectionConfigRequest, BreachDetectionConfig> {
360
+ const method = this.methods[19], opt = this._transport.mergeOptions(options);
361
+ return stackIntercept<GetBreachDetectionConfigRequest, BreachDetectionConfig>("unary", this._transport, method, opt, input);
362
+ }
363
+ /**
364
+ * @generated from protobuf rpc: UpdateBreachDetectionConfig
365
+ */
366
+ updateBreachDetectionConfig(input: BreachDetectionConfig, options?: RpcOptions): UnaryCall<BreachDetectionConfig, BreachDetectionConfig> {
367
+ const method = this.methods[20], opt = this._transport.mergeOptions(options);
368
+ return stackIntercept<BreachDetectionConfig, BreachDetectionConfig>("unary", this._transport, method, opt, input);
369
+ }
370
+ // ── Data Integrity (Page 17.8) ──
371
+
372
+ /**
373
+ * Run integrity verification across all layers.
374
+ * CE: audit chain + graph consistency. EE: all 5 layers.
375
+ *
376
+ * @generated from protobuf rpc: RunIntegrityCheck
377
+ */
378
+ runIntegrityCheck(input: RunIntegrityCheckRequest, options?: RpcOptions): UnaryCall<RunIntegrityCheckRequest, IntegrityCheckResponse> {
379
+ const method = this.methods[21], opt = this._transport.mergeOptions(options);
380
+ return stackIntercept<RunIntegrityCheckRequest, IntegrityCheckResponse>("unary", this._transport, method, opt, input);
381
+ }
382
+ // ── IP Allowlist (IP Intelligence) ──
383
+
384
+ /**
385
+ * List all admin-configured IP allowlist entries.
386
+ * Allowlisted IPs/CIDRs override ALL negative IP intelligence labels.
387
+ *
388
+ * @generated from protobuf rpc: ListIpAllowlistEntries
389
+ */
390
+ listIpAllowlistEntries(input: ListIpAllowlistEntriesRequest, options?: RpcOptions): UnaryCall<ListIpAllowlistEntriesRequest, IpAllowlistResponse> {
391
+ const method = this.methods[22], opt = this._transport.mergeOptions(options);
392
+ return stackIntercept<ListIpAllowlistEntriesRequest, IpAllowlistResponse>("unary", this._transport, method, opt, input);
393
+ }
394
+ /**
395
+ * Add an IP or CIDR to the allowlist.
396
+ *
397
+ * @generated from protobuf rpc: AddIpAllowlistEntry
398
+ */
399
+ addIpAllowlistEntry(input: AddIpAllowlistEntryRequest, options?: RpcOptions): UnaryCall<AddIpAllowlistEntryRequest, IpAllowlistResponse> {
400
+ const method = this.methods[23], opt = this._transport.mergeOptions(options);
401
+ return stackIntercept<AddIpAllowlistEntryRequest, IpAllowlistResponse>("unary", this._transport, method, opt, input);
402
+ }
403
+ /**
404
+ * Remove an IP or CIDR from the allowlist.
405
+ *
406
+ * @generated from protobuf rpc: RemoveIpAllowlistEntry
407
+ */
408
+ removeIpAllowlistEntry(input: RemoveIpAllowlistEntryRequest, options?: RpcOptions): UnaryCall<RemoveIpAllowlistEntryRequest, IpAllowlistResponse> {
409
+ const method = this.methods[24], opt = this._transport.mergeOptions(options);
410
+ return stackIntercept<RemoveIpAllowlistEntryRequest, IpAllowlistResponse>("unary", this._transport, method, opt, input);
411
+ }
412
+ }