@allternit/ix 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 (170) hide show
  1. package/README.md +320 -0
  2. package/dist/adapters/json-render.d.ts +211 -0
  3. package/dist/adapters/json-render.d.ts.bak +211 -0
  4. package/dist/adapters/json-render.d.ts.map +1 -0
  5. package/dist/adapters/json-render.js +576 -0
  6. package/dist/adapters/json-render.js.bak +576 -0
  7. package/dist/adapters/json-render.js.map +1 -0
  8. package/dist/catalog/registry.d.ts +65 -0
  9. package/dist/catalog/registry.d.ts.bak +65 -0
  10. package/dist/catalog/registry.d.ts.map +1 -0
  11. package/dist/catalog/registry.js +388 -0
  12. package/dist/catalog/registry.js.bak +388 -0
  13. package/dist/catalog/registry.js.map +1 -0
  14. package/dist/collab/capsule-registry.d.ts +114 -0
  15. package/dist/collab/capsule-registry.d.ts.bak +114 -0
  16. package/dist/collab/capsule-registry.d.ts.map +1 -0
  17. package/dist/collab/capsule-registry.js +271 -0
  18. package/dist/collab/capsule-registry.js.bak +271 -0
  19. package/dist/collab/capsule-registry.js.map +1 -0
  20. package/dist/collab/index.d.ts +21 -0
  21. package/dist/collab/index.d.ts.bak +21 -0
  22. package/dist/collab/index.d.ts.map +1 -0
  23. package/dist/collab/index.js +32 -0
  24. package/dist/collab/index.js.bak +32 -0
  25. package/dist/collab/index.js.map +1 -0
  26. package/dist/collab/visual-editor.d.ts +199 -0
  27. package/dist/collab/visual-editor.d.ts.bak +199 -0
  28. package/dist/collab/visual-editor.d.ts.map +1 -0
  29. package/dist/collab/visual-editor.js +259 -0
  30. package/dist/collab/visual-editor.js.bak +259 -0
  31. package/dist/collab/visual-editor.js.map +1 -0
  32. package/dist/collab/yjs-adapter.d.ts +95 -0
  33. package/dist/collab/yjs-adapter.d.ts.bak +95 -0
  34. package/dist/collab/yjs-adapter.d.ts.map +1 -0
  35. package/dist/collab/yjs-adapter.js +282 -0
  36. package/dist/collab/yjs-adapter.js.bak +282 -0
  37. package/dist/collab/yjs-adapter.js.map +1 -0
  38. package/dist/collab/yjs-client.d.ts +101 -0
  39. package/dist/collab/yjs-client.d.ts.bak +101 -0
  40. package/dist/collab/yjs-client.d.ts.map +1 -0
  41. package/dist/collab/yjs-client.js +193 -0
  42. package/dist/collab/yjs-client.js.bak +193 -0
  43. package/dist/collab/yjs-client.js.map +1 -0
  44. package/dist/collab/yjs-protocols.d.ts +128 -0
  45. package/dist/collab/yjs-protocols.d.ts.bak +128 -0
  46. package/dist/collab/yjs-protocols.d.ts.map +1 -0
  47. package/dist/collab/yjs-protocols.js +245 -0
  48. package/dist/collab/yjs-protocols.js.bak +245 -0
  49. package/dist/collab/yjs-protocols.js.map +1 -0
  50. package/dist/collab/yjs-types.d.ts +201 -0
  51. package/dist/collab/yjs-types.d.ts.bak +201 -0
  52. package/dist/collab/yjs-types.d.ts.map +1 -0
  53. package/dist/collab/yjs-types.js +45 -0
  54. package/dist/collab/yjs-types.js.bak +45 -0
  55. package/dist/collab/yjs-types.js.map +1 -0
  56. package/dist/index.d.ts +38 -0
  57. package/dist/index.d.ts.bak +38 -0
  58. package/dist/index.d.ts.map +1 -0
  59. package/dist/index.js +48 -0
  60. package/dist/index.js.bak +48 -0
  61. package/dist/index.js.map +1 -0
  62. package/dist/pipeline/llm-to-ix.d.ts +249 -0
  63. package/dist/pipeline/llm-to-ix.d.ts.bak +249 -0
  64. package/dist/pipeline/llm-to-ix.d.ts.map +1 -0
  65. package/dist/pipeline/llm-to-ix.js +992 -0
  66. package/dist/pipeline/llm-to-ix.js.bak +992 -0
  67. package/dist/pipeline/llm-to-ix.js.map +1 -0
  68. package/dist/react/index.d.ts +18 -0
  69. package/dist/react/index.d.ts.bak +18 -0
  70. package/dist/react/index.d.ts.map +1 -0
  71. package/dist/react/index.js +18 -0
  72. package/dist/react/index.js.bak +18 -0
  73. package/dist/react/index.js.map +1 -0
  74. package/dist/react/renderer.d.ts +47 -0
  75. package/dist/react/renderer.d.ts.bak +47 -0
  76. package/dist/react/renderer.d.ts.map +1 -0
  77. package/dist/react/renderer.js +420 -0
  78. package/dist/react/renderer.js.bak +420 -0
  79. package/dist/react/renderer.js.map +1 -0
  80. package/dist/renderer/renderer.d.ts +55 -0
  81. package/dist/renderer/renderer.d.ts.bak +55 -0
  82. package/dist/renderer/renderer.d.ts.map +1 -0
  83. package/dist/renderer/renderer.js +232 -0
  84. package/dist/renderer/renderer.js.bak +232 -0
  85. package/dist/renderer/renderer.js.map +1 -0
  86. package/dist/runtime/capsule-runtime.d.ts +227 -0
  87. package/dist/runtime/capsule-runtime.d.ts.bak +227 -0
  88. package/dist/runtime/capsule-runtime.d.ts.map +1 -0
  89. package/dist/runtime/capsule-runtime.js +563 -0
  90. package/dist/runtime/capsule-runtime.js.bak +563 -0
  91. package/dist/runtime/capsule-runtime.js.map +1 -0
  92. package/dist/runtime/policy-gates.d.ts +116 -0
  93. package/dist/runtime/policy-gates.d.ts.bak +116 -0
  94. package/dist/runtime/policy-gates.d.ts.map +1 -0
  95. package/dist/runtime/policy-gates.js +317 -0
  96. package/dist/runtime/policy-gates.js.bak +317 -0
  97. package/dist/runtime/policy-gates.js.map +1 -0
  98. package/dist/schema/ui-ir.d.ts +26 -0
  99. package/dist/schema/ui-ir.d.ts.bak +26 -0
  100. package/dist/schema/ui-ir.d.ts.map +1 -0
  101. package/dist/schema/ui-ir.js +51 -0
  102. package/dist/schema/ui-ir.js.bak +51 -0
  103. package/dist/schema/ui-ir.js.map +1 -0
  104. package/dist/sdk/api.d.ts +101 -0
  105. package/dist/sdk/api.d.ts.bak +101 -0
  106. package/dist/sdk/api.d.ts.map +1 -0
  107. package/dist/sdk/api.js +177 -0
  108. package/dist/sdk/api.js.bak +177 -0
  109. package/dist/sdk/api.js.map +1 -0
  110. package/dist/sdk/index.d.ts +9 -0
  111. package/dist/sdk/index.d.ts.bak +9 -0
  112. package/dist/sdk/index.d.ts.map +1 -0
  113. package/dist/sdk/index.js +10 -0
  114. package/dist/sdk/index.js.bak +10 -0
  115. package/dist/sdk/index.js.map +1 -0
  116. package/dist/sdk/react.d.ts +63 -0
  117. package/dist/sdk/react.d.ts.bak +63 -0
  118. package/dist/sdk/react.d.ts.map +1 -0
  119. package/dist/sdk/react.js +161 -0
  120. package/dist/sdk/react.js.bak +161 -0
  121. package/dist/sdk/react.js.map +1 -0
  122. package/dist/state/index.d.ts +8 -0
  123. package/dist/state/index.d.ts.bak +8 -0
  124. package/dist/state/index.d.ts.map +1 -0
  125. package/dist/state/index.js +8 -0
  126. package/dist/state/index.js.bak +8 -0
  127. package/dist/state/index.js.map +1 -0
  128. package/dist/state/patch.d.ts +73 -0
  129. package/dist/state/patch.d.ts.bak +73 -0
  130. package/dist/state/patch.d.ts.map +1 -0
  131. package/dist/state/patch.js +437 -0
  132. package/dist/state/patch.js.bak +437 -0
  133. package/dist/state/patch.js.map +1 -0
  134. package/dist/state/store.d.ts +50 -0
  135. package/dist/state/store.d.ts.bak +50 -0
  136. package/dist/state/store.d.ts.map +1 -0
  137. package/dist/state/store.js +246 -0
  138. package/dist/state/store.js.bak +246 -0
  139. package/dist/state/store.js.map +1 -0
  140. package/dist/svelte/index.d.ts +15 -0
  141. package/dist/svelte/index.d.ts.bak +15 -0
  142. package/dist/svelte/index.d.ts.map +1 -0
  143. package/dist/svelte/index.js +15 -0
  144. package/dist/svelte/index.js.bak +15 -0
  145. package/dist/svelte/index.js.map +1 -0
  146. package/dist/svelte/renderer.d.ts +35 -0
  147. package/dist/svelte/renderer.d.ts.bak +35 -0
  148. package/dist/svelte/renderer.d.ts.map +1 -0
  149. package/dist/svelte/renderer.js +317 -0
  150. package/dist/svelte/renderer.js.bak +317 -0
  151. package/dist/svelte/renderer.js.map +1 -0
  152. package/dist/types/index.d.ts +349 -0
  153. package/dist/types/index.d.ts.bak +349 -0
  154. package/dist/types/index.d.ts.map +1 -0
  155. package/dist/types/index.js +152 -0
  156. package/dist/types/index.js.bak +152 -0
  157. package/dist/types/index.js.map +1 -0
  158. package/dist/vue/index.d.ts +18 -0
  159. package/dist/vue/index.d.ts.bak +18 -0
  160. package/dist/vue/index.d.ts.map +1 -0
  161. package/dist/vue/index.js +18 -0
  162. package/dist/vue/index.js.bak +18 -0
  163. package/dist/vue/index.js.map +1 -0
  164. package/dist/vue/renderer.d.ts +46 -0
  165. package/dist/vue/renderer.d.ts.bak +46 -0
  166. package/dist/vue/renderer.d.ts.map +1 -0
  167. package/dist/vue/renderer.js +302 -0
  168. package/dist/vue/renderer.js.bak +302 -0
  169. package/dist/vue/renderer.js.map +1 -0
  170. package/package.json +72 -0
@@ -0,0 +1,227 @@
1
+ /**
2
+ * IX Capsule Runtime
3
+ *
4
+ * Integration with P3.9 MCP Apps capsule infrastructure for sandboxed
5
+ * execution of A2R-IX UI capsules.
6
+ */
7
+ import type { UIRoot } from '../types';
8
+ import type { StateStore } from '../state/store';
9
+ import type { JSONPatch } from '../state/patch';
10
+ import type { PolicyGate } from './policy-gates';
11
+ export interface IXCapsuleConfig {
12
+ /** Capsule ID */
13
+ id: string;
14
+ /** UI definition */
15
+ ui: UIRoot;
16
+ /** Policy gates for security */
17
+ policyGates?: PolicyGate[];
18
+ /** State store (isolated per capsule) */
19
+ stateStore: StateStore;
20
+ /** Event handler for capsule events */
21
+ onEvent?: (event: IXCapsuleEvent) => void;
22
+ /** State change handler */
23
+ onStateChange?: (path: string, value: unknown) => void;
24
+ /** Destroy handler */
25
+ onDestroy?: () => void;
26
+ }
27
+ export interface IXCapsuleEvent {
28
+ type: 'action' | 'state-change' | 'error' | 'lifecycle';
29
+ capsuleId: string;
30
+ action?: string;
31
+ params?: Record<string, unknown>;
32
+ path?: string;
33
+ value?: unknown;
34
+ error?: Error;
35
+ lifecycle?: 'mount' | 'unmount' | 'update';
36
+ }
37
+ export interface IXCapsule {
38
+ /** Capsule ID */
39
+ id: string;
40
+ /** Get current UI definition */
41
+ getUI: () => UIRoot;
42
+ /** Update UI with new definition */
43
+ updateUI: (ui: UIRoot) => void;
44
+ /** Apply state patch */
45
+ applyPatch: (patch: JSONPatch) => void;
46
+ /** Get state value */
47
+ getState: (path: string) => unknown;
48
+ /** Set state value */
49
+ setState: (path: string, value: unknown) => void;
50
+ /** Dispatch action */
51
+ dispatch: (actionId: string, params?: Record<string, unknown>) => Promise<boolean>;
52
+ /** Subscribe to capsule events */
53
+ subscribe: (callback: (event: IXCapsuleEvent) => void) => () => void;
54
+ /** Destroy capsule */
55
+ destroy: () => void;
56
+ /** Check if capsule is active */
57
+ isActive: () => boolean;
58
+ /** GAP-62: Get capsule metrics */
59
+ getMetrics: () => IXCapsuleMetrics;
60
+ }
61
+ /**
62
+ * GAP-62: Extended capsule metrics
63
+ */
64
+ export interface IXCapsuleMetrics {
65
+ /** Number of renders */
66
+ renderCount: number;
67
+ /** Number of actions dispatched */
68
+ actionCount: number;
69
+ /** Number of state updates */
70
+ stateUpdateCount: number;
71
+ /** Number of errors */
72
+ errorCount: number;
73
+ /** Capsule start time (ms timestamp) */
74
+ startTime: number;
75
+ /** Last activity time (ms timestamp) */
76
+ lastActivity: number;
77
+ /** GAP-63: CPU usage metrics */
78
+ cpu?: {
79
+ /** User CPU time used (milliseconds) */
80
+ userTime: number;
81
+ /** System CPU time used (milliseconds) */
82
+ systemTime: number;
83
+ /** Total CPU time (user + system) */
84
+ totalTime: number;
85
+ /** CPU usage percentage (approximate) */
86
+ usagePercent: number;
87
+ };
88
+ /** GAP-63: Memory usage metrics */
89
+ memory?: {
90
+ /** Heap used in bytes */
91
+ heapUsed: number;
92
+ /** Heap total in bytes */
93
+ heapTotal: number;
94
+ /** External memory in bytes */
95
+ external: number;
96
+ /** RSS (Resident Set Size) in bytes */
97
+ rss: number;
98
+ /** Array buffer memory in bytes */
99
+ arrayBuffers: number;
100
+ };
101
+ /** GAP-63: Network metrics (for capsules making network requests) */
102
+ network?: {
103
+ /** Number of requests made */
104
+ requestCount: number;
105
+ /** Number of successful responses */
106
+ successCount: number;
107
+ /** Number of failed requests */
108
+ errorCount: number;
109
+ /** Total bytes sent */
110
+ bytesSent: number;
111
+ /** Total bytes received */
112
+ bytesReceived: number;
113
+ /** Average response time (ms) */
114
+ avgResponseTime: number;
115
+ };
116
+ /** Uptime in milliseconds */
117
+ uptime: number;
118
+ }
119
+ /**
120
+ * Create IX Capsule
121
+ */
122
+ export declare function createIXCapsule(config: IXCapsuleConfig): IXCapsule;
123
+ /**
124
+ * IX Capsule Registry
125
+ */
126
+ export declare class IXCapsuleRegistry {
127
+ private capsules;
128
+ private defaultPolicyGates;
129
+ /**
130
+ * Set default policy gates for all capsules
131
+ */
132
+ setDefaultPolicyGates(gates: PolicyGate[]): void;
133
+ /**
134
+ * Create and register capsule
135
+ */
136
+ create(config: Omit<IXCapsuleConfig, 'policyGates'> & {
137
+ policyGates?: PolicyGate[];
138
+ }): IXCapsule;
139
+ /**
140
+ * Get capsule by ID
141
+ */
142
+ get(id: string): IXCapsule | undefined;
143
+ /**
144
+ * Check if capsule exists
145
+ */
146
+ has(id: string): boolean;
147
+ /**
148
+ * Remove capsule
149
+ */
150
+ remove(id: string): boolean;
151
+ /**
152
+ * List all capsules
153
+ */
154
+ list(): IXCapsule[];
155
+ /**
156
+ * Get active capsules
157
+ */
158
+ getActive(): IXCapsule[];
159
+ /**
160
+ * Broadcast patch to all capsules
161
+ */
162
+ broadcastPatch(patch: JSONPatch): void;
163
+ /**
164
+ * Destroy all capsules
165
+ */
166
+ clear(): void;
167
+ /**
168
+ * GAP-62/64: Get metrics for all capsules
169
+ * Returns aggregated metrics for all registered capsules
170
+ */
171
+ getMetrics(): Record<string, IXCapsuleMetrics>;
172
+ /**
173
+ * GAP-64: Get aggregated metrics across all capsules
174
+ * Returns summary statistics for the entire registry
175
+ */
176
+ getAggregatedMetrics(): IXAggregatedMetrics;
177
+ /**
178
+ * GAP-64: Export metrics for external monitoring systems
179
+ * Returns metrics in a format suitable for Prometheus, DataDog, etc.
180
+ */
181
+ exportMetrics(): IXMetricsExport;
182
+ /**
183
+ * Convert metrics to Prometheus format
184
+ */
185
+ private toPrometheusFormat;
186
+ }
187
+ /**
188
+ * GAP-64: Aggregated metrics interface
189
+ */
190
+ export interface IXAggregatedMetrics {
191
+ /** Total number of capsules in registry */
192
+ totalCapsules: number;
193
+ /** Number of currently active capsules */
194
+ activeCapsules: number;
195
+ /** Total renders across all capsules */
196
+ totalRenders: number;
197
+ /** Total actions across all capsules */
198
+ totalActions: number;
199
+ /** Total state updates across all capsules */
200
+ totalStateUpdates: number;
201
+ /** Total errors across all capsules */
202
+ totalErrors: number;
203
+ /** Average uptime in milliseconds */
204
+ avgUptime: number;
205
+ /** Total memory used in bytes */
206
+ totalMemoryUsed: number;
207
+ /** Average CPU usage percentage */
208
+ avgCpuUsage: number;
209
+ }
210
+ /**
211
+ * GAP-64: Metrics export format
212
+ */
213
+ export interface IXMetricsExport {
214
+ /** Export timestamp */
215
+ timestamp: number;
216
+ /** Summary statistics */
217
+ summary: IXAggregatedMetrics;
218
+ /** Individual capsule metrics */
219
+ capsules: Record<string, IXCapsuleMetrics>;
220
+ /** Prometheus-formatted metrics */
221
+ prometheus: string;
222
+ }
223
+ /**
224
+ * Global capsule registry
225
+ */
226
+ export declare const globalCapsuleRegistry: IXCapsuleRegistry;
227
+ //# sourceMappingURL=capsule-runtime.d.ts.map
@@ -0,0 +1,227 @@
1
+ /**
2
+ * IX Capsule Runtime
3
+ *
4
+ * Integration with P3.9 MCP Apps capsule infrastructure for sandboxed
5
+ * execution of A2R-IX UI capsules.
6
+ */
7
+ import type { UIRoot } from '../types';
8
+ import type { StateStore } from '../state/store';
9
+ import type { JSONPatch } from '../state/patch';
10
+ import type { PolicyGate } from './policy-gates';
11
+ export interface IXCapsuleConfig {
12
+ /** Capsule ID */
13
+ id: string;
14
+ /** UI definition */
15
+ ui: UIRoot;
16
+ /** Policy gates for security */
17
+ policyGates?: PolicyGate[];
18
+ /** State store (isolated per capsule) */
19
+ stateStore: StateStore;
20
+ /** Event handler for capsule events */
21
+ onEvent?: (event: IXCapsuleEvent) => void;
22
+ /** State change handler */
23
+ onStateChange?: (path: string, value: unknown) => void;
24
+ /** Destroy handler */
25
+ onDestroy?: () => void;
26
+ }
27
+ export interface IXCapsuleEvent {
28
+ type: 'action' | 'state-change' | 'error' | 'lifecycle';
29
+ capsuleId: string;
30
+ action?: string;
31
+ params?: Record<string, unknown>;
32
+ path?: string;
33
+ value?: unknown;
34
+ error?: Error;
35
+ lifecycle?: 'mount' | 'unmount' | 'update';
36
+ }
37
+ export interface IXCapsule {
38
+ /** Capsule ID */
39
+ id: string;
40
+ /** Get current UI definition */
41
+ getUI: () => UIRoot;
42
+ /** Update UI with new definition */
43
+ updateUI: (ui: UIRoot) => void;
44
+ /** Apply state patch */
45
+ applyPatch: (patch: JSONPatch) => void;
46
+ /** Get state value */
47
+ getState: (path: string) => unknown;
48
+ /** Set state value */
49
+ setState: (path: string, value: unknown) => void;
50
+ /** Dispatch action */
51
+ dispatch: (actionId: string, params?: Record<string, unknown>) => Promise<boolean>;
52
+ /** Subscribe to capsule events */
53
+ subscribe: (callback: (event: IXCapsuleEvent) => void) => () => void;
54
+ /** Destroy capsule */
55
+ destroy: () => void;
56
+ /** Check if capsule is active */
57
+ isActive: () => boolean;
58
+ /** GAP-62: Get capsule metrics */
59
+ getMetrics: () => IXCapsuleMetrics;
60
+ }
61
+ /**
62
+ * GAP-62: Extended capsule metrics
63
+ */
64
+ export interface IXCapsuleMetrics {
65
+ /** Number of renders */
66
+ renderCount: number;
67
+ /** Number of actions dispatched */
68
+ actionCount: number;
69
+ /** Number of state updates */
70
+ stateUpdateCount: number;
71
+ /** Number of errors */
72
+ errorCount: number;
73
+ /** Capsule start time (ms timestamp) */
74
+ startTime: number;
75
+ /** Last activity time (ms timestamp) */
76
+ lastActivity: number;
77
+ /** GAP-63: CPU usage metrics */
78
+ cpu?: {
79
+ /** User CPU time used (milliseconds) */
80
+ userTime: number;
81
+ /** System CPU time used (milliseconds) */
82
+ systemTime: number;
83
+ /** Total CPU time (user + system) */
84
+ totalTime: number;
85
+ /** CPU usage percentage (approximate) */
86
+ usagePercent: number;
87
+ };
88
+ /** GAP-63: Memory usage metrics */
89
+ memory?: {
90
+ /** Heap used in bytes */
91
+ heapUsed: number;
92
+ /** Heap total in bytes */
93
+ heapTotal: number;
94
+ /** External memory in bytes */
95
+ external: number;
96
+ /** RSS (Resident Set Size) in bytes */
97
+ rss: number;
98
+ /** Array buffer memory in bytes */
99
+ arrayBuffers: number;
100
+ };
101
+ /** GAP-63: Network metrics (for capsules making network requests) */
102
+ network?: {
103
+ /** Number of requests made */
104
+ requestCount: number;
105
+ /** Number of successful responses */
106
+ successCount: number;
107
+ /** Number of failed requests */
108
+ errorCount: number;
109
+ /** Total bytes sent */
110
+ bytesSent: number;
111
+ /** Total bytes received */
112
+ bytesReceived: number;
113
+ /** Average response time (ms) */
114
+ avgResponseTime: number;
115
+ };
116
+ /** Uptime in milliseconds */
117
+ uptime: number;
118
+ }
119
+ /**
120
+ * Create IX Capsule
121
+ */
122
+ export declare function createIXCapsule(config: IXCapsuleConfig): IXCapsule;
123
+ /**
124
+ * IX Capsule Registry
125
+ */
126
+ export declare class IXCapsuleRegistry {
127
+ private capsules;
128
+ private defaultPolicyGates;
129
+ /**
130
+ * Set default policy gates for all capsules
131
+ */
132
+ setDefaultPolicyGates(gates: PolicyGate[]): void;
133
+ /**
134
+ * Create and register capsule
135
+ */
136
+ create(config: Omit<IXCapsuleConfig, 'policyGates'> & {
137
+ policyGates?: PolicyGate[];
138
+ }): IXCapsule;
139
+ /**
140
+ * Get capsule by ID
141
+ */
142
+ get(id: string): IXCapsule | undefined;
143
+ /**
144
+ * Check if capsule exists
145
+ */
146
+ has(id: string): boolean;
147
+ /**
148
+ * Remove capsule
149
+ */
150
+ remove(id: string): boolean;
151
+ /**
152
+ * List all capsules
153
+ */
154
+ list(): IXCapsule[];
155
+ /**
156
+ * Get active capsules
157
+ */
158
+ getActive(): IXCapsule[];
159
+ /**
160
+ * Broadcast patch to all capsules
161
+ */
162
+ broadcastPatch(patch: JSONPatch): void;
163
+ /**
164
+ * Destroy all capsules
165
+ */
166
+ clear(): void;
167
+ /**
168
+ * GAP-62/64: Get metrics for all capsules
169
+ * Returns aggregated metrics for all registered capsules
170
+ */
171
+ getMetrics(): Record<string, IXCapsuleMetrics>;
172
+ /**
173
+ * GAP-64: Get aggregated metrics across all capsules
174
+ * Returns summary statistics for the entire registry
175
+ */
176
+ getAggregatedMetrics(): IXAggregatedMetrics;
177
+ /**
178
+ * GAP-64: Export metrics for external monitoring systems
179
+ * Returns metrics in a format suitable for Prometheus, DataDog, etc.
180
+ */
181
+ exportMetrics(): IXMetricsExport;
182
+ /**
183
+ * Convert metrics to Prometheus format
184
+ */
185
+ private toPrometheusFormat;
186
+ }
187
+ /**
188
+ * GAP-64: Aggregated metrics interface
189
+ */
190
+ export interface IXAggregatedMetrics {
191
+ /** Total number of capsules in registry */
192
+ totalCapsules: number;
193
+ /** Number of currently active capsules */
194
+ activeCapsules: number;
195
+ /** Total renders across all capsules */
196
+ totalRenders: number;
197
+ /** Total actions across all capsules */
198
+ totalActions: number;
199
+ /** Total state updates across all capsules */
200
+ totalStateUpdates: number;
201
+ /** Total errors across all capsules */
202
+ totalErrors: number;
203
+ /** Average uptime in milliseconds */
204
+ avgUptime: number;
205
+ /** Total memory used in bytes */
206
+ totalMemoryUsed: number;
207
+ /** Average CPU usage percentage */
208
+ avgCpuUsage: number;
209
+ }
210
+ /**
211
+ * GAP-64: Metrics export format
212
+ */
213
+ export interface IXMetricsExport {
214
+ /** Export timestamp */
215
+ timestamp: number;
216
+ /** Summary statistics */
217
+ summary: IXAggregatedMetrics;
218
+ /** Individual capsule metrics */
219
+ capsules: Record<string, IXCapsuleMetrics>;
220
+ /** Prometheus-formatted metrics */
221
+ prometheus: string;
222
+ }
223
+ /**
224
+ * Global capsule registry
225
+ */
226
+ export declare const globalCapsuleRegistry: IXCapsuleRegistry;
227
+ //# sourceMappingURL=capsule-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capsule-runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/capsule-runtime.ts"],"names":[],"mappings":"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"}