@effect-uai/core 0.8.0 → 0.9.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 (132) hide show
  1. package/dist/{AiError-CAX_48RU.d.mts → AiError-CrdR1EQi.d.mts} +2 -2
  2. package/dist/{AiError-CAX_48RU.d.mts.map → AiError-CrdR1EQi.d.mts.map} +1 -1
  3. package/dist/{Audio-DPlTsNdz.d.mts → Audio-DDSKCkSe.d.mts} +2 -2
  4. package/dist/{Audio-DPlTsNdz.d.mts.map → Audio-DDSKCkSe.d.mts.map} +1 -1
  5. package/dist/{Image-HNmMpMTh.d.mts → Image-C_Zjpwhc.d.mts} +2 -2
  6. package/dist/{Image-HNmMpMTh.d.mts.map → Image-C_Zjpwhc.d.mts.map} +1 -1
  7. package/dist/{Items-7ljaVxH_.d.mts → Items-CgKD6Npw.d.mts} +13 -13
  8. package/dist/{Items-7ljaVxH_.d.mts.map → Items-CgKD6Npw.d.mts.map} +1 -1
  9. package/dist/Loop-B5_cqumi.d.mts +173 -0
  10. package/dist/Loop-B5_cqumi.d.mts.map +1 -0
  11. package/dist/{Media-D_CpcM1Z.d.mts → Media-DOLyaygI.d.mts} +1 -1
  12. package/dist/{Media-D_CpcM1Z.d.mts.map → Media-DOLyaygI.d.mts.map} +1 -1
  13. package/dist/{SandboxError-BvKypkJm.d.mts → SandboxError-CIrVDOMV.d.mts} +2 -2
  14. package/dist/{SandboxError-BvKypkJm.d.mts.map → SandboxError-CIrVDOMV.d.mts.map} +1 -1
  15. package/dist/{StructuredFormat-BbN4dosH.d.mts → StructuredFormat-CMJFD3sn.d.mts} +2 -2
  16. package/dist/{StructuredFormat-BbN4dosH.d.mts.map → StructuredFormat-CMJFD3sn.d.mts.map} +1 -1
  17. package/dist/Tool-0XUIT2A2.d.mts +232 -0
  18. package/dist/Tool-0XUIT2A2.d.mts.map +1 -0
  19. package/dist/ToolEvent-DYrAUJGs.d.mts +151 -0
  20. package/dist/ToolEvent-DYrAUJGs.d.mts.map +1 -0
  21. package/dist/ToolResult-BZd-cEWW.d.mts +151 -0
  22. package/dist/ToolResult-BZd-cEWW.d.mts.map +1 -0
  23. package/dist/Toolkit-BKC8b8Xo.d.mts +155 -0
  24. package/dist/Toolkit-BKC8b8Xo.d.mts.map +1 -0
  25. package/dist/{dist-DV5ISja1.mjs → dist-B04dlFHg.mjs} +3 -3
  26. package/dist/{dist-DV5ISja1.mjs.map → dist-B04dlFHg.mjs.map} +1 -1
  27. package/dist/dist-DWgRbDN3.mjs +140 -0
  28. package/dist/dist-DWgRbDN3.mjs.map +1 -0
  29. package/dist/domain/AiError.d.mts +1 -1
  30. package/dist/domain/Audio.d.mts +1 -1
  31. package/dist/domain/Image.d.mts +1 -1
  32. package/dist/domain/Items.d.mts +1 -1
  33. package/dist/domain/Media.d.mts +1 -1
  34. package/dist/domain/Music.d.mts +1 -1
  35. package/dist/domain/Turn.d.mts +4 -4
  36. package/dist/domain/Turn.test.mjs +1 -1
  37. package/dist/embedding-model/Embedding.d.mts +1 -1
  38. package/dist/embedding-model/EmbeddingModel.d.mts +1 -1
  39. package/dist/embedding-model/EmbeddingModel.test.mjs +1 -1
  40. package/dist/embedding-model/EmbeddingModel.test.mjs.map +1 -1
  41. package/dist/index.d.mts +14 -13
  42. package/dist/index.mjs +2 -1
  43. package/dist/language-model/LanguageModel.d.mts +10 -5
  44. package/dist/language-model/LanguageModel.d.mts.map +1 -1
  45. package/dist/language-model/LanguageModel.mjs.map +1 -1
  46. package/dist/language-model/LanguageModel.test.mjs +1 -1
  47. package/dist/loop/Loop.d.mts +2 -141
  48. package/dist/loop/Loop.mjs +16 -20
  49. package/dist/loop/Loop.mjs.map +1 -1
  50. package/dist/loop/Loop.test.mjs +18 -1
  51. package/dist/loop/Loop.test.mjs.map +1 -1
  52. package/dist/{magic-string.es-BgIV5Mu3.mjs → magic-string.es-Dk-MMA0F.mjs} +1 -1
  53. package/dist/{magic-string.es-BgIV5Mu3.mjs.map → magic-string.es-Dk-MMA0F.mjs.map} +1 -1
  54. package/dist/music-generator/MusicGenerator.d.mts +2 -2
  55. package/dist/music-generator/MusicGenerator.test.mjs +1 -1
  56. package/dist/observability/Metrics.d.mts +116 -28
  57. package/dist/observability/Metrics.d.mts.map +1 -1
  58. package/dist/observability/Metrics.mjs +250 -38
  59. package/dist/observability/Metrics.mjs.map +1 -1
  60. package/dist/observability/Metrics.test.d.mts +1 -0
  61. package/dist/observability/Metrics.test.mjs +187 -0
  62. package/dist/observability/Metrics.test.mjs.map +1 -0
  63. package/dist/observability/Telemetry.d.mts +37 -0
  64. package/dist/observability/Telemetry.d.mts.map +1 -0
  65. package/dist/observability/Telemetry.mjs +57 -0
  66. package/dist/observability/Telemetry.mjs.map +1 -0
  67. package/dist/observability/Telemetry.test.d.mts +1 -0
  68. package/dist/observability/Telemetry.test.mjs +92 -0
  69. package/dist/observability/Telemetry.test.mjs.map +1 -0
  70. package/dist/retry/Retry.d.mts +2 -2
  71. package/dist/retry/Retry.test.mjs +1 -1
  72. package/dist/sandbox/Sandbox.d.mts +1 -1
  73. package/dist/sandbox/SandboxError.d.mts +1 -1
  74. package/dist/speech-synthesizer/SpeechSynthesizer.d.mts +2 -2
  75. package/dist/speech-synthesizer/SpeechSynthesizer.test.mjs +1 -1
  76. package/dist/streaming/JSONL.d.mts +1 -1
  77. package/dist/streaming/JSONL.test.mjs +1 -1
  78. package/dist/streaming/SSE.test.mjs +1 -1
  79. package/dist/structured-format/StructuredFormat.d.mts +1 -1
  80. package/dist/structured-format/StructuredFormat.mjs.map +1 -1
  81. package/dist/structured-format/StructuredFormat.test.mjs +1 -1
  82. package/dist/testing/MockMusicGenerator.d.mts +1 -1
  83. package/dist/testing/MockProvider.d.mts +1 -1
  84. package/dist/testing/MockSpeechSynthesizer.d.mts +1 -1
  85. package/dist/tool/Approval.d.mts +3 -3
  86. package/dist/tool/Approval.test.mjs +35 -34
  87. package/dist/tool/Approval.test.mjs.map +1 -1
  88. package/dist/tool/HistoryCheck.d.mts +2 -2
  89. package/dist/tool/Tool.d.mts +2 -2
  90. package/dist/tool/Tool.mjs +112 -22
  91. package/dist/tool/Tool.mjs.map +1 -1
  92. package/dist/tool/Tool.test.mjs +41 -3
  93. package/dist/tool/Tool.test.mjs.map +1 -1
  94. package/dist/tool/ToolEvent.d.mts +2 -151
  95. package/dist/tool/ToolResult.d.mts +2 -138
  96. package/dist/tool/ToolResult.mjs +18 -3
  97. package/dist/tool/ToolResult.mjs.map +1 -1
  98. package/dist/tool/Toolkit.d.mts +2 -73
  99. package/dist/tool/Toolkit.mjs +106 -28
  100. package/dist/tool/Toolkit.mjs.map +1 -1
  101. package/dist/tool/Toolkit.test.mjs +113 -7
  102. package/dist/tool/Toolkit.test.mjs.map +1 -1
  103. package/dist/transcriber/Transcriber.d.mts +2 -2
  104. package/dist/transcriber/Transcriber.test.mjs +1 -1
  105. package/dist/web-search/WebSearch.d.mts +1 -1
  106. package/dist/web-search/WebSearchTool.d.mts +2 -2
  107. package/dist/web-search/WebSearchTool.d.mts.map +1 -1
  108. package/dist/web-search/WebSearchTool.mjs.map +1 -1
  109. package/package.json +1 -1
  110. package/src/embedding-model/EmbeddingModel.test.ts +4 -0
  111. package/src/index.ts +1 -0
  112. package/src/language-model/LanguageModel.ts +7 -2
  113. package/src/loop/Loop.test.ts +22 -0
  114. package/src/loop/Loop.ts +27 -4
  115. package/src/observability/Metrics.test.ts +266 -0
  116. package/src/observability/Metrics.ts +505 -65
  117. package/src/observability/Telemetry.test.ts +123 -0
  118. package/src/observability/Telemetry.ts +96 -0
  119. package/src/structured-format/StructuredFormat.ts +4 -0
  120. package/src/tool/Approval.test.ts +22 -21
  121. package/src/tool/Tool.test.ts +55 -2
  122. package/src/tool/Tool.ts +221 -55
  123. package/src/tool/ToolResult.ts +22 -1
  124. package/src/tool/Toolkit.test.ts +168 -7
  125. package/src/tool/Toolkit.ts +336 -99
  126. package/src/web-search/WebSearchTool.ts +1 -1
  127. package/dist/Tool-BKiieFXk.d.mts +0 -102
  128. package/dist/Tool-BKiieFXk.d.mts.map +0 -1
  129. package/dist/loop/Loop.d.mts.map +0 -1
  130. package/dist/tool/ToolEvent.d.mts.map +0 -1
  131. package/dist/tool/ToolResult.d.mts.map +0 -1
  132. package/dist/tool/Toolkit.d.mts.map +0 -1
@@ -0,0 +1,155 @@
1
+ import { o as HistoryItem, v as ToolCall } from "./Items-CgKD6Npw.mjs";
2
+ import { Turn } from "./domain/Turn.mjs";
3
+ import { r as Step } from "./Loop-B5_cqumi.mjs";
4
+ import { a as InteractionTool, c as Tool, f as ToolR, i as Emit, l as ToolDescriptor, n as AnyTool, o as ProviderTool, s as SignalTool } from "./Tool-0XUIT2A2.mjs";
5
+ import { t as ToolResult } from "./ToolResult-BZd-cEWW.mjs";
6
+ import { t as ToolEvent } from "./ToolEvent-DYrAUJGs.mjs";
7
+ import { Cause, Effect, Stream } from "effect";
8
+ import * as _$effect_Types0 from "effect/Types";
9
+
10
+ //#region src/tool/Toolkit.d.ts
11
+ declare namespace Toolkit_d_exports {
12
+ export { DuplicateToolName, ExecuteOptions, Middleware, NoDuplicateNames, ToolMap, Toolkit, ToolkitR, UniqueTools, appendToolResults, collectResults, compose, continueWithResults, descriptors, fromArray, make, makeNamespaced, namespace, run, wrap };
13
+ }
14
+ type ToolMap = Record<string, AnyTool>;
15
+ type Toolkit<Tools extends ToolMap = ToolMap> = Tools;
16
+ declare const make: <const Tools extends ReadonlyArray<AnyTool>>(...tools: UniqueTools<Tools>) => Toolkit<{ [T in Tools[number] as T["name"]]: T }>;
17
+ /**
18
+ * Build a toolkit from a dynamically-sourced array (MCP server, plugin). Names
19
+ * are not validated (MCP legitimately uses dots / >64 chars — sanitize at the
20
+ * provider adapter); same-named tools resolve last-wins. Cross-source clashes
21
+ * are caught by `compose`.
22
+ */
23
+ declare const fromArray: (tools: ReadonlyArray<AnyTool>) => Toolkit;
24
+ /** Render the provider-facing descriptors for a toolkit on demand. */
25
+ declare const descriptors: (toolkit: Toolkit) => ReadonlyArray<ToolDescriptor>;
26
+ /**
27
+ * Union of every tool's `R` requirements in a toolkit. Surfaced by `run` so the
28
+ * loop's stream type carries the services tools need through to `Effect.provide`.
29
+ *
30
+ * The `ToolMap extends T` guard yields `never` for the wide `Toolkit` type (a
31
+ * toolkit passed through an untyped boundary, where the requirements aren't
32
+ * statically known) instead of `any`, which would otherwise poison the
33
+ * resulting stream's `R`. Concrete toolkits from `make` keep their precise R.
34
+ */
35
+ type ToolkitR<T extends Toolkit> = ToolMap extends T ? never : ToolR<T[keyof T]>;
36
+ type DuplicateName<Tools extends ReadonlyArray<AnyTool>, Seen extends string = never> = Tools extends readonly [infer Head extends AnyTool, ...infer Tail extends ReadonlyArray<AnyTool>] ? Head["name"] extends Seen ? Head["name"] : DuplicateName<Tail, Seen | Head["name"]> : never;
37
+ type DuplicateNameError<Name extends string> = {
38
+ readonly __error: `Duplicate tool name: ${Name}`;
39
+ };
40
+ type NoDuplicateNames<Tools extends ReadonlyArray<AnyTool>> = [DuplicateName<Tools>] extends [never] ? unknown : DuplicateNameError<DuplicateName<Tools>>;
41
+ /** `Tools` constrained so a repeated literal name is a compile error in `make`. */
42
+ type UniqueTools<Tools extends ReadonlyArray<AnyTool>> = Tools & NoDuplicateNames<Tools>;
43
+ type ComposeDuplicateKey<Kits extends ReadonlyArray<Toolkit>, Seen extends string = never> = Kits extends readonly [infer Head extends Toolkit, ...infer Tail extends ReadonlyArray<Toolkit>] ? string extends keyof Head ? ComposeDuplicateKey<Tail, Seen> : Extract<keyof Head & string, Seen> extends never ? ComposeDuplicateKey<Tail, Seen | (keyof Head & string)> : Extract<keyof Head & string, Seen> : never;
44
+ type NoDuplicateComposedKeys<Kits extends ReadonlyArray<Toolkit>> = [ComposeDuplicateKey<Kits>] extends [never] ? unknown : DuplicateNameError<ComposeDuplicateKey<Kits>>;
45
+ type UnionToIntersection<U> = (U extends unknown ? (x: U) => void : never) extends ((x: infer I) => void) ? I : never;
46
+ type Composed<Kits extends ReadonlyArray<Toolkit>> = UnionToIntersection<Kits[number]> extends infer M ? (M extends ToolMap ? M : ToolMap) : ToolMap;
47
+ declare const DuplicateToolName_base: new <A extends Record<string, any> = {}>(args: _$effect_Types0.VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => Cause.YieldableError & {
48
+ readonly _tag: "DuplicateToolName";
49
+ } & Readonly<A>;
50
+ /**
51
+ * Two composed toolkits resolved to the same final name. Carries the colliding
52
+ * `sources` (the positions of the clashing toolkits) so the error says *which*
53
+ * inputs collided. Raised at runtime by `compose` for dynamic sources; static
54
+ * collisions are caught earlier at compile time.
55
+ */
56
+ declare class DuplicateToolName extends DuplicateToolName_base<{
57
+ readonly name: string;
58
+ readonly sources: ReadonlyArray<string>;
59
+ }> {}
60
+ type PrefixName<Prefix extends string, Name extends string> = `${Prefix}__${Name}`;
61
+ type PrefixTool<Prefix extends string, T extends AnyTool> = T extends Tool<infer N, infer I, infer Ev, infer O, infer R> ? Tool<PrefixName<Prefix, N>, I, Ev, O, R> : T extends ProviderTool<infer N, infer I, infer P, infer C> ? ProviderTool<PrefixName<Prefix, N>, I, P, C> : T extends SignalTool<infer N, infer I> ? SignalTool<PrefixName<Prefix, N>, I> : T extends InteractionTool<infer N, infer I> ? InteractionTool<PrefixName<Prefix, N>, I> : T;
62
+ type Namespaced<Prefix extends string, T extends ToolMap> = { readonly [K in keyof T & string as PrefixName<Prefix, K>]: T[K] extends AnyTool ? PrefixTool<Prefix, T[K]> : never };
63
+ /**
64
+ * Prefix every tool name with `<namespace>__`, returning a new toolkit. Use it
65
+ * to keep generic names (`search`) from two sources distinct before `compose`.
66
+ * If two namespaces collide at the `__` separator, the duplicate final name
67
+ * surfaces from `compose` as a `DuplicateToolName`.
68
+ */
69
+ declare const namespace: <const Prefix extends string, const T extends ToolMap>(prefix: Prefix, toolkit: Toolkit<T>) => Toolkit<Namespaced<Prefix, T>>;
70
+ /** `namespace(prefix, make(...tools))` in one step, for static namespaced tools. */
71
+ declare const makeNamespaced: <const Prefix extends string, const Tools extends ReadonlyArray<AnyTool>>(prefix: Prefix, ...tools: UniqueTools<Tools>) => Toolkit<Namespaced<Prefix, { [T in Tools[number] as T["name"]]: T }>>;
72
+ /**
73
+ * Combine independently-built toolkits into one. This is where names from
74
+ * separate sources can collide, so it is the one effectful constructor: a
75
+ * duplicate final name fails with `DuplicateToolName` (naming the colliding
76
+ * input positions) instead of silently overwriting or 400-ing later at the
77
+ * provider. Statically-known collisions are additionally a compile error.
78
+ */
79
+ declare const compose: <const Kits extends ReadonlyArray<Toolkit>>(...toolkits: Kits & NoDuplicateComposedKeys<Kits>) => Effect.Effect<Toolkit<Composed<Kits>>, DuplicateToolName>;
80
+ type Handler<Input, Event, Output, R> = (input: Input, emit: Emit<Event>) => Effect.Effect<Output, unknown, R>;
81
+ type Middleware<R2 = never> = <Input, Event, Output, R>(run: Handler<Input, Event, Output, R>, name: string) => Handler<Input, Event, Output, R | R2>;
82
+ type WrapTool<T extends AnyTool, R2> = T extends Tool<infer N, infer I, infer Ev, infer O, infer R> ? Tool<N, I, Ev, O, R | R2> : T;
83
+ type WrapToolkit<T extends ToolMap, R2> = { readonly [K in keyof T]: T[K] extends AnyTool ? WrapTool<T[K], R2> : T[K] };
84
+ /**
85
+ * Wrap every local tool's `run` with a middleware, preserving each tool's
86
+ * `Input`/`Output` and unioning the middleware's requirement `R2` into the
87
+ * toolkit's `ToolkitR`. Non-local kinds pass through unchanged. Stack with
88
+ * `pipe`:
89
+ *
90
+ * const observed = pipe(toolkit, Toolkit.wrap(logging), Toolkit.wrap(authz))
91
+ * Toolkit.run(observed, calls) // R = ToolkitR<typeof toolkit> | <authz R>
92
+ *
93
+ * A middleware that `Effect.fail`s surfaces as a `ToolResult.Failure` from the
94
+ * executor like any run failure; use the `Approval` flow for a distinct
95
+ * "denied" verdict.
96
+ */
97
+ declare const wrap: {
98
+ <R2>(middleware: Middleware<R2>): <T extends Toolkit>(toolkit: T) => WrapToolkit<T, R2>;
99
+ <T extends Toolkit, R2>(toolkit: T, middleware: Middleware<R2>): WrapToolkit<T, R2>;
100
+ };
101
+ type ExecuteOptions = {
102
+ readonly concurrency?: number | "unbounded";
103
+ };
104
+ /** Execute every provided call. Approval/rejection policy belongs upstream. */
105
+ declare const run: <T extends Toolkit>(toolkit: T, calls: ReadonlyArray<ToolCall>, options?: ExecuteOptions) => Stream.Stream<ToolEvent, never, ToolkitR<T>>;
106
+ /**
107
+ * Append a completed turn plus tool results to a state's history, converting
108
+ * the results to wire-format `ToolCallOutput`s. Curried so it slots directly
109
+ * into `continueWithResults`:
110
+ *
111
+ * Toolkit.run(toolkit, calls).pipe(
112
+ * Toolkit.continueWithResults(Toolkit.appendToolResults(state, turn)),
113
+ * )
114
+ *
115
+ * Equivalent to `appendToHistory(state, turn, results.map(toToolCallOutput))`
116
+ * — the helper just hides the wire-conversion step.
117
+ */
118
+ declare const appendToolResults: <S extends {
119
+ readonly history: ReadonlyArray<HistoryItem>;
120
+ }>(state: S, turn: Turn) => (results: ReadonlyArray<ToolResult>) => S;
121
+ /**
122
+ * Drain a `Stream<ToolEvent>` and return the accumulated `ToolResult`s
123
+ * from every `Output` event. One-shot — the type is `Effect<results>`,
124
+ * not a one-element stream — so it composes naturally with `Effect.map`
125
+ * to build state.
126
+ *
127
+ * Counterpart to `continueWithResults`: `continueWithResults` bundles
128
+ * drain + emit Next into one bridge; this one is the right arm of a
129
+ * broadcast/fork-and-merge for callers that want to vary the left arm
130
+ * (e.g., filter/tap ToolEvents before forwarding).
131
+ */
132
+ declare const collectResults: <E, R>(stream: Stream.Stream<ToolEvent, E, R>) => Effect.Effect<ReadonlyArray<ToolResult>, E, R>;
133
+ /**
134
+ * Bridge from a `Stream<ToolEvent>` to the loop's emit shape. Forwards
135
+ * every ToolEvent downstream as a `Loop.value` and at end-of-stream emits
136
+ * one `Loop.next(build(results))` carrying the accumulated `ToolResult`s
137
+ * from terminal `Output` events.
138
+ *
139
+ * Conceptually a broadcast fork (one arm passes events through, the other
140
+ * drains them into a state). Implemented as a single-pass Ref tap + concat
141
+ * for zero buffering — the broadcast version is observationally equivalent
142
+ * but holds events in a PubSub until both arms drain. The public primitives
143
+ * (`Loop.value`, `collectResults`, `Loop.next`) compose the same pattern
144
+ * when you need to vary an arm.
145
+ *
146
+ * Dual: data-first `continueWithResults(stream, build)` and data-last
147
+ * `stream.pipe(continueWithResults(build))` both work.
148
+ */
149
+ declare const continueWithResults: {
150
+ <S>(build: (results: ReadonlyArray<ToolResult>) => S): <R>(stream: Stream.Stream<ToolEvent, never, R>) => Stream.Stream<Step<ToolEvent, S>, never, R>;
151
+ <S, R>(stream: Stream.Stream<ToolEvent, never, R>, build: (results: ReadonlyArray<ToolResult>) => S): Stream.Stream<Step<ToolEvent, S>, never, R>;
152
+ };
153
+ //#endregion
154
+ export { makeNamespaced as _, ToolMap as a, wrap as b, Toolkit_d_exports as c, collectResults as d, compose as f, make as g, fromArray as h, NoDuplicateNames as i, UniqueTools as l, descriptors as m, ExecuteOptions as n, Toolkit as o, continueWithResults as p, Middleware as r, ToolkitR as s, DuplicateToolName as t, appendToolResults as u, namespace as v, run as y };
155
+ //# sourceMappingURL=Toolkit-BKC8b8Xo.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toolkit-BKC8b8Xo.d.mts","names":[],"sources":["../src/tool/Toolkit.ts"],"mappings":"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"}
@@ -10243,7 +10243,7 @@ function memo(fn) {
10243
10243
  };
10244
10244
  }
10245
10245
  async function saveInlineSnapshots(environment, snapshots) {
10246
- const MagicString = (await import("./magic-string.es-BgIV5Mu3.mjs")).default;
10246
+ const MagicString = (await import("./magic-string.es-Dk-MMA0F.mjs")).default;
10247
10247
  const files = new Set(snapshots.map((i) => i.file));
10248
10248
  await Promise.all(Array.from(files).map(async (file) => {
10249
10249
  const snaps = snapshots.filter((i) => i.file === file);
@@ -13777,6 +13777,6 @@ var import_dist = (/* @__PURE__ */ __commonJSMin(((exports) => {
13777
13777
  exports.expectTypeOf = expectTypeOf;
13778
13778
  })))();
13779
13779
  //#endregion
13780
- export { it as i, globalExpect as n, describe as r, import_dist as t };
13780
+ export { describe as a, beforeAll as i, globalExpect as n, it as o, afterAll as r, import_dist as t };
13781
13781
 
13782
- //# sourceMappingURL=dist-DV5ISja1.mjs.map
13782
+ //# sourceMappingURL=dist-B04dlFHg.mjs.map