@ktuban/safe-json-loader 1.1.2 → 1.1.3

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.
@@ -5,6 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  };
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.JsonLoaderError = void 0;
8
+ exports.mergeOptions = mergeOptions;
9
+ exports.log = log;
8
10
  exports.sanitizePrototypePollution = sanitizePrototypePollution;
9
11
  exports.loadSafeJsonResources = loadSafeJsonResources;
10
12
  exports.parseSafeJsonString = parseSafeJsonString;
@@ -12,16 +14,50 @@ exports.sanitizeParsedJsonObject = sanitizeParsedJsonObject;
12
14
  const promises_1 = __importDefault(require("fs/promises"));
13
15
  const path_1 = __importDefault(require("path"));
14
16
  const node_fetch_1 = __importDefault(require("node-fetch"));
15
- const logger_js_1 = require("./logger.js");
17
+ // Inline minimal defaults and helpers so this package does not require an
18
+ // external structured logger. Callers may pass an optional `logger` in
19
+ // `SafeJsonLoaderOptions`; otherwise we fall back to the console.
20
+ const CONSOLE_LOGGER = {
21
+ debug: (m, meta) => console.debug(m, meta),
22
+ info: (m, meta) => console.info(m, meta),
23
+ warn: (m, meta) => console.warn(m, meta),
24
+ error: (m, meta) => console.error(m, meta),
25
+ };
26
+ const DEFAULT_OPTIONS = {
27
+ maxFiles: 100,
28
+ maxTotalBytes: 10 * 1024 * 1024, // 10 MB
29
+ maxFileBytes: 2 * 1024 * 1024, // 2 MB
30
+ httpTimeoutMs: 8000,
31
+ maxConcurrency: 5,
32
+ looseJsonContentType: true,
33
+ maxJsonDepth: 50,
34
+ logger: CONSOLE_LOGGER,
35
+ onFileLoaded: () => { },
36
+ onFileSkipped: () => { },
37
+ };
38
+ function mergeOptions(opts) {
39
+ const logger = opts?.logger ?? DEFAULT_OPTIONS.logger;
40
+ return {
41
+ ...DEFAULT_OPTIONS,
42
+ ...(opts ?? {}),
43
+ logger,
44
+ onFileLoaded: opts?.onFileLoaded ?? DEFAULT_OPTIONS.onFileLoaded,
45
+ onFileSkipped: opts?.onFileSkipped ?? DEFAULT_OPTIONS.onFileSkipped,
46
+ };
47
+ }
48
+ function log(options, level, message, meta) {
49
+ const fn = options.logger[level];
50
+ if (fn)
51
+ fn(message, meta);
52
+ }
53
+ const safeJsonError_js_1 = require("./safeJsonError.js");
16
54
  /* -------------------------------------------------------------------------- */
17
55
  /* ERROR TYPE */
18
56
  /* -------------------------------------------------------------------------- */
19
- class JsonLoaderError extends Error {
20
- code;
21
- constructor(message, code) {
22
- super(message);
57
+ class JsonLoaderError extends safeJsonError_js_1.SafeJsonError {
58
+ constructor(message, code, statusCode) {
59
+ super(message, code, statusCode);
23
60
  this.name = "JsonLoaderError";
24
- this.code = code;
25
61
  }
26
62
  }
27
63
  exports.JsonLoaderError = JsonLoaderError;
@@ -195,7 +231,7 @@ async function loadRemoteIndex(indexUrl, indexJson, opts, limitRun) {
195
231
  if (urls.length > opts.maxFiles) {
196
232
  throw new JsonLoaderError(`Remote directory index at ${indexUrl} lists ${urls.length} files, exceeding maxFiles=${opts.maxFiles}.`, "REMOTE_INDEX_LIMIT_ERROR");
197
233
  }
198
- (0, logger_js_1.log)(opts, "debug", "Loading remote index", {
234
+ log(opts, "debug", "Loading remote index", {
199
235
  indexUrl,
200
236
  fileCount: urls.length,
201
237
  });
@@ -210,7 +246,7 @@ async function loadRemoteIndex(indexUrl, indexJson, opts, limitRun) {
210
246
  __source: fileUrl,
211
247
  });
212
248
  opts.onFileLoaded(file);
213
- (0, logger_js_1.log)(opts, "info", "Remote JSON file loaded", { url: fileUrl });
249
+ log(opts, "info", "Remote JSON file loaded", { url: fileUrl });
214
250
  return file;
215
251
  }));
216
252
  return Promise.all(tasks);
@@ -225,7 +261,7 @@ async function loadLocalJsonFile(filePath, opts) {
225
261
  source: filePath,
226
262
  reason: `File exceeds maxFileBytes=${opts.maxFileBytes}`,
227
263
  });
228
- (0, logger_js_1.log)(opts, "warn", "Skipping local file due to size limit", {
264
+ log(opts, "warn", "Skipping local file due to size limit", {
229
265
  filePath,
230
266
  size: stats.size,
231
267
  maxFileBytes: opts.maxFileBytes,
@@ -249,14 +285,14 @@ async function loadLocalJsonFile(filePath, opts) {
249
285
  __source: filePath,
250
286
  });
251
287
  opts.onFileLoaded(file);
252
- (0, logger_js_1.log)(opts, "info", "Local JSON file loaded", { filePath });
288
+ log(opts, "info", "Local JSON file loaded", { filePath });
253
289
  return file;
254
290
  }
255
291
  async function loadLocalDirectory(dirPath, opts, limitRun) {
256
292
  const files = await promises_1.default.readdir(dirPath);
257
293
  const jsonFiles = files.filter(isJsonFile);
258
294
  if (jsonFiles.length === 0) {
259
- (0, logger_js_1.log)(opts, "debug", "No JSON files found in directory", { dirPath });
295
+ log(opts, "debug", "No JSON files found in directory", { dirPath });
260
296
  return [];
261
297
  }
262
298
  if (jsonFiles.length > opts.maxFiles) {
@@ -274,7 +310,7 @@ async function loadLocalDirectory(dirPath, opts, limitRun) {
274
310
  }
275
311
  filePaths.push(full);
276
312
  }
277
- (0, logger_js_1.log)(opts, "debug", "Loading local directory", {
313
+ log(opts, "debug", "Loading local directory", {
278
314
  dirPath,
279
315
  fileCount: filePaths.length,
280
316
  totalSize,
@@ -307,7 +343,7 @@ async function loadSafeJsonResources(input, options) {
307
343
  if (!inputStr) {
308
344
  throw new JsonLoaderError("Input path/URL must be a non-empty string.", "INPUT_VALIDATION_ERROR");
309
345
  }
310
- const opts = (0, logger_js_1.mergeOptions)(options);
346
+ const opts = mergeOptions(options);
311
347
  const limitRun = createLimiter(opts.maxConcurrency);
312
348
  /* ---------------------------------- REMOTE --------------------------------- */
313
349
  if (isHttpUrl(inputStr)) {
@@ -324,7 +360,7 @@ async function loadSafeJsonResources(input, options) {
324
360
  __source: inputStr,
325
361
  });
326
362
  opts.onFileLoaded(file);
327
- (0, logger_js_1.log)(opts, "info", "Remote JSON file loaded", { url: inputStr });
363
+ log(opts, "info", "Remote JSON file loaded", { url: inputStr });
328
364
  return [file];
329
365
  }
330
366
  /* ----------------------------------- LOCAL ---------------------------------- */
@@ -387,4 +423,3 @@ function sanitizeParsedJsonObject(input, opts) {
387
423
  });
388
424
  return sanitized;
389
425
  }
390
- //# sourceMappingURL=safeJsonLoader.js.map
@@ -0,0 +1,113 @@
1
+ import type { PathLike } from "fs";
2
+ import type { URL } from "url";
3
+ /** Minimal logger contract used by this package. */
4
+ export interface LoggerContract {
5
+ debug: (message: string, meta?: unknown) => void;
6
+ info: (message: string, meta?: unknown) => void;
7
+ warn: (message: string, meta?: unknown) => void;
8
+ error: (message: string, meta?: unknown) => void;
9
+ }
10
+ /** JSON primitive types. */
11
+ export type JsonPrimitive = string | number | boolean | null;
12
+ /** JSON object type. */
13
+ export interface JsonObject {
14
+ [key: string]: JsonValue;
15
+ }
16
+ /** JSON array type. */
17
+ export interface JsonArray extends Array<JsonValue> {
18
+ }
19
+ /** Any valid JSON value. */
20
+ export type JsonValue = JsonPrimitive | JsonObject | JsonArray;
21
+ /**
22
+ * A single loaded JSON file, with metadata.
23
+ */
24
+ export interface LoadedJsonFile {
25
+ /** Logical name (basename of path or URL). */
26
+ name: string;
27
+ /** Parsed and security‑sanitized JSON data. */
28
+ data: JsonValue;
29
+ /** Original source (absolute path or URL). */
30
+ __source: string;
31
+ }
32
+ /**
33
+ * Options for safe JSON loading.
34
+ */
35
+ export interface SafeJsonLoaderOptions {
36
+ /**
37
+ * Maximum number of JSON files to load per call
38
+ * (applies to local directories and remote indexes).
39
+ * Default: 100
40
+ */
41
+ maxFiles?: number;
42
+ /**
43
+ * Maximum total bytes for all local JSON files combined.
44
+ * Default: 10 MB
45
+ */
46
+ maxTotalBytes?: number;
47
+ /**
48
+ * Maximum bytes per local JSON file.
49
+ * Default: 2 MB
50
+ */
51
+ maxFileBytes?: number;
52
+ /**
53
+ * HTTP timeout per remote request in milliseconds.
54
+ * Default: 8000
55
+ */
56
+ httpTimeoutMs?: number;
57
+ /**
58
+ * Maximum number of concurrent I/O operations (local reads + remote fetches).
59
+ * Default: 5
60
+ */
61
+ maxConcurrency?: number;
62
+ /**
63
+ * If true, accept any content‑type containing "json".
64
+ * If false, require "application/json".
65
+ * Default: true
66
+ */
67
+ looseJsonContentType?: boolean;
68
+ /**
69
+ * Maximum allowed depth of parsed JSON structures.
70
+ * Helps mitigate very deep payloads used for DoS.
71
+ * Default: 50
72
+ */
73
+ maxJsonDepth?: number;
74
+ /**
75
+ * Optional logger implementation.
76
+ * If omitted, the loader falls back to a console-based logger.
77
+ */
78
+ logger?: LoggerContract;
79
+ /**
80
+ * Optional hook invoked after each file is successfully loaded and sanitized.
81
+ */
82
+ onFileLoaded?: (file: LoadedJsonFile) => void;
83
+ /**
84
+ * Optional hook invoked when a file is skipped due to limits.
85
+ */
86
+ onFileSkipped?: (info: {
87
+ source: string;
88
+ reason: string;
89
+ }) => void;
90
+ }
91
+ /**
92
+ * Internal fully‑resolved options shape (after merging defaults).
93
+ */
94
+ export interface ResolvedSafeJsonLoaderOptions extends SafeJsonLoaderOptions {
95
+ maxFiles: number;
96
+ maxTotalBytes: number;
97
+ maxFileBytes: number;
98
+ httpTimeoutMs: number;
99
+ maxConcurrency: number;
100
+ looseJsonContentType: boolean;
101
+ maxJsonDepth: number;
102
+ logger: LoggerContract;
103
+ onFileLoaded: (file: LoadedJsonFile) => void;
104
+ onFileSkipped: (info: {
105
+ source: string;
106
+ reason: string;
107
+ }) => void;
108
+ }
109
+ /**
110
+ * Input accepted by the loader: either a path‑like or a URL string.
111
+ * We keep it simple: callers pass a string; we decide if it’s local or remote.
112
+ */
113
+ export type JsonLoadInput = string | PathLike | URL;
package/dist/cjs/types.js CHANGED
@@ -1,4 +1,3 @@
1
1
  "use strict";
2
2
  // types.ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- //# sourceMappingURL=types.js.map
@@ -0,0 +1,3 @@
1
+ export * from "./types.js";
2
+ export * from "./safeJsonLoader.js";
3
+ export * from "./safeJsonError.js";
package/dist/esm/index.js CHANGED
@@ -1,5 +1,4 @@
1
1
  // Public types
2
2
  export * from "./types.js";
3
- export * from "./logger.js";
4
3
  export * from "./safeJsonLoader.js";
5
- //# sourceMappingURL=index.js.map
4
+ export * from "./safeJsonError.js";
@@ -0,0 +1,6 @@
1
+ export declare class SafeJsonError extends Error {
2
+ readonly code: string;
3
+ readonly statusCode: number;
4
+ readonly isOperational: boolean;
5
+ constructor(message: string, code?: string, statusCode?: number);
6
+ }
@@ -0,0 +1,12 @@
1
+ export class SafeJsonError extends Error {
2
+ code;
3
+ statusCode;
4
+ isOperational;
5
+ constructor(message, code = "SAFE_JSON_ERROR", statusCode = 400) {
6
+ super(message);
7
+ this.code = code;
8
+ this.statusCode = statusCode;
9
+ this.isOperational = true;
10
+ Error.captureStackTrace(this, this.constructor);
11
+ }
12
+ }
@@ -0,0 +1,55 @@
1
+ import { JsonValue, LoadedJsonFile, ResolvedSafeJsonLoaderOptions, SafeJsonLoaderOptions, JsonLoadInput, LoggerContract } from "./types.js";
2
+ export declare function mergeOptions(opts?: SafeJsonLoaderOptions): ResolvedSafeJsonLoaderOptions;
3
+ export declare function log(options: ResolvedSafeJsonLoaderOptions, level: keyof LoggerContract, message: string, meta?: unknown): void;
4
+ import { SafeJsonError } from "./safeJsonError.js";
5
+ export declare class JsonLoaderError extends SafeJsonError {
6
+ constructor(message: string, code: string, statusCode?: number);
7
+ }
8
+ /**
9
+ * Deeply clones and strips dangerous keys to mitigate prototype pollution.
10
+ * Uses Object.create(null) to avoid inheriting from Object.prototype.
11
+ */
12
+ export declare function sanitizePrototypePollution<T extends JsonValue>(input: T, options?: {
13
+ maxDepth?: number;
14
+ }): T;
15
+ /**
16
+ * Load one or more JSON resources from:
17
+ * - Local file (.json)
18
+ * - Local directory (all .json files)
19
+ * - Remote URL returning JSON (object/array)
20
+ * - Remote URL acting as an index of JSON URLs (array or { files: [] })
21
+ *
22
+ * Security features:
23
+ * - Prototype‑pollution‑safe deep clone (strips __proto__, constructor, prototype)
24
+ * - Max depth for parsed JSON structures
25
+ * - Max file size and total directory size
26
+ * - Concurrency limit for I/O (local and remote)
27
+ * - HTTP timeout and content‑type checks
28
+ *
29
+ * This function does not enforce any domain/schema validation — callers
30
+ * should layer their own validation on top of the loaded `data`.
31
+ */
32
+ export declare function loadSafeJsonResources(input: JsonLoadInput, options?: SafeJsonLoaderOptions): Promise<LoadedJsonFile[]>;
33
+ /**
34
+ * Safely parse and sanitize a JSON string.
35
+ *
36
+ * - Parses JSON with error handling
37
+ * - Strips prototype pollution keys (__proto__, constructor, prototype)
38
+ * - Enforces max depth
39
+ *
40
+ * @param input Raw JSON string
41
+ * @param opts Loader options (maxJsonDepth, etc.)
42
+ * @returns Safe, sanitized JSON object
43
+ */
44
+ export declare function parseSafeJsonString(input: string, opts?: Pick<SafeJsonLoaderOptions, "maxJsonDepth">): JsonValue;
45
+ /**
46
+ * Sanitize an already-parsed JSON object.
47
+ *
48
+ * - Strips prototype pollution keys (__proto__, constructor, prototype)
49
+ * - Enforces max depth
50
+ *
51
+ * @param input Parsed JSON object (e.g. req.body in Express)
52
+ * @param opts Loader options (maxJsonDepth, etc.)
53
+ * @returns Safe, sanitized JSON object
54
+ */
55
+ export declare function sanitizeParsedJsonObject(input: JsonValue, opts?: Pick<SafeJsonLoaderOptions, "maxJsonDepth">): JsonValue;
@@ -2,16 +2,50 @@
2
2
  import fs from "fs/promises";
3
3
  import path from "path";
4
4
  import fetch from "node-fetch";
5
- import { mergeOptions, log } from "./logger.js";
5
+ // Inline minimal defaults and helpers so this package does not require an
6
+ // external structured logger. Callers may pass an optional `logger` in
7
+ // `SafeJsonLoaderOptions`; otherwise we fall back to the console.
8
+ const CONSOLE_LOGGER = {
9
+ debug: (m, meta) => console.debug(m, meta),
10
+ info: (m, meta) => console.info(m, meta),
11
+ warn: (m, meta) => console.warn(m, meta),
12
+ error: (m, meta) => console.error(m, meta),
13
+ };
14
+ const DEFAULT_OPTIONS = {
15
+ maxFiles: 100,
16
+ maxTotalBytes: 10 * 1024 * 1024, // 10 MB
17
+ maxFileBytes: 2 * 1024 * 1024, // 2 MB
18
+ httpTimeoutMs: 8000,
19
+ maxConcurrency: 5,
20
+ looseJsonContentType: true,
21
+ maxJsonDepth: 50,
22
+ logger: CONSOLE_LOGGER,
23
+ onFileLoaded: () => { },
24
+ onFileSkipped: () => { },
25
+ };
26
+ export function mergeOptions(opts) {
27
+ const logger = opts?.logger ?? DEFAULT_OPTIONS.logger;
28
+ return {
29
+ ...DEFAULT_OPTIONS,
30
+ ...(opts ?? {}),
31
+ logger,
32
+ onFileLoaded: opts?.onFileLoaded ?? DEFAULT_OPTIONS.onFileLoaded,
33
+ onFileSkipped: opts?.onFileSkipped ?? DEFAULT_OPTIONS.onFileSkipped,
34
+ };
35
+ }
36
+ export function log(options, level, message, meta) {
37
+ const fn = options.logger[level];
38
+ if (fn)
39
+ fn(message, meta);
40
+ }
41
+ import { SafeJsonError } from "./safeJsonError.js";
6
42
  /* -------------------------------------------------------------------------- */
7
43
  /* ERROR TYPE */
8
44
  /* -------------------------------------------------------------------------- */
9
- export class JsonLoaderError extends Error {
10
- code;
11
- constructor(message, code) {
12
- super(message);
45
+ export class JsonLoaderError extends SafeJsonError {
46
+ constructor(message, code, statusCode) {
47
+ super(message, code, statusCode);
13
48
  this.name = "JsonLoaderError";
14
- this.code = code;
15
49
  }
16
50
  }
17
51
  /* -------------------------------------------------------------------------- */
@@ -376,4 +410,3 @@ export function sanitizeParsedJsonObject(input, opts) {
376
410
  });
377
411
  return sanitized;
378
412
  }
379
- //# sourceMappingURL=safeJsonLoader.js.map
@@ -0,0 +1,113 @@
1
+ import type { PathLike } from "fs";
2
+ import type { URL } from "url";
3
+ /** Minimal logger contract used by this package. */
4
+ export interface LoggerContract {
5
+ debug: (message: string, meta?: unknown) => void;
6
+ info: (message: string, meta?: unknown) => void;
7
+ warn: (message: string, meta?: unknown) => void;
8
+ error: (message: string, meta?: unknown) => void;
9
+ }
10
+ /** JSON primitive types. */
11
+ export type JsonPrimitive = string | number | boolean | null;
12
+ /** JSON object type. */
13
+ export interface JsonObject {
14
+ [key: string]: JsonValue;
15
+ }
16
+ /** JSON array type. */
17
+ export interface JsonArray extends Array<JsonValue> {
18
+ }
19
+ /** Any valid JSON value. */
20
+ export type JsonValue = JsonPrimitive | JsonObject | JsonArray;
21
+ /**
22
+ * A single loaded JSON file, with metadata.
23
+ */
24
+ export interface LoadedJsonFile {
25
+ /** Logical name (basename of path or URL). */
26
+ name: string;
27
+ /** Parsed and security‑sanitized JSON data. */
28
+ data: JsonValue;
29
+ /** Original source (absolute path or URL). */
30
+ __source: string;
31
+ }
32
+ /**
33
+ * Options for safe JSON loading.
34
+ */
35
+ export interface SafeJsonLoaderOptions {
36
+ /**
37
+ * Maximum number of JSON files to load per call
38
+ * (applies to local directories and remote indexes).
39
+ * Default: 100
40
+ */
41
+ maxFiles?: number;
42
+ /**
43
+ * Maximum total bytes for all local JSON files combined.
44
+ * Default: 10 MB
45
+ */
46
+ maxTotalBytes?: number;
47
+ /**
48
+ * Maximum bytes per local JSON file.
49
+ * Default: 2 MB
50
+ */
51
+ maxFileBytes?: number;
52
+ /**
53
+ * HTTP timeout per remote request in milliseconds.
54
+ * Default: 8000
55
+ */
56
+ httpTimeoutMs?: number;
57
+ /**
58
+ * Maximum number of concurrent I/O operations (local reads + remote fetches).
59
+ * Default: 5
60
+ */
61
+ maxConcurrency?: number;
62
+ /**
63
+ * If true, accept any content‑type containing "json".
64
+ * If false, require "application/json".
65
+ * Default: true
66
+ */
67
+ looseJsonContentType?: boolean;
68
+ /**
69
+ * Maximum allowed depth of parsed JSON structures.
70
+ * Helps mitigate very deep payloads used for DoS.
71
+ * Default: 50
72
+ */
73
+ maxJsonDepth?: number;
74
+ /**
75
+ * Optional logger implementation.
76
+ * If omitted, the loader falls back to a console-based logger.
77
+ */
78
+ logger?: LoggerContract;
79
+ /**
80
+ * Optional hook invoked after each file is successfully loaded and sanitized.
81
+ */
82
+ onFileLoaded?: (file: LoadedJsonFile) => void;
83
+ /**
84
+ * Optional hook invoked when a file is skipped due to limits.
85
+ */
86
+ onFileSkipped?: (info: {
87
+ source: string;
88
+ reason: string;
89
+ }) => void;
90
+ }
91
+ /**
92
+ * Internal fully‑resolved options shape (after merging defaults).
93
+ */
94
+ export interface ResolvedSafeJsonLoaderOptions extends SafeJsonLoaderOptions {
95
+ maxFiles: number;
96
+ maxTotalBytes: number;
97
+ maxFileBytes: number;
98
+ httpTimeoutMs: number;
99
+ maxConcurrency: number;
100
+ looseJsonContentType: boolean;
101
+ maxJsonDepth: number;
102
+ logger: LoggerContract;
103
+ onFileLoaded: (file: LoadedJsonFile) => void;
104
+ onFileSkipped: (info: {
105
+ source: string;
106
+ reason: string;
107
+ }) => void;
108
+ }
109
+ /**
110
+ * Input accepted by the loader: either a path‑like or a URL string.
111
+ * We keep it simple: callers pass a string; we decide if it’s local or remote.
112
+ */
113
+ export type JsonLoadInput = string | PathLike | URL;
package/dist/esm/types.js CHANGED
@@ -1,3 +1,2 @@
1
1
  // types.ts
2
2
  export {};
3
- //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../node_modules/typescript/lib/lib.esnext.float16.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/types.ts","../node_modules/@types/node/compatibility/iterators.d.ts","../node_modules/@types/node/globals.typedarray.d.ts","../node_modules/@types/node/buffer.buffer.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/web-globals/abortcontroller.d.ts","../node_modules/@types/node/web-globals/blob.d.ts","../node_modules/@types/node/web-globals/console.d.ts","../node_modules/@types/node/web-globals/crypto.d.ts","../node_modules/@types/node/web-globals/domexception.d.ts","../node_modules/@types/node/web-globals/encoding.d.ts","../node_modules/@types/node/web-globals/events.d.ts","../node_modules/undici-types/utility.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client-stats.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/h2c-client.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-call-history.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/snapshot-agent.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/env-http-proxy-agent.d.ts","../node_modules/undici-types/retry-handler.d.ts","../node_modules/undici-types/retry-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cache-interceptor.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/util.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/eventsource.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/web-globals/fetch.d.ts","../node_modules/@types/node/web-globals/importmeta.d.ts","../node_modules/@types/node/web-globals/messaging.d.ts","../node_modules/@types/node/web-globals/navigator.d.ts","../node_modules/@types/node/web-globals/performance.d.ts","../node_modules/@types/node/web-globals/storage.d.ts","../node_modules/@types/node/web-globals/streams.d.ts","../node_modules/@types/node/web-globals/timers.d.ts","../node_modules/@types/node/web-globals/url.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/inspector.generated.d.ts","../node_modules/@types/node/inspector/promises.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/path/posix.d.ts","../node_modules/@types/node/path/win32.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/quic.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/sqlite.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/test/reporters.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/util/types.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/formdata-polyfill/esm.min.d.ts","../node_modules/fetch-blob/file.d.ts","../node_modules/fetch-blob/index.d.ts","../node_modules/fetch-blob/from.d.ts","../node_modules/node-fetch/@types/index.d.ts","../src/safeJsonError.ts","../src/safeJsonLoader.ts","../src/index.ts","../node_modules/@types/estree/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/safe-json-stringify/index.d.ts"],"fileIdsList":[[63,125,133,137,140,142,143,144,156],[63,122,123,125,133,137,140,142,143,144,156],[63,124,125,133,137,140,142,143,144,156],[125,133,137,140,142,143,144,156],[63,125,133,137,140,142,143,144,156,164],[63,125,126,131,133,136,137,140,142,143,144,146,156,161,173],[63,125,126,127,133,136,137,140,142,143,144,156],[63,125,128,133,137,140,142,143,144,156,174],[63,125,129,130,133,137,140,142,143,144,147,156],[63,125,130,133,137,140,142,143,144,156,161,170],[63,125,131,133,136,137,140,142,143,144,146,156],[63,124,125,132,133,137,140,142,143,144,156],[63,125,133,134,137,140,142,143,144,156],[63,125,133,135,136,137,140,142,143,144,156],[63,124,125,133,136,137,140,142,143,144,156],[63,125,133,136,137,138,140,142,143,144,156,161,173],[63,125,133,136,137,138,140,142,143,144,156,161,164],[63,112,125,133,136,137,139,140,142,143,144,146,156,161,173],[63,125,133,136,137,139,140,142,143,144,146,156,161,170,173],[63,125,133,137,139,140,141,142,143,144,156,161,170,173],[61,62,63,64,65,66,67,68,69,70,71,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180],[63,125,133,136,137,140,142,143,144,156],[63,125,133,137,140,142,144,156],[63,125,133,137,140,142,143,144,145,156,173],[63,125,133,136,137,140,142,143,144,146,156,161],[63,125,133,137,140,142,143,144,147,156],[63,125,133,137,140,142,143,144,148,156],[63,125,133,136,137,140,142,143,144,151,156],[63,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180],[63,125,133,137,140,142,143,144,153,156],[63,125,133,137,140,142,143,144,154,156],[63,125,130,133,137,140,142,143,144,146,156,164],[63,125,133,136,137,140,142,143,144,156,157],[63,125,133,137,140,142,143,144,156,158,174,177],[63,125,133,136,137,140,142,143,144,156,161,163,164],[63,125,133,137,140,142,143,144,156,162,164],[63,125,133,137,140,142,143,144,156,164,174],[63,125,133,137,140,142,143,144,156,165],[63,122,125,133,137,140,142,143,144,156,161,167,173],[63,125,133,137,140,142,143,144,156,161,166],[63,125,133,136,137,140,142,143,144,156,168,169],[63,125,133,137,140,142,143,144,156,168,169],[63,125,130,133,137,140,142,143,144,146,156,161,170],[63,125,133,137,140,142,143,144,156,171],[63,125,133,137,140,142,143,144,146,156,172],[63,125,133,137,139,140,142,143,144,154,156,173],[63,125,133,137,140,142,143,144,156,174,175],[63,125,130,133,137,140,142,143,144,156,175],[63,125,133,137,140,142,143,144,156,161,176],[63,125,133,137,140,142,143,144,145,156,177],[63,125,133,137,140,142,143,144,156,178],[63,125,128,133,137,140,142,143,144,156],[63,125,130,133,137,140,142,143,144,156],[63,125,133,137,140,142,143,144,156,174],[63,112,125,133,137,140,142,143,144,156],[63,125,133,137,140,142,143,144,156,173],[63,125,133,137,140,142,143,144,156,179],[63,125,133,137,140,142,143,144,151,156],[63,125,133,137,140,142,143,144,156,169],[63,112,125,133,136,137,138,140,142,143,144,151,156,161,164,173,176,177,179],[63,125,133,137,140,142,143,144,156,161,180],[63,125,133,137,140,142,143,144,156,183,184],[63,125,133,137,139,140,142,143,144,156,181,182,185],[63,78,81,84,85,125,133,137,140,142,143,144,156,173],[63,81,125,133,137,140,142,143,144,156,161,173],[63,81,85,125,133,137,140,142,143,144,156,173],[63,125,133,137,140,142,143,144,156,161],[63,75,125,133,137,140,142,143,144,156],[63,79,125,133,137,140,142,143,144,156],[63,77,78,81,125,133,137,140,142,143,144,156,173],[63,125,133,137,140,142,143,144,146,156,170],[63,125,133,137,140,142,143,144,156,181],[63,75,125,133,137,140,142,143,144,156,181],[63,77,81,125,133,137,140,142,143,144,146,156,173],[63,72,73,74,76,80,125,133,136,137,140,142,143,144,156,161,173],[63,81,89,97,125,133,137,140,142,143,144,156],[63,73,79,125,133,137,140,142,143,144,156],[63,81,106,107,125,133,137,140,142,143,144,156],[63,73,76,81,125,133,137,140,142,143,144,156,164,173,181],[63,81,125,133,137,140,142,143,144,156],[63,77,81,125,133,137,140,142,143,144,156,173],[63,72,125,133,137,140,142,143,144,156],[63,75,76,77,79,80,81,82,83,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,107,108,109,110,111,125,133,137,140,142,143,144,156],[63,81,99,102,125,133,137,140,142,143,144,156],[63,81,89,90,91,125,133,137,140,142,143,144,156],[63,79,81,90,92,125,133,137,140,142,143,144,156],[63,80,125,133,137,140,142,143,144,156],[63,73,75,81,125,133,137,140,142,143,144,156],[63,81,85,90,92,125,133,137,140,142,143,144,156],[63,85,125,133,137,140,142,143,144,156],[63,79,81,84,125,133,137,140,142,143,144,156,173],[63,73,77,81,89,125,133,137,140,142,143,144,156],[63,81,99,125,133,137,140,142,143,144,156],[63,92,125,133,137,140,142,143,144,156],[63,75,81,106,125,133,137,140,142,143,144,156,164,179,181],[60,63,125,133,137,140,142,143,144,156,187,188],[60,63,125,133,137,138,140,142,143,144,148,156,186,187]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"7364f6e52f13bd8d5c9656c3ae1f735efd0f2d6210d9954ce5ebd1c7895fbf15","signature":"9e108d5cde0db63471aae44db56e05e8cec94226cfa1d415474b152e18058b76"},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"0ccdaa19852d25ecd84eec365c3bfa16e7859cadecf6e9ca6d0dbbbee439743f","affectsGlobalScope":true,"impliedFormat":1},{"version":"438b41419b1df9f1fbe33b5e1b18f5853432be205991d1b19f5b7f351675541e","affectsGlobalScope":true,"impliedFormat":1},{"version":"096116f8fedc1765d5bd6ef360c257b4a9048e5415054b3bf3c41b07f8951b0b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5e01375c9e124a83b52ee4b3244ed1a4d214a6cfb54ac73e164a823a4a7860a","affectsGlobalScope":true,"impliedFormat":1},{"version":"f90ae2bbce1505e67f2f6502392e318f5714bae82d2d969185c4a6cecc8af2fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b58e207b93a8f1c88bbf2a95ddc686ac83962b13830fe8ad3f404ffc7051fb4","affectsGlobalScope":true,"impliedFormat":1},{"version":"1fefabcb2b06736a66d2904074d56268753654805e829989a46a0161cd8412c5","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"c18a99f01eb788d849ad032b31cafd49de0b19e083fe775370834c5675d7df8e","affectsGlobalScope":true,"impliedFormat":1},{"version":"5247874c2a23b9a62d178ae84f2db6a1d54e6c9a2e7e057e178cc5eea13757fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"c3f5289820990ab66b70c7fb5b63cb674001009ff84b13de40619619a9c8175f","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3275d55fac10b799c9546804126239baf020d220136163f763b55a74e50e750","affectsGlobalScope":true,"impliedFormat":1},{"version":"fa68a0a3b7cb32c00e39ee3cd31f8f15b80cac97dce51b6ee7fc14a1e8deb30b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c36e755bced82df7fb6ce8169265d0a7bb046ab4e2cb6d0da0cb72b22033e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"7a93de4ff8a63bafe62ba86b89af1df0ccb5e40bb85b0c67d6bbcfdcf96bf3d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"90e85f9bc549dfe2b5749b45fe734144e96cd5d04b38eae244028794e142a77e","affectsGlobalScope":true,"impliedFormat":1},{"version":"e0a5deeb610b2a50a6350bd23df6490036a1773a8a71d70f2f9549ab009e67ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"435b3711465425770ed2ee2f1cf00ce071835265e0851a7dc4600ab4b007550e","impliedFormat":1},{"version":"7e49f52a159435fc8df4de9dc377ef5860732ca2dc9efec1640531d3cf5da7a3","impliedFormat":1},{"version":"dd4bde4bdc2e5394aed6855e98cf135dfdf5dd6468cad842e03116d31bbcc9bc","impliedFormat":1},{"version":"4d4e879009a84a47c05350b8dca823036ba3a29a3038efed1be76c9f81e45edf","affectsGlobalScope":true,"impliedFormat":1},{"version":"237ba5ac2a95702a114a309e39c53a5bddff5f6333b325db9764df9b34f3502b","impliedFormat":1},{"version":"9ba13b47cb450a438e3076c4a3f6afb9dc85e17eae50f26d4b2d72c0688c9251","impliedFormat":1},{"version":"b64cd4401633ea4ecadfd700ddc8323a13b63b106ac7127c1d2726f32424622c","impliedFormat":1},{"version":"37c6e5fe5715814412b43cc9b50b24c67a63c4e04e753e0d1305970d65417a60","impliedFormat":1},{"version":"1d024184fb57c58c5c91823f9d10b4915a4867b7934e89115fd0d861a9df27c8","impliedFormat":1},{"version":"ee0e4946247f842c6dd483cbb60a5e6b484fee07996e3a7bc7343dfb68a04c5d","impliedFormat":1},{"version":"ef051f42b7e0ef5ca04552f54c4552eac84099d64b6c5ad0ef4033574b6035b8","impliedFormat":1},{"version":"853a43154f1d01b0173d9cbd74063507ece57170bad7a3b68f3fa1229ad0a92f","impliedFormat":1},{"version":"56231e3c39a031bfb0afb797690b20ed4537670c93c0318b72d5180833d98b72","impliedFormat":1},{"version":"5cc7c39031bfd8b00ad58f32143d59eb6ffc24f5d41a20931269011dccd36c5e","impliedFormat":1},{"version":"b0b69c61b0f0ec8ca15db4c8c41f6e77f4cacb784d42bca948f42dea33e8757e","affectsGlobalScope":true,"impliedFormat":1},{"version":"f96a48183254c00d24575401f1a761b4ce4927d927407e7862a83e06ce5d6964","impliedFormat":1},{"version":"cc25940cfb27aa538e60d465f98bb5068d4d7d33131861ace43f04fe6947d68f","impliedFormat":1},{"version":"f83fb2b1338afbb3f9d733c7d6e8b135826c41b0518867df0c0ace18ae1aa270","impliedFormat":1},{"version":"01ff95aa1443e3f7248974e5a771f513cb2ac158c8898f470a1792f817bee497","impliedFormat":1},{"version":"757227c8b345c57d76f7f0e3bbad7a91ffca23f1b2547cbed9e10025816c9cb7","impliedFormat":1},{"version":"42a05d8f239f74587d4926aba8cc54792eed8e8a442c7adc9b38b516642aadfe","impliedFormat":1},{"version":"5d21b58d60383cc6ab9ad3d3e265d7d25af24a2c9b506247e0e50b0a884920be","impliedFormat":1},{"version":"101f482fd48cb4c7c0468dcc6d62c843d842977aea6235644b1edd05e81fbf22","impliedFormat":1},{"version":"ae6757460f37078884b1571a3de3ebaf724d827d7e1d53626c02b3c2a408ac63","affectsGlobalScope":true,"impliedFormat":1},{"version":"9451a46a89ed209e2e08329e6cac59f89356eae79a7230f916d8cc38725407c7","impliedFormat":1},{"version":"3ef397f12387eff17f550bc484ea7c27d21d43816bbe609d495107f44b97e933","impliedFormat":1},{"version":"1023282e2ba810bc07905d3668349fbd37a26411f0c8f94a70ef3c05fe523fcf","impliedFormat":1},{"version":"b214ebcf76c51b115453f69729ee8aa7b7f8eccdae2a922b568a45c2d7ff52f7","impliedFormat":1},{"version":"429c9cdfa7d126255779efd7e6d9057ced2d69c81859bbab32073bad52e9ba76","impliedFormat":1},{"version":"e236b5eba291f51bdf32c231673e6cab81b5410850e61f51a7a524dddadc0f95","impliedFormat":1},{"version":"f7ba0e839daa0702e3ff1a1a871c0d8ea2d586ce684dd8a72c786c36a680b1d9","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f2c62938251b45715fd2a9887060ec4fbc8724727029d1cbce373747252bdd7","impliedFormat":1},{"version":"e3ace08b6bbd84655d41e244677b474fd995923ffef7149ddb68af8848b60b05","impliedFormat":1},{"version":"132580b0e86c48fab152bab850fc57a4b74fe915c8958d2ccb052b809a44b61c","impliedFormat":1},{"version":"af4ab0aa8908fc9a655bb833d3bc28e117c4f0e1038c5a891546158beb25accb","impliedFormat":1},{"version":"69c9a5a9392e8564bd81116e1ed93b13205201fb44cb35a7fde8c9f9e21c4b23","impliedFormat":1},{"version":"5f8fc37f8434691ffac1bfd8fc2634647da2c0e84253ab5d2dd19a7718915b35","impliedFormat":1},{"version":"5981c2340fd8b076cae8efbae818d42c11ffc615994cb060b1cd390795f1be2b","impliedFormat":1},{"version":"f64deb26664af64dc274637343bde8d82f930c77af05a412c7d310b77207a448","impliedFormat":1},{"version":"ed4f674fc8c0c993cc7e145069ac44129e03519b910c62be206a0cc777bdc60b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0250da3eb85c99624f974e77ef355cdf86f43980251bc371475c2b397ba55bcd","impliedFormat":1},{"version":"f1c93e046fb3d9b7f8249629f4b63dc068dd839b824dd0aa39a5e68476dc9420","impliedFormat":1},{"version":"3d3a5f27ffbc06c885dd4d5f9ee20de61faf877fe2c3a7051c4825903d9a7fdc","impliedFormat":1},{"version":"12806f9f085598ef930edaf2467a5fa1789a878fba077cd27e85dc5851e11834","impliedFormat":1},{"version":"bce309f4d9b67c18d4eeff5bba6cf3e67b2b0aead9f03f75d6060c553974d7ba","impliedFormat":1},{"version":"a43fe41c33d0a192a0ecaf9b92e87bef3709c9972e6d53c42c49251ccb962d69","impliedFormat":1},{"version":"a177959203c017fad3ecc4f3d96c8757a840957a4959a3ae00dab9d35961ca6c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc727ccf9b36e257ff982ea0badeffbfc2c151802f741bddff00c6af3b784cf","impliedFormat":1},{"version":"2a00d005e3af99cd1cfa75220e60c61b04bfb6be7ca7453bfe2ef6cca37cc03c","impliedFormat":1},{"version":"4844a4c9b4b1e812b257676ed8a80b3f3be0e29bf05e742cc2ea9c3c6865e6c6","impliedFormat":1},{"version":"064878a60367e0407c42fb7ba02a2ea4d83257357dc20088e549bd4d89433e9c","impliedFormat":1},{"version":"14d4bd22d1b05824971b98f7e91b2484c90f1a684805c330476641417c3d9735","impliedFormat":1},{"version":"c3877fef8a43cd434f9728f25a97575b0eb73d92f38b5c87c840daccc3e21d97","impliedFormat":1},{"version":"b484ec11ba00e3a2235562a41898d55372ccabe607986c6fa4f4aba72093749f","impliedFormat":1},{"version":"1dbd83860e7634f9c236647f45dbc5d3c4f9eba8827d87209d6e9826fdf4dbd5","impliedFormat":1},{"version":"41ef7992c555671a8fe54db302788adefa191ded810a50329b79d20a6772d14c","impliedFormat":1},{"version":"041a7781b9127ab568d2cdcce62c58fdea7c7407f40b8c50045d7866a2727130","impliedFormat":1},{"version":"b37f83e7deea729aa9ce5593f78905afb45b7532fdff63041d374f60059e7852","impliedFormat":1},{"version":"e1cb68f3ef3a8dd7b2a9dfb3de482ed6c0f1586ba0db4e7d73c1d2147b6ffc51","impliedFormat":1},{"version":"55cdbeebe76a1fa18bbd7e7bf73350a2173926bd3085bb050cf5a5397025ee4e","impliedFormat":1},{"version":"d782e571cb7d6ec0f0645957ed843d00e3f8577e08cc2940f400c931bc47a8df","impliedFormat":99},{"version":"9167246623f181441e6116605221268d94e33a1ebd88075e2dc80133c928ae7e","impliedFormat":99},{"version":"dc1a838d8a514b6de9fbce3bd5e6feb9ccfe56311e9338bb908eb4d0d966ecaf","impliedFormat":99},{"version":"186f09ed4b1bc1d5a5af5b1d9f42e2d798f776418e82599b3de16423a349d184","impliedFormat":99},{"version":"d692ae73951775d2448df535ce8bc8abf162dc343911fedda2c37b8de3b20d8e","impliedFormat":99},{"version":"5c7e8b473ce1691e311368337a105ab7a4d9a9a217a8f27327e0f783fc41e15e","signature":"204b665c51b1eb5cbb792db5214ec6ac97d0632b03fb740917c029c6f9b687ff"},{"version":"7a88f1a7da9a6178c82530b9b845333815e24c5c31d581132393dc9ebde30a48","signature":"66351603efab5835856f1fa17a3ea7e2e7dfb0cce73c60d33e351bda66a57bff"},{"version":"c4ca5069ac6e53e3225d4731ae6bf3fb8bcdec8f3a400eaff754452a2699fec6","signature":"577ec7a90ad7996a7071b0f1ced4f01f031e75f935e7c8c55d3b4d814c4e6703"},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"8b076c7b65919fa90c2fb0f15828ef53e395a1d393a40abbc96b537f7afa8ec0","impliedFormat":1}],"root":[60,[187,189]],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"esModuleInterop":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"noImplicitReturns":true,"noUncheckedIndexedAccess":true,"outDir":"./cjs","rootDir":"../src","skipLibCheck":true,"strict":true,"target":9},"referencedMap":[[190,1],[191,1],[122,2],[123,2],[124,3],[63,4],[125,5],[126,6],[127,7],[61,1],[128,8],[129,9],[130,10],[131,11],[132,12],[133,13],[134,13],[135,14],[136,15],[137,16],[138,17],[64,1],[62,1],[139,18],[140,19],[141,20],[181,21],[142,22],[143,23],[144,22],[145,24],[146,25],[147,26],[148,27],[149,27],[150,27],[151,28],[152,29],[153,30],[154,31],[155,32],[156,33],[157,33],[158,34],[159,1],[160,1],[161,35],[162,36],[163,35],[164,37],[165,38],[166,39],[167,40],[168,41],[169,42],[170,43],[171,44],[172,45],[173,46],[174,47],[175,48],[176,49],[177,50],[178,51],[65,22],[66,1],[67,52],[68,53],[69,1],[70,54],[71,1],[113,55],[114,56],[115,57],[116,57],[117,58],[118,1],[119,5],[120,59],[121,56],[179,60],[180,61],[192,1],[183,1],[185,62],[184,1],[182,1],[186,63],[58,1],[59,1],[11,1],[10,1],[2,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[3,1],[20,1],[21,1],[4,1],[22,1],[26,1],[23,1],[24,1],[25,1],[27,1],[28,1],[29,1],[5,1],[30,1],[31,1],[32,1],[33,1],[6,1],[37,1],[34,1],[35,1],[36,1],[38,1],[7,1],[39,1],[44,1],[45,1],[40,1],[41,1],[42,1],[43,1],[8,1],[49,1],[46,1],[47,1],[48,1],[50,1],[9,1],[51,1],[52,1],[53,1],[55,1],[54,1],[1,1],[56,1],[57,1],[89,64],[101,65],[87,66],[102,67],[111,68],[78,69],[79,70],[77,71],[110,72],[105,73],[109,74],[81,75],[98,76],[80,77],[108,78],[75,79],[76,73],[82,80],[83,1],[88,81],[86,80],[73,82],[112,83],[103,84],[92,85],[91,80],[93,86],[96,87],[90,88],[94,89],[106,72],[84,90],[85,91],[97,92],[74,67],[100,93],[99,80],[95,94],[104,1],[72,1],[107,95],[189,96],[187,1],[188,97],[60,56]],"latestChangedDtsFile":"./cjs/index.d.ts","version":"5.9.3"}