@propio-ai/providers 0.2.0 → 0.4.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 (67) hide show
  1. package/README.md +24 -0
  2. package/dist/index.d.ts +2 -0
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +2 -0
  5. package/dist/index.js.map +1 -1
  6. package/dist/internal/baseProvider.d.ts +1 -0
  7. package/dist/internal/baseProvider.d.ts.map +1 -1
  8. package/dist/internal/baseProvider.js +14 -1
  9. package/dist/internal/baseProvider.js.map +1 -1
  10. package/dist/internal/openAiCompatibleProvider.d.ts +1 -1
  11. package/dist/internal/openAiCompatibleProvider.d.ts.map +1 -1
  12. package/dist/internal/openAiCompatibleProvider.js +2 -1
  13. package/dist/internal/openAiCompatibleProvider.js.map +1 -1
  14. package/dist/internal/openAiResponsesProvider.d.ts +4 -0
  15. package/dist/internal/openAiResponsesProvider.d.ts.map +1 -1
  16. package/dist/internal/openAiResponsesProvider.js +60 -17
  17. package/dist/internal/openAiResponsesProvider.js.map +1 -1
  18. package/dist/internal/openAiStream.d.ts +6 -1
  19. package/dist/internal/openAiStream.d.ts.map +1 -1
  20. package/dist/internal/openAiStream.js +14 -2
  21. package/dist/internal/openAiStream.js.map +1 -1
  22. package/dist/internal/providerMeasurements.d.ts +73 -0
  23. package/dist/internal/providerMeasurements.d.ts.map +1 -0
  24. package/dist/internal/providerMeasurements.js +92 -0
  25. package/dist/internal/providerMeasurements.js.map +1 -0
  26. package/dist/internal/shared.d.ts +1 -0
  27. package/dist/internal/shared.d.ts.map +1 -1
  28. package/dist/internal/shared.js +19 -9
  29. package/dist/internal/shared.js.map +1 -1
  30. package/dist/internal/withRetry.d.ts +21 -2
  31. package/dist/internal/withRetry.d.ts.map +1 -1
  32. package/dist/internal/withRetry.js +25 -4
  33. package/dist/internal/withRetry.js.map +1 -1
  34. package/dist/providers/anthropic.d.ts +5 -0
  35. package/dist/providers/anthropic.d.ts.map +1 -1
  36. package/dist/providers/anthropic.js +54 -12
  37. package/dist/providers/anthropic.js.map +1 -1
  38. package/dist/providers/bedrock.d.ts +1 -1
  39. package/dist/providers/bedrock.d.ts.map +1 -1
  40. package/dist/providers/bedrock.js +35 -19
  41. package/dist/providers/bedrock.js.map +1 -1
  42. package/dist/providers/cloudflare.d.ts.map +1 -1
  43. package/dist/providers/cloudflare.js +6 -2
  44. package/dist/providers/cloudflare.js.map +1 -1
  45. package/dist/providers/gemini.d.ts +1 -0
  46. package/dist/providers/gemini.d.ts.map +1 -1
  47. package/dist/providers/gemini.js +31 -2
  48. package/dist/providers/gemini.js.map +1 -1
  49. package/dist/providers/ollama.d.ts +1 -0
  50. package/dist/providers/ollama.d.ts.map +1 -1
  51. package/dist/providers/ollama.js +27 -2
  52. package/dist/providers/ollama.js.map +1 -1
  53. package/dist/providers/openrouter.d.ts.map +1 -1
  54. package/dist/providers/openrouter.js +31 -3
  55. package/dist/providers/openrouter.js.map +1 -1
  56. package/dist/providers/xai.d.ts +7 -4
  57. package/dist/providers/xai.d.ts.map +1 -1
  58. package/dist/providers/xai.js +149 -58
  59. package/dist/providers/xai.js.map +1 -1
  60. package/dist/trace.d.ts +137 -0
  61. package/dist/trace.d.ts.map +1 -0
  62. package/dist/trace.js +337 -0
  63. package/dist/trace.js.map +1 -0
  64. package/dist/types.d.ts +4 -0
  65. package/dist/types.d.ts.map +1 -1
  66. package/dist/types.js.map +1 -1
  67. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../src/trace.ts"],"names":[],"mappings":"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"}
package/dist/trace.js ADDED
@@ -0,0 +1,337 @@
1
+ import { randomUUID } from "node:crypto";
2
+ function emitSafely(observer, event) {
3
+ try {
4
+ observer?.(event);
5
+ }
6
+ catch {
7
+ // Trace sinks are observational. They must not change provider behavior.
8
+ }
9
+ }
10
+ function eventBase(provider, request) {
11
+ if (!request.trace)
12
+ return undefined;
13
+ return {
14
+ version: 1,
15
+ eventId: randomUUID(),
16
+ observedAt: new Date().toISOString(),
17
+ provider,
18
+ requestedModel: request.model,
19
+ trace: request.trace,
20
+ };
21
+ }
22
+ export function createProviderAttemptTraceHooks(options) {
23
+ const attemptIds = new Map();
24
+ const emit = (event) => emitSafely(options.request.onTraceEvent, event);
25
+ const base = () => eventBase(options.provider, options.request);
26
+ const attemptIdentity = (attempt) => {
27
+ let attemptId = attemptIds.get(attempt);
28
+ if (!attemptId) {
29
+ attemptId = randomUUID();
30
+ attemptIds.set(attempt, attemptId);
31
+ }
32
+ const attemptNumber = attempt + 1;
33
+ const endpointClass = typeof options.endpointClass === "function"
34
+ ? options.endpointClass(attemptNumber)
35
+ : options.endpointClass;
36
+ return {
37
+ attemptId,
38
+ attemptNumber,
39
+ ...(endpointClass ? { endpointClass } : {}),
40
+ };
41
+ };
42
+ return {
43
+ onAttemptStart: ({ attempt }) => {
44
+ const fields = base();
45
+ if (fields)
46
+ emit({
47
+ ...fields,
48
+ type: "provider_attempt_started",
49
+ ...attemptIdentity(attempt),
50
+ });
51
+ },
52
+ onAttemptSuccess: ({ attempt, durationMs }) => {
53
+ const fields = base();
54
+ if (fields)
55
+ emit({
56
+ ...fields,
57
+ type: "provider_attempt_connected",
58
+ ...attemptIdentity(attempt),
59
+ durationMs,
60
+ });
61
+ },
62
+ onAttemptFailure: ({ attempt, durationMs, err }) => {
63
+ const fields = base();
64
+ if (fields)
65
+ emit({
66
+ ...fields,
67
+ type: "provider_attempt_failed",
68
+ ...attemptIdentity(attempt),
69
+ durationMs,
70
+ errorName: err instanceof Error ? err.name : "Error",
71
+ message: err instanceof Error ? err.message : String(err),
72
+ });
73
+ },
74
+ onRetry: ({ attempt, delayMs, err }) => {
75
+ const fields = base();
76
+ if (fields)
77
+ emit({
78
+ ...fields,
79
+ type: "provider_retry_wait",
80
+ ...attemptIdentity(attempt),
81
+ delayMs,
82
+ reason: err instanceof Error ? err.message : String(err),
83
+ });
84
+ },
85
+ };
86
+ }
87
+ export function emitProviderResponseMetadata(options) {
88
+ if (!options.upstreamRequestId &&
89
+ !options.actualModel &&
90
+ !options.endpointClass) {
91
+ return;
92
+ }
93
+ const fields = eventBase(options.provider, options.request);
94
+ if (!fields)
95
+ return;
96
+ emitSafely(options.request.onTraceEvent, {
97
+ ...fields,
98
+ type: "provider_response_metadata",
99
+ ...(options.upstreamRequestId
100
+ ? { upstreamRequestId: options.upstreamRequestId }
101
+ : {}),
102
+ ...(options.actualModel ? { actualModel: options.actualModel } : {}),
103
+ ...(options.endpointClass ? { endpointClass: options.endpointClass } : {}),
104
+ });
105
+ }
106
+ export function emitProviderUsage(options) {
107
+ const fields = eventBase(options.provider, options.request);
108
+ if (!fields)
109
+ return;
110
+ emitSafely(options.request.onTraceEvent, {
111
+ ...fields,
112
+ type: "provider_usage_reported",
113
+ availability: options.availability,
114
+ reportKind: options.reportKind,
115
+ usage: options.usage,
116
+ ...(options.providerReportedCost
117
+ ? { providerReportedCost: options.providerReportedCost }
118
+ : {}),
119
+ ...(options.endpointClass ? { endpointClass: options.endpointClass } : {}),
120
+ });
121
+ }
122
+ export function emitProviderRequestMutation(options) {
123
+ const fields = eventBase(options.provider, options.request);
124
+ if (!fields)
125
+ return;
126
+ emitSafely(options.request.onTraceEvent, {
127
+ ...fields,
128
+ type: "provider_request_mutated",
129
+ mutation: options.mutation,
130
+ appliesToAttemptNumber: options.appliesToAttemptNumber,
131
+ reason: options.reason,
132
+ });
133
+ }
134
+ /**
135
+ * Decorates a provider with logical-request observations. Retry/attempt events
136
+ * remain provider-owned and can be added without changing this boundary.
137
+ */
138
+ export function withProviderTracing(provider) {
139
+ return new TracedProvider(provider);
140
+ }
141
+ class TracedProvider {
142
+ constructor(provider) {
143
+ this.provider = provider;
144
+ this.name = provider.name;
145
+ }
146
+ getCapabilities() {
147
+ return this.provider.getCapabilities();
148
+ }
149
+ async *streamChat(request) {
150
+ const traceState = new ProviderRequestTraceState(this.name, request);
151
+ try {
152
+ for await (const event of this.provider.streamChat(traceState.request)) {
153
+ traceState.observeStreamEvent(event);
154
+ yield event;
155
+ }
156
+ traceState.complete();
157
+ }
158
+ catch (error) {
159
+ traceState.fail(error);
160
+ throw error;
161
+ }
162
+ finally {
163
+ traceState.closeInterrupted();
164
+ }
165
+ }
166
+ }
167
+ class ProviderRequestTraceState {
168
+ constructor(provider, originalRequest) {
169
+ this.provider = provider;
170
+ this.originalRequest = originalRequest;
171
+ this.startedAt = performance.now();
172
+ this.currentAttemptStartedAt = this.startedAt;
173
+ this.usageObserved = false;
174
+ this.firstOutputObserved = false;
175
+ this.outcomeRecorded = false;
176
+ this.failedAttemptIds = new Set();
177
+ this.emitStarted();
178
+ this.request = {
179
+ ...originalRequest,
180
+ onTraceEvent: (event) => this.observeProviderEvent(event),
181
+ };
182
+ }
183
+ observeStreamEvent(event) {
184
+ this.captureFirstOutput(event);
185
+ if ("type" in event && event.type === "terminal") {
186
+ this.terminal = {
187
+ stopReason: event.stopReason,
188
+ rawProviderReason: event.rawProviderReason,
189
+ };
190
+ }
191
+ }
192
+ complete() {
193
+ this.emitAttemptCompleted();
194
+ this.emitUnavailableUsage();
195
+ this.emitRequestOutcome("provider_request_completed");
196
+ this.outcomeRecorded = true;
197
+ }
198
+ fail(error) {
199
+ this.emitAttemptFailure(error);
200
+ this.emitUnavailableUsage();
201
+ this.emitRequestOutcome("provider_request_failed", error);
202
+ this.outcomeRecorded = true;
203
+ }
204
+ closeInterrupted() {
205
+ if (this.outcomeRecorded)
206
+ return;
207
+ if (this.terminal) {
208
+ this.emitAttemptCompleted();
209
+ this.emitUnavailableUsage();
210
+ this.emitRequestOutcome("provider_request_completed");
211
+ return;
212
+ }
213
+ const error = new Error("Provider stream consumption cancelled");
214
+ error.name = "AbortError";
215
+ this.emitAttemptFailure(error);
216
+ this.emitUnavailableUsage();
217
+ this.emitRequestOutcome("provider_request_failed", error);
218
+ }
219
+ observeProviderEvent(event) {
220
+ this.captureAttempt(event);
221
+ if (event.type === "provider_usage_reported")
222
+ this.usageObserved = true;
223
+ if (event.type === "provider_attempt_failed") {
224
+ this.failedAttemptIds.add(event.attemptId);
225
+ }
226
+ emitSafely(this.originalRequest.onTraceEvent, this.attributeAttempt(event));
227
+ }
228
+ captureAttempt(event) {
229
+ if (event.type !== "provider_attempt_started" &&
230
+ event.type !== "provider_attempt_connected") {
231
+ return;
232
+ }
233
+ if (event.type === "provider_attempt_started") {
234
+ this.currentAttemptStartedAt = performance.now();
235
+ }
236
+ this.currentAttempt = {
237
+ attemptId: event.attemptId,
238
+ attemptNumber: event.attemptNumber,
239
+ ...(event.endpointClass ? { endpointClass: event.endpointClass } : {}),
240
+ };
241
+ }
242
+ attributeAttempt(event) {
243
+ if ((event.type !== "provider_response_metadata" &&
244
+ event.type !== "provider_usage_reported") ||
245
+ !this.currentAttempt ||
246
+ event.attemptId !== undefined) {
247
+ return event;
248
+ }
249
+ return { ...event, ...this.currentAttempt };
250
+ }
251
+ captureFirstOutput(event) {
252
+ if (this.firstOutputObserved || !("type" in event))
253
+ return;
254
+ const outputType = providerOutputType(event.type);
255
+ if (!outputType || !this.currentAttempt)
256
+ return;
257
+ this.firstOutputObserved = true;
258
+ this.emit({
259
+ type: "provider_attempt_first_output",
260
+ ...this.currentAttempt,
261
+ durationMs: performance.now() - this.currentAttemptStartedAt,
262
+ outputType,
263
+ });
264
+ }
265
+ emitStarted() {
266
+ this.emit({
267
+ type: "provider_request_started",
268
+ messageCount: this.originalRequest.messages.length,
269
+ toolCount: this.originalRequest.tools?.length ?? 0,
270
+ });
271
+ }
272
+ emitAttemptCompleted() {
273
+ if (!this.currentAttempt)
274
+ return;
275
+ this.emit({
276
+ type: "provider_attempt_completed",
277
+ ...this.currentAttempt,
278
+ durationMs: performance.now() - this.currentAttemptStartedAt,
279
+ ...this.terminal,
280
+ });
281
+ }
282
+ emitAttemptFailure(error) {
283
+ if (!this.currentAttempt ||
284
+ this.failedAttemptIds.has(this.currentAttempt.attemptId)) {
285
+ return;
286
+ }
287
+ this.emit({
288
+ type: "provider_attempt_failed",
289
+ ...this.currentAttempt,
290
+ durationMs: performance.now() - this.currentAttemptStartedAt,
291
+ ...errorFields(error),
292
+ });
293
+ }
294
+ emitUnavailableUsage() {
295
+ if (this.usageObserved)
296
+ return;
297
+ this.emit({
298
+ type: "provider_usage_reported",
299
+ availability: "unavailable",
300
+ ...this.currentAttempt,
301
+ });
302
+ this.usageObserved = true;
303
+ }
304
+ emitRequestOutcome(type, error) {
305
+ this.emit({
306
+ type,
307
+ durationMs: performance.now() - this.startedAt,
308
+ ...(type === "provider_request_completed"
309
+ ? this.terminal
310
+ : errorFields(error)),
311
+ });
312
+ }
313
+ emit(event) {
314
+ const base = eventBase(this.provider, this.originalRequest);
315
+ if (!base)
316
+ return;
317
+ emitSafely(this.originalRequest.onTraceEvent, {
318
+ ...base,
319
+ ...event,
320
+ });
321
+ }
322
+ }
323
+ function providerOutputType(type) {
324
+ if (type === "assistant_text")
325
+ return "assistant_text";
326
+ if (type === "thinking_delta" || type === "reasoning_summary") {
327
+ return "thinking";
328
+ }
329
+ return type === "tool_calls" ? "tool_call" : undefined;
330
+ }
331
+ function errorFields(error) {
332
+ return {
333
+ errorName: error instanceof Error ? error.name : "Error",
334
+ message: error instanceof Error ? error.message : String(error),
335
+ };
336
+ }
337
+ //# sourceMappingURL=trace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace.js","sourceRoot":"","sources":["../src/trace.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -69,6 +69,10 @@ export interface ChatRequest {
69
69
  * tokens. Providers that do not support this should ignore it.
70
70
  */
71
71
  requestReasoning?: boolean;
72
+ /** Optional caller-supplied causal identity. No storage is created implicitly. */
73
+ trace?: import("./trace.js").ProviderTraceContext;
74
+ /** Optional request observer. Exceptions are isolated from provider behavior. */
75
+ onTraceEvent?: import("./trace.js").ProviderTraceObserver;
72
76
  }
73
77
  /**
74
78
  * Chat response from provider
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAyJA;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAGtC,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,2BAA4B,SAAQ,aAAa;IAC5D,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC5C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,aAAa;IAGvD,YACE,OAAe,EACf,iBAA0B,EAC1B,aAAqB;QAErB,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,aAAa;IACtD,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,0BAA2B,SAAQ,aAAa;IAG3D,YAAY,SAAiB,EAAE,OAAe,EAAE,aAAqB;QACnE,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,0BAA2B,SAAQ,aAAa;IAC3D,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,aAAa;IAC5D,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC5C,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA6JA;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAGtC,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,2BAA4B,SAAQ,aAAa;IAC5D,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC5C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,aAAa;IAGvD,YACE,OAAe,EACf,iBAA0B,EAC1B,aAAqB;QAErB,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,aAAa;IACtD,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,0BAA2B,SAAQ,aAAa;IAG3D,YAAY,SAAiB,EAAE,OAAe,EAAE,aAAqB;QACnE,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,0BAA2B,SAAQ,aAAa;IAC3D,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,aAAa;IAC5D,YAAY,OAAe,EAAE,aAAqB;QAChD,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC5C,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@propio-ai/providers",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Provider adapters for LLM APIs (Anthropic, Bedrock, Ollama, OpenRouter, OpenAI, Meta, Gemini, xAI, Cloudflare) with a unified streaming chat interface",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",