@strands-agents/sdk 0.4.0 → 0.6.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 (306) hide show
  1. package/dist/src/__fixtures__/agent-helpers.d.ts +10 -1
  2. package/dist/src/__fixtures__/agent-helpers.d.ts.map +1 -1
  3. package/dist/src/__fixtures__/agent-helpers.js +13 -2
  4. package/dist/src/__fixtures__/agent-helpers.js.map +1 -1
  5. package/dist/src/__fixtures__/metrics-helpers.d.ts +25 -0
  6. package/dist/src/__fixtures__/metrics-helpers.d.ts.map +1 -0
  7. package/dist/src/__fixtures__/metrics-helpers.js +34 -0
  8. package/dist/src/__fixtures__/metrics-helpers.js.map +1 -0
  9. package/dist/src/__fixtures__/mock-message-model.d.ts.map +1 -1
  10. package/dist/src/__fixtures__/mock-message-model.js +12 -0
  11. package/dist/src/__fixtures__/mock-message-model.js.map +1 -1
  12. package/dist/src/__fixtures__/mock-span.d.ts +78 -0
  13. package/dist/src/__fixtures__/mock-span.d.ts.map +1 -0
  14. package/dist/src/__fixtures__/mock-span.js +93 -0
  15. package/dist/src/__fixtures__/mock-span.js.map +1 -0
  16. package/dist/src/__fixtures__/mock-storage-provider.d.ts +5 -0
  17. package/dist/src/__fixtures__/mock-storage-provider.d.ts.map +1 -1
  18. package/dist/src/__fixtures__/mock-storage-provider.js +23 -6
  19. package/dist/src/__fixtures__/mock-storage-provider.js.map +1 -1
  20. package/dist/src/__fixtures__/slim-types.d.ts +2 -1
  21. package/dist/src/__fixtures__/slim-types.d.ts.map +1 -1
  22. package/dist/src/__fixtures__/tool-helpers.d.ts +2 -2
  23. package/dist/src/__fixtures__/tool-helpers.d.ts.map +1 -1
  24. package/dist/src/__fixtures__/tool-helpers.js +4 -4
  25. package/dist/src/__fixtures__/tool-helpers.js.map +1 -1
  26. package/dist/src/__tests__/app-state.test.d.ts +2 -0
  27. package/dist/src/__tests__/app-state.test.d.ts.map +1 -0
  28. package/dist/src/{agent/__tests__/state.test.js → __tests__/app-state.test.js} +46 -46
  29. package/dist/src/__tests__/app-state.test.js.map +1 -0
  30. package/dist/src/__tests__/mcp.test.js +129 -18
  31. package/dist/src/__tests__/mcp.test.js.map +1 -1
  32. package/dist/src/agent/__tests__/agent.test.js +119 -11
  33. package/dist/src/agent/__tests__/agent.test.js.map +1 -1
  34. package/dist/src/agent/__tests__/agent.tracer.test.d.ts +2 -0
  35. package/dist/src/agent/__tests__/agent.tracer.test.d.ts.map +1 -0
  36. package/dist/src/agent/__tests__/agent.tracer.test.js +470 -0
  37. package/dist/src/agent/__tests__/agent.tracer.test.js.map +1 -0
  38. package/dist/src/agent/agent.d.ts +79 -9
  39. package/dist/src/agent/agent.d.ts.map +1 -1
  40. package/dist/src/agent/agent.js +253 -68
  41. package/dist/src/agent/agent.js.map +1 -1
  42. package/dist/src/{agent/state.d.ts → app-state.d.ts} +7 -7
  43. package/dist/src/app-state.d.ts.map +1 -0
  44. package/dist/src/{agent/state.js → app-state.js} +6 -6
  45. package/dist/src/app-state.js.map +1 -0
  46. package/dist/src/conversation-manager/sliding-window-conversation-manager.d.ts +1 -1
  47. package/dist/src/conversation-manager/sliding-window-conversation-manager.js +1 -1
  48. package/dist/src/errors.d.ts +6 -0
  49. package/dist/src/errors.d.ts.map +1 -1
  50. package/dist/src/errors.js +9 -0
  51. package/dist/src/errors.js.map +1 -1
  52. package/dist/src/hooks/__tests__/events.test.js +2 -0
  53. package/dist/src/hooks/__tests__/events.test.js.map +1 -1
  54. package/dist/src/hooks/events.d.ts +16 -0
  55. package/dist/src/hooks/events.d.ts.map +1 -1
  56. package/dist/src/hooks/events.js.map +1 -1
  57. package/dist/src/hooks/index.d.ts +1 -1
  58. package/dist/src/hooks/index.d.ts.map +1 -1
  59. package/dist/src/index.d.ts +23 -7
  60. package/dist/src/index.d.ts.map +1 -1
  61. package/dist/src/index.js +19 -2
  62. package/dist/src/index.js.map +1 -1
  63. package/dist/src/mcp.d.ts +41 -0
  64. package/dist/src/mcp.d.ts.map +1 -1
  65. package/dist/src/mcp.js +60 -6
  66. package/dist/src/mcp.js.map +1 -1
  67. package/dist/src/models/__tests__/bedrock.test.js +688 -0
  68. package/dist/src/models/__tests__/bedrock.test.js.map +1 -1
  69. package/dist/src/models/__tests__/model.test.js +113 -0
  70. package/dist/src/models/__tests__/model.test.js.map +1 -1
  71. package/dist/src/models/__tests__/streaming.test.d.ts +2 -0
  72. package/dist/src/models/__tests__/streaming.test.d.ts.map +1 -0
  73. package/dist/src/models/__tests__/streaming.test.js +50 -0
  74. package/dist/src/models/__tests__/streaming.test.js.map +1 -0
  75. package/dist/src/models/bedrock.d.ts +80 -1
  76. package/dist/src/models/bedrock.d.ts.map +1 -1
  77. package/dist/src/models/bedrock.js +214 -5
  78. package/dist/src/models/bedrock.js.map +1 -1
  79. package/dist/src/models/model.d.ts +10 -0
  80. package/dist/src/models/model.d.ts.map +1 -1
  81. package/dist/src/models/model.js +58 -2
  82. package/dist/src/models/model.js.map +1 -1
  83. package/dist/src/models/streaming.d.ts +84 -3
  84. package/dist/src/models/streaming.d.ts.map +1 -1
  85. package/dist/src/models/streaming.js +26 -0
  86. package/dist/src/models/streaming.js.map +1 -1
  87. package/dist/src/multiagent/__tests__/events.test.d.ts +2 -0
  88. package/dist/src/multiagent/__tests__/events.test.d.ts.map +1 -0
  89. package/dist/src/multiagent/__tests__/events.test.js +205 -0
  90. package/dist/src/multiagent/__tests__/events.test.js.map +1 -0
  91. package/dist/src/multiagent/__tests__/graph.test.d.ts +2 -0
  92. package/dist/src/multiagent/__tests__/graph.test.d.ts.map +1 -0
  93. package/dist/src/multiagent/__tests__/graph.test.js +438 -0
  94. package/dist/src/multiagent/__tests__/graph.test.js.map +1 -0
  95. package/dist/src/multiagent/__tests__/nodes.test.js +105 -9
  96. package/dist/src/multiagent/__tests__/nodes.test.js.map +1 -1
  97. package/dist/src/multiagent/__tests__/queue.test.d.ts +2 -0
  98. package/dist/src/multiagent/__tests__/queue.test.d.ts.map +1 -0
  99. package/dist/src/multiagent/__tests__/queue.test.js +118 -0
  100. package/dist/src/multiagent/__tests__/queue.test.js.map +1 -0
  101. package/dist/src/multiagent/__tests__/swarm.test.d.ts +2 -0
  102. package/dist/src/multiagent/__tests__/swarm.test.d.ts.map +1 -0
  103. package/dist/src/multiagent/__tests__/swarm.test.js +241 -0
  104. package/dist/src/multiagent/__tests__/swarm.test.js.map +1 -0
  105. package/dist/src/multiagent/base.d.ts +25 -0
  106. package/dist/src/multiagent/base.d.ts.map +1 -0
  107. package/dist/src/multiagent/base.js +2 -0
  108. package/dist/src/multiagent/base.js.map +1 -0
  109. package/dist/src/multiagent/edge.d.ts +36 -0
  110. package/dist/src/multiagent/edge.d.ts.map +1 -0
  111. package/dist/src/multiagent/edge.js +15 -0
  112. package/dist/src/multiagent/edge.js.map +1 -0
  113. package/dist/src/multiagent/events.d.ts +129 -4
  114. package/dist/src/multiagent/events.d.ts.map +1 -1
  115. package/dist/src/multiagent/events.js +140 -2
  116. package/dist/src/multiagent/events.js.map +1 -1
  117. package/dist/src/multiagent/graph.d.ts +125 -0
  118. package/dist/src/multiagent/graph.d.ts.map +1 -0
  119. package/dist/src/multiagent/graph.js +394 -0
  120. package/dist/src/multiagent/graph.js.map +1 -0
  121. package/dist/src/multiagent/index.d.ts +12 -6
  122. package/dist/src/multiagent/index.d.ts.map +1 -1
  123. package/dist/src/multiagent/index.js +6 -3
  124. package/dist/src/multiagent/index.js.map +1 -1
  125. package/dist/src/multiagent/nodes.d.ts +66 -16
  126. package/dist/src/multiagent/nodes.d.ts.map +1 -1
  127. package/dist/src/multiagent/nodes.js +82 -24
  128. package/dist/src/multiagent/nodes.js.map +1 -1
  129. package/dist/src/multiagent/queue.d.ts +73 -0
  130. package/dist/src/multiagent/queue.d.ts.map +1 -0
  131. package/dist/src/multiagent/queue.js +72 -0
  132. package/dist/src/multiagent/queue.js.map +1 -0
  133. package/dist/src/multiagent/state.d.ts +79 -10
  134. package/dist/src/multiagent/state.d.ts.map +1 -1
  135. package/dist/src/multiagent/state.js +101 -9
  136. package/dist/src/multiagent/state.js.map +1 -1
  137. package/dist/src/multiagent/swarm.d.ts +102 -0
  138. package/dist/src/multiagent/swarm.d.ts.map +1 -0
  139. package/dist/src/multiagent/swarm.js +238 -0
  140. package/dist/src/multiagent/swarm.js.map +1 -0
  141. package/dist/src/registry/__tests__/tool-registry.test.d.ts +2 -0
  142. package/dist/src/registry/__tests__/tool-registry.test.d.ts.map +1 -0
  143. package/dist/src/registry/__tests__/tool-registry.test.js +124 -0
  144. package/dist/src/registry/__tests__/tool-registry.test.js.map +1 -0
  145. package/dist/src/registry/tool-registry.d.ts +32 -20
  146. package/dist/src/registry/tool-registry.d.ts.map +1 -1
  147. package/dist/src/registry/tool-registry.js +60 -158
  148. package/dist/src/registry/tool-registry.js.map +1 -1
  149. package/dist/src/session/__tests__/file-storage.test.node.js +75 -15
  150. package/dist/src/session/__tests__/file-storage.test.node.js.map +1 -1
  151. package/dist/src/session/__tests__/s3-storage.test.d.ts +2 -0
  152. package/dist/src/session/__tests__/s3-storage.test.d.ts.map +1 -0
  153. package/dist/src/session/__tests__/{s3-storage.test.node.js → s3-storage.test.js} +161 -75
  154. package/dist/src/session/__tests__/s3-storage.test.js.map +1 -0
  155. package/dist/src/session/__tests__/session-manager.test.d.ts +2 -0
  156. package/dist/src/session/__tests__/session-manager.test.d.ts.map +1 -0
  157. package/dist/src/session/__tests__/session-manager.test.js +461 -0
  158. package/dist/src/session/__tests__/session-manager.test.js.map +1 -0
  159. package/dist/src/session/__tests__/validation.test.js +28 -1
  160. package/dist/src/session/__tests__/validation.test.js.map +1 -1
  161. package/dist/src/session/file-storage.d.ts +53 -27
  162. package/dist/src/session/file-storage.d.ts.map +1 -1
  163. package/dist/src/session/file-storage.js +103 -52
  164. package/dist/src/session/file-storage.js.map +1 -1
  165. package/dist/src/session/index.d.ts +6 -13
  166. package/dist/src/session/index.d.ts.map +1 -1
  167. package/dist/src/session/index.js +4 -12
  168. package/dist/src/session/index.js.map +1 -1
  169. package/dist/src/session/s3-storage.d.ts +49 -20
  170. package/dist/src/session/s3-storage.d.ts.map +1 -1
  171. package/dist/src/session/s3-storage.js +120 -35
  172. package/dist/src/session/s3-storage.js.map +1 -1
  173. package/dist/src/session/session-manager.d.ts +83 -0
  174. package/dist/src/session/session-manager.d.ts.map +1 -0
  175. package/dist/src/session/session-manager.js +122 -0
  176. package/dist/src/session/session-manager.js.map +1 -0
  177. package/dist/src/session/storage.d.ts +19 -11
  178. package/dist/src/session/storage.d.ts.map +1 -1
  179. package/dist/src/session/types.d.ts +6 -18
  180. package/dist/src/session/types.d.ts.map +1 -1
  181. package/dist/src/session/validation.d.ts +7 -0
  182. package/dist/src/session/validation.d.ts.map +1 -1
  183. package/dist/src/session/validation.js +12 -0
  184. package/dist/src/session/validation.js.map +1 -1
  185. package/dist/src/structured-output/__tests__/context.test.js +13 -13
  186. package/dist/src/structured-output/__tests__/context.test.js.map +1 -1
  187. package/dist/src/structured-output/context.js +1 -1
  188. package/dist/src/structured-output/context.js.map +1 -1
  189. package/dist/src/telemetry/__tests__/config.test.d.ts +2 -0
  190. package/dist/src/telemetry/__tests__/config.test.d.ts.map +1 -0
  191. package/dist/src/telemetry/__tests__/config.test.js +40 -0
  192. package/dist/src/telemetry/__tests__/config.test.js.map +1 -0
  193. package/dist/src/telemetry/__tests__/config.test.node.d.ts +2 -0
  194. package/dist/src/telemetry/__tests__/config.test.node.d.ts.map +1 -0
  195. package/dist/src/telemetry/__tests__/config.test.node.js +103 -0
  196. package/dist/src/telemetry/__tests__/config.test.node.js.map +1 -0
  197. package/dist/src/telemetry/__tests__/json.test.d.ts +2 -0
  198. package/dist/src/telemetry/__tests__/json.test.d.ts.map +1 -0
  199. package/dist/src/telemetry/__tests__/json.test.js +89 -0
  200. package/dist/src/telemetry/__tests__/json.test.js.map +1 -0
  201. package/dist/src/telemetry/__tests__/meter.test.d.ts +2 -0
  202. package/dist/src/telemetry/__tests__/meter.test.d.ts.map +1 -0
  203. package/dist/src/telemetry/__tests__/meter.test.js +457 -0
  204. package/dist/src/telemetry/__tests__/meter.test.js.map +1 -0
  205. package/dist/src/telemetry/__tests__/tracer.test.node.d.ts +2 -0
  206. package/dist/src/telemetry/__tests__/tracer.test.node.d.ts.map +1 -0
  207. package/dist/src/telemetry/__tests__/tracer.test.node.js +611 -0
  208. package/dist/src/telemetry/__tests__/tracer.test.node.js.map +1 -0
  209. package/dist/src/telemetry/config.d.ts +82 -0
  210. package/dist/src/telemetry/config.d.ts.map +1 -0
  211. package/dist/src/telemetry/config.js +133 -0
  212. package/dist/src/telemetry/config.js.map +1 -0
  213. package/dist/src/telemetry/index.d.ts +34 -0
  214. package/dist/src/telemetry/index.d.ts.map +1 -0
  215. package/dist/src/telemetry/index.js +33 -0
  216. package/dist/src/telemetry/index.js.map +1 -0
  217. package/dist/src/telemetry/json.d.ts +11 -0
  218. package/dist/src/telemetry/json.d.ts.map +1 -0
  219. package/dist/src/telemetry/json.js +25 -0
  220. package/dist/src/telemetry/json.js.map +1 -0
  221. package/dist/src/telemetry/meter.d.ts +277 -0
  222. package/dist/src/telemetry/meter.d.ts.map +1 -0
  223. package/dist/src/telemetry/meter.js +292 -0
  224. package/dist/src/telemetry/meter.js.map +1 -0
  225. package/dist/src/telemetry/tracer.d.ts +219 -0
  226. package/dist/src/telemetry/tracer.d.ts.map +1 -0
  227. package/dist/src/telemetry/tracer.js +610 -0
  228. package/dist/src/telemetry/tracer.js.map +1 -0
  229. package/dist/src/telemetry/types.d.ts +101 -0
  230. package/dist/src/telemetry/types.d.ts.map +1 -0
  231. package/dist/src/telemetry/types.js +5 -0
  232. package/dist/src/{multiagent → telemetry}/types.js.map +1 -1
  233. package/dist/src/tools/__tests__/tool-factory.test.d.ts +2 -0
  234. package/dist/src/tools/__tests__/tool-factory.test.d.ts.map +1 -0
  235. package/dist/src/tools/__tests__/tool-factory.test.js +98 -0
  236. package/dist/src/tools/__tests__/tool-factory.test.js.map +1 -0
  237. package/dist/src/tools/__tests__/zod-tool.test-d.js +1 -1
  238. package/dist/src/tools/__tests__/zod-tool.test-d.js.map +1 -1
  239. package/dist/src/tools/__tests__/zod-tool.test.js +3 -4
  240. package/dist/src/tools/__tests__/zod-tool.test.js.map +1 -1
  241. package/dist/src/tools/function-tool.d.ts +15 -2
  242. package/dist/src/tools/function-tool.d.ts.map +1 -1
  243. package/dist/src/tools/function-tool.js +24 -0
  244. package/dist/src/tools/function-tool.js.map +1 -1
  245. package/dist/src/tools/tool-factory.d.ts +22 -0
  246. package/dist/src/tools/tool-factory.d.ts.map +1 -0
  247. package/dist/src/tools/tool-factory.js +55 -0
  248. package/dist/src/tools/tool-factory.js.map +1 -0
  249. package/dist/src/tools/tool.d.ts +1 -1
  250. package/dist/src/tools/tool.js +1 -1
  251. package/dist/src/tools/zod-tool.d.ts +55 -52
  252. package/dist/src/tools/zod-tool.d.ts.map +1 -1
  253. package/dist/src/tools/zod-tool.js +7 -61
  254. package/dist/src/tools/zod-tool.js.map +1 -1
  255. package/dist/src/tsconfig.tsbuildinfo +1 -1
  256. package/dist/src/types/__tests__/agent.test.js +11 -0
  257. package/dist/src/types/__tests__/agent.test.js.map +1 -1
  258. package/dist/src/types/__tests__/citations.test.d.ts +2 -0
  259. package/dist/src/types/__tests__/citations.test.d.ts.map +1 -0
  260. package/dist/src/types/__tests__/citations.test.js +104 -0
  261. package/dist/src/types/__tests__/citations.test.js.map +1 -0
  262. package/dist/src/types/__tests__/messages.test.js +26 -0
  263. package/dist/src/types/__tests__/messages.test.js.map +1 -1
  264. package/dist/src/types/agent.d.ts +10 -3
  265. package/dist/src/types/agent.d.ts.map +1 -1
  266. package/dist/src/types/agent.js +9 -0
  267. package/dist/src/types/agent.js.map +1 -1
  268. package/dist/src/types/citations.d.ts +180 -0
  269. package/dist/src/types/citations.d.ts.map +1 -0
  270. package/dist/src/types/citations.js +45 -0
  271. package/dist/src/types/citations.js.map +1 -0
  272. package/dist/src/types/messages.d.ts +9 -5
  273. package/dist/src/types/messages.d.ts.map +1 -1
  274. package/dist/src/types/messages.js +5 -1
  275. package/dist/src/types/messages.js.map +1 -1
  276. package/dist/src/vended-tools/bash/__tests__/bash.test.node.js +2 -2
  277. package/dist/src/vended-tools/bash/__tests__/bash.test.node.js.map +1 -1
  278. package/dist/src/vended-tools/bash/bash.d.ts.map +1 -1
  279. package/dist/src/vended-tools/bash/bash.js +1 -2
  280. package/dist/src/vended-tools/bash/bash.js.map +1 -1
  281. package/dist/src/vended-tools/file_editor/__tests__/file-editor.test.node.js +4 -4
  282. package/dist/src/vended-tools/file_editor/__tests__/file-editor.test.node.js.map +1 -1
  283. package/dist/src/vended-tools/file_editor/file-editor.js +1 -1
  284. package/dist/src/vended-tools/file_editor/file-editor.js.map +1 -1
  285. package/dist/src/vended-tools/http_request/http-request.d.ts.map +1 -1
  286. package/dist/src/vended-tools/http_request/http-request.js +1 -2
  287. package/dist/src/vended-tools/http_request/http-request.js.map +1 -1
  288. package/dist/src/vended-tools/notebook/__tests__/notebook.test.js +2 -2
  289. package/dist/src/vended-tools/notebook/__tests__/notebook.test.js.map +1 -1
  290. package/dist/src/vended-tools/notebook/notebook.d.ts +1 -1
  291. package/package.json +25 -4
  292. package/dist/src/agent/__tests__/state.test.d.ts +0 -2
  293. package/dist/src/agent/__tests__/state.test.d.ts.map +0 -1
  294. package/dist/src/agent/__tests__/state.test.js.map +0 -1
  295. package/dist/src/agent/state.d.ts.map +0 -1
  296. package/dist/src/agent/state.js.map +0 -1
  297. package/dist/src/multiagent/types.d.ts +0 -5
  298. package/dist/src/multiagent/types.d.ts.map +0 -1
  299. package/dist/src/multiagent/types.js +0 -2
  300. package/dist/src/registry/registry.d.ts +0 -117
  301. package/dist/src/registry/registry.d.ts.map +0 -1
  302. package/dist/src/registry/registry.js +0 -298
  303. package/dist/src/registry/registry.js.map +0 -1
  304. package/dist/src/session/__tests__/s3-storage.test.node.d.ts +0 -2
  305. package/dist/src/session/__tests__/s3-storage.test.node.d.ts.map +0 -1
  306. package/dist/src/session/__tests__/s3-storage.test.node.js.map +0 -1
@@ -50,18 +50,30 @@ var __disposeResources = (this && this.__disposeResources) || (function (Suppres
50
50
  var e = new Error(message);
51
51
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
52
52
  });
53
- import { AgentResult, BedrockModel, contentBlockFromData, McpClient, Message, TextBlock, ToolResultBlock, ToolUseBlock, } from '../index.js';
53
+ import { AgentResult } from '../types/agent.js';
54
+ import { BedrockModel } from '../models/bedrock.js';
55
+ import { contentBlockFromData, Message, TextBlock, ToolResultBlock, ToolUseBlock, } from '../types/messages.js';
56
+ import { McpClient } from '../mcp.js';
57
+ import {} from '../tools/tool.js';
54
58
  import { systemPromptFromData } from '../types/messages.js';
55
59
  import { normalizeError, ConcurrentInvocationError, MaxTokensError } from '../errors.js';
60
+ import { Model } from '../models/model.js';
56
61
  import { isModelStreamEvent } from '../models/streaming.js';
57
62
  import { ToolRegistry } from '../registry/tool-registry.js';
58
- import { AgentState } from './state.js';
63
+ import { AppState } from '../app-state.js';
59
64
  import { AgentPrinter, getDefaultAppender } from './printer.js';
60
65
  import { SlidingWindowConversationManager } from '../conversation-manager/sliding-window-conversation-manager.js';
61
66
  import { HookRegistryImplementation } from '../hooks/registry.js';
62
67
  import { InitializedEvent, AfterInvocationEvent, AfterModelCallEvent, AfterToolCallEvent, AfterToolsEvent, BeforeInvocationEvent, BeforeModelCallEvent, BeforeToolCallEvent, BeforeToolsEvent, HookableEvent, MessageAddedEvent, ModelStreamUpdateEvent, ContentBlockEvent, ModelMessageEvent, ToolResultEvent, AgentResultEvent, ToolStreamUpdateEvent, } from '../hooks/events.js';
63
68
  import { createStructuredOutputContext } from '../structured-output/context.js';
64
69
  import { StructuredOutputException } from '../structured-output/exceptions.js';
70
+ import { Tracer } from '../telemetry/tracer.js';
71
+ import { Meter } from '../telemetry/meter.js';
72
+ import { logger } from '../logging/logger.js';
73
+ /** Fallback name used when no agent name is provided in the config. */
74
+ const DEFAULT_AGENT_NAME = 'Strands Agent';
75
+ /** Fallback agent ID used when no agent ID is provided in the config. */
76
+ const DEFAULT_AGENT_ID = 'default';
65
77
  /**
66
78
  * Orchestrates the interaction between a model, a set of tools, and MCP clients.
67
79
  * The Agent is responsible for managing the lifecycle of tools and clients
@@ -73,7 +85,7 @@ export class Agent {
73
85
  */
74
86
  messages;
75
87
  /**
76
- * Agent state storage accessible to tools and application logic.
88
+ * App state storage accessible to tools and application logic.
77
89
  * State is not passed to the model during inference.
78
90
  */
79
91
  state;
@@ -94,12 +106,28 @@ export class Agent {
94
106
  * The system prompt to pass to the model provider.
95
107
  */
96
108
  systemPrompt;
109
+ /**
110
+ * The name of the agent.
111
+ */
112
+ name;
113
+ /**
114
+ * The unique identifier of the agent instance.
115
+ */
116
+ agentId;
117
+ /**
118
+ * Optional description of what the agent does.
119
+ */
120
+ description;
97
121
  _toolRegistry;
98
122
  _mcpClients;
99
123
  _initialized;
100
124
  _isInvoking = false;
101
125
  _printer;
102
126
  _structuredOutputSchema;
127
+ /** Tracer instance for creating and managing OpenTelemetry spans. */
128
+ _tracer;
129
+ /** Meter instance for accumulating loop metrics during invocation. */
130
+ _meter;
103
131
  /**
104
132
  * Creates an instance of the Agent.
105
133
  * @param config - The configuration for the agent.
@@ -107,8 +135,12 @@ export class Agent {
107
135
  constructor(config) {
108
136
  // Initialize public fields
109
137
  this.messages = (config?.messages ?? []).map((msg) => (msg instanceof Message ? msg : Message.fromMessageData(msg)));
110
- this.state = new AgentState(config?.state);
138
+ this.state = new AppState(config?.state);
111
139
  this.conversationManager = config?.conversationManager ?? new SlidingWindowConversationManager({ windowSize: 40 });
140
+ this.name = config?.name ?? DEFAULT_AGENT_NAME;
141
+ this.agentId = config?.agentId ?? DEFAULT_AGENT_ID;
142
+ if (config?.description !== undefined)
143
+ this.description = config.description;
112
144
  // Initialize hooks and register conversation manager hooks
113
145
  this.hooks = new HookRegistryImplementation();
114
146
  this.hooks.addHook(this.conversationManager);
@@ -132,6 +164,13 @@ export class Agent {
132
164
  }
133
165
  // Store structured output schema
134
166
  this._structuredOutputSchema = config?.structuredOutputSchema;
167
+ // Initialize tracer - OTEL returns no-op tracer if not configured
168
+ this._tracer = new Tracer(config?.traceAttributes);
169
+ // Initialize meter for local metrics accumulation
170
+ this._meter = new Meter();
171
+ if (config?.sessionManager) {
172
+ this.hooks.addHook(config.sessionManager);
173
+ }
135
174
  this._initialized = false;
136
175
  }
137
176
  async initialize() {
@@ -140,7 +179,7 @@ export class Agent {
140
179
  }
141
180
  await Promise.all(this._mcpClients.map(async (client) => {
142
181
  const tools = await client.listTools();
143
- this._toolRegistry.addAll(tools);
182
+ this._toolRegistry.add(tools);
144
183
  }));
145
184
  await this.hooks.invokeCallbacks(new InitializedEvent({ agent: this }));
146
185
  this._initialized = true;
@@ -164,7 +203,7 @@ export class Agent {
164
203
  * The tools this agent can use.
165
204
  */
166
205
  get tools() {
167
- return this._toolRegistry.values();
206
+ return this._toolRegistry.list();
168
207
  }
169
208
  /**
170
209
  * The tool registry for managing the agent's tools.
@@ -180,6 +219,7 @@ export class Agent {
180
219
  * streaming events.
181
220
  *
182
221
  * @param args - Arguments for invoking the agent
222
+ * @param options - Optional per-invocation options
183
223
  * @returns Promise that resolves to the final AgentResult
184
224
  *
185
225
  * @example
@@ -189,8 +229,8 @@ export class Agent {
189
229
  * console.log(result.lastMessage) // Agent's response
190
230
  * ```
191
231
  */
192
- async invoke(args) {
193
- const gen = this.stream(args);
232
+ async invoke(args, options) {
233
+ const gen = this.stream(args, options);
194
234
  let result = await gen.next();
195
235
  while (!result.done) {
196
236
  result = await gen.next();
@@ -214,6 +254,7 @@ export class Agent {
214
254
  * with valid toolResponses
215
255
  *
216
256
  * @param args - Arguments for invoking the agent
257
+ * @param options - Optional per-invocation options
217
258
  * @returns Async generator that yields AgentStreamEvent objects and returns AgentResult
218
259
  *
219
260
  * @example
@@ -226,13 +267,13 @@ export class Agent {
226
267
  * // Messages array is mutated in place and contains the full conversation
227
268
  * ```
228
269
  */
229
- async *stream(args) {
270
+ async *stream(args, options) {
230
271
  const env_1 = { stack: [], error: void 0, hasError: false };
231
272
  try {
232
273
  const _lock = __addDisposableResource(env_1, this.acquireLock(), false);
233
274
  await this.initialize();
234
275
  // Delegate to _stream and process events through printer and hooks
235
- const streamGenerator = this._stream(args);
276
+ const streamGenerator = this._stream(args, options);
236
277
  let result = await streamGenerator.next();
237
278
  while (!result.done) {
238
279
  const event = result.value;
@@ -265,71 +306,128 @@ export class Agent {
265
306
  * Separated to centralize printer event processing in the public stream method.
266
307
  *
267
308
  * @param args - Arguments for invoking the agent
309
+ * @param options - Optional per-invocation options
268
310
  * @returns Async generator that yields AgentStreamEvent objects and returns AgentResult
269
311
  */
270
- async *_stream(args) {
312
+ async *_stream(args, options) {
271
313
  let currentArgs = args;
272
314
  let forcedToolChoice = undefined;
315
+ let result;
273
316
  // Create structured output context (uses null object pattern when no schema)
274
- const schema = this._structuredOutputSchema;
317
+ const schema = options?.structuredOutputSchema ?? this._structuredOutputSchema;
275
318
  const context = createStructuredOutputContext(schema);
276
319
  // Emit event before the try block
277
320
  yield new BeforeInvocationEvent({ agent: this });
321
+ // Normalize input to get the user messages for telemetry
322
+ const inputMessages = this._normalizeInput(args);
323
+ // Start agent trace span
324
+ this._meter.startNewInvocation();
325
+ const agentModelId = this.model.modelId;
326
+ const agentSpanOptions = {
327
+ messages: inputMessages,
328
+ agentName: this.name,
329
+ agentId: this.agentId,
330
+ tools: this.tools,
331
+ };
332
+ if (agentModelId)
333
+ agentSpanOptions.modelId = agentModelId;
334
+ if (this.systemPrompt)
335
+ agentSpanOptions.systemPrompt = this.systemPrompt;
336
+ const agentSpan = this._tracer.startAgentSpan(agentSpanOptions);
337
+ let caughtError;
278
338
  try {
279
339
  // Register structured output tool
280
340
  context.registerTool(this._toolRegistry);
281
341
  // Main agent loop - continues until model stops without requesting tools
282
342
  while (true) {
283
- const modelResult = yield* this.invokeModel(currentArgs, forcedToolChoice);
284
- currentArgs = undefined; // Only pass args on first invocation
285
- const wasForced = forcedToolChoice !== undefined;
286
- forcedToolChoice = undefined; // Clear after use
287
- if (modelResult.stopReason !== 'toolUse') {
288
- // Special handling for maxTokens - always fail regardless of whether we have structured output
289
- if (modelResult.stopReason === 'maxTokens') {
290
- throw new MaxTokensError('The model reached maxTokens before producing structured output. Consider increasing maxTokens in your model configuration.', modelResult.message);
291
- }
292
- // Check if we need to force structured output tool
293
- if (!context.hasResult()) {
294
- if (wasForced) {
295
- // Already tried forcing - LLM refused to use the tool
296
- throw new StructuredOutputException('The model failed to invoke the structured output tool even after it was forced.');
343
+ // Start metrics cycle tracking
344
+ const { cycleId, startTime: cycleStartTime } = this._meter.startCycle();
345
+ // Create agent loop cycle span within agent span context
346
+ const cycleSpan = this._tracer.startAgentLoopSpan({
347
+ cycleId,
348
+ messages: this.messages,
349
+ });
350
+ try {
351
+ const modelResult = yield* this.invokeModel(currentArgs, forcedToolChoice);
352
+ currentArgs = undefined; // Only pass args on first invocation
353
+ const wasForced = forcedToolChoice !== undefined;
354
+ forcedToolChoice = undefined; // Clear after use
355
+ if (modelResult.stopReason !== 'toolUse') {
356
+ // Special handling for maxTokens - always fail regardless of whether we have structured output
357
+ if (modelResult.stopReason === 'maxTokens') {
358
+ throw new MaxTokensError('The model reached maxTokens before producing structured output. Consider increasing maxTokens in your model configuration.', modelResult.message);
359
+ }
360
+ // Check if we need to force structured output tool
361
+ if (!context.hasResult()) {
362
+ if (wasForced) {
363
+ // Already tried forcing - LLM refused to use the tool
364
+ throw new StructuredOutputException('The model failed to invoke the structured output tool even after it was forced.');
365
+ }
366
+ // Force the model to use the structured output tool
367
+ const toolName = context.getToolName();
368
+ forcedToolChoice = { tool: { name: toolName } };
369
+ this._meter.endCycle(cycleStartTime);
370
+ this._tracer.endAgentLoopSpan(cycleSpan);
371
+ continue;
297
372
  }
298
- // Force the model to use the structured output tool
299
- const toolName = context.getToolName();
300
- forcedToolChoice = { tool: { name: toolName } };
301
- continue;
373
+ // Loop terminates - no tool use requested (and structured output satisfied if needed)
374
+ yield this._appendMessage(modelResult.message);
375
+ // End cycle tracking
376
+ this._meter.endCycle(cycleStartTime);
377
+ // End cycle span
378
+ this._tracer.endAgentLoopSpan(cycleSpan);
379
+ const structuredOutput = context.getResult();
380
+ result = new AgentResult({
381
+ stopReason: modelResult.stopReason,
382
+ lastMessage: modelResult.message,
383
+ structuredOutput,
384
+ metrics: this._meter.metrics,
385
+ });
386
+ return result;
302
387
  }
303
- // Loop terminates - no tool use requested (and structured output satisfied if needed)
388
+ // Execute tools sequentially
389
+ const toolResultMessage = yield* this.executeTools(modelResult.message, this._toolRegistry);
390
+ /**
391
+ * Deferred append: both messages are added AFTER tool execution completes.
392
+ * This keeps agent.messages in a valid, reinvokable state at all times:
393
+ *
394
+ * - If interrupted during tool execution, messages has no dangling toolUse
395
+ * without a matching toolResult, so the agent can be reinvoked cleanly.
396
+ * - The Python SDK appends the assistant message BEFORE tool execution,
397
+ * requiring recovery logic (generate_missing_tool_result_content) on
398
+ * interrupts. We avoid that by deferring.
399
+ * - Trade-off: MessageAddedEvent for the assistant message fires after tools
400
+ * complete (not before as in Python), and agent.messages is incomplete
401
+ * during tool execution. Events like BeforeToolsEvent.message and
402
+ * BeforeToolCallEvent.toolUse provide the data directly.
403
+ */
304
404
  yield this._appendMessage(modelResult.message);
305
- const structuredOutput = context.getResult();
306
- return new AgentResult({
307
- stopReason: modelResult.stopReason,
308
- lastMessage: modelResult.message,
309
- structuredOutput,
310
- });
405
+ yield this._appendMessage(toolResultMessage);
406
+ // End cycle tracking
407
+ this._meter.endCycle(cycleStartTime);
408
+ // End cycle span
409
+ this._tracer.endAgentLoopSpan(cycleSpan);
410
+ // Continue loop
411
+ }
412
+ catch (error) {
413
+ // End cycle tracking and span with error
414
+ this._meter.endCycle(cycleStartTime);
415
+ this._tracer.endAgentLoopSpan(cycleSpan, { error: error });
416
+ throw error;
311
417
  }
312
- // Execute tools sequentially
313
- const toolResultMessage = yield* this.executeTools(modelResult.message, this._toolRegistry);
314
- /**
315
- * Deferred append: both messages are added AFTER tool execution completes.
316
- * This keeps agent.messages in a valid, reinvokable state at all times:
317
- *
318
- * - If interrupted during tool execution, messages has no dangling toolUse
319
- * without a matching toolResult, so the agent can be reinvoked cleanly.
320
- * - The Python SDK appends the assistant message BEFORE tool execution,
321
- * requiring recovery logic (generate_missing_tool_result_content) on
322
- * interrupts. We avoid that by deferring.
323
- * - Trade-off: MessageAddedEvent for the assistant message fires after tools
324
- * complete (not before as in Python), and agent.messages is incomplete
325
- * during tool execution. Events like BeforeToolsEvent.message and
326
- * BeforeToolCallEvent.toolUse provide the data directly.
327
- */
328
- yield this._appendMessage(modelResult.message);
329
- yield this._appendMessage(toolResultMessage);
330
418
  }
331
419
  }
420
+ catch (error) {
421
+ caughtError = error;
422
+ throw error;
423
+ }
332
424
  finally {
425
+ this._tracer.endAgentSpan(agentSpan, {
426
+ ...(caughtError && { error: caughtError }),
427
+ ...(result?.lastMessage && { response: result.lastMessage }),
428
+ accumulatedUsage: this._meter.metrics.accumulatedUsage,
429
+ ...(result?.stopReason && { stopReason: result.stopReason }),
430
+ });
333
431
  // Cleanup structured output context
334
432
  context.cleanup(this._toolRegistry);
335
433
  // Always emit final event
@@ -396,7 +494,7 @@ export class Agent {
396
494
  *
397
495
  * @param args - Optional arguments for invoking the model
398
496
  * @param toolChoice - Optional tool choice to force specific tool usage
399
- * @returns Object containing the assistant message and stop reason
497
+ * @returns Object containing the assistant message, stop reason, and optional redaction message
400
498
  */
401
499
  async *invokeModel(args, forcedToolChoice) {
402
500
  // Normalize input and append messages to conversation
@@ -404,7 +502,7 @@ export class Agent {
404
502
  for (const message of messagesToAppend) {
405
503
  yield this._appendMessage(message);
406
504
  }
407
- const toolSpecs = this._toolRegistry.values().map((tool) => tool.toolSpec);
505
+ const toolSpecs = this._toolRegistry.list().map((tool) => tool.toolSpec);
408
506
  const streamOptions = { toolSpecs };
409
507
  if (this.systemPrompt !== undefined) {
410
508
  streamOptions.systemPrompt = this.systemPrompt;
@@ -414,18 +512,44 @@ export class Agent {
414
512
  streamOptions.toolChoice = forcedToolChoice;
415
513
  }
416
514
  yield new BeforeModelCallEvent({ agent: this });
515
+ // Start model span within loop span context
516
+ const modelId = this.model.modelId;
517
+ const modelSpan = this._tracer.startModelInvokeSpan({
518
+ messages: this.messages,
519
+ ...(modelId && { modelId }),
520
+ });
417
521
  try {
418
- const { message, stopReason } = yield* this._streamFromModel(this.messages, streamOptions);
419
- yield new ModelMessageEvent({ agent: this, message, stopReason });
420
- const afterModelCallEvent = new AfterModelCallEvent({ agent: this, stopData: { message, stopReason } });
522
+ const result = yield* this._streamFromModel(this.messages, streamOptions);
523
+ // Accumulate token usage and model latency metrics
524
+ this._meter.updateCycle(result.metadata);
525
+ // End model span with usage
526
+ const usage = result.metadata?.usage;
527
+ this._tracer.endModelInvokeSpan(modelSpan, {
528
+ output: result.message,
529
+ stopReason: result.stopReason,
530
+ ...(usage && { usage }),
531
+ });
532
+ yield new ModelMessageEvent({ agent: this, message: result.message, stopReason: result.stopReason });
533
+ // Handle user content redaction if guardrails blocked input
534
+ if (result.redaction?.userMessage) {
535
+ this._redactLastMessage(result.redaction.userMessage);
536
+ }
537
+ const stopData = {
538
+ message: result.message,
539
+ stopReason: result.stopReason,
540
+ ...(result.redaction && { redaction: result.redaction }),
541
+ };
542
+ const afterModelCallEvent = new AfterModelCallEvent({ agent: this, stopData });
421
543
  yield afterModelCallEvent;
422
544
  if (afterModelCallEvent.retry) {
423
545
  return yield* this.invokeModel(args);
424
546
  }
425
- return { message, stopReason };
547
+ return result;
426
548
  }
427
549
  catch (error) {
428
550
  const modelError = normalizeError(error);
551
+ // End model span with error
552
+ this._tracer.endModelInvokeSpan(modelSpan, { error: modelError });
429
553
  // Create error event
430
554
  const errorEvent = new AfterModelCallEvent({ agent: this, error: modelError });
431
555
  // Yield error event - stream will invoke hooks
@@ -452,7 +576,7 @@ export class Agent {
452
576
  *
453
577
  * @param messages - Messages to send to the model
454
578
  * @param streamOptions - Options for streaming
455
- * @returns Object containing the assistant message and stop reason
579
+ * @returns StreamAggregatedResult containing message, stop reason, and optional redaction message
456
580
  */
457
581
  async *_streamFromModel(messages, streamOptions) {
458
582
  const streamGenerator = this.model.streamAggregated(messages, streamOptions);
@@ -513,8 +637,8 @@ export class Agent {
513
637
  * @returns Tool result block
514
638
  */
515
639
  async *executeTool(toolUseBlock, toolRegistry) {
516
- const tool = toolRegistry.find((t) => t.name === toolUseBlock.name);
517
- // Create toolUse object for hook events
640
+ const tool = toolRegistry.get(toolUseBlock.name);
641
+ // Create toolUse object for hook events and telemetry
518
642
  const toolUse = {
519
643
  name: toolUseBlock.name,
520
644
  toolUseId: toolUseBlock.toolUseId,
@@ -523,6 +647,12 @@ export class Agent {
523
647
  // Retry loop for tool execution
524
648
  while (true) {
525
649
  yield new BeforeToolCallEvent({ agent: this, toolUse, tool });
650
+ // Start tool span within loop span context
651
+ const toolSpan = this._tracer.startToolCallSpan({
652
+ tool: toolUse,
653
+ });
654
+ // Track tool execution time for metrics
655
+ const toolStartTime = Date.now();
526
656
  let toolResult;
527
657
  let error;
528
658
  if (!tool) {
@@ -534,7 +664,7 @@ export class Agent {
534
664
  });
535
665
  }
536
666
  else {
537
- // Execute tool and collect result
667
+ // Execute tool within the tool span context
538
668
  const toolContext = {
539
669
  toolUse: {
540
670
  name: toolUseBlock.name,
@@ -547,11 +677,13 @@ export class Agent {
547
677
  // Manually iterate tool stream to wrap each ToolStreamEvent in ToolStreamUpdateEvent.
548
678
  // This keeps the tool authoring interface unchanged — tools construct ToolStreamEvent
549
679
  // without knowledge of agents or hooks, and we wrap at the boundary.
550
- const toolGenerator = tool.stream(toolContext);
551
- let toolNext = await toolGenerator.next();
680
+ // Tool execution is ran within the tool span's context so that
681
+ // downstream calls (e.g., MCP clients) can propagate trace context
682
+ const toolGenerator = this._tracer.withSpanContext(toolSpan, () => tool.stream(toolContext));
683
+ let toolNext = await this._tracer.withSpanContext(toolSpan, () => toolGenerator.next());
552
684
  while (!toolNext.done) {
553
685
  yield new ToolStreamUpdateEvent({ agent: this, event: toolNext.value });
554
- toolNext = await toolGenerator.next();
686
+ toolNext = await this._tracer.withSpanContext(toolSpan, () => toolGenerator.next());
555
687
  }
556
688
  const result = toolNext.value;
557
689
  if (!result) {
@@ -578,6 +710,14 @@ export class Agent {
578
710
  });
579
711
  }
580
712
  }
713
+ // End tool span
714
+ this._tracer.endToolCallSpan(toolSpan, { toolResult, ...(error && { error }) });
715
+ // End tool metrics tracking
716
+ this._meter.endToolCall({
717
+ tool: toolUse,
718
+ duration: Date.now() - toolStartTime,
719
+ success: toolResult.status === 'success',
720
+ });
581
721
  // Single point for AfterToolCallEvent
582
722
  const afterToolCallEvent = new AfterToolCallEvent({
583
723
  agent: this,
@@ -593,6 +733,51 @@ export class Agent {
593
733
  return toolResult;
594
734
  }
595
735
  }
736
+ /**
737
+ * Redacts the last message in the conversation history.
738
+ * Called when guardrails block user input and redaction is enabled.
739
+ *
740
+ * Follows the redaction strategy:
741
+ * - If the message contains at least one toolResult block, all toolResult blocks
742
+ * are kept with redacted content, and all other blocks are discarded.
743
+ * - Otherwise, the entire content is replaced with a single text block containing
744
+ * the redaction message.
745
+ *
746
+ * @param redactMessage - The redaction message to replace the content with
747
+ */
748
+ _redactLastMessage(redactMessage) {
749
+ // Find and redact the last message
750
+ const lastIndex = this.messages.length - 1;
751
+ if (lastIndex >= 0) {
752
+ const lastMessage = this.messages[lastIndex];
753
+ if (lastMessage && lastMessage.role === 'user') {
754
+ // Collect only tool result blocks with redacted content
755
+ const redactedContent = [];
756
+ for (const block of lastMessage.content) {
757
+ if (block.type === 'toolResultBlock') {
758
+ // Preserve tool result block structure, only redact its content
759
+ redactedContent.push(new ToolResultBlock({
760
+ toolUseId: block.toolUseId,
761
+ status: block.status,
762
+ content: [new TextBlock(redactMessage)],
763
+ }));
764
+ }
765
+ }
766
+ // If no tool result blocks were found, replace entire content with redaction message
767
+ if (redactedContent.length === 0) {
768
+ redactedContent.push(new TextBlock(redactMessage));
769
+ }
770
+ this.messages[lastIndex] = new Message({
771
+ role: 'user',
772
+ content: redactedContent,
773
+ });
774
+ }
775
+ else if (lastMessage) {
776
+ // Unexpected state: redaction requested but last message is not from user
777
+ logger.warn(`role=<${lastMessage.role}> | received input redaction but last message is not from user | redaction skipped.`);
778
+ }
779
+ }
780
+ }
596
781
  /**
597
782
  * Appends a message to the conversation history and returns the event for yielding.
598
783
  *
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/agent/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/agent/agent.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { type JSONValue } from '../types/json.js';
2
- import type { StateSerializable } from '../types/serializable.js';
1
+ import { type JSONValue } from './types/json.js';
2
+ import type { StateSerializable } from './types/serializable.js';
3
3
  /**
4
- * Agent state provides key-value storage outside conversation context.
4
+ * App state provides key-value storage outside conversation context.
5
5
  * State is not passed to the model during inference but is accessible
6
6
  * by tools (via ToolContext) and application logic.
7
7
  *
@@ -10,15 +10,15 @@ import type { StateSerializable } from '../types/serializable.js';
10
10
  *
11
11
  * @example
12
12
  * ```typescript
13
- * const state = new AgentState({ userId: 'user-123' })
13
+ * const state = new AppState({ userId: 'user-123' })
14
14
  * state.set('sessionId', 'session-456')
15
15
  * const userId = state.get('userId') // 'user-123'
16
16
  * ```
17
17
  */
18
- export declare class AgentState implements StateSerializable {
18
+ export declare class AppState implements StateSerializable {
19
19
  private _state;
20
20
  /**
21
- * Creates a new AgentState instance.
21
+ * Creates a new AppState instance.
22
22
  *
23
23
  * @param initialState - Optional initial state values
24
24
  * @throws Error if initialState is not JSON serializable
@@ -112,4 +112,4 @@ export declare class AgentState implements StateSerializable {
112
112
  */
113
113
  loadStateFromJson(json: JSONValue): void;
114
114
  }
115
- //# sourceMappingURL=state.d.ts.map
115
+ //# sourceMappingURL=app-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-state.d.ts","sourceRoot":"","sources":["../../src/app-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAClF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAEhE;;;;;;;;;;;;;;GAcG;AACH,qBAAa,QAAS,YAAW,iBAAiB;IAChD,OAAO,CAAC,MAAM,CAA2B;IAEzC;;;;;OAKG;gBACS,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAQpD;;;;;;;;;;;;;;;;;OAiBG;IACH,GAAG,CAAC,MAAM,EAAE,CAAC,SAAS,MAAM,MAAM,GAAG,MAAM,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS;IACjF,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAevC;;;;;;;;;;;;;;;;;;OAkBG;IACH,GAAG,CAAC,MAAM,EAAE,CAAC,SAAS,MAAM,MAAM,GAAG,MAAM,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;IAClF,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAKtC;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,MAAM,EAAE,CAAC,SAAS,MAAM,MAAM,GAAG,MAAM,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI;IACnE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKzB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAInC;;;;OAIG;IACH,IAAI,IAAI,MAAM,EAAE;IAIhB;;;;OAIG;IACH,MAAM,IAAI,SAAS;IAInB;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;CAOzC"}