@aigrc/core 0.1.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.
@@ -0,0 +1,2332 @@
1
+ import { z } from 'zod';
2
+
3
+ declare const OwnerSchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ email: z.ZodString;
6
+ team: z.ZodOptional<z.ZodString>;
7
+ }, "strip", z.ZodTypeAny, {
8
+ name: string;
9
+ email: string;
10
+ team?: string | undefined;
11
+ }, {
12
+ name: string;
13
+ email: string;
14
+ team?: string | undefined;
15
+ }>;
16
+ type Owner = z.infer<typeof OwnerSchema>;
17
+ declare const TechnicalSchema: z.ZodObject<{
18
+ type: z.ZodEnum<["model", "agent", "api_client", "framework", "pipeline"]>;
19
+ framework: z.ZodOptional<z.ZodString>;
20
+ frameworkVersion: z.ZodOptional<z.ZodString>;
21
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
22
+ type: z.ZodString;
23
+ provider: z.ZodOptional<z.ZodString>;
24
+ model: z.ZodOptional<z.ZodString>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ type: string;
27
+ model?: string | undefined;
28
+ provider?: string | undefined;
29
+ }, {
30
+ type: string;
31
+ model?: string | undefined;
32
+ provider?: string | undefined;
33
+ }>, "many">>;
34
+ sourceFiles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
35
+ }, "strip", z.ZodTypeAny, {
36
+ type: "model" | "agent" | "api_client" | "framework" | "pipeline";
37
+ framework?: string | undefined;
38
+ frameworkVersion?: string | undefined;
39
+ components?: {
40
+ type: string;
41
+ model?: string | undefined;
42
+ provider?: string | undefined;
43
+ }[] | undefined;
44
+ sourceFiles?: string[] | undefined;
45
+ }, {
46
+ type: "model" | "agent" | "api_client" | "framework" | "pipeline";
47
+ framework?: string | undefined;
48
+ frameworkVersion?: string | undefined;
49
+ components?: {
50
+ type: string;
51
+ model?: string | undefined;
52
+ provider?: string | undefined;
53
+ }[] | undefined;
54
+ sourceFiles?: string[] | undefined;
55
+ }>;
56
+ type Technical = z.infer<typeof TechnicalSchema>;
57
+ declare const RiskFactorsSchema: z.ZodObject<{
58
+ autonomousDecisions: z.ZodDefault<z.ZodBoolean>;
59
+ customerFacing: z.ZodDefault<z.ZodBoolean>;
60
+ toolExecution: z.ZodDefault<z.ZodBoolean>;
61
+ externalDataAccess: z.ZodDefault<z.ZodBoolean>;
62
+ piiProcessing: z.ZodDefault<z.ZodEnum<["yes", "no", "unknown"]>>;
63
+ highStakesDecisions: z.ZodDefault<z.ZodBoolean>;
64
+ }, "strip", z.ZodTypeAny, {
65
+ autonomousDecisions: boolean;
66
+ customerFacing: boolean;
67
+ toolExecution: boolean;
68
+ externalDataAccess: boolean;
69
+ piiProcessing: "unknown" | "yes" | "no";
70
+ highStakesDecisions: boolean;
71
+ }, {
72
+ autonomousDecisions?: boolean | undefined;
73
+ customerFacing?: boolean | undefined;
74
+ toolExecution?: boolean | undefined;
75
+ externalDataAccess?: boolean | undefined;
76
+ piiProcessing?: "unknown" | "yes" | "no" | undefined;
77
+ highStakesDecisions?: boolean | undefined;
78
+ }>;
79
+ type RiskFactors = z.infer<typeof RiskFactorsSchema>;
80
+ declare const ControlStatusSchema: z.ZodObject<{
81
+ controlId: z.ZodString;
82
+ status: z.ZodEnum<["implemented", "partial", "not_implemented", "not_applicable"]>;
83
+ evidence: z.ZodOptional<z.ZodString>;
84
+ notes: z.ZodOptional<z.ZodString>;
85
+ lastUpdated: z.ZodOptional<z.ZodString>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
88
+ controlId: string;
89
+ evidence?: string | undefined;
90
+ notes?: string | undefined;
91
+ lastUpdated?: string | undefined;
92
+ }, {
93
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
94
+ controlId: string;
95
+ evidence?: string | undefined;
96
+ notes?: string | undefined;
97
+ lastUpdated?: string | undefined;
98
+ }>;
99
+ type ControlStatus = z.infer<typeof ControlStatusSchema>;
100
+ declare const JurisdictionClassificationSchema: z.ZodObject<{
101
+ /** Profile/jurisdiction ID (e.g., "eu-ai-act", "us-omb-m24") */
102
+ jurisdictionId: z.ZodString;
103
+ /** Risk level mapped to this jurisdiction's terminology */
104
+ riskLevel: z.ZodString;
105
+ /** Jurisdiction-specific category (e.g., EU AI Act category) */
106
+ category: z.ZodOptional<z.ZodString>;
107
+ /** Status of controls for this jurisdiction */
108
+ controlStatuses: z.ZodOptional<z.ZodArray<z.ZodObject<{
109
+ controlId: z.ZodString;
110
+ status: z.ZodEnum<["implemented", "partial", "not_implemented", "not_applicable"]>;
111
+ evidence: z.ZodOptional<z.ZodString>;
112
+ notes: z.ZodOptional<z.ZodString>;
113
+ lastUpdated: z.ZodOptional<z.ZodString>;
114
+ }, "strip", z.ZodTypeAny, {
115
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
116
+ controlId: string;
117
+ evidence?: string | undefined;
118
+ notes?: string | undefined;
119
+ lastUpdated?: string | undefined;
120
+ }, {
121
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
122
+ controlId: string;
123
+ evidence?: string | undefined;
124
+ notes?: string | undefined;
125
+ lastUpdated?: string | undefined;
126
+ }>, "many">>;
127
+ /** Required artifacts for this jurisdiction */
128
+ requiredArtifacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
129
+ artifactId: z.ZodString;
130
+ status: z.ZodEnum<["pending", "complete", "not_applicable"]>;
131
+ path: z.ZodOptional<z.ZodString>;
132
+ }, "strip", z.ZodTypeAny, {
133
+ status: "not_applicable" | "pending" | "complete";
134
+ artifactId: string;
135
+ path?: string | undefined;
136
+ }, {
137
+ status: "not_applicable" | "pending" | "complete";
138
+ artifactId: string;
139
+ path?: string | undefined;
140
+ }>, "many">>;
141
+ /** Last compliance check date */
142
+ lastChecked: z.ZodOptional<z.ZodString>;
143
+ /** Compliance percentage for this jurisdiction */
144
+ compliancePercentage: z.ZodOptional<z.ZodNumber>;
145
+ }, "strip", z.ZodTypeAny, {
146
+ jurisdictionId: string;
147
+ riskLevel: string;
148
+ category?: string | undefined;
149
+ controlStatuses?: {
150
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
151
+ controlId: string;
152
+ evidence?: string | undefined;
153
+ notes?: string | undefined;
154
+ lastUpdated?: string | undefined;
155
+ }[] | undefined;
156
+ requiredArtifacts?: {
157
+ status: "not_applicable" | "pending" | "complete";
158
+ artifactId: string;
159
+ path?: string | undefined;
160
+ }[] | undefined;
161
+ lastChecked?: string | undefined;
162
+ compliancePercentage?: number | undefined;
163
+ }, {
164
+ jurisdictionId: string;
165
+ riskLevel: string;
166
+ category?: string | undefined;
167
+ controlStatuses?: {
168
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
169
+ controlId: string;
170
+ evidence?: string | undefined;
171
+ notes?: string | undefined;
172
+ lastUpdated?: string | undefined;
173
+ }[] | undefined;
174
+ requiredArtifacts?: {
175
+ status: "not_applicable" | "pending" | "complete";
176
+ artifactId: string;
177
+ path?: string | undefined;
178
+ }[] | undefined;
179
+ lastChecked?: string | undefined;
180
+ compliancePercentage?: number | undefined;
181
+ }>;
182
+ type JurisdictionClassification = z.infer<typeof JurisdictionClassificationSchema>;
183
+ declare const TrustworthinessCharacteristicSchema: z.ZodObject<{
184
+ score: z.ZodOptional<z.ZodNumber>;
185
+ notes: z.ZodOptional<z.ZodString>;
186
+ lastAssessed: z.ZodOptional<z.ZodString>;
187
+ assessedBy: z.ZodOptional<z.ZodString>;
188
+ }, "strip", z.ZodTypeAny, {
189
+ notes?: string | undefined;
190
+ score?: number | undefined;
191
+ lastAssessed?: string | undefined;
192
+ assessedBy?: string | undefined;
193
+ }, {
194
+ notes?: string | undefined;
195
+ score?: number | undefined;
196
+ lastAssessed?: string | undefined;
197
+ assessedBy?: string | undefined;
198
+ }>;
199
+ type TrustworthinessCharacteristic = z.infer<typeof TrustworthinessCharacteristicSchema>;
200
+ declare const TrustworthinessSchema: z.ZodObject<{
201
+ /** Valid and reliable: produces accurate, consistent results */
202
+ valid: z.ZodOptional<z.ZodObject<{
203
+ score: z.ZodOptional<z.ZodNumber>;
204
+ notes: z.ZodOptional<z.ZodString>;
205
+ lastAssessed: z.ZodOptional<z.ZodString>;
206
+ assessedBy: z.ZodOptional<z.ZodString>;
207
+ }, "strip", z.ZodTypeAny, {
208
+ notes?: string | undefined;
209
+ score?: number | undefined;
210
+ lastAssessed?: string | undefined;
211
+ assessedBy?: string | undefined;
212
+ }, {
213
+ notes?: string | undefined;
214
+ score?: number | undefined;
215
+ lastAssessed?: string | undefined;
216
+ assessedBy?: string | undefined;
217
+ }>>;
218
+ reliable: z.ZodOptional<z.ZodObject<{
219
+ score: z.ZodOptional<z.ZodNumber>;
220
+ notes: z.ZodOptional<z.ZodString>;
221
+ lastAssessed: z.ZodOptional<z.ZodString>;
222
+ assessedBy: z.ZodOptional<z.ZodString>;
223
+ }, "strip", z.ZodTypeAny, {
224
+ notes?: string | undefined;
225
+ score?: number | undefined;
226
+ lastAssessed?: string | undefined;
227
+ assessedBy?: string | undefined;
228
+ }, {
229
+ notes?: string | undefined;
230
+ score?: number | undefined;
231
+ lastAssessed?: string | undefined;
232
+ assessedBy?: string | undefined;
233
+ }>>;
234
+ /** Safe: minimizes harm and risk */
235
+ safe: z.ZodOptional<z.ZodObject<{
236
+ score: z.ZodOptional<z.ZodNumber>;
237
+ notes: z.ZodOptional<z.ZodString>;
238
+ lastAssessed: z.ZodOptional<z.ZodString>;
239
+ assessedBy: z.ZodOptional<z.ZodString>;
240
+ }, "strip", z.ZodTypeAny, {
241
+ notes?: string | undefined;
242
+ score?: number | undefined;
243
+ lastAssessed?: string | undefined;
244
+ assessedBy?: string | undefined;
245
+ }, {
246
+ notes?: string | undefined;
247
+ score?: number | undefined;
248
+ lastAssessed?: string | undefined;
249
+ assessedBy?: string | undefined;
250
+ }>>;
251
+ /** Secure: protected against threats */
252
+ secure: z.ZodOptional<z.ZodObject<{
253
+ score: z.ZodOptional<z.ZodNumber>;
254
+ notes: z.ZodOptional<z.ZodString>;
255
+ lastAssessed: z.ZodOptional<z.ZodString>;
256
+ assessedBy: z.ZodOptional<z.ZodString>;
257
+ }, "strip", z.ZodTypeAny, {
258
+ notes?: string | undefined;
259
+ score?: number | undefined;
260
+ lastAssessed?: string | undefined;
261
+ assessedBy?: string | undefined;
262
+ }, {
263
+ notes?: string | undefined;
264
+ score?: number | undefined;
265
+ lastAssessed?: string | undefined;
266
+ assessedBy?: string | undefined;
267
+ }>>;
268
+ /** Accountable: clear responsibility and oversight */
269
+ accountable: z.ZodOptional<z.ZodObject<{
270
+ score: z.ZodOptional<z.ZodNumber>;
271
+ notes: z.ZodOptional<z.ZodString>;
272
+ lastAssessed: z.ZodOptional<z.ZodString>;
273
+ assessedBy: z.ZodOptional<z.ZodString>;
274
+ }, "strip", z.ZodTypeAny, {
275
+ notes?: string | undefined;
276
+ score?: number | undefined;
277
+ lastAssessed?: string | undefined;
278
+ assessedBy?: string | undefined;
279
+ }, {
280
+ notes?: string | undefined;
281
+ score?: number | undefined;
282
+ lastAssessed?: string | undefined;
283
+ assessedBy?: string | undefined;
284
+ }>>;
285
+ /** Transparent: understandable and open about limitations */
286
+ transparent: z.ZodOptional<z.ZodObject<{
287
+ score: z.ZodOptional<z.ZodNumber>;
288
+ notes: z.ZodOptional<z.ZodString>;
289
+ lastAssessed: z.ZodOptional<z.ZodString>;
290
+ assessedBy: z.ZodOptional<z.ZodString>;
291
+ }, "strip", z.ZodTypeAny, {
292
+ notes?: string | undefined;
293
+ score?: number | undefined;
294
+ lastAssessed?: string | undefined;
295
+ assessedBy?: string | undefined;
296
+ }, {
297
+ notes?: string | undefined;
298
+ score?: number | undefined;
299
+ lastAssessed?: string | undefined;
300
+ assessedBy?: string | undefined;
301
+ }>>;
302
+ /** Explainable: decisions can be understood */
303
+ explainable: z.ZodOptional<z.ZodObject<{
304
+ score: z.ZodOptional<z.ZodNumber>;
305
+ notes: z.ZodOptional<z.ZodString>;
306
+ lastAssessed: z.ZodOptional<z.ZodString>;
307
+ assessedBy: z.ZodOptional<z.ZodString>;
308
+ }, "strip", z.ZodTypeAny, {
309
+ notes?: string | undefined;
310
+ score?: number | undefined;
311
+ lastAssessed?: string | undefined;
312
+ assessedBy?: string | undefined;
313
+ }, {
314
+ notes?: string | undefined;
315
+ score?: number | undefined;
316
+ lastAssessed?: string | undefined;
317
+ assessedBy?: string | undefined;
318
+ }>>;
319
+ /** Privacy-enhanced: protects personal information */
320
+ privacyEnhanced: z.ZodOptional<z.ZodObject<{
321
+ score: z.ZodOptional<z.ZodNumber>;
322
+ notes: z.ZodOptional<z.ZodString>;
323
+ lastAssessed: z.ZodOptional<z.ZodString>;
324
+ assessedBy: z.ZodOptional<z.ZodString>;
325
+ }, "strip", z.ZodTypeAny, {
326
+ notes?: string | undefined;
327
+ score?: number | undefined;
328
+ lastAssessed?: string | undefined;
329
+ assessedBy?: string | undefined;
330
+ }, {
331
+ notes?: string | undefined;
332
+ score?: number | undefined;
333
+ lastAssessed?: string | undefined;
334
+ assessedBy?: string | undefined;
335
+ }>>;
336
+ /** Fair: avoids bias and discrimination */
337
+ fair: z.ZodOptional<z.ZodObject<{
338
+ score: z.ZodOptional<z.ZodNumber>;
339
+ notes: z.ZodOptional<z.ZodString>;
340
+ lastAssessed: z.ZodOptional<z.ZodString>;
341
+ assessedBy: z.ZodOptional<z.ZodString>;
342
+ }, "strip", z.ZodTypeAny, {
343
+ notes?: string | undefined;
344
+ score?: number | undefined;
345
+ lastAssessed?: string | undefined;
346
+ assessedBy?: string | undefined;
347
+ }, {
348
+ notes?: string | undefined;
349
+ score?: number | undefined;
350
+ lastAssessed?: string | undefined;
351
+ assessedBy?: string | undefined;
352
+ }>>;
353
+ }, "strip", z.ZodTypeAny, {
354
+ valid?: {
355
+ notes?: string | undefined;
356
+ score?: number | undefined;
357
+ lastAssessed?: string | undefined;
358
+ assessedBy?: string | undefined;
359
+ } | undefined;
360
+ reliable?: {
361
+ notes?: string | undefined;
362
+ score?: number | undefined;
363
+ lastAssessed?: string | undefined;
364
+ assessedBy?: string | undefined;
365
+ } | undefined;
366
+ safe?: {
367
+ notes?: string | undefined;
368
+ score?: number | undefined;
369
+ lastAssessed?: string | undefined;
370
+ assessedBy?: string | undefined;
371
+ } | undefined;
372
+ secure?: {
373
+ notes?: string | undefined;
374
+ score?: number | undefined;
375
+ lastAssessed?: string | undefined;
376
+ assessedBy?: string | undefined;
377
+ } | undefined;
378
+ accountable?: {
379
+ notes?: string | undefined;
380
+ score?: number | undefined;
381
+ lastAssessed?: string | undefined;
382
+ assessedBy?: string | undefined;
383
+ } | undefined;
384
+ transparent?: {
385
+ notes?: string | undefined;
386
+ score?: number | undefined;
387
+ lastAssessed?: string | undefined;
388
+ assessedBy?: string | undefined;
389
+ } | undefined;
390
+ explainable?: {
391
+ notes?: string | undefined;
392
+ score?: number | undefined;
393
+ lastAssessed?: string | undefined;
394
+ assessedBy?: string | undefined;
395
+ } | undefined;
396
+ privacyEnhanced?: {
397
+ notes?: string | undefined;
398
+ score?: number | undefined;
399
+ lastAssessed?: string | undefined;
400
+ assessedBy?: string | undefined;
401
+ } | undefined;
402
+ fair?: {
403
+ notes?: string | undefined;
404
+ score?: number | undefined;
405
+ lastAssessed?: string | undefined;
406
+ assessedBy?: string | undefined;
407
+ } | undefined;
408
+ }, {
409
+ valid?: {
410
+ notes?: string | undefined;
411
+ score?: number | undefined;
412
+ lastAssessed?: string | undefined;
413
+ assessedBy?: string | undefined;
414
+ } | undefined;
415
+ reliable?: {
416
+ notes?: string | undefined;
417
+ score?: number | undefined;
418
+ lastAssessed?: string | undefined;
419
+ assessedBy?: string | undefined;
420
+ } | undefined;
421
+ safe?: {
422
+ notes?: string | undefined;
423
+ score?: number | undefined;
424
+ lastAssessed?: string | undefined;
425
+ assessedBy?: string | undefined;
426
+ } | undefined;
427
+ secure?: {
428
+ notes?: string | undefined;
429
+ score?: number | undefined;
430
+ lastAssessed?: string | undefined;
431
+ assessedBy?: string | undefined;
432
+ } | undefined;
433
+ accountable?: {
434
+ notes?: string | undefined;
435
+ score?: number | undefined;
436
+ lastAssessed?: string | undefined;
437
+ assessedBy?: string | undefined;
438
+ } | undefined;
439
+ transparent?: {
440
+ notes?: string | undefined;
441
+ score?: number | undefined;
442
+ lastAssessed?: string | undefined;
443
+ assessedBy?: string | undefined;
444
+ } | undefined;
445
+ explainable?: {
446
+ notes?: string | undefined;
447
+ score?: number | undefined;
448
+ lastAssessed?: string | undefined;
449
+ assessedBy?: string | undefined;
450
+ } | undefined;
451
+ privacyEnhanced?: {
452
+ notes?: string | undefined;
453
+ score?: number | undefined;
454
+ lastAssessed?: string | undefined;
455
+ assessedBy?: string | undefined;
456
+ } | undefined;
457
+ fair?: {
458
+ notes?: string | undefined;
459
+ score?: number | undefined;
460
+ lastAssessed?: string | undefined;
461
+ assessedBy?: string | undefined;
462
+ } | undefined;
463
+ }>;
464
+ type Trustworthiness = z.infer<typeof TrustworthinessSchema>;
465
+ declare const ClassificationSchema: z.ZodObject<{
466
+ /** Primary AIGRC risk level */
467
+ riskLevel: z.ZodEnum<["minimal", "limited", "high", "unacceptable"]>;
468
+ /** Risk factors that influenced the classification */
469
+ riskFactors: z.ZodObject<{
470
+ autonomousDecisions: z.ZodDefault<z.ZodBoolean>;
471
+ customerFacing: z.ZodDefault<z.ZodBoolean>;
472
+ toolExecution: z.ZodDefault<z.ZodBoolean>;
473
+ externalDataAccess: z.ZodDefault<z.ZodBoolean>;
474
+ piiProcessing: z.ZodDefault<z.ZodEnum<["yes", "no", "unknown"]>>;
475
+ highStakesDecisions: z.ZodDefault<z.ZodBoolean>;
476
+ }, "strip", z.ZodTypeAny, {
477
+ autonomousDecisions: boolean;
478
+ customerFacing: boolean;
479
+ toolExecution: boolean;
480
+ externalDataAccess: boolean;
481
+ piiProcessing: "unknown" | "yes" | "no";
482
+ highStakesDecisions: boolean;
483
+ }, {
484
+ autonomousDecisions?: boolean | undefined;
485
+ customerFacing?: boolean | undefined;
486
+ toolExecution?: boolean | undefined;
487
+ externalDataAccess?: boolean | undefined;
488
+ piiProcessing?: "unknown" | "yes" | "no" | undefined;
489
+ highStakesDecisions?: boolean | undefined;
490
+ }>;
491
+ /** EU AI Act specific classification (legacy, prefer jurisdictions) */
492
+ euAiAct: z.ZodOptional<z.ZodObject<{
493
+ category: z.ZodString;
494
+ transparencyRequired: z.ZodDefault<z.ZodBoolean>;
495
+ }, "strip", z.ZodTypeAny, {
496
+ category: string;
497
+ transparencyRequired: boolean;
498
+ }, {
499
+ category: string;
500
+ transparencyRequired?: boolean | undefined;
501
+ }>>;
502
+ /** Required artifacts based on classification */
503
+ requiredArtifacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
504
+ type: z.ZodString;
505
+ status: z.ZodEnum<["pending", "complete", "not_applicable"]>;
506
+ path: z.ZodOptional<z.ZodString>;
507
+ }, "strip", z.ZodTypeAny, {
508
+ type: string;
509
+ status: "not_applicable" | "pending" | "complete";
510
+ path?: string | undefined;
511
+ }, {
512
+ type: string;
513
+ status: "not_applicable" | "pending" | "complete";
514
+ path?: string | undefined;
515
+ }>, "many">>;
516
+ /** Per-jurisdiction classifications for multi-jurisdiction compliance */
517
+ jurisdictions: z.ZodOptional<z.ZodArray<z.ZodObject<{
518
+ /** Profile/jurisdiction ID (e.g., "eu-ai-act", "us-omb-m24") */
519
+ jurisdictionId: z.ZodString;
520
+ /** Risk level mapped to this jurisdiction's terminology */
521
+ riskLevel: z.ZodString;
522
+ /** Jurisdiction-specific category (e.g., EU AI Act category) */
523
+ category: z.ZodOptional<z.ZodString>;
524
+ /** Status of controls for this jurisdiction */
525
+ controlStatuses: z.ZodOptional<z.ZodArray<z.ZodObject<{
526
+ controlId: z.ZodString;
527
+ status: z.ZodEnum<["implemented", "partial", "not_implemented", "not_applicable"]>;
528
+ evidence: z.ZodOptional<z.ZodString>;
529
+ notes: z.ZodOptional<z.ZodString>;
530
+ lastUpdated: z.ZodOptional<z.ZodString>;
531
+ }, "strip", z.ZodTypeAny, {
532
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
533
+ controlId: string;
534
+ evidence?: string | undefined;
535
+ notes?: string | undefined;
536
+ lastUpdated?: string | undefined;
537
+ }, {
538
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
539
+ controlId: string;
540
+ evidence?: string | undefined;
541
+ notes?: string | undefined;
542
+ lastUpdated?: string | undefined;
543
+ }>, "many">>;
544
+ /** Required artifacts for this jurisdiction */
545
+ requiredArtifacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
546
+ artifactId: z.ZodString;
547
+ status: z.ZodEnum<["pending", "complete", "not_applicable"]>;
548
+ path: z.ZodOptional<z.ZodString>;
549
+ }, "strip", z.ZodTypeAny, {
550
+ status: "not_applicable" | "pending" | "complete";
551
+ artifactId: string;
552
+ path?: string | undefined;
553
+ }, {
554
+ status: "not_applicable" | "pending" | "complete";
555
+ artifactId: string;
556
+ path?: string | undefined;
557
+ }>, "many">>;
558
+ /** Last compliance check date */
559
+ lastChecked: z.ZodOptional<z.ZodString>;
560
+ /** Compliance percentage for this jurisdiction */
561
+ compliancePercentage: z.ZodOptional<z.ZodNumber>;
562
+ }, "strip", z.ZodTypeAny, {
563
+ jurisdictionId: string;
564
+ riskLevel: string;
565
+ category?: string | undefined;
566
+ controlStatuses?: {
567
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
568
+ controlId: string;
569
+ evidence?: string | undefined;
570
+ notes?: string | undefined;
571
+ lastUpdated?: string | undefined;
572
+ }[] | undefined;
573
+ requiredArtifacts?: {
574
+ status: "not_applicable" | "pending" | "complete";
575
+ artifactId: string;
576
+ path?: string | undefined;
577
+ }[] | undefined;
578
+ lastChecked?: string | undefined;
579
+ compliancePercentage?: number | undefined;
580
+ }, {
581
+ jurisdictionId: string;
582
+ riskLevel: string;
583
+ category?: string | undefined;
584
+ controlStatuses?: {
585
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
586
+ controlId: string;
587
+ evidence?: string | undefined;
588
+ notes?: string | undefined;
589
+ lastUpdated?: string | undefined;
590
+ }[] | undefined;
591
+ requiredArtifacts?: {
592
+ status: "not_applicable" | "pending" | "complete";
593
+ artifactId: string;
594
+ path?: string | undefined;
595
+ }[] | undefined;
596
+ lastChecked?: string | undefined;
597
+ compliancePercentage?: number | undefined;
598
+ }>, "many">>;
599
+ /** NIST AI RMF trustworthiness characteristics */
600
+ trustworthiness: z.ZodOptional<z.ZodObject<{
601
+ /** Valid and reliable: produces accurate, consistent results */
602
+ valid: z.ZodOptional<z.ZodObject<{
603
+ score: z.ZodOptional<z.ZodNumber>;
604
+ notes: z.ZodOptional<z.ZodString>;
605
+ lastAssessed: z.ZodOptional<z.ZodString>;
606
+ assessedBy: z.ZodOptional<z.ZodString>;
607
+ }, "strip", z.ZodTypeAny, {
608
+ notes?: string | undefined;
609
+ score?: number | undefined;
610
+ lastAssessed?: string | undefined;
611
+ assessedBy?: string | undefined;
612
+ }, {
613
+ notes?: string | undefined;
614
+ score?: number | undefined;
615
+ lastAssessed?: string | undefined;
616
+ assessedBy?: string | undefined;
617
+ }>>;
618
+ reliable: z.ZodOptional<z.ZodObject<{
619
+ score: z.ZodOptional<z.ZodNumber>;
620
+ notes: z.ZodOptional<z.ZodString>;
621
+ lastAssessed: z.ZodOptional<z.ZodString>;
622
+ assessedBy: z.ZodOptional<z.ZodString>;
623
+ }, "strip", z.ZodTypeAny, {
624
+ notes?: string | undefined;
625
+ score?: number | undefined;
626
+ lastAssessed?: string | undefined;
627
+ assessedBy?: string | undefined;
628
+ }, {
629
+ notes?: string | undefined;
630
+ score?: number | undefined;
631
+ lastAssessed?: string | undefined;
632
+ assessedBy?: string | undefined;
633
+ }>>;
634
+ /** Safe: minimizes harm and risk */
635
+ safe: z.ZodOptional<z.ZodObject<{
636
+ score: z.ZodOptional<z.ZodNumber>;
637
+ notes: z.ZodOptional<z.ZodString>;
638
+ lastAssessed: z.ZodOptional<z.ZodString>;
639
+ assessedBy: z.ZodOptional<z.ZodString>;
640
+ }, "strip", z.ZodTypeAny, {
641
+ notes?: string | undefined;
642
+ score?: number | undefined;
643
+ lastAssessed?: string | undefined;
644
+ assessedBy?: string | undefined;
645
+ }, {
646
+ notes?: string | undefined;
647
+ score?: number | undefined;
648
+ lastAssessed?: string | undefined;
649
+ assessedBy?: string | undefined;
650
+ }>>;
651
+ /** Secure: protected against threats */
652
+ secure: z.ZodOptional<z.ZodObject<{
653
+ score: z.ZodOptional<z.ZodNumber>;
654
+ notes: z.ZodOptional<z.ZodString>;
655
+ lastAssessed: z.ZodOptional<z.ZodString>;
656
+ assessedBy: z.ZodOptional<z.ZodString>;
657
+ }, "strip", z.ZodTypeAny, {
658
+ notes?: string | undefined;
659
+ score?: number | undefined;
660
+ lastAssessed?: string | undefined;
661
+ assessedBy?: string | undefined;
662
+ }, {
663
+ notes?: string | undefined;
664
+ score?: number | undefined;
665
+ lastAssessed?: string | undefined;
666
+ assessedBy?: string | undefined;
667
+ }>>;
668
+ /** Accountable: clear responsibility and oversight */
669
+ accountable: z.ZodOptional<z.ZodObject<{
670
+ score: z.ZodOptional<z.ZodNumber>;
671
+ notes: z.ZodOptional<z.ZodString>;
672
+ lastAssessed: z.ZodOptional<z.ZodString>;
673
+ assessedBy: z.ZodOptional<z.ZodString>;
674
+ }, "strip", z.ZodTypeAny, {
675
+ notes?: string | undefined;
676
+ score?: number | undefined;
677
+ lastAssessed?: string | undefined;
678
+ assessedBy?: string | undefined;
679
+ }, {
680
+ notes?: string | undefined;
681
+ score?: number | undefined;
682
+ lastAssessed?: string | undefined;
683
+ assessedBy?: string | undefined;
684
+ }>>;
685
+ /** Transparent: understandable and open about limitations */
686
+ transparent: z.ZodOptional<z.ZodObject<{
687
+ score: z.ZodOptional<z.ZodNumber>;
688
+ notes: z.ZodOptional<z.ZodString>;
689
+ lastAssessed: z.ZodOptional<z.ZodString>;
690
+ assessedBy: z.ZodOptional<z.ZodString>;
691
+ }, "strip", z.ZodTypeAny, {
692
+ notes?: string | undefined;
693
+ score?: number | undefined;
694
+ lastAssessed?: string | undefined;
695
+ assessedBy?: string | undefined;
696
+ }, {
697
+ notes?: string | undefined;
698
+ score?: number | undefined;
699
+ lastAssessed?: string | undefined;
700
+ assessedBy?: string | undefined;
701
+ }>>;
702
+ /** Explainable: decisions can be understood */
703
+ explainable: z.ZodOptional<z.ZodObject<{
704
+ score: z.ZodOptional<z.ZodNumber>;
705
+ notes: z.ZodOptional<z.ZodString>;
706
+ lastAssessed: z.ZodOptional<z.ZodString>;
707
+ assessedBy: z.ZodOptional<z.ZodString>;
708
+ }, "strip", z.ZodTypeAny, {
709
+ notes?: string | undefined;
710
+ score?: number | undefined;
711
+ lastAssessed?: string | undefined;
712
+ assessedBy?: string | undefined;
713
+ }, {
714
+ notes?: string | undefined;
715
+ score?: number | undefined;
716
+ lastAssessed?: string | undefined;
717
+ assessedBy?: string | undefined;
718
+ }>>;
719
+ /** Privacy-enhanced: protects personal information */
720
+ privacyEnhanced: z.ZodOptional<z.ZodObject<{
721
+ score: z.ZodOptional<z.ZodNumber>;
722
+ notes: z.ZodOptional<z.ZodString>;
723
+ lastAssessed: z.ZodOptional<z.ZodString>;
724
+ assessedBy: z.ZodOptional<z.ZodString>;
725
+ }, "strip", z.ZodTypeAny, {
726
+ notes?: string | undefined;
727
+ score?: number | undefined;
728
+ lastAssessed?: string | undefined;
729
+ assessedBy?: string | undefined;
730
+ }, {
731
+ notes?: string | undefined;
732
+ score?: number | undefined;
733
+ lastAssessed?: string | undefined;
734
+ assessedBy?: string | undefined;
735
+ }>>;
736
+ /** Fair: avoids bias and discrimination */
737
+ fair: z.ZodOptional<z.ZodObject<{
738
+ score: z.ZodOptional<z.ZodNumber>;
739
+ notes: z.ZodOptional<z.ZodString>;
740
+ lastAssessed: z.ZodOptional<z.ZodString>;
741
+ assessedBy: z.ZodOptional<z.ZodString>;
742
+ }, "strip", z.ZodTypeAny, {
743
+ notes?: string | undefined;
744
+ score?: number | undefined;
745
+ lastAssessed?: string | undefined;
746
+ assessedBy?: string | undefined;
747
+ }, {
748
+ notes?: string | undefined;
749
+ score?: number | undefined;
750
+ lastAssessed?: string | undefined;
751
+ assessedBy?: string | undefined;
752
+ }>>;
753
+ }, "strip", z.ZodTypeAny, {
754
+ valid?: {
755
+ notes?: string | undefined;
756
+ score?: number | undefined;
757
+ lastAssessed?: string | undefined;
758
+ assessedBy?: string | undefined;
759
+ } | undefined;
760
+ reliable?: {
761
+ notes?: string | undefined;
762
+ score?: number | undefined;
763
+ lastAssessed?: string | undefined;
764
+ assessedBy?: string | undefined;
765
+ } | undefined;
766
+ safe?: {
767
+ notes?: string | undefined;
768
+ score?: number | undefined;
769
+ lastAssessed?: string | undefined;
770
+ assessedBy?: string | undefined;
771
+ } | undefined;
772
+ secure?: {
773
+ notes?: string | undefined;
774
+ score?: number | undefined;
775
+ lastAssessed?: string | undefined;
776
+ assessedBy?: string | undefined;
777
+ } | undefined;
778
+ accountable?: {
779
+ notes?: string | undefined;
780
+ score?: number | undefined;
781
+ lastAssessed?: string | undefined;
782
+ assessedBy?: string | undefined;
783
+ } | undefined;
784
+ transparent?: {
785
+ notes?: string | undefined;
786
+ score?: number | undefined;
787
+ lastAssessed?: string | undefined;
788
+ assessedBy?: string | undefined;
789
+ } | undefined;
790
+ explainable?: {
791
+ notes?: string | undefined;
792
+ score?: number | undefined;
793
+ lastAssessed?: string | undefined;
794
+ assessedBy?: string | undefined;
795
+ } | undefined;
796
+ privacyEnhanced?: {
797
+ notes?: string | undefined;
798
+ score?: number | undefined;
799
+ lastAssessed?: string | undefined;
800
+ assessedBy?: string | undefined;
801
+ } | undefined;
802
+ fair?: {
803
+ notes?: string | undefined;
804
+ score?: number | undefined;
805
+ lastAssessed?: string | undefined;
806
+ assessedBy?: string | undefined;
807
+ } | undefined;
808
+ }, {
809
+ valid?: {
810
+ notes?: string | undefined;
811
+ score?: number | undefined;
812
+ lastAssessed?: string | undefined;
813
+ assessedBy?: string | undefined;
814
+ } | undefined;
815
+ reliable?: {
816
+ notes?: string | undefined;
817
+ score?: number | undefined;
818
+ lastAssessed?: string | undefined;
819
+ assessedBy?: string | undefined;
820
+ } | undefined;
821
+ safe?: {
822
+ notes?: string | undefined;
823
+ score?: number | undefined;
824
+ lastAssessed?: string | undefined;
825
+ assessedBy?: string | undefined;
826
+ } | undefined;
827
+ secure?: {
828
+ notes?: string | undefined;
829
+ score?: number | undefined;
830
+ lastAssessed?: string | undefined;
831
+ assessedBy?: string | undefined;
832
+ } | undefined;
833
+ accountable?: {
834
+ notes?: string | undefined;
835
+ score?: number | undefined;
836
+ lastAssessed?: string | undefined;
837
+ assessedBy?: string | undefined;
838
+ } | undefined;
839
+ transparent?: {
840
+ notes?: string | undefined;
841
+ score?: number | undefined;
842
+ lastAssessed?: string | undefined;
843
+ assessedBy?: string | undefined;
844
+ } | undefined;
845
+ explainable?: {
846
+ notes?: string | undefined;
847
+ score?: number | undefined;
848
+ lastAssessed?: string | undefined;
849
+ assessedBy?: string | undefined;
850
+ } | undefined;
851
+ privacyEnhanced?: {
852
+ notes?: string | undefined;
853
+ score?: number | undefined;
854
+ lastAssessed?: string | undefined;
855
+ assessedBy?: string | undefined;
856
+ } | undefined;
857
+ fair?: {
858
+ notes?: string | undefined;
859
+ score?: number | undefined;
860
+ lastAssessed?: string | undefined;
861
+ assessedBy?: string | undefined;
862
+ } | undefined;
863
+ }>>;
864
+ }, "strip", z.ZodTypeAny, {
865
+ riskLevel: "minimal" | "limited" | "high" | "unacceptable";
866
+ riskFactors: {
867
+ autonomousDecisions: boolean;
868
+ customerFacing: boolean;
869
+ toolExecution: boolean;
870
+ externalDataAccess: boolean;
871
+ piiProcessing: "unknown" | "yes" | "no";
872
+ highStakesDecisions: boolean;
873
+ };
874
+ requiredArtifacts?: {
875
+ type: string;
876
+ status: "not_applicable" | "pending" | "complete";
877
+ path?: string | undefined;
878
+ }[] | undefined;
879
+ euAiAct?: {
880
+ category: string;
881
+ transparencyRequired: boolean;
882
+ } | undefined;
883
+ jurisdictions?: {
884
+ jurisdictionId: string;
885
+ riskLevel: string;
886
+ category?: string | undefined;
887
+ controlStatuses?: {
888
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
889
+ controlId: string;
890
+ evidence?: string | undefined;
891
+ notes?: string | undefined;
892
+ lastUpdated?: string | undefined;
893
+ }[] | undefined;
894
+ requiredArtifacts?: {
895
+ status: "not_applicable" | "pending" | "complete";
896
+ artifactId: string;
897
+ path?: string | undefined;
898
+ }[] | undefined;
899
+ lastChecked?: string | undefined;
900
+ compliancePercentage?: number | undefined;
901
+ }[] | undefined;
902
+ trustworthiness?: {
903
+ valid?: {
904
+ notes?: string | undefined;
905
+ score?: number | undefined;
906
+ lastAssessed?: string | undefined;
907
+ assessedBy?: string | undefined;
908
+ } | undefined;
909
+ reliable?: {
910
+ notes?: string | undefined;
911
+ score?: number | undefined;
912
+ lastAssessed?: string | undefined;
913
+ assessedBy?: string | undefined;
914
+ } | undefined;
915
+ safe?: {
916
+ notes?: string | undefined;
917
+ score?: number | undefined;
918
+ lastAssessed?: string | undefined;
919
+ assessedBy?: string | undefined;
920
+ } | undefined;
921
+ secure?: {
922
+ notes?: string | undefined;
923
+ score?: number | undefined;
924
+ lastAssessed?: string | undefined;
925
+ assessedBy?: string | undefined;
926
+ } | undefined;
927
+ accountable?: {
928
+ notes?: string | undefined;
929
+ score?: number | undefined;
930
+ lastAssessed?: string | undefined;
931
+ assessedBy?: string | undefined;
932
+ } | undefined;
933
+ transparent?: {
934
+ notes?: string | undefined;
935
+ score?: number | undefined;
936
+ lastAssessed?: string | undefined;
937
+ assessedBy?: string | undefined;
938
+ } | undefined;
939
+ explainable?: {
940
+ notes?: string | undefined;
941
+ score?: number | undefined;
942
+ lastAssessed?: string | undefined;
943
+ assessedBy?: string | undefined;
944
+ } | undefined;
945
+ privacyEnhanced?: {
946
+ notes?: string | undefined;
947
+ score?: number | undefined;
948
+ lastAssessed?: string | undefined;
949
+ assessedBy?: string | undefined;
950
+ } | undefined;
951
+ fair?: {
952
+ notes?: string | undefined;
953
+ score?: number | undefined;
954
+ lastAssessed?: string | undefined;
955
+ assessedBy?: string | undefined;
956
+ } | undefined;
957
+ } | undefined;
958
+ }, {
959
+ riskLevel: "minimal" | "limited" | "high" | "unacceptable";
960
+ riskFactors: {
961
+ autonomousDecisions?: boolean | undefined;
962
+ customerFacing?: boolean | undefined;
963
+ toolExecution?: boolean | undefined;
964
+ externalDataAccess?: boolean | undefined;
965
+ piiProcessing?: "unknown" | "yes" | "no" | undefined;
966
+ highStakesDecisions?: boolean | undefined;
967
+ };
968
+ requiredArtifacts?: {
969
+ type: string;
970
+ status: "not_applicable" | "pending" | "complete";
971
+ path?: string | undefined;
972
+ }[] | undefined;
973
+ euAiAct?: {
974
+ category: string;
975
+ transparencyRequired?: boolean | undefined;
976
+ } | undefined;
977
+ jurisdictions?: {
978
+ jurisdictionId: string;
979
+ riskLevel: string;
980
+ category?: string | undefined;
981
+ controlStatuses?: {
982
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
983
+ controlId: string;
984
+ evidence?: string | undefined;
985
+ notes?: string | undefined;
986
+ lastUpdated?: string | undefined;
987
+ }[] | undefined;
988
+ requiredArtifacts?: {
989
+ status: "not_applicable" | "pending" | "complete";
990
+ artifactId: string;
991
+ path?: string | undefined;
992
+ }[] | undefined;
993
+ lastChecked?: string | undefined;
994
+ compliancePercentage?: number | undefined;
995
+ }[] | undefined;
996
+ trustworthiness?: {
997
+ valid?: {
998
+ notes?: string | undefined;
999
+ score?: number | undefined;
1000
+ lastAssessed?: string | undefined;
1001
+ assessedBy?: string | undefined;
1002
+ } | undefined;
1003
+ reliable?: {
1004
+ notes?: string | undefined;
1005
+ score?: number | undefined;
1006
+ lastAssessed?: string | undefined;
1007
+ assessedBy?: string | undefined;
1008
+ } | undefined;
1009
+ safe?: {
1010
+ notes?: string | undefined;
1011
+ score?: number | undefined;
1012
+ lastAssessed?: string | undefined;
1013
+ assessedBy?: string | undefined;
1014
+ } | undefined;
1015
+ secure?: {
1016
+ notes?: string | undefined;
1017
+ score?: number | undefined;
1018
+ lastAssessed?: string | undefined;
1019
+ assessedBy?: string | undefined;
1020
+ } | undefined;
1021
+ accountable?: {
1022
+ notes?: string | undefined;
1023
+ score?: number | undefined;
1024
+ lastAssessed?: string | undefined;
1025
+ assessedBy?: string | undefined;
1026
+ } | undefined;
1027
+ transparent?: {
1028
+ notes?: string | undefined;
1029
+ score?: number | undefined;
1030
+ lastAssessed?: string | undefined;
1031
+ assessedBy?: string | undefined;
1032
+ } | undefined;
1033
+ explainable?: {
1034
+ notes?: string | undefined;
1035
+ score?: number | undefined;
1036
+ lastAssessed?: string | undefined;
1037
+ assessedBy?: string | undefined;
1038
+ } | undefined;
1039
+ privacyEnhanced?: {
1040
+ notes?: string | undefined;
1041
+ score?: number | undefined;
1042
+ lastAssessed?: string | undefined;
1043
+ assessedBy?: string | undefined;
1044
+ } | undefined;
1045
+ fair?: {
1046
+ notes?: string | undefined;
1047
+ score?: number | undefined;
1048
+ lastAssessed?: string | undefined;
1049
+ assessedBy?: string | undefined;
1050
+ } | undefined;
1051
+ } | undefined;
1052
+ }>;
1053
+ type Classification = z.infer<typeof ClassificationSchema>;
1054
+ declare const IntentSchema: z.ZodObject<{
1055
+ linked: z.ZodDefault<z.ZodBoolean>;
1056
+ ticketSystem: z.ZodOptional<z.ZodNullable<z.ZodEnum<["jira", "ado", "github", "gitlab"]>>>;
1057
+ ticketId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1058
+ ticketUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1059
+ businessJustification: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1060
+ riskTolerance: z.ZodOptional<z.ZodNullable<z.ZodEnum<["low", "medium", "high"]>>>;
1061
+ importedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1062
+ }, "strip", z.ZodTypeAny, {
1063
+ linked: boolean;
1064
+ ticketSystem?: "jira" | "ado" | "github" | "gitlab" | null | undefined;
1065
+ ticketId?: string | null | undefined;
1066
+ ticketUrl?: string | null | undefined;
1067
+ businessJustification?: string | null | undefined;
1068
+ riskTolerance?: "high" | "low" | "medium" | null | undefined;
1069
+ importedAt?: string | null | undefined;
1070
+ }, {
1071
+ linked?: boolean | undefined;
1072
+ ticketSystem?: "jira" | "ado" | "github" | "gitlab" | null | undefined;
1073
+ ticketId?: string | null | undefined;
1074
+ ticketUrl?: string | null | undefined;
1075
+ businessJustification?: string | null | undefined;
1076
+ riskTolerance?: "high" | "low" | "medium" | null | undefined;
1077
+ importedAt?: string | null | undefined;
1078
+ }>;
1079
+ type Intent = z.infer<typeof IntentSchema>;
1080
+ declare const ApprovalSchema: z.ZodObject<{
1081
+ role: z.ZodString;
1082
+ name: z.ZodString;
1083
+ email: z.ZodOptional<z.ZodString>;
1084
+ date: z.ZodString;
1085
+ source: z.ZodOptional<z.ZodString>;
1086
+ }, "strip", z.ZodTypeAny, {
1087
+ name: string;
1088
+ date: string;
1089
+ role: string;
1090
+ email?: string | undefined;
1091
+ source?: string | undefined;
1092
+ }, {
1093
+ name: string;
1094
+ date: string;
1095
+ role: string;
1096
+ email?: string | undefined;
1097
+ source?: string | undefined;
1098
+ }>;
1099
+ declare const GovernanceSchema: z.ZodObject<{
1100
+ status: z.ZodEnum<["draft", "linked", "approved", "production", "deprecated", "revoked"]>;
1101
+ approvals: z.ZodDefault<z.ZodArray<z.ZodObject<{
1102
+ role: z.ZodString;
1103
+ name: z.ZodString;
1104
+ email: z.ZodOptional<z.ZodString>;
1105
+ date: z.ZodString;
1106
+ source: z.ZodOptional<z.ZodString>;
1107
+ }, "strip", z.ZodTypeAny, {
1108
+ name: string;
1109
+ date: string;
1110
+ role: string;
1111
+ email?: string | undefined;
1112
+ source?: string | undefined;
1113
+ }, {
1114
+ name: string;
1115
+ date: string;
1116
+ role: string;
1117
+ email?: string | undefined;
1118
+ source?: string | undefined;
1119
+ }>, "many">>;
1120
+ deployment: z.ZodOptional<z.ZodObject<{
1121
+ environments: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1122
+ lastDeployed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1123
+ }, "strip", z.ZodTypeAny, {
1124
+ environments: string[];
1125
+ lastDeployed?: string | null | undefined;
1126
+ }, {
1127
+ environments?: string[] | undefined;
1128
+ lastDeployed?: string | null | undefined;
1129
+ }>>;
1130
+ }, "strip", z.ZodTypeAny, {
1131
+ status: "linked" | "draft" | "approved" | "production" | "deprecated" | "revoked";
1132
+ approvals: {
1133
+ name: string;
1134
+ date: string;
1135
+ role: string;
1136
+ email?: string | undefined;
1137
+ source?: string | undefined;
1138
+ }[];
1139
+ deployment?: {
1140
+ environments: string[];
1141
+ lastDeployed?: string | null | undefined;
1142
+ } | undefined;
1143
+ }, {
1144
+ status: "linked" | "draft" | "approved" | "production" | "deprecated" | "revoked";
1145
+ approvals?: {
1146
+ name: string;
1147
+ date: string;
1148
+ role: string;
1149
+ email?: string | undefined;
1150
+ source?: string | undefined;
1151
+ }[] | undefined;
1152
+ deployment?: {
1153
+ environments?: string[] | undefined;
1154
+ lastDeployed?: string | null | undefined;
1155
+ } | undefined;
1156
+ }>;
1157
+ type Governance = z.infer<typeof GovernanceSchema>;
1158
+ declare const ConstraintsSchema: z.ZodObject<{
1159
+ runtime: z.ZodOptional<z.ZodObject<{
1160
+ maxIterations: z.ZodOptional<z.ZodNumber>;
1161
+ timeoutSeconds: z.ZodOptional<z.ZodNumber>;
1162
+ maxTokensPerRequest: z.ZodOptional<z.ZodNumber>;
1163
+ maxCostPerRequestUsd: z.ZodOptional<z.ZodNumber>;
1164
+ }, "strip", z.ZodTypeAny, {
1165
+ maxIterations?: number | undefined;
1166
+ timeoutSeconds?: number | undefined;
1167
+ maxTokensPerRequest?: number | undefined;
1168
+ maxCostPerRequestUsd?: number | undefined;
1169
+ }, {
1170
+ maxIterations?: number | undefined;
1171
+ timeoutSeconds?: number | undefined;
1172
+ maxTokensPerRequest?: number | undefined;
1173
+ maxCostPerRequestUsd?: number | undefined;
1174
+ }>>;
1175
+ humanApprovalRequired: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1176
+ monitoring: z.ZodOptional<z.ZodObject<{
1177
+ logAllDecisions: z.ZodDefault<z.ZodBoolean>;
1178
+ logToolInvocations: z.ZodDefault<z.ZodBoolean>;
1179
+ }, "strip", z.ZodTypeAny, {
1180
+ logAllDecisions: boolean;
1181
+ logToolInvocations: boolean;
1182
+ }, {
1183
+ logAllDecisions?: boolean | undefined;
1184
+ logToolInvocations?: boolean | undefined;
1185
+ }>>;
1186
+ }, "strip", z.ZodTypeAny, {
1187
+ runtime?: {
1188
+ maxIterations?: number | undefined;
1189
+ timeoutSeconds?: number | undefined;
1190
+ maxTokensPerRequest?: number | undefined;
1191
+ maxCostPerRequestUsd?: number | undefined;
1192
+ } | undefined;
1193
+ humanApprovalRequired?: string[] | undefined;
1194
+ monitoring?: {
1195
+ logAllDecisions: boolean;
1196
+ logToolInvocations: boolean;
1197
+ } | undefined;
1198
+ }, {
1199
+ runtime?: {
1200
+ maxIterations?: number | undefined;
1201
+ timeoutSeconds?: number | undefined;
1202
+ maxTokensPerRequest?: number | undefined;
1203
+ maxCostPerRequestUsd?: number | undefined;
1204
+ } | undefined;
1205
+ humanApprovalRequired?: string[] | undefined;
1206
+ monitoring?: {
1207
+ logAllDecisions?: boolean | undefined;
1208
+ logToolInvocations?: boolean | undefined;
1209
+ } | undefined;
1210
+ }>;
1211
+ type Constraints = z.infer<typeof ConstraintsSchema>;
1212
+ declare const AssetCardSchema: z.ZodObject<{
1213
+ $schema: z.ZodOptional<z.ZodString>;
1214
+ id: z.ZodString;
1215
+ name: z.ZodString;
1216
+ description: z.ZodOptional<z.ZodString>;
1217
+ version: z.ZodDefault<z.ZodString>;
1218
+ created: z.ZodString;
1219
+ updated: z.ZodString;
1220
+ ownership: z.ZodObject<{
1221
+ owner: z.ZodObject<{
1222
+ name: z.ZodString;
1223
+ email: z.ZodString;
1224
+ team: z.ZodOptional<z.ZodString>;
1225
+ }, "strip", z.ZodTypeAny, {
1226
+ name: string;
1227
+ email: string;
1228
+ team?: string | undefined;
1229
+ }, {
1230
+ name: string;
1231
+ email: string;
1232
+ team?: string | undefined;
1233
+ }>;
1234
+ team: z.ZodOptional<z.ZodString>;
1235
+ }, "strip", z.ZodTypeAny, {
1236
+ owner: {
1237
+ name: string;
1238
+ email: string;
1239
+ team?: string | undefined;
1240
+ };
1241
+ team?: string | undefined;
1242
+ }, {
1243
+ owner: {
1244
+ name: string;
1245
+ email: string;
1246
+ team?: string | undefined;
1247
+ };
1248
+ team?: string | undefined;
1249
+ }>;
1250
+ technical: z.ZodObject<{
1251
+ type: z.ZodEnum<["model", "agent", "api_client", "framework", "pipeline"]>;
1252
+ framework: z.ZodOptional<z.ZodString>;
1253
+ frameworkVersion: z.ZodOptional<z.ZodString>;
1254
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
1255
+ type: z.ZodString;
1256
+ provider: z.ZodOptional<z.ZodString>;
1257
+ model: z.ZodOptional<z.ZodString>;
1258
+ }, "strip", z.ZodTypeAny, {
1259
+ type: string;
1260
+ model?: string | undefined;
1261
+ provider?: string | undefined;
1262
+ }, {
1263
+ type: string;
1264
+ model?: string | undefined;
1265
+ provider?: string | undefined;
1266
+ }>, "many">>;
1267
+ sourceFiles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1268
+ }, "strip", z.ZodTypeAny, {
1269
+ type: "model" | "agent" | "api_client" | "framework" | "pipeline";
1270
+ framework?: string | undefined;
1271
+ frameworkVersion?: string | undefined;
1272
+ components?: {
1273
+ type: string;
1274
+ model?: string | undefined;
1275
+ provider?: string | undefined;
1276
+ }[] | undefined;
1277
+ sourceFiles?: string[] | undefined;
1278
+ }, {
1279
+ type: "model" | "agent" | "api_client" | "framework" | "pipeline";
1280
+ framework?: string | undefined;
1281
+ frameworkVersion?: string | undefined;
1282
+ components?: {
1283
+ type: string;
1284
+ model?: string | undefined;
1285
+ provider?: string | undefined;
1286
+ }[] | undefined;
1287
+ sourceFiles?: string[] | undefined;
1288
+ }>;
1289
+ classification: z.ZodObject<{
1290
+ /** Primary AIGRC risk level */
1291
+ riskLevel: z.ZodEnum<["minimal", "limited", "high", "unacceptable"]>;
1292
+ /** Risk factors that influenced the classification */
1293
+ riskFactors: z.ZodObject<{
1294
+ autonomousDecisions: z.ZodDefault<z.ZodBoolean>;
1295
+ customerFacing: z.ZodDefault<z.ZodBoolean>;
1296
+ toolExecution: z.ZodDefault<z.ZodBoolean>;
1297
+ externalDataAccess: z.ZodDefault<z.ZodBoolean>;
1298
+ piiProcessing: z.ZodDefault<z.ZodEnum<["yes", "no", "unknown"]>>;
1299
+ highStakesDecisions: z.ZodDefault<z.ZodBoolean>;
1300
+ }, "strip", z.ZodTypeAny, {
1301
+ autonomousDecisions: boolean;
1302
+ customerFacing: boolean;
1303
+ toolExecution: boolean;
1304
+ externalDataAccess: boolean;
1305
+ piiProcessing: "unknown" | "yes" | "no";
1306
+ highStakesDecisions: boolean;
1307
+ }, {
1308
+ autonomousDecisions?: boolean | undefined;
1309
+ customerFacing?: boolean | undefined;
1310
+ toolExecution?: boolean | undefined;
1311
+ externalDataAccess?: boolean | undefined;
1312
+ piiProcessing?: "unknown" | "yes" | "no" | undefined;
1313
+ highStakesDecisions?: boolean | undefined;
1314
+ }>;
1315
+ /** EU AI Act specific classification (legacy, prefer jurisdictions) */
1316
+ euAiAct: z.ZodOptional<z.ZodObject<{
1317
+ category: z.ZodString;
1318
+ transparencyRequired: z.ZodDefault<z.ZodBoolean>;
1319
+ }, "strip", z.ZodTypeAny, {
1320
+ category: string;
1321
+ transparencyRequired: boolean;
1322
+ }, {
1323
+ category: string;
1324
+ transparencyRequired?: boolean | undefined;
1325
+ }>>;
1326
+ /** Required artifacts based on classification */
1327
+ requiredArtifacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
1328
+ type: z.ZodString;
1329
+ status: z.ZodEnum<["pending", "complete", "not_applicable"]>;
1330
+ path: z.ZodOptional<z.ZodString>;
1331
+ }, "strip", z.ZodTypeAny, {
1332
+ type: string;
1333
+ status: "not_applicable" | "pending" | "complete";
1334
+ path?: string | undefined;
1335
+ }, {
1336
+ type: string;
1337
+ status: "not_applicable" | "pending" | "complete";
1338
+ path?: string | undefined;
1339
+ }>, "many">>;
1340
+ /** Per-jurisdiction classifications for multi-jurisdiction compliance */
1341
+ jurisdictions: z.ZodOptional<z.ZodArray<z.ZodObject<{
1342
+ /** Profile/jurisdiction ID (e.g., "eu-ai-act", "us-omb-m24") */
1343
+ jurisdictionId: z.ZodString;
1344
+ /** Risk level mapped to this jurisdiction's terminology */
1345
+ riskLevel: z.ZodString;
1346
+ /** Jurisdiction-specific category (e.g., EU AI Act category) */
1347
+ category: z.ZodOptional<z.ZodString>;
1348
+ /** Status of controls for this jurisdiction */
1349
+ controlStatuses: z.ZodOptional<z.ZodArray<z.ZodObject<{
1350
+ controlId: z.ZodString;
1351
+ status: z.ZodEnum<["implemented", "partial", "not_implemented", "not_applicable"]>;
1352
+ evidence: z.ZodOptional<z.ZodString>;
1353
+ notes: z.ZodOptional<z.ZodString>;
1354
+ lastUpdated: z.ZodOptional<z.ZodString>;
1355
+ }, "strip", z.ZodTypeAny, {
1356
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
1357
+ controlId: string;
1358
+ evidence?: string | undefined;
1359
+ notes?: string | undefined;
1360
+ lastUpdated?: string | undefined;
1361
+ }, {
1362
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
1363
+ controlId: string;
1364
+ evidence?: string | undefined;
1365
+ notes?: string | undefined;
1366
+ lastUpdated?: string | undefined;
1367
+ }>, "many">>;
1368
+ /** Required artifacts for this jurisdiction */
1369
+ requiredArtifacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
1370
+ artifactId: z.ZodString;
1371
+ status: z.ZodEnum<["pending", "complete", "not_applicable"]>;
1372
+ path: z.ZodOptional<z.ZodString>;
1373
+ }, "strip", z.ZodTypeAny, {
1374
+ status: "not_applicable" | "pending" | "complete";
1375
+ artifactId: string;
1376
+ path?: string | undefined;
1377
+ }, {
1378
+ status: "not_applicable" | "pending" | "complete";
1379
+ artifactId: string;
1380
+ path?: string | undefined;
1381
+ }>, "many">>;
1382
+ /** Last compliance check date */
1383
+ lastChecked: z.ZodOptional<z.ZodString>;
1384
+ /** Compliance percentage for this jurisdiction */
1385
+ compliancePercentage: z.ZodOptional<z.ZodNumber>;
1386
+ }, "strip", z.ZodTypeAny, {
1387
+ jurisdictionId: string;
1388
+ riskLevel: string;
1389
+ category?: string | undefined;
1390
+ controlStatuses?: {
1391
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
1392
+ controlId: string;
1393
+ evidence?: string | undefined;
1394
+ notes?: string | undefined;
1395
+ lastUpdated?: string | undefined;
1396
+ }[] | undefined;
1397
+ requiredArtifacts?: {
1398
+ status: "not_applicable" | "pending" | "complete";
1399
+ artifactId: string;
1400
+ path?: string | undefined;
1401
+ }[] | undefined;
1402
+ lastChecked?: string | undefined;
1403
+ compliancePercentage?: number | undefined;
1404
+ }, {
1405
+ jurisdictionId: string;
1406
+ riskLevel: string;
1407
+ category?: string | undefined;
1408
+ controlStatuses?: {
1409
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
1410
+ controlId: string;
1411
+ evidence?: string | undefined;
1412
+ notes?: string | undefined;
1413
+ lastUpdated?: string | undefined;
1414
+ }[] | undefined;
1415
+ requiredArtifacts?: {
1416
+ status: "not_applicable" | "pending" | "complete";
1417
+ artifactId: string;
1418
+ path?: string | undefined;
1419
+ }[] | undefined;
1420
+ lastChecked?: string | undefined;
1421
+ compliancePercentage?: number | undefined;
1422
+ }>, "many">>;
1423
+ /** NIST AI RMF trustworthiness characteristics */
1424
+ trustworthiness: z.ZodOptional<z.ZodObject<{
1425
+ /** Valid and reliable: produces accurate, consistent results */
1426
+ valid: z.ZodOptional<z.ZodObject<{
1427
+ score: z.ZodOptional<z.ZodNumber>;
1428
+ notes: z.ZodOptional<z.ZodString>;
1429
+ lastAssessed: z.ZodOptional<z.ZodString>;
1430
+ assessedBy: z.ZodOptional<z.ZodString>;
1431
+ }, "strip", z.ZodTypeAny, {
1432
+ notes?: string | undefined;
1433
+ score?: number | undefined;
1434
+ lastAssessed?: string | undefined;
1435
+ assessedBy?: string | undefined;
1436
+ }, {
1437
+ notes?: string | undefined;
1438
+ score?: number | undefined;
1439
+ lastAssessed?: string | undefined;
1440
+ assessedBy?: string | undefined;
1441
+ }>>;
1442
+ reliable: z.ZodOptional<z.ZodObject<{
1443
+ score: z.ZodOptional<z.ZodNumber>;
1444
+ notes: z.ZodOptional<z.ZodString>;
1445
+ lastAssessed: z.ZodOptional<z.ZodString>;
1446
+ assessedBy: z.ZodOptional<z.ZodString>;
1447
+ }, "strip", z.ZodTypeAny, {
1448
+ notes?: string | undefined;
1449
+ score?: number | undefined;
1450
+ lastAssessed?: string | undefined;
1451
+ assessedBy?: string | undefined;
1452
+ }, {
1453
+ notes?: string | undefined;
1454
+ score?: number | undefined;
1455
+ lastAssessed?: string | undefined;
1456
+ assessedBy?: string | undefined;
1457
+ }>>;
1458
+ /** Safe: minimizes harm and risk */
1459
+ safe: z.ZodOptional<z.ZodObject<{
1460
+ score: z.ZodOptional<z.ZodNumber>;
1461
+ notes: z.ZodOptional<z.ZodString>;
1462
+ lastAssessed: z.ZodOptional<z.ZodString>;
1463
+ assessedBy: z.ZodOptional<z.ZodString>;
1464
+ }, "strip", z.ZodTypeAny, {
1465
+ notes?: string | undefined;
1466
+ score?: number | undefined;
1467
+ lastAssessed?: string | undefined;
1468
+ assessedBy?: string | undefined;
1469
+ }, {
1470
+ notes?: string | undefined;
1471
+ score?: number | undefined;
1472
+ lastAssessed?: string | undefined;
1473
+ assessedBy?: string | undefined;
1474
+ }>>;
1475
+ /** Secure: protected against threats */
1476
+ secure: z.ZodOptional<z.ZodObject<{
1477
+ score: z.ZodOptional<z.ZodNumber>;
1478
+ notes: z.ZodOptional<z.ZodString>;
1479
+ lastAssessed: z.ZodOptional<z.ZodString>;
1480
+ assessedBy: z.ZodOptional<z.ZodString>;
1481
+ }, "strip", z.ZodTypeAny, {
1482
+ notes?: string | undefined;
1483
+ score?: number | undefined;
1484
+ lastAssessed?: string | undefined;
1485
+ assessedBy?: string | undefined;
1486
+ }, {
1487
+ notes?: string | undefined;
1488
+ score?: number | undefined;
1489
+ lastAssessed?: string | undefined;
1490
+ assessedBy?: string | undefined;
1491
+ }>>;
1492
+ /** Accountable: clear responsibility and oversight */
1493
+ accountable: z.ZodOptional<z.ZodObject<{
1494
+ score: z.ZodOptional<z.ZodNumber>;
1495
+ notes: z.ZodOptional<z.ZodString>;
1496
+ lastAssessed: z.ZodOptional<z.ZodString>;
1497
+ assessedBy: z.ZodOptional<z.ZodString>;
1498
+ }, "strip", z.ZodTypeAny, {
1499
+ notes?: string | undefined;
1500
+ score?: number | undefined;
1501
+ lastAssessed?: string | undefined;
1502
+ assessedBy?: string | undefined;
1503
+ }, {
1504
+ notes?: string | undefined;
1505
+ score?: number | undefined;
1506
+ lastAssessed?: string | undefined;
1507
+ assessedBy?: string | undefined;
1508
+ }>>;
1509
+ /** Transparent: understandable and open about limitations */
1510
+ transparent: z.ZodOptional<z.ZodObject<{
1511
+ score: z.ZodOptional<z.ZodNumber>;
1512
+ notes: z.ZodOptional<z.ZodString>;
1513
+ lastAssessed: z.ZodOptional<z.ZodString>;
1514
+ assessedBy: z.ZodOptional<z.ZodString>;
1515
+ }, "strip", z.ZodTypeAny, {
1516
+ notes?: string | undefined;
1517
+ score?: number | undefined;
1518
+ lastAssessed?: string | undefined;
1519
+ assessedBy?: string | undefined;
1520
+ }, {
1521
+ notes?: string | undefined;
1522
+ score?: number | undefined;
1523
+ lastAssessed?: string | undefined;
1524
+ assessedBy?: string | undefined;
1525
+ }>>;
1526
+ /** Explainable: decisions can be understood */
1527
+ explainable: z.ZodOptional<z.ZodObject<{
1528
+ score: z.ZodOptional<z.ZodNumber>;
1529
+ notes: z.ZodOptional<z.ZodString>;
1530
+ lastAssessed: z.ZodOptional<z.ZodString>;
1531
+ assessedBy: z.ZodOptional<z.ZodString>;
1532
+ }, "strip", z.ZodTypeAny, {
1533
+ notes?: string | undefined;
1534
+ score?: number | undefined;
1535
+ lastAssessed?: string | undefined;
1536
+ assessedBy?: string | undefined;
1537
+ }, {
1538
+ notes?: string | undefined;
1539
+ score?: number | undefined;
1540
+ lastAssessed?: string | undefined;
1541
+ assessedBy?: string | undefined;
1542
+ }>>;
1543
+ /** Privacy-enhanced: protects personal information */
1544
+ privacyEnhanced: z.ZodOptional<z.ZodObject<{
1545
+ score: z.ZodOptional<z.ZodNumber>;
1546
+ notes: z.ZodOptional<z.ZodString>;
1547
+ lastAssessed: z.ZodOptional<z.ZodString>;
1548
+ assessedBy: z.ZodOptional<z.ZodString>;
1549
+ }, "strip", z.ZodTypeAny, {
1550
+ notes?: string | undefined;
1551
+ score?: number | undefined;
1552
+ lastAssessed?: string | undefined;
1553
+ assessedBy?: string | undefined;
1554
+ }, {
1555
+ notes?: string | undefined;
1556
+ score?: number | undefined;
1557
+ lastAssessed?: string | undefined;
1558
+ assessedBy?: string | undefined;
1559
+ }>>;
1560
+ /** Fair: avoids bias and discrimination */
1561
+ fair: z.ZodOptional<z.ZodObject<{
1562
+ score: z.ZodOptional<z.ZodNumber>;
1563
+ notes: z.ZodOptional<z.ZodString>;
1564
+ lastAssessed: z.ZodOptional<z.ZodString>;
1565
+ assessedBy: z.ZodOptional<z.ZodString>;
1566
+ }, "strip", z.ZodTypeAny, {
1567
+ notes?: string | undefined;
1568
+ score?: number | undefined;
1569
+ lastAssessed?: string | undefined;
1570
+ assessedBy?: string | undefined;
1571
+ }, {
1572
+ notes?: string | undefined;
1573
+ score?: number | undefined;
1574
+ lastAssessed?: string | undefined;
1575
+ assessedBy?: string | undefined;
1576
+ }>>;
1577
+ }, "strip", z.ZodTypeAny, {
1578
+ valid?: {
1579
+ notes?: string | undefined;
1580
+ score?: number | undefined;
1581
+ lastAssessed?: string | undefined;
1582
+ assessedBy?: string | undefined;
1583
+ } | undefined;
1584
+ reliable?: {
1585
+ notes?: string | undefined;
1586
+ score?: number | undefined;
1587
+ lastAssessed?: string | undefined;
1588
+ assessedBy?: string | undefined;
1589
+ } | undefined;
1590
+ safe?: {
1591
+ notes?: string | undefined;
1592
+ score?: number | undefined;
1593
+ lastAssessed?: string | undefined;
1594
+ assessedBy?: string | undefined;
1595
+ } | undefined;
1596
+ secure?: {
1597
+ notes?: string | undefined;
1598
+ score?: number | undefined;
1599
+ lastAssessed?: string | undefined;
1600
+ assessedBy?: string | undefined;
1601
+ } | undefined;
1602
+ accountable?: {
1603
+ notes?: string | undefined;
1604
+ score?: number | undefined;
1605
+ lastAssessed?: string | undefined;
1606
+ assessedBy?: string | undefined;
1607
+ } | undefined;
1608
+ transparent?: {
1609
+ notes?: string | undefined;
1610
+ score?: number | undefined;
1611
+ lastAssessed?: string | undefined;
1612
+ assessedBy?: string | undefined;
1613
+ } | undefined;
1614
+ explainable?: {
1615
+ notes?: string | undefined;
1616
+ score?: number | undefined;
1617
+ lastAssessed?: string | undefined;
1618
+ assessedBy?: string | undefined;
1619
+ } | undefined;
1620
+ privacyEnhanced?: {
1621
+ notes?: string | undefined;
1622
+ score?: number | undefined;
1623
+ lastAssessed?: string | undefined;
1624
+ assessedBy?: string | undefined;
1625
+ } | undefined;
1626
+ fair?: {
1627
+ notes?: string | undefined;
1628
+ score?: number | undefined;
1629
+ lastAssessed?: string | undefined;
1630
+ assessedBy?: string | undefined;
1631
+ } | undefined;
1632
+ }, {
1633
+ valid?: {
1634
+ notes?: string | undefined;
1635
+ score?: number | undefined;
1636
+ lastAssessed?: string | undefined;
1637
+ assessedBy?: string | undefined;
1638
+ } | undefined;
1639
+ reliable?: {
1640
+ notes?: string | undefined;
1641
+ score?: number | undefined;
1642
+ lastAssessed?: string | undefined;
1643
+ assessedBy?: string | undefined;
1644
+ } | undefined;
1645
+ safe?: {
1646
+ notes?: string | undefined;
1647
+ score?: number | undefined;
1648
+ lastAssessed?: string | undefined;
1649
+ assessedBy?: string | undefined;
1650
+ } | undefined;
1651
+ secure?: {
1652
+ notes?: string | undefined;
1653
+ score?: number | undefined;
1654
+ lastAssessed?: string | undefined;
1655
+ assessedBy?: string | undefined;
1656
+ } | undefined;
1657
+ accountable?: {
1658
+ notes?: string | undefined;
1659
+ score?: number | undefined;
1660
+ lastAssessed?: string | undefined;
1661
+ assessedBy?: string | undefined;
1662
+ } | undefined;
1663
+ transparent?: {
1664
+ notes?: string | undefined;
1665
+ score?: number | undefined;
1666
+ lastAssessed?: string | undefined;
1667
+ assessedBy?: string | undefined;
1668
+ } | undefined;
1669
+ explainable?: {
1670
+ notes?: string | undefined;
1671
+ score?: number | undefined;
1672
+ lastAssessed?: string | undefined;
1673
+ assessedBy?: string | undefined;
1674
+ } | undefined;
1675
+ privacyEnhanced?: {
1676
+ notes?: string | undefined;
1677
+ score?: number | undefined;
1678
+ lastAssessed?: string | undefined;
1679
+ assessedBy?: string | undefined;
1680
+ } | undefined;
1681
+ fair?: {
1682
+ notes?: string | undefined;
1683
+ score?: number | undefined;
1684
+ lastAssessed?: string | undefined;
1685
+ assessedBy?: string | undefined;
1686
+ } | undefined;
1687
+ }>>;
1688
+ }, "strip", z.ZodTypeAny, {
1689
+ riskLevel: "minimal" | "limited" | "high" | "unacceptable";
1690
+ riskFactors: {
1691
+ autonomousDecisions: boolean;
1692
+ customerFacing: boolean;
1693
+ toolExecution: boolean;
1694
+ externalDataAccess: boolean;
1695
+ piiProcessing: "unknown" | "yes" | "no";
1696
+ highStakesDecisions: boolean;
1697
+ };
1698
+ requiredArtifacts?: {
1699
+ type: string;
1700
+ status: "not_applicable" | "pending" | "complete";
1701
+ path?: string | undefined;
1702
+ }[] | undefined;
1703
+ euAiAct?: {
1704
+ category: string;
1705
+ transparencyRequired: boolean;
1706
+ } | undefined;
1707
+ jurisdictions?: {
1708
+ jurisdictionId: string;
1709
+ riskLevel: string;
1710
+ category?: string | undefined;
1711
+ controlStatuses?: {
1712
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
1713
+ controlId: string;
1714
+ evidence?: string | undefined;
1715
+ notes?: string | undefined;
1716
+ lastUpdated?: string | undefined;
1717
+ }[] | undefined;
1718
+ requiredArtifacts?: {
1719
+ status: "not_applicable" | "pending" | "complete";
1720
+ artifactId: string;
1721
+ path?: string | undefined;
1722
+ }[] | undefined;
1723
+ lastChecked?: string | undefined;
1724
+ compliancePercentage?: number | undefined;
1725
+ }[] | undefined;
1726
+ trustworthiness?: {
1727
+ valid?: {
1728
+ notes?: string | undefined;
1729
+ score?: number | undefined;
1730
+ lastAssessed?: string | undefined;
1731
+ assessedBy?: string | undefined;
1732
+ } | undefined;
1733
+ reliable?: {
1734
+ notes?: string | undefined;
1735
+ score?: number | undefined;
1736
+ lastAssessed?: string | undefined;
1737
+ assessedBy?: string | undefined;
1738
+ } | undefined;
1739
+ safe?: {
1740
+ notes?: string | undefined;
1741
+ score?: number | undefined;
1742
+ lastAssessed?: string | undefined;
1743
+ assessedBy?: string | undefined;
1744
+ } | undefined;
1745
+ secure?: {
1746
+ notes?: string | undefined;
1747
+ score?: number | undefined;
1748
+ lastAssessed?: string | undefined;
1749
+ assessedBy?: string | undefined;
1750
+ } | undefined;
1751
+ accountable?: {
1752
+ notes?: string | undefined;
1753
+ score?: number | undefined;
1754
+ lastAssessed?: string | undefined;
1755
+ assessedBy?: string | undefined;
1756
+ } | undefined;
1757
+ transparent?: {
1758
+ notes?: string | undefined;
1759
+ score?: number | undefined;
1760
+ lastAssessed?: string | undefined;
1761
+ assessedBy?: string | undefined;
1762
+ } | undefined;
1763
+ explainable?: {
1764
+ notes?: string | undefined;
1765
+ score?: number | undefined;
1766
+ lastAssessed?: string | undefined;
1767
+ assessedBy?: string | undefined;
1768
+ } | undefined;
1769
+ privacyEnhanced?: {
1770
+ notes?: string | undefined;
1771
+ score?: number | undefined;
1772
+ lastAssessed?: string | undefined;
1773
+ assessedBy?: string | undefined;
1774
+ } | undefined;
1775
+ fair?: {
1776
+ notes?: string | undefined;
1777
+ score?: number | undefined;
1778
+ lastAssessed?: string | undefined;
1779
+ assessedBy?: string | undefined;
1780
+ } | undefined;
1781
+ } | undefined;
1782
+ }, {
1783
+ riskLevel: "minimal" | "limited" | "high" | "unacceptable";
1784
+ riskFactors: {
1785
+ autonomousDecisions?: boolean | undefined;
1786
+ customerFacing?: boolean | undefined;
1787
+ toolExecution?: boolean | undefined;
1788
+ externalDataAccess?: boolean | undefined;
1789
+ piiProcessing?: "unknown" | "yes" | "no" | undefined;
1790
+ highStakesDecisions?: boolean | undefined;
1791
+ };
1792
+ requiredArtifacts?: {
1793
+ type: string;
1794
+ status: "not_applicable" | "pending" | "complete";
1795
+ path?: string | undefined;
1796
+ }[] | undefined;
1797
+ euAiAct?: {
1798
+ category: string;
1799
+ transparencyRequired?: boolean | undefined;
1800
+ } | undefined;
1801
+ jurisdictions?: {
1802
+ jurisdictionId: string;
1803
+ riskLevel: string;
1804
+ category?: string | undefined;
1805
+ controlStatuses?: {
1806
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
1807
+ controlId: string;
1808
+ evidence?: string | undefined;
1809
+ notes?: string | undefined;
1810
+ lastUpdated?: string | undefined;
1811
+ }[] | undefined;
1812
+ requiredArtifacts?: {
1813
+ status: "not_applicable" | "pending" | "complete";
1814
+ artifactId: string;
1815
+ path?: string | undefined;
1816
+ }[] | undefined;
1817
+ lastChecked?: string | undefined;
1818
+ compliancePercentage?: number | undefined;
1819
+ }[] | undefined;
1820
+ trustworthiness?: {
1821
+ valid?: {
1822
+ notes?: string | undefined;
1823
+ score?: number | undefined;
1824
+ lastAssessed?: string | undefined;
1825
+ assessedBy?: string | undefined;
1826
+ } | undefined;
1827
+ reliable?: {
1828
+ notes?: string | undefined;
1829
+ score?: number | undefined;
1830
+ lastAssessed?: string | undefined;
1831
+ assessedBy?: string | undefined;
1832
+ } | undefined;
1833
+ safe?: {
1834
+ notes?: string | undefined;
1835
+ score?: number | undefined;
1836
+ lastAssessed?: string | undefined;
1837
+ assessedBy?: string | undefined;
1838
+ } | undefined;
1839
+ secure?: {
1840
+ notes?: string | undefined;
1841
+ score?: number | undefined;
1842
+ lastAssessed?: string | undefined;
1843
+ assessedBy?: string | undefined;
1844
+ } | undefined;
1845
+ accountable?: {
1846
+ notes?: string | undefined;
1847
+ score?: number | undefined;
1848
+ lastAssessed?: string | undefined;
1849
+ assessedBy?: string | undefined;
1850
+ } | undefined;
1851
+ transparent?: {
1852
+ notes?: string | undefined;
1853
+ score?: number | undefined;
1854
+ lastAssessed?: string | undefined;
1855
+ assessedBy?: string | undefined;
1856
+ } | undefined;
1857
+ explainable?: {
1858
+ notes?: string | undefined;
1859
+ score?: number | undefined;
1860
+ lastAssessed?: string | undefined;
1861
+ assessedBy?: string | undefined;
1862
+ } | undefined;
1863
+ privacyEnhanced?: {
1864
+ notes?: string | undefined;
1865
+ score?: number | undefined;
1866
+ lastAssessed?: string | undefined;
1867
+ assessedBy?: string | undefined;
1868
+ } | undefined;
1869
+ fair?: {
1870
+ notes?: string | undefined;
1871
+ score?: number | undefined;
1872
+ lastAssessed?: string | undefined;
1873
+ assessedBy?: string | undefined;
1874
+ } | undefined;
1875
+ } | undefined;
1876
+ }>;
1877
+ intent: z.ZodObject<{
1878
+ linked: z.ZodDefault<z.ZodBoolean>;
1879
+ ticketSystem: z.ZodOptional<z.ZodNullable<z.ZodEnum<["jira", "ado", "github", "gitlab"]>>>;
1880
+ ticketId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1881
+ ticketUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1882
+ businessJustification: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1883
+ riskTolerance: z.ZodOptional<z.ZodNullable<z.ZodEnum<["low", "medium", "high"]>>>;
1884
+ importedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1885
+ }, "strip", z.ZodTypeAny, {
1886
+ linked: boolean;
1887
+ ticketSystem?: "jira" | "ado" | "github" | "gitlab" | null | undefined;
1888
+ ticketId?: string | null | undefined;
1889
+ ticketUrl?: string | null | undefined;
1890
+ businessJustification?: string | null | undefined;
1891
+ riskTolerance?: "high" | "low" | "medium" | null | undefined;
1892
+ importedAt?: string | null | undefined;
1893
+ }, {
1894
+ linked?: boolean | undefined;
1895
+ ticketSystem?: "jira" | "ado" | "github" | "gitlab" | null | undefined;
1896
+ ticketId?: string | null | undefined;
1897
+ ticketUrl?: string | null | undefined;
1898
+ businessJustification?: string | null | undefined;
1899
+ riskTolerance?: "high" | "low" | "medium" | null | undefined;
1900
+ importedAt?: string | null | undefined;
1901
+ }>;
1902
+ governance: z.ZodObject<{
1903
+ status: z.ZodEnum<["draft", "linked", "approved", "production", "deprecated", "revoked"]>;
1904
+ approvals: z.ZodDefault<z.ZodArray<z.ZodObject<{
1905
+ role: z.ZodString;
1906
+ name: z.ZodString;
1907
+ email: z.ZodOptional<z.ZodString>;
1908
+ date: z.ZodString;
1909
+ source: z.ZodOptional<z.ZodString>;
1910
+ }, "strip", z.ZodTypeAny, {
1911
+ name: string;
1912
+ date: string;
1913
+ role: string;
1914
+ email?: string | undefined;
1915
+ source?: string | undefined;
1916
+ }, {
1917
+ name: string;
1918
+ date: string;
1919
+ role: string;
1920
+ email?: string | undefined;
1921
+ source?: string | undefined;
1922
+ }>, "many">>;
1923
+ deployment: z.ZodOptional<z.ZodObject<{
1924
+ environments: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1925
+ lastDeployed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1926
+ }, "strip", z.ZodTypeAny, {
1927
+ environments: string[];
1928
+ lastDeployed?: string | null | undefined;
1929
+ }, {
1930
+ environments?: string[] | undefined;
1931
+ lastDeployed?: string | null | undefined;
1932
+ }>>;
1933
+ }, "strip", z.ZodTypeAny, {
1934
+ status: "linked" | "draft" | "approved" | "production" | "deprecated" | "revoked";
1935
+ approvals: {
1936
+ name: string;
1937
+ date: string;
1938
+ role: string;
1939
+ email?: string | undefined;
1940
+ source?: string | undefined;
1941
+ }[];
1942
+ deployment?: {
1943
+ environments: string[];
1944
+ lastDeployed?: string | null | undefined;
1945
+ } | undefined;
1946
+ }, {
1947
+ status: "linked" | "draft" | "approved" | "production" | "deprecated" | "revoked";
1948
+ approvals?: {
1949
+ name: string;
1950
+ date: string;
1951
+ role: string;
1952
+ email?: string | undefined;
1953
+ source?: string | undefined;
1954
+ }[] | undefined;
1955
+ deployment?: {
1956
+ environments?: string[] | undefined;
1957
+ lastDeployed?: string | null | undefined;
1958
+ } | undefined;
1959
+ }>;
1960
+ constraints: z.ZodOptional<z.ZodObject<{
1961
+ runtime: z.ZodOptional<z.ZodObject<{
1962
+ maxIterations: z.ZodOptional<z.ZodNumber>;
1963
+ timeoutSeconds: z.ZodOptional<z.ZodNumber>;
1964
+ maxTokensPerRequest: z.ZodOptional<z.ZodNumber>;
1965
+ maxCostPerRequestUsd: z.ZodOptional<z.ZodNumber>;
1966
+ }, "strip", z.ZodTypeAny, {
1967
+ maxIterations?: number | undefined;
1968
+ timeoutSeconds?: number | undefined;
1969
+ maxTokensPerRequest?: number | undefined;
1970
+ maxCostPerRequestUsd?: number | undefined;
1971
+ }, {
1972
+ maxIterations?: number | undefined;
1973
+ timeoutSeconds?: number | undefined;
1974
+ maxTokensPerRequest?: number | undefined;
1975
+ maxCostPerRequestUsd?: number | undefined;
1976
+ }>>;
1977
+ humanApprovalRequired: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1978
+ monitoring: z.ZodOptional<z.ZodObject<{
1979
+ logAllDecisions: z.ZodDefault<z.ZodBoolean>;
1980
+ logToolInvocations: z.ZodDefault<z.ZodBoolean>;
1981
+ }, "strip", z.ZodTypeAny, {
1982
+ logAllDecisions: boolean;
1983
+ logToolInvocations: boolean;
1984
+ }, {
1985
+ logAllDecisions?: boolean | undefined;
1986
+ logToolInvocations?: boolean | undefined;
1987
+ }>>;
1988
+ }, "strip", z.ZodTypeAny, {
1989
+ runtime?: {
1990
+ maxIterations?: number | undefined;
1991
+ timeoutSeconds?: number | undefined;
1992
+ maxTokensPerRequest?: number | undefined;
1993
+ maxCostPerRequestUsd?: number | undefined;
1994
+ } | undefined;
1995
+ humanApprovalRequired?: string[] | undefined;
1996
+ monitoring?: {
1997
+ logAllDecisions: boolean;
1998
+ logToolInvocations: boolean;
1999
+ } | undefined;
2000
+ }, {
2001
+ runtime?: {
2002
+ maxIterations?: number | undefined;
2003
+ timeoutSeconds?: number | undefined;
2004
+ maxTokensPerRequest?: number | undefined;
2005
+ maxCostPerRequestUsd?: number | undefined;
2006
+ } | undefined;
2007
+ humanApprovalRequired?: string[] | undefined;
2008
+ monitoring?: {
2009
+ logAllDecisions?: boolean | undefined;
2010
+ logToolInvocations?: boolean | undefined;
2011
+ } | undefined;
2012
+ }>>;
2013
+ }, "strip", z.ZodTypeAny, {
2014
+ name: string;
2015
+ id: string;
2016
+ version: string;
2017
+ created: string;
2018
+ updated: string;
2019
+ ownership: {
2020
+ owner: {
2021
+ name: string;
2022
+ email: string;
2023
+ team?: string | undefined;
2024
+ };
2025
+ team?: string | undefined;
2026
+ };
2027
+ technical: {
2028
+ type: "model" | "agent" | "api_client" | "framework" | "pipeline";
2029
+ framework?: string | undefined;
2030
+ frameworkVersion?: string | undefined;
2031
+ components?: {
2032
+ type: string;
2033
+ model?: string | undefined;
2034
+ provider?: string | undefined;
2035
+ }[] | undefined;
2036
+ sourceFiles?: string[] | undefined;
2037
+ };
2038
+ classification: {
2039
+ riskLevel: "minimal" | "limited" | "high" | "unacceptable";
2040
+ riskFactors: {
2041
+ autonomousDecisions: boolean;
2042
+ customerFacing: boolean;
2043
+ toolExecution: boolean;
2044
+ externalDataAccess: boolean;
2045
+ piiProcessing: "unknown" | "yes" | "no";
2046
+ highStakesDecisions: boolean;
2047
+ };
2048
+ requiredArtifacts?: {
2049
+ type: string;
2050
+ status: "not_applicable" | "pending" | "complete";
2051
+ path?: string | undefined;
2052
+ }[] | undefined;
2053
+ euAiAct?: {
2054
+ category: string;
2055
+ transparencyRequired: boolean;
2056
+ } | undefined;
2057
+ jurisdictions?: {
2058
+ jurisdictionId: string;
2059
+ riskLevel: string;
2060
+ category?: string | undefined;
2061
+ controlStatuses?: {
2062
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
2063
+ controlId: string;
2064
+ evidence?: string | undefined;
2065
+ notes?: string | undefined;
2066
+ lastUpdated?: string | undefined;
2067
+ }[] | undefined;
2068
+ requiredArtifacts?: {
2069
+ status: "not_applicable" | "pending" | "complete";
2070
+ artifactId: string;
2071
+ path?: string | undefined;
2072
+ }[] | undefined;
2073
+ lastChecked?: string | undefined;
2074
+ compliancePercentage?: number | undefined;
2075
+ }[] | undefined;
2076
+ trustworthiness?: {
2077
+ valid?: {
2078
+ notes?: string | undefined;
2079
+ score?: number | undefined;
2080
+ lastAssessed?: string | undefined;
2081
+ assessedBy?: string | undefined;
2082
+ } | undefined;
2083
+ reliable?: {
2084
+ notes?: string | undefined;
2085
+ score?: number | undefined;
2086
+ lastAssessed?: string | undefined;
2087
+ assessedBy?: string | undefined;
2088
+ } | undefined;
2089
+ safe?: {
2090
+ notes?: string | undefined;
2091
+ score?: number | undefined;
2092
+ lastAssessed?: string | undefined;
2093
+ assessedBy?: string | undefined;
2094
+ } | undefined;
2095
+ secure?: {
2096
+ notes?: string | undefined;
2097
+ score?: number | undefined;
2098
+ lastAssessed?: string | undefined;
2099
+ assessedBy?: string | undefined;
2100
+ } | undefined;
2101
+ accountable?: {
2102
+ notes?: string | undefined;
2103
+ score?: number | undefined;
2104
+ lastAssessed?: string | undefined;
2105
+ assessedBy?: string | undefined;
2106
+ } | undefined;
2107
+ transparent?: {
2108
+ notes?: string | undefined;
2109
+ score?: number | undefined;
2110
+ lastAssessed?: string | undefined;
2111
+ assessedBy?: string | undefined;
2112
+ } | undefined;
2113
+ explainable?: {
2114
+ notes?: string | undefined;
2115
+ score?: number | undefined;
2116
+ lastAssessed?: string | undefined;
2117
+ assessedBy?: string | undefined;
2118
+ } | undefined;
2119
+ privacyEnhanced?: {
2120
+ notes?: string | undefined;
2121
+ score?: number | undefined;
2122
+ lastAssessed?: string | undefined;
2123
+ assessedBy?: string | undefined;
2124
+ } | undefined;
2125
+ fair?: {
2126
+ notes?: string | undefined;
2127
+ score?: number | undefined;
2128
+ lastAssessed?: string | undefined;
2129
+ assessedBy?: string | undefined;
2130
+ } | undefined;
2131
+ } | undefined;
2132
+ };
2133
+ intent: {
2134
+ linked: boolean;
2135
+ ticketSystem?: "jira" | "ado" | "github" | "gitlab" | null | undefined;
2136
+ ticketId?: string | null | undefined;
2137
+ ticketUrl?: string | null | undefined;
2138
+ businessJustification?: string | null | undefined;
2139
+ riskTolerance?: "high" | "low" | "medium" | null | undefined;
2140
+ importedAt?: string | null | undefined;
2141
+ };
2142
+ governance: {
2143
+ status: "linked" | "draft" | "approved" | "production" | "deprecated" | "revoked";
2144
+ approvals: {
2145
+ name: string;
2146
+ date: string;
2147
+ role: string;
2148
+ email?: string | undefined;
2149
+ source?: string | undefined;
2150
+ }[];
2151
+ deployment?: {
2152
+ environments: string[];
2153
+ lastDeployed?: string | null | undefined;
2154
+ } | undefined;
2155
+ };
2156
+ $schema?: string | undefined;
2157
+ description?: string | undefined;
2158
+ constraints?: {
2159
+ runtime?: {
2160
+ maxIterations?: number | undefined;
2161
+ timeoutSeconds?: number | undefined;
2162
+ maxTokensPerRequest?: number | undefined;
2163
+ maxCostPerRequestUsd?: number | undefined;
2164
+ } | undefined;
2165
+ humanApprovalRequired?: string[] | undefined;
2166
+ monitoring?: {
2167
+ logAllDecisions: boolean;
2168
+ logToolInvocations: boolean;
2169
+ } | undefined;
2170
+ } | undefined;
2171
+ }, {
2172
+ name: string;
2173
+ id: string;
2174
+ created: string;
2175
+ updated: string;
2176
+ ownership: {
2177
+ owner: {
2178
+ name: string;
2179
+ email: string;
2180
+ team?: string | undefined;
2181
+ };
2182
+ team?: string | undefined;
2183
+ };
2184
+ technical: {
2185
+ type: "model" | "agent" | "api_client" | "framework" | "pipeline";
2186
+ framework?: string | undefined;
2187
+ frameworkVersion?: string | undefined;
2188
+ components?: {
2189
+ type: string;
2190
+ model?: string | undefined;
2191
+ provider?: string | undefined;
2192
+ }[] | undefined;
2193
+ sourceFiles?: string[] | undefined;
2194
+ };
2195
+ classification: {
2196
+ riskLevel: "minimal" | "limited" | "high" | "unacceptable";
2197
+ riskFactors: {
2198
+ autonomousDecisions?: boolean | undefined;
2199
+ customerFacing?: boolean | undefined;
2200
+ toolExecution?: boolean | undefined;
2201
+ externalDataAccess?: boolean | undefined;
2202
+ piiProcessing?: "unknown" | "yes" | "no" | undefined;
2203
+ highStakesDecisions?: boolean | undefined;
2204
+ };
2205
+ requiredArtifacts?: {
2206
+ type: string;
2207
+ status: "not_applicable" | "pending" | "complete";
2208
+ path?: string | undefined;
2209
+ }[] | undefined;
2210
+ euAiAct?: {
2211
+ category: string;
2212
+ transparencyRequired?: boolean | undefined;
2213
+ } | undefined;
2214
+ jurisdictions?: {
2215
+ jurisdictionId: string;
2216
+ riskLevel: string;
2217
+ category?: string | undefined;
2218
+ controlStatuses?: {
2219
+ status: "implemented" | "partial" | "not_implemented" | "not_applicable";
2220
+ controlId: string;
2221
+ evidence?: string | undefined;
2222
+ notes?: string | undefined;
2223
+ lastUpdated?: string | undefined;
2224
+ }[] | undefined;
2225
+ requiredArtifacts?: {
2226
+ status: "not_applicable" | "pending" | "complete";
2227
+ artifactId: string;
2228
+ path?: string | undefined;
2229
+ }[] | undefined;
2230
+ lastChecked?: string | undefined;
2231
+ compliancePercentage?: number | undefined;
2232
+ }[] | undefined;
2233
+ trustworthiness?: {
2234
+ valid?: {
2235
+ notes?: string | undefined;
2236
+ score?: number | undefined;
2237
+ lastAssessed?: string | undefined;
2238
+ assessedBy?: string | undefined;
2239
+ } | undefined;
2240
+ reliable?: {
2241
+ notes?: string | undefined;
2242
+ score?: number | undefined;
2243
+ lastAssessed?: string | undefined;
2244
+ assessedBy?: string | undefined;
2245
+ } | undefined;
2246
+ safe?: {
2247
+ notes?: string | undefined;
2248
+ score?: number | undefined;
2249
+ lastAssessed?: string | undefined;
2250
+ assessedBy?: string | undefined;
2251
+ } | undefined;
2252
+ secure?: {
2253
+ notes?: string | undefined;
2254
+ score?: number | undefined;
2255
+ lastAssessed?: string | undefined;
2256
+ assessedBy?: string | undefined;
2257
+ } | undefined;
2258
+ accountable?: {
2259
+ notes?: string | undefined;
2260
+ score?: number | undefined;
2261
+ lastAssessed?: string | undefined;
2262
+ assessedBy?: string | undefined;
2263
+ } | undefined;
2264
+ transparent?: {
2265
+ notes?: string | undefined;
2266
+ score?: number | undefined;
2267
+ lastAssessed?: string | undefined;
2268
+ assessedBy?: string | undefined;
2269
+ } | undefined;
2270
+ explainable?: {
2271
+ notes?: string | undefined;
2272
+ score?: number | undefined;
2273
+ lastAssessed?: string | undefined;
2274
+ assessedBy?: string | undefined;
2275
+ } | undefined;
2276
+ privacyEnhanced?: {
2277
+ notes?: string | undefined;
2278
+ score?: number | undefined;
2279
+ lastAssessed?: string | undefined;
2280
+ assessedBy?: string | undefined;
2281
+ } | undefined;
2282
+ fair?: {
2283
+ notes?: string | undefined;
2284
+ score?: number | undefined;
2285
+ lastAssessed?: string | undefined;
2286
+ assessedBy?: string | undefined;
2287
+ } | undefined;
2288
+ } | undefined;
2289
+ };
2290
+ intent: {
2291
+ linked?: boolean | undefined;
2292
+ ticketSystem?: "jira" | "ado" | "github" | "gitlab" | null | undefined;
2293
+ ticketId?: string | null | undefined;
2294
+ ticketUrl?: string | null | undefined;
2295
+ businessJustification?: string | null | undefined;
2296
+ riskTolerance?: "high" | "low" | "medium" | null | undefined;
2297
+ importedAt?: string | null | undefined;
2298
+ };
2299
+ governance: {
2300
+ status: "linked" | "draft" | "approved" | "production" | "deprecated" | "revoked";
2301
+ approvals?: {
2302
+ name: string;
2303
+ date: string;
2304
+ role: string;
2305
+ email?: string | undefined;
2306
+ source?: string | undefined;
2307
+ }[] | undefined;
2308
+ deployment?: {
2309
+ environments?: string[] | undefined;
2310
+ lastDeployed?: string | null | undefined;
2311
+ } | undefined;
2312
+ };
2313
+ $schema?: string | undefined;
2314
+ description?: string | undefined;
2315
+ version?: string | undefined;
2316
+ constraints?: {
2317
+ runtime?: {
2318
+ maxIterations?: number | undefined;
2319
+ timeoutSeconds?: number | undefined;
2320
+ maxTokensPerRequest?: number | undefined;
2321
+ maxCostPerRequestUsd?: number | undefined;
2322
+ } | undefined;
2323
+ humanApprovalRequired?: string[] | undefined;
2324
+ monitoring?: {
2325
+ logAllDecisions?: boolean | undefined;
2326
+ logToolInvocations?: boolean | undefined;
2327
+ } | undefined;
2328
+ } | undefined;
2329
+ }>;
2330
+ type AssetCard = z.infer<typeof AssetCardSchema>;
2331
+
2332
+ export { ApprovalSchema, type AssetCard, AssetCardSchema, type Classification, ClassificationSchema, type Constraints, ConstraintsSchema, type ControlStatus, ControlStatusSchema, type Governance, GovernanceSchema, type Intent, IntentSchema, type JurisdictionClassification, JurisdictionClassificationSchema, type Owner, OwnerSchema, type RiskFactors, RiskFactorsSchema, type Technical, TechnicalSchema, type Trustworthiness, type TrustworthinessCharacteristic, TrustworthinessCharacteristicSchema, TrustworthinessSchema };