human-in-the-loop 0.1.0 → 2.0.2

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,4CAA4C;AAC5C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEhD,4CAA4C;AAC5C,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,OAAO,EACP,GAAG,EACH,EAAE,EACF,MAAM,EACN,QAAQ,EACR,EAAE,EACF,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,aAAa,EACb,eAAe,GAChB,MAAM,cAAc,CAAA;AAErB,+BAA+B;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * In-memory store implementation for human requests
3
+ */
4
+ import type { HumanStore, HumanRequest, ReviewQueue } from './types.js';
5
+ /**
6
+ * Simple in-memory implementation of HumanStore
7
+ *
8
+ * For production use, implement a persistent store using:
9
+ * - Database (PostgreSQL, MongoDB, etc.)
10
+ * - Key-value store (Redis)
11
+ * - Message queue (RabbitMQ, AWS SQS)
12
+ */
13
+ export declare class InMemoryHumanStore implements HumanStore {
14
+ private requests;
15
+ private requestIdCounter;
16
+ /**
17
+ * Generate a unique request ID
18
+ */
19
+ private generateId;
20
+ /**
21
+ * Create a new request
22
+ */
23
+ create<T extends HumanRequest>(request: Omit<T, 'id' | 'createdAt' | 'updatedAt'>): Promise<T>;
24
+ /**
25
+ * Get a request by ID
26
+ */
27
+ get<T extends HumanRequest>(id: string): Promise<T | null>;
28
+ /**
29
+ * Update a request
30
+ */
31
+ update<T extends HumanRequest>(id: string, updates: Partial<T>): Promise<T>;
32
+ /**
33
+ * List requests with filters
34
+ */
35
+ list<T extends HumanRequest>(filters?: ReviewQueue['filters'], limit?: number): Promise<T[]>;
36
+ /**
37
+ * Complete a request
38
+ */
39
+ complete<T extends HumanRequest>(id: string, response: T['response']): Promise<T>;
40
+ /**
41
+ * Reject a request
42
+ */
43
+ reject(id: string, reason: string): Promise<HumanRequest>;
44
+ /**
45
+ * Escalate a request
46
+ */
47
+ escalate(id: string, to: string): Promise<HumanRequest>;
48
+ /**
49
+ * Cancel a request
50
+ */
51
+ cancel(id: string): Promise<HumanRequest>;
52
+ /**
53
+ * Clear all requests (for testing)
54
+ */
55
+ clear(): void;
56
+ /**
57
+ * Get total count of requests
58
+ */
59
+ count(): number;
60
+ }
61
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EAEZ,WAAW,EACZ,MAAM,YAAY,CAAA;AAEnB;;;;;;;GAOG;AACH,qBAAa,kBAAmB,YAAW,UAAU;IACnD,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,gBAAgB,CAAI;IAE5B;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACG,MAAM,CAAC,CAAC,SAAS,YAAY,EACjC,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,WAAW,GAAG,WAAW,CAAC,GACjD,OAAO,CAAC,CAAC,CAAC;IAab;;OAEG;IACG,GAAG,CAAC,CAAC,SAAS,YAAY,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAKhE;;OAEG;IACG,MAAM,CAAC,CAAC,SAAS,YAAY,EACjC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAClB,OAAO,CAAC,CAAC,CAAC;IAgBb;;OAEG;IACG,IAAI,CAAC,CAAC,SAAS,YAAY,EAC/B,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,EAChC,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,CAAC,EAAE,CAAC;IAqCf;;OAEG;IACG,QAAQ,CAAC,CAAC,SAAS,YAAY,EACnC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,GACtB,OAAO,CAAC,CAAC,CAAC;IAab;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAa/D;;OAEG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAY7D;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAY/C;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,KAAK,IAAI,MAAM;CAGhB"}
package/dist/store.js ADDED
@@ -0,0 +1,162 @@
1
+ /**
2
+ * In-memory store implementation for human requests
3
+ */
4
+ /**
5
+ * Simple in-memory implementation of HumanStore
6
+ *
7
+ * For production use, implement a persistent store using:
8
+ * - Database (PostgreSQL, MongoDB, etc.)
9
+ * - Key-value store (Redis)
10
+ * - Message queue (RabbitMQ, AWS SQS)
11
+ */
12
+ export class InMemoryHumanStore {
13
+ requests = new Map();
14
+ requestIdCounter = 0;
15
+ /**
16
+ * Generate a unique request ID
17
+ */
18
+ generateId() {
19
+ return `req_${Date.now()}_${++this.requestIdCounter}`;
20
+ }
21
+ /**
22
+ * Create a new request
23
+ */
24
+ async create(request) {
25
+ const now = new Date();
26
+ const fullRequest = {
27
+ ...request,
28
+ id: this.generateId(),
29
+ createdAt: now,
30
+ updatedAt: now,
31
+ };
32
+ this.requests.set(fullRequest.id, fullRequest);
33
+ return fullRequest;
34
+ }
35
+ /**
36
+ * Get a request by ID
37
+ */
38
+ async get(id) {
39
+ const request = this.requests.get(id);
40
+ return request ? request : null;
41
+ }
42
+ /**
43
+ * Update a request
44
+ */
45
+ async update(id, updates) {
46
+ const request = this.requests.get(id);
47
+ if (!request) {
48
+ throw new Error(`Request not found: ${id}`);
49
+ }
50
+ const updated = {
51
+ ...request,
52
+ ...updates,
53
+ updatedAt: new Date(),
54
+ };
55
+ this.requests.set(id, updated);
56
+ return updated;
57
+ }
58
+ /**
59
+ * List requests with filters
60
+ */
61
+ async list(filters, limit) {
62
+ let requests = Array.from(this.requests.values());
63
+ // Apply filters
64
+ if (filters) {
65
+ if (filters.status) {
66
+ requests = requests.filter((r) => filters.status.includes(r.status));
67
+ }
68
+ if (filters.priority) {
69
+ requests = requests.filter((r) => filters.priority.includes(r.priority));
70
+ }
71
+ if (filters.assignee) {
72
+ requests = requests.filter((r) => {
73
+ if (!r.assignee)
74
+ return false;
75
+ const assignees = Array.isArray(r.assignee) ? r.assignee : [r.assignee];
76
+ return assignees.some((a) => filters.assignee.includes(a));
77
+ });
78
+ }
79
+ if (filters.role) {
80
+ requests = requests.filter((r) => r.role && filters.role.includes(r.role));
81
+ }
82
+ if (filters.team) {
83
+ requests = requests.filter((r) => r.team && filters.team.includes(r.team));
84
+ }
85
+ }
86
+ // Sort by creation date (newest first)
87
+ requests.sort((a, b) => b.createdAt.getTime() - a.createdAt.getTime());
88
+ // Apply limit
89
+ if (limit && limit > 0) {
90
+ requests = requests.slice(0, limit);
91
+ }
92
+ return requests;
93
+ }
94
+ /**
95
+ * Complete a request
96
+ */
97
+ async complete(id, response) {
98
+ const request = await this.get(id);
99
+ if (!request) {
100
+ throw new Error(`Request not found: ${id}`);
101
+ }
102
+ return this.update(id, {
103
+ status: 'completed',
104
+ response,
105
+ completedAt: new Date(),
106
+ });
107
+ }
108
+ /**
109
+ * Reject a request
110
+ */
111
+ async reject(id, reason) {
112
+ const request = await this.get(id);
113
+ if (!request) {
114
+ throw new Error(`Request not found: ${id}`);
115
+ }
116
+ return this.update(id, {
117
+ status: 'rejected',
118
+ rejectionReason: reason,
119
+ completedAt: new Date(),
120
+ });
121
+ }
122
+ /**
123
+ * Escalate a request
124
+ */
125
+ async escalate(id, to) {
126
+ const request = await this.get(id);
127
+ if (!request) {
128
+ throw new Error(`Request not found: ${id}`);
129
+ }
130
+ return this.update(id, {
131
+ status: 'escalated',
132
+ assignee: to,
133
+ });
134
+ }
135
+ /**
136
+ * Cancel a request
137
+ */
138
+ async cancel(id) {
139
+ const request = await this.get(id);
140
+ if (!request) {
141
+ throw new Error(`Request not found: ${id}`);
142
+ }
143
+ return this.update(id, {
144
+ status: 'cancelled',
145
+ completedAt: new Date(),
146
+ });
147
+ }
148
+ /**
149
+ * Clear all requests (for testing)
150
+ */
151
+ clear() {
152
+ this.requests.clear();
153
+ this.requestIdCounter = 0;
154
+ }
155
+ /**
156
+ * Get total count of requests
157
+ */
158
+ count() {
159
+ return this.requests.size;
160
+ }
161
+ }
162
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,399 @@
1
+ /**
2
+ * Core types for human-in-the-loop workflows
3
+ */
4
+ import type { AIFunctionDefinition, JSONSchema } from 'ai-functions';
5
+ /**
6
+ * Status of a human interaction request
7
+ */
8
+ export type HumanRequestStatus = 'pending' | 'in_progress' | 'completed' | 'rejected' | 'timeout' | 'escalated' | 'cancelled';
9
+ /**
10
+ * Priority level for human requests
11
+ */
12
+ export type Priority = 'low' | 'normal' | 'high' | 'critical';
13
+ /**
14
+ * Human role definition
15
+ */
16
+ export interface Role {
17
+ /** Unique role identifier */
18
+ id: string;
19
+ /** Role name */
20
+ name: string;
21
+ /** Role description */
22
+ description?: string;
23
+ /** Role capabilities/permissions */
24
+ capabilities?: string[];
25
+ /** Default escalation role */
26
+ escalatesTo?: string;
27
+ }
28
+ /**
29
+ * Team composition
30
+ */
31
+ export interface Team {
32
+ /** Team identifier */
33
+ id: string;
34
+ /** Team name */
35
+ name: string;
36
+ /** Team description */
37
+ description?: string;
38
+ /** Team members (role IDs or user IDs) */
39
+ members: string[];
40
+ /** Team lead */
41
+ lead?: string;
42
+ }
43
+ /**
44
+ * Human worker/assignee
45
+ */
46
+ export interface Human {
47
+ /** Unique identifier */
48
+ id: string;
49
+ /** Display name */
50
+ name: string;
51
+ /** Email address */
52
+ email?: string;
53
+ /** Assigned roles */
54
+ roles?: string[];
55
+ /** Teams the human belongs to */
56
+ teams?: string[];
57
+ /** Contact channels */
58
+ channels?: {
59
+ slack?: string;
60
+ email?: string;
61
+ sms?: string;
62
+ web?: boolean;
63
+ };
64
+ }
65
+ /**
66
+ * Goals and objectives
67
+ */
68
+ export interface Goals {
69
+ /** Goal identifier */
70
+ id: string;
71
+ /** Goals/objectives */
72
+ objectives: string[];
73
+ /** Success criteria */
74
+ successCriteria?: string[];
75
+ /** Key results */
76
+ keyResults?: string[];
77
+ /** Target date */
78
+ targetDate?: Date;
79
+ }
80
+ /**
81
+ * Key Performance Indicators
82
+ */
83
+ export interface KPIs {
84
+ /** KPI identifier */
85
+ id: string;
86
+ /** Metric name */
87
+ name: string;
88
+ /** Current value */
89
+ value: number;
90
+ /** Target value */
91
+ target?: number;
92
+ /** Unit of measurement */
93
+ unit?: string;
94
+ /** Trend direction */
95
+ trend?: 'up' | 'down' | 'stable';
96
+ }
97
+ /**
98
+ * Objectives and Key Results
99
+ */
100
+ export interface OKRs {
101
+ /** OKR identifier */
102
+ id: string;
103
+ /** Objective statement */
104
+ objective: string;
105
+ /** Key results */
106
+ keyResults: Array<{
107
+ /** Key result description */
108
+ description: string;
109
+ /** Current progress (0-1) */
110
+ progress: number;
111
+ /** Target value */
112
+ target?: number;
113
+ /** Current value */
114
+ current?: number;
115
+ }>;
116
+ /** Quarter or time period */
117
+ period?: string;
118
+ /** Owner */
119
+ owner?: string;
120
+ }
121
+ /**
122
+ * Base human request
123
+ */
124
+ export interface HumanRequest<TInput = unknown, TOutput = unknown> {
125
+ /** Request ID */
126
+ id: string;
127
+ /** Request type */
128
+ type: 'approval' | 'question' | 'task' | 'decision' | 'review' | 'notification';
129
+ /** Request status */
130
+ status: HumanRequestStatus;
131
+ /** Priority level */
132
+ priority: Priority;
133
+ /** Title or summary */
134
+ title: string;
135
+ /** Detailed description */
136
+ description: string;
137
+ /** Input data for the request */
138
+ input: TInput;
139
+ /** Expected output schema */
140
+ outputSchema?: JSONSchema;
141
+ /** Who should handle this */
142
+ assignee?: string | string[];
143
+ /** Assigned role */
144
+ role?: string;
145
+ /** Assigned team */
146
+ team?: string;
147
+ /** Escalation path */
148
+ escalatesTo?: string | string[];
149
+ /** Timeout in milliseconds */
150
+ timeout?: number;
151
+ /** When the request was created */
152
+ createdAt: Date;
153
+ /** When it was last updated */
154
+ updatedAt: Date;
155
+ /** When it was completed */
156
+ completedAt?: Date;
157
+ /** Who responded */
158
+ respondedBy?: string;
159
+ /** The response */
160
+ response?: TOutput;
161
+ /** Rejection reason */
162
+ rejectionReason?: string;
163
+ /** Additional metadata */
164
+ metadata?: Record<string, unknown>;
165
+ }
166
+ /**
167
+ * Approval request
168
+ */
169
+ export interface ApprovalRequest<TData = unknown> extends HumanRequest<TData, ApprovalResponse> {
170
+ type: 'approval';
171
+ /** What is being approved */
172
+ subject: string;
173
+ /** Default is approve required */
174
+ requiresApproval?: boolean;
175
+ /** Approval chain (multiple approvers) */
176
+ approvers?: string[];
177
+ /** Current approver index */
178
+ currentApproverIndex?: number;
179
+ }
180
+ /**
181
+ * Approval response
182
+ */
183
+ export interface ApprovalResponse {
184
+ /** Whether approved */
185
+ approved: boolean;
186
+ /** Comments from approver */
187
+ comments?: string;
188
+ /** Conditions or requirements */
189
+ conditions?: string[];
190
+ }
191
+ /**
192
+ * Question request
193
+ */
194
+ export interface QuestionRequest extends HumanRequest<{
195
+ question: string;
196
+ context?: unknown;
197
+ }, string> {
198
+ type: 'question';
199
+ /** The question */
200
+ question: string;
201
+ /** Additional context */
202
+ context?: unknown;
203
+ /** Suggested answers */
204
+ suggestions?: string[];
205
+ }
206
+ /**
207
+ * Task request
208
+ */
209
+ export interface TaskRequest<TInput = unknown, TOutput = unknown> extends HumanRequest<TInput, TOutput> {
210
+ type: 'task';
211
+ /** Task instructions */
212
+ instructions: string;
213
+ /** Required tools/resources */
214
+ tools?: AIFunctionDefinition[];
215
+ /** Estimated effort */
216
+ estimatedEffort?: string;
217
+ }
218
+ /**
219
+ * Decision request
220
+ */
221
+ export interface DecisionRequest<TOptions extends string = string> extends HumanRequest<{
222
+ options: TOptions[];
223
+ context?: unknown;
224
+ }, TOptions> {
225
+ type: 'decision';
226
+ /** Available options */
227
+ options: TOptions[];
228
+ /** Decision context */
229
+ context?: unknown;
230
+ /** Criteria for decision */
231
+ criteria?: string[];
232
+ }
233
+ /**
234
+ * Review request
235
+ */
236
+ export interface ReviewRequest<TContent = unknown> extends HumanRequest<TContent, ReviewResponse> {
237
+ type: 'review';
238
+ /** Content to review */
239
+ content: TContent;
240
+ /** Review criteria/checklist */
241
+ criteria?: string[];
242
+ /** Review type */
243
+ reviewType?: 'code' | 'content' | 'design' | 'data' | 'other';
244
+ }
245
+ /**
246
+ * Review response
247
+ */
248
+ export interface ReviewResponse {
249
+ /** Whether approved */
250
+ approved: boolean;
251
+ /** Review comments */
252
+ comments: string;
253
+ /** Required changes */
254
+ changes?: string[];
255
+ /** Rating (1-5) */
256
+ rating?: number;
257
+ }
258
+ /**
259
+ * Notification
260
+ */
261
+ export interface Notification {
262
+ /** Notification ID */
263
+ id: string;
264
+ /** Notification type */
265
+ type: 'info' | 'warning' | 'error' | 'success';
266
+ /** Title */
267
+ title: string;
268
+ /** Message */
269
+ message: string;
270
+ /** Recipient(s) */
271
+ recipient: string | string[];
272
+ /** Channel(s) to use */
273
+ channels?: ('slack' | 'email' | 'sms' | 'web')[];
274
+ /** Priority */
275
+ priority?: Priority;
276
+ /** Additional data */
277
+ data?: unknown;
278
+ /** When created */
279
+ createdAt: Date;
280
+ /** When delivered */
281
+ deliveredAt?: Date;
282
+ /** Whether read */
283
+ read?: boolean;
284
+ }
285
+ /**
286
+ * Review queue for managing pending human requests
287
+ */
288
+ export interface ReviewQueue<T extends HumanRequest = HumanRequest> {
289
+ /** Queue identifier */
290
+ id: string;
291
+ /** Queue name */
292
+ name: string;
293
+ /** Queue description */
294
+ description?: string;
295
+ /** Items in the queue */
296
+ items: T[];
297
+ /** Queue filters */
298
+ filters?: {
299
+ status?: HumanRequestStatus[];
300
+ priority?: Priority[];
301
+ assignee?: string[];
302
+ role?: string[];
303
+ team?: string[];
304
+ };
305
+ /** Sort order */
306
+ sortBy?: 'createdAt' | 'priority' | 'updatedAt';
307
+ /** Sort direction */
308
+ sortDirection?: 'asc' | 'desc';
309
+ }
310
+ /**
311
+ * Escalation policy
312
+ */
313
+ export interface EscalationPolicy {
314
+ /** Policy ID */
315
+ id: string;
316
+ /** Policy name */
317
+ name: string;
318
+ /** When to escalate */
319
+ conditions: {
320
+ /** Escalate if no response after N milliseconds */
321
+ timeout?: number;
322
+ /** Escalate on rejection */
323
+ onRejection?: boolean;
324
+ /** Escalate if priority is at or above */
325
+ minPriority?: Priority;
326
+ };
327
+ /** Escalation path */
328
+ escalationPath: Array<{
329
+ /** Who to escalate to */
330
+ assignee: string;
331
+ /** After how long (cumulative) */
332
+ afterMs: number;
333
+ /** Notify via these channels */
334
+ notifyVia?: ('slack' | 'email' | 'sms' | 'web')[];
335
+ }>;
336
+ }
337
+ /**
338
+ * Approval workflow configuration
339
+ */
340
+ export interface ApprovalWorkflow {
341
+ /** Workflow ID */
342
+ id: string;
343
+ /** Workflow name */
344
+ name: string;
345
+ /** Workflow steps */
346
+ steps: Array<{
347
+ /** Step name */
348
+ name: string;
349
+ /** Required role */
350
+ role?: string;
351
+ /** Required approvers */
352
+ approvers: string[];
353
+ /** All must approve or just one */
354
+ requireAll?: boolean;
355
+ /** Auto-approve after timeout */
356
+ autoApproveAfter?: number;
357
+ }>;
358
+ /** Current step index */
359
+ currentStep?: number;
360
+ /** Workflow status */
361
+ status?: 'pending' | 'in_progress' | 'completed' | 'rejected';
362
+ }
363
+ /**
364
+ * Human-in-the-loop store interface
365
+ */
366
+ export interface HumanStore {
367
+ /** Create a new request */
368
+ create<T extends HumanRequest>(request: Omit<T, 'id' | 'createdAt' | 'updatedAt'>): Promise<T>;
369
+ /** Get a request by ID */
370
+ get<T extends HumanRequest>(id: string): Promise<T | null>;
371
+ /** Update a request */
372
+ update<T extends HumanRequest>(id: string, updates: Partial<T>): Promise<T>;
373
+ /** List requests with filters */
374
+ list<T extends HumanRequest>(filters?: ReviewQueue['filters'], limit?: number): Promise<T[]>;
375
+ /** Complete a request */
376
+ complete<T extends HumanRequest>(id: string, response: T['response']): Promise<T>;
377
+ /** Reject a request */
378
+ reject(id: string, reason: string): Promise<HumanRequest>;
379
+ /** Escalate a request */
380
+ escalate(id: string, to: string): Promise<HumanRequest>;
381
+ /** Cancel a request */
382
+ cancel(id: string): Promise<HumanRequest>;
383
+ }
384
+ /**
385
+ * Options for human interactions
386
+ */
387
+ export interface HumanOptions {
388
+ /** Storage backend */
389
+ store?: HumanStore;
390
+ /** Default timeout in milliseconds */
391
+ defaultTimeout?: number;
392
+ /** Default priority */
393
+ defaultPriority?: Priority;
394
+ /** Escalation policies */
395
+ escalationPolicies?: EscalationPolicy[];
396
+ /** Auto-escalate on timeout */
397
+ autoEscalate?: boolean;
398
+ }
399
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Core types for human-in-the-loop workflows
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}