@vorionsys/atsf-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.
Files changed (150) hide show
  1. package/README.md +308 -0
  2. package/dist/api/index.d.ts +5 -0
  3. package/dist/api/index.d.ts.map +1 -0
  4. package/dist/api/index.js +5 -0
  5. package/dist/api/index.js.map +1 -0
  6. package/dist/api/server.d.ts +17 -0
  7. package/dist/api/server.d.ts.map +1 -0
  8. package/dist/api/server.js +124 -0
  9. package/dist/api/server.js.map +1 -0
  10. package/dist/arbitration/index.d.ts +124 -0
  11. package/dist/arbitration/index.d.ts.map +1 -0
  12. package/dist/arbitration/index.js +696 -0
  13. package/dist/arbitration/index.js.map +1 -0
  14. package/dist/arbitration/types.d.ts +260 -0
  15. package/dist/arbitration/types.d.ts.map +1 -0
  16. package/dist/arbitration/types.js +10 -0
  17. package/dist/arbitration/types.js.map +1 -0
  18. package/dist/basis/evaluator.d.ts +57 -0
  19. package/dist/basis/evaluator.d.ts.map +1 -0
  20. package/dist/basis/evaluator.js +244 -0
  21. package/dist/basis/evaluator.js.map +1 -0
  22. package/dist/basis/index.d.ts +12 -0
  23. package/dist/basis/index.d.ts.map +1 -0
  24. package/dist/basis/index.js +12 -0
  25. package/dist/basis/index.js.map +1 -0
  26. package/dist/basis/parser.d.ts +376 -0
  27. package/dist/basis/parser.d.ts.map +1 -0
  28. package/dist/basis/parser.js +150 -0
  29. package/dist/basis/parser.js.map +1 -0
  30. package/dist/basis/types.d.ts +115 -0
  31. package/dist/basis/types.d.ts.map +1 -0
  32. package/dist/basis/types.js +5 -0
  33. package/dist/basis/types.js.map +1 -0
  34. package/dist/cognigate/index.d.ts +85 -0
  35. package/dist/cognigate/index.d.ts.map +1 -0
  36. package/dist/cognigate/index.js +139 -0
  37. package/dist/cognigate/index.js.map +1 -0
  38. package/dist/common/config.d.ts +252 -0
  39. package/dist/common/config.d.ts.map +1 -0
  40. package/dist/common/config.js +128 -0
  41. package/dist/common/config.js.map +1 -0
  42. package/dist/common/index.d.ts +7 -0
  43. package/dist/common/index.d.ts.map +1 -0
  44. package/dist/common/index.js +7 -0
  45. package/dist/common/index.js.map +1 -0
  46. package/dist/common/logger.d.ts +11 -0
  47. package/dist/common/logger.d.ts.map +1 -0
  48. package/dist/common/logger.js +29 -0
  49. package/dist/common/logger.js.map +1 -0
  50. package/dist/common/types.d.ts +196 -0
  51. package/dist/common/types.d.ts.map +1 -0
  52. package/dist/common/types.js +41 -0
  53. package/dist/common/types.js.map +1 -0
  54. package/dist/containment/index.d.ts +120 -0
  55. package/dist/containment/index.d.ts.map +1 -0
  56. package/dist/containment/index.js +717 -0
  57. package/dist/containment/index.js.map +1 -0
  58. package/dist/containment/types.d.ts +260 -0
  59. package/dist/containment/types.d.ts.map +1 -0
  60. package/dist/containment/types.js +21 -0
  61. package/dist/containment/types.js.map +1 -0
  62. package/dist/contracts/index.d.ts +237 -0
  63. package/dist/contracts/index.d.ts.map +1 -0
  64. package/dist/contracts/index.js +594 -0
  65. package/dist/contracts/index.js.map +1 -0
  66. package/dist/contracts/types.d.ts +374 -0
  67. package/dist/contracts/types.d.ts.map +1 -0
  68. package/dist/contracts/types.js +10 -0
  69. package/dist/contracts/types.js.map +1 -0
  70. package/dist/enforce/index.d.ts +58 -0
  71. package/dist/enforce/index.d.ts.map +1 -0
  72. package/dist/enforce/index.js +77 -0
  73. package/dist/enforce/index.js.map +1 -0
  74. package/dist/governance/index.d.ts +133 -0
  75. package/dist/governance/index.d.ts.map +1 -0
  76. package/dist/governance/index.js +630 -0
  77. package/dist/governance/index.js.map +1 -0
  78. package/dist/governance/types.d.ts +362 -0
  79. package/dist/governance/types.d.ts.map +1 -0
  80. package/dist/governance/types.js +21 -0
  81. package/dist/governance/types.js.map +1 -0
  82. package/dist/index.d.ts +27 -0
  83. package/dist/index.d.ts.map +1 -0
  84. package/dist/index.js +43 -0
  85. package/dist/index.js.map +1 -0
  86. package/dist/intent/index.d.ts +44 -0
  87. package/dist/intent/index.d.ts.map +1 -0
  88. package/dist/intent/index.js +64 -0
  89. package/dist/intent/index.js.map +1 -0
  90. package/dist/langchain/callback.d.ts +115 -0
  91. package/dist/langchain/callback.d.ts.map +1 -0
  92. package/dist/langchain/callback.js +264 -0
  93. package/dist/langchain/callback.js.map +1 -0
  94. package/dist/langchain/executor.d.ts +63 -0
  95. package/dist/langchain/executor.d.ts.map +1 -0
  96. package/dist/langchain/executor.js +169 -0
  97. package/dist/langchain/executor.js.map +1 -0
  98. package/dist/langchain/index.d.ts +12 -0
  99. package/dist/langchain/index.d.ts.map +1 -0
  100. package/dist/langchain/index.js +12 -0
  101. package/dist/langchain/index.js.map +1 -0
  102. package/dist/langchain/tools.d.ts +25 -0
  103. package/dist/langchain/tools.d.ts.map +1 -0
  104. package/dist/langchain/tools.js +167 -0
  105. package/dist/langchain/tools.js.map +1 -0
  106. package/dist/langchain/types.d.ts +72 -0
  107. package/dist/langchain/types.d.ts.map +1 -0
  108. package/dist/langchain/types.js +9 -0
  109. package/dist/langchain/types.js.map +1 -0
  110. package/dist/layers/index.d.ts +147 -0
  111. package/dist/layers/index.d.ts.map +1 -0
  112. package/dist/layers/index.js +565 -0
  113. package/dist/layers/index.js.map +1 -0
  114. package/dist/layers/types.d.ts +336 -0
  115. package/dist/layers/types.d.ts.map +1 -0
  116. package/dist/layers/types.js +10 -0
  117. package/dist/layers/types.js.map +1 -0
  118. package/dist/persistence/file.d.ts +55 -0
  119. package/dist/persistence/file.d.ts.map +1 -0
  120. package/dist/persistence/file.js +176 -0
  121. package/dist/persistence/file.js.map +1 -0
  122. package/dist/persistence/index.d.ts +16 -0
  123. package/dist/persistence/index.d.ts.map +1 -0
  124. package/dist/persistence/index.js +34 -0
  125. package/dist/persistence/index.js.map +1 -0
  126. package/dist/persistence/memory.d.ts +32 -0
  127. package/dist/persistence/memory.d.ts.map +1 -0
  128. package/dist/persistence/memory.js +91 -0
  129. package/dist/persistence/memory.js.map +1 -0
  130. package/dist/persistence/types.d.ts +89 -0
  131. package/dist/persistence/types.d.ts.map +1 -0
  132. package/dist/persistence/types.js +9 -0
  133. package/dist/persistence/types.js.map +1 -0
  134. package/dist/proof/index.d.ts +87 -0
  135. package/dist/proof/index.d.ts.map +1 -0
  136. package/dist/proof/index.js +179 -0
  137. package/dist/proof/index.js.map +1 -0
  138. package/dist/provenance/index.d.ts +135 -0
  139. package/dist/provenance/index.d.ts.map +1 -0
  140. package/dist/provenance/index.js +356 -0
  141. package/dist/provenance/index.js.map +1 -0
  142. package/dist/provenance/types.d.ts +217 -0
  143. package/dist/provenance/types.d.ts.map +1 -0
  144. package/dist/provenance/types.js +10 -0
  145. package/dist/provenance/types.js.map +1 -0
  146. package/dist/trust-engine/index.d.ts +273 -0
  147. package/dist/trust-engine/index.d.ts.map +1 -0
  148. package/dist/trust-engine/index.js +515 -0
  149. package/dist/trust-engine/index.js.map +1 -0
  150. package/package.json +100 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/common/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,eAAO,MAAM,MAAM,6BAiBjB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAErE"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Logging configuration for Vorion
3
+ */
4
+ import pino from 'pino';
5
+ const level = process.env['VORION_LOG_LEVEL'] ?? 'info';
6
+ export const logger = pino({
7
+ level,
8
+ transport: process.env['NODE_ENV'] !== 'production'
9
+ ? {
10
+ target: 'pino-pretty',
11
+ options: {
12
+ colorize: true,
13
+ translateTime: 'SYS:standard',
14
+ ignore: 'pid,hostname',
15
+ },
16
+ }
17
+ : undefined,
18
+ base: {
19
+ service: 'vorion',
20
+ version: process.env['npm_package_version'],
21
+ },
22
+ });
23
+ /**
24
+ * Create a child logger with context
25
+ */
26
+ export function createLogger(context) {
27
+ return logger.child(context);
28
+ }
29
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/common/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,MAAM,CAAC;AAExD,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK;IACL,SAAS,EACP,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,YAAY;QACtC,CAAC,CAAC;YACE,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE;gBACP,QAAQ,EAAE,IAAI;gBACd,aAAa,EAAE,cAAc;gBAC7B,MAAM,EAAE,cAAc;aACvB;SACF;QACH,CAAC,CAAC,SAAS;IACf,IAAI,EAAE;QACJ,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;KAC5C;CACF,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,OAAgC;IAC3D,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,196 @@
1
+ /**
2
+ * Common types used throughout Vorion
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ /**
7
+ * Unique identifier type
8
+ */
9
+ export type ID = string;
10
+ /**
11
+ * Timestamp in ISO 8601 format
12
+ */
13
+ export type Timestamp = string;
14
+ /**
15
+ * Trust level (L0-L5)
16
+ *
17
+ * - L0: Untrusted (0-166)
18
+ * - L1: Observed (167-332)
19
+ * - L2: Limited (333-499)
20
+ * - L3: Standard (500-665)
21
+ * - L4: Trusted (666-832)
22
+ * - L5: Certified (833-1000)
23
+ */
24
+ export type TrustLevel = 0 | 1 | 2 | 3 | 4 | 5;
25
+ /**
26
+ * Trust score (0-1000)
27
+ */
28
+ export type TrustScore = number;
29
+ /**
30
+ * Entity types that can be governed
31
+ */
32
+ export type EntityType = 'agent' | 'user' | 'service' | 'system';
33
+ /**
34
+ * Intent status
35
+ */
36
+ export type IntentStatus = 'pending' | 'evaluating' | 'approved' | 'denied' | 'escalated' | 'executing' | 'completed' | 'failed';
37
+ /**
38
+ * Control action types
39
+ */
40
+ export type ControlAction = 'allow' | 'deny' | 'escalate' | 'limit' | 'monitor' | 'terminate';
41
+ /**
42
+ * Entity identity
43
+ */
44
+ export interface Entity {
45
+ id: ID;
46
+ type: EntityType;
47
+ name: string;
48
+ trustScore: TrustScore;
49
+ trustLevel: TrustLevel;
50
+ metadata: Record<string, unknown>;
51
+ createdAt: Timestamp;
52
+ updatedAt: Timestamp;
53
+ }
54
+ /**
55
+ * Intent representing a goal to be governed
56
+ */
57
+ export interface Intent {
58
+ id: ID;
59
+ entityId: ID;
60
+ goal: string;
61
+ context: Record<string, unknown>;
62
+ metadata: Record<string, unknown>;
63
+ status: IntentStatus;
64
+ createdAt: Timestamp;
65
+ updatedAt: Timestamp;
66
+ }
67
+ /**
68
+ * Constraint definition
69
+ */
70
+ export interface Constraint {
71
+ id: ID;
72
+ namespace: string;
73
+ name: string;
74
+ description: string;
75
+ version: string;
76
+ rule: ConstraintRule;
77
+ enabled: boolean;
78
+ createdAt: Timestamp;
79
+ updatedAt: Timestamp;
80
+ }
81
+ /**
82
+ * Constraint rule definition
83
+ */
84
+ export interface ConstraintRule {
85
+ when: ConstraintCondition;
86
+ evaluate: ConstraintEvaluation[];
87
+ }
88
+ /**
89
+ * Constraint condition
90
+ */
91
+ export interface ConstraintCondition {
92
+ intentType?: string;
93
+ entityType?: EntityType;
94
+ conditions?: Record<string, unknown>;
95
+ }
96
+ /**
97
+ * Constraint evaluation step
98
+ */
99
+ export interface ConstraintEvaluation {
100
+ condition: string;
101
+ result: ControlAction;
102
+ reason?: string;
103
+ }
104
+ /**
105
+ * Evaluation result from BASIS
106
+ */
107
+ export interface EvaluationResult {
108
+ constraintId: ID;
109
+ passed: boolean;
110
+ action: ControlAction;
111
+ reason: string;
112
+ details: Record<string, unknown>;
113
+ durationMs: number;
114
+ evaluatedAt: Timestamp;
115
+ }
116
+ /**
117
+ * Decision from ENFORCE
118
+ */
119
+ export interface Decision {
120
+ intentId: ID;
121
+ action: ControlAction;
122
+ constraintsEvaluated: EvaluationResult[];
123
+ trustScore: TrustScore;
124
+ trustLevel: TrustLevel;
125
+ escalation?: EscalationRequest;
126
+ decidedAt: Timestamp;
127
+ }
128
+ /**
129
+ * Escalation request
130
+ */
131
+ export interface EscalationRequest {
132
+ id: ID;
133
+ intentId: ID;
134
+ reason: string;
135
+ escalatedTo: string;
136
+ timeout: string;
137
+ status: 'pending' | 'approved' | 'rejected' | 'timeout';
138
+ createdAt: Timestamp;
139
+ }
140
+ /**
141
+ * Proof record for audit trail
142
+ */
143
+ export interface Proof {
144
+ id: ID;
145
+ chainPosition: number;
146
+ intentId: ID;
147
+ entityId: ID;
148
+ decision: Decision;
149
+ inputs: Record<string, unknown>;
150
+ outputs: Record<string, unknown>;
151
+ hash: string;
152
+ previousHash: string;
153
+ signature: string;
154
+ createdAt: Timestamp;
155
+ }
156
+ /**
157
+ * Trust signal for scoring
158
+ */
159
+ export interface TrustSignal {
160
+ id: ID;
161
+ entityId: ID;
162
+ type: string;
163
+ value: number;
164
+ source: string;
165
+ timestamp: Timestamp;
166
+ metadata: Record<string, unknown>;
167
+ }
168
+ /**
169
+ * Trust score breakdown
170
+ */
171
+ export interface TrustComponents {
172
+ behavioral: number;
173
+ compliance: number;
174
+ identity: number;
175
+ context: number;
176
+ }
177
+ /**
178
+ * Error types
179
+ */
180
+ export declare class VorionError extends Error {
181
+ code: string;
182
+ details?: Record<string, unknown> | undefined;
183
+ constructor(message: string, code: string, details?: Record<string, unknown> | undefined);
184
+ }
185
+ export declare class ConstraintViolationError extends VorionError {
186
+ constraintId: ID;
187
+ constraintName: string;
188
+ suggestion?: string | undefined;
189
+ constructor(constraintId: ID, constraintName: string, message: string, suggestion?: string | undefined);
190
+ }
191
+ export declare class TrustInsufficientError extends VorionError {
192
+ required: TrustLevel;
193
+ actual: TrustLevel;
194
+ constructor(required: TrustLevel, actual: TrustLevel);
195
+ }
196
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Common types used throughout Vorion
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ /**
7
+ * Error types
8
+ */
9
+ export class VorionError extends Error {
10
+ code;
11
+ details;
12
+ constructor(message, code, details) {
13
+ super(message);
14
+ this.code = code;
15
+ this.details = details;
16
+ this.name = 'VorionError';
17
+ }
18
+ }
19
+ export class ConstraintViolationError extends VorionError {
20
+ constraintId;
21
+ constraintName;
22
+ suggestion;
23
+ constructor(constraintId, constraintName, message, suggestion) {
24
+ super(message, 'CONSTRAINT_VIOLATION', { constraintId, constraintName });
25
+ this.constraintId = constraintId;
26
+ this.constraintName = constraintName;
27
+ this.suggestion = suggestion;
28
+ this.name = 'ConstraintViolationError';
29
+ }
30
+ }
31
+ export class TrustInsufficientError extends VorionError {
32
+ required;
33
+ actual;
34
+ constructor(required, actual) {
35
+ super(`Trust level ${actual} insufficient, requires ${required}`, 'TRUST_INSUFFICIENT', { required, actual });
36
+ this.required = required;
37
+ this.actual = actual;
38
+ this.name = 'TrustInsufficientError';
39
+ }
40
+ }
41
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8MH;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IAG3B;IACA;IAHT,YACE,OAAe,EACR,IAAY,EACZ,OAAiC;QAExC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAA0B;QAGxC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,WAAW;IAE9C;IACA;IAEA;IAJT,YACS,YAAgB,EAChB,cAAsB,EAC7B,OAAe,EACR,UAAmB;QAE1B,KAAK,CAAC,OAAO,EAAE,sBAAsB,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;QALlE,iBAAY,GAAZ,YAAY,CAAI;QAChB,mBAAc,GAAd,cAAc,CAAQ;QAEtB,eAAU,GAAV,UAAU,CAAS;QAG1B,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,WAAW;IAE5C;IACA;IAFT,YACS,QAAoB,EACpB,MAAkB;QAEzB,KAAK,CACH,eAAe,MAAM,2BAA2B,QAAQ,EAAE,EAC1D,oBAAoB,EACpB,EAAE,QAAQ,EAAE,MAAM,EAAE,CACrB,CAAC;QAPK,aAAQ,GAAR,QAAQ,CAAY;QACpB,WAAM,GAAN,MAAM,CAAY;QAOzB,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF"}
@@ -0,0 +1,120 @@
1
+ /**
2
+ * Progressive Containment System
3
+ *
4
+ * Implements graded containment levels for proportional response
5
+ * to detected issues, replacing binary kill switch.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ import type { ID } from '../common/types.js';
10
+ import { type ContainmentLevel, type ContainmentState, type ContainmentRequest, type ContainmentResult, type ContainmentRestriction, type ContainmentReason, type ContainmentInitiator, type DeescalationCondition, type ContainmentPolicy, type ContainmentConfig, type ContainmentQuery, type ContainmentAuditReport, type RestrictionType } from './types.js';
11
+ export * from './types.js';
12
+ /**
13
+ * Progressive Containment Service
14
+ */
15
+ export declare class ContainmentService {
16
+ private config;
17
+ private states;
18
+ private eventLog;
19
+ constructor(config?: Partial<ContainmentConfig>);
20
+ /**
21
+ * Get current containment state for an entity
22
+ */
23
+ getState(entityId: ID): ContainmentState | undefined;
24
+ /**
25
+ * Get current containment level for an entity
26
+ */
27
+ getLevel(entityId: ID): ContainmentLevel;
28
+ /**
29
+ * Check if an entity is contained above a certain level
30
+ */
31
+ isContainedAt(entityId: ID, level: ContainmentLevel): boolean;
32
+ /**
33
+ * Check if a specific restriction applies to an entity
34
+ */
35
+ hasRestriction(entityId: ID, restrictionType: RestrictionType): boolean;
36
+ /**
37
+ * Apply containment to an entity
38
+ */
39
+ contain(request: ContainmentRequest): Promise<ContainmentResult>;
40
+ /**
41
+ * Escalate containment level
42
+ */
43
+ escalate(entityId: ID, reason: ContainmentReason, explanation: string, initiator: ContainmentInitiator): Promise<ContainmentResult>;
44
+ /**
45
+ * De-escalate containment level
46
+ */
47
+ deescalate(entityId: ID, reason: ContainmentReason, explanation: string, initiator: ContainmentInitiator): Promise<ContainmentResult>;
48
+ /**
49
+ * Release from containment (return to full autonomy)
50
+ */
51
+ release(entityId: ID, explanation: string, initiator: ContainmentInitiator): Promise<ContainmentResult>;
52
+ /**
53
+ * Check and update de-escalation conditions
54
+ */
55
+ checkDeescalation(entityId: ID): Promise<{
56
+ eligible: boolean;
57
+ conditions: DeescalationCondition[];
58
+ }>;
59
+ /**
60
+ * Check action against containment restrictions
61
+ */
62
+ checkAction(entityId: ID, action: string, capability?: string): {
63
+ allowed: boolean;
64
+ restrictions: ContainmentRestriction[];
65
+ message: string;
66
+ };
67
+ /**
68
+ * Apply policies to determine containment
69
+ */
70
+ evaluatePolicies(_entityId: ID, context: Record<string, unknown>): Promise<{
71
+ triggeredPolicies: ContainmentPolicy[];
72
+ recommendedLevel: ContainmentLevel;
73
+ restrictions: ContainmentRestriction[];
74
+ }>;
75
+ /**
76
+ * Evaluate a policy trigger
77
+ */
78
+ private evaluatePolicyTrigger;
79
+ /**
80
+ * Build de-escalation conditions for a containment request
81
+ */
82
+ private buildDeescalationConditions;
83
+ /**
84
+ * Build escalation path from current level
85
+ */
86
+ private buildEscalationPath;
87
+ /**
88
+ * Create default state for an entity
89
+ */
90
+ private createDefaultState;
91
+ /**
92
+ * Query containment states
93
+ */
94
+ query(query: ContainmentQuery): Promise<ContainmentState[]>;
95
+ /**
96
+ * Generate audit report
97
+ */
98
+ generateAuditReport(startDate: string, endDate: string): Promise<ContainmentAuditReport>;
99
+ /**
100
+ * Get service statistics
101
+ */
102
+ getStats(): {
103
+ activeContainments: number;
104
+ byLevel: Record<ContainmentLevel, number>;
105
+ totalEvents: number;
106
+ };
107
+ }
108
+ /**
109
+ * Create a new containment service
110
+ */
111
+ export declare function createContainmentService(config?: Partial<ContainmentConfig>): ContainmentService;
112
+ /**
113
+ * Helper to create a system initiator
114
+ */
115
+ export declare function createSystemInitiator(componentName: string): ContainmentInitiator;
116
+ /**
117
+ * Helper to create a human initiator
118
+ */
119
+ export declare function createHumanInitiator(userId: ID, userName: string, role: string): ContainmentInitiator;
120
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/containment/index.ts"],"names":[],"mappings":"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"}