@yume-chan/struct 0.0.0-20240714132542

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 (91) hide show
  1. package/CHANGELOG.md +131 -0
  2. package/LICENSE +21 -0
  3. package/README.md +747 -0
  4. package/esm/basic/definition.d.ts +44 -0
  5. package/esm/basic/definition.d.ts.map +1 -0
  6. package/esm/basic/definition.js +24 -0
  7. package/esm/basic/definition.js.map +1 -0
  8. package/esm/basic/field-value.d.ts +39 -0
  9. package/esm/basic/field-value.d.ts.map +1 -0
  10. package/esm/basic/field-value.js +46 -0
  11. package/esm/basic/field-value.js.map +1 -0
  12. package/esm/basic/index.d.ts +6 -0
  13. package/esm/basic/index.d.ts.map +1 -0
  14. package/esm/basic/index.js +6 -0
  15. package/esm/basic/index.js.map +1 -0
  16. package/esm/basic/options.d.ts +10 -0
  17. package/esm/basic/options.d.ts.map +1 -0
  18. package/esm/basic/options.js +4 -0
  19. package/esm/basic/options.js.map +1 -0
  20. package/esm/basic/stream.d.ts +25 -0
  21. package/esm/basic/stream.d.ts.map +1 -0
  22. package/esm/basic/stream.js +8 -0
  23. package/esm/basic/stream.js.map +1 -0
  24. package/esm/basic/struct-value.d.ts +30 -0
  25. package/esm/basic/struct-value.d.ts.map +1 -0
  26. package/esm/basic/struct-value.js +62 -0
  27. package/esm/basic/struct-value.js.map +1 -0
  28. package/esm/index.d.ts +15 -0
  29. package/esm/index.d.ts.map +1 -0
  30. package/esm/index.js +7 -0
  31. package/esm/index.js.map +1 -0
  32. package/esm/struct.d.ts +151 -0
  33. package/esm/struct.d.ts.map +1 -0
  34. package/esm/struct.js +255 -0
  35. package/esm/struct.js.map +1 -0
  36. package/esm/sync-promise.d.ts +13 -0
  37. package/esm/sync-promise.d.ts.map +1 -0
  38. package/esm/sync-promise.js +71 -0
  39. package/esm/sync-promise.js.map +1 -0
  40. package/esm/types/bigint.d.ts +25 -0
  41. package/esm/types/bigint.d.ts.map +1 -0
  42. package/esm/types/bigint.js +46 -0
  43. package/esm/types/bigint.js.map +1 -0
  44. package/esm/types/buffer/base.d.ts +69 -0
  45. package/esm/types/buffer/base.d.ts.map +1 -0
  46. package/esm/types/buffer/base.js +101 -0
  47. package/esm/types/buffer/base.js.map +1 -0
  48. package/esm/types/buffer/fixed-length.d.ts +9 -0
  49. package/esm/types/buffer/fixed-length.d.ts.map +1 -0
  50. package/esm/types/buffer/fixed-length.js +7 -0
  51. package/esm/types/buffer/fixed-length.js.map +1 -0
  52. package/esm/types/buffer/index.d.ts +4 -0
  53. package/esm/types/buffer/index.d.ts.map +1 -0
  54. package/esm/types/buffer/index.js +4 -0
  55. package/esm/types/buffer/index.js.map +1 -0
  56. package/esm/types/buffer/variable-length.d.ts +46 -0
  57. package/esm/types/buffer/variable-length.d.ts.map +1 -0
  58. package/esm/types/buffer/variable-length.js +88 -0
  59. package/esm/types/buffer/variable-length.js.map +1 -0
  60. package/esm/types/index.d.ts +4 -0
  61. package/esm/types/index.d.ts.map +1 -0
  62. package/esm/types/index.js +4 -0
  63. package/esm/types/index.js.map +1 -0
  64. package/esm/types/number.d.ts +28 -0
  65. package/esm/types/number.d.ts.map +1 -0
  66. package/esm/types/number.js +88 -0
  67. package/esm/types/number.js.map +1 -0
  68. package/esm/utils.d.ts +48 -0
  69. package/esm/utils.d.ts.map +1 -0
  70. package/esm/utils.js +18 -0
  71. package/esm/utils.js.map +1 -0
  72. package/package.json +49 -0
  73. package/src/basic/definition.ts +68 -0
  74. package/src/basic/field-value.ts +71 -0
  75. package/src/basic/index.ts +5 -0
  76. package/src/basic/options.ts +19 -0
  77. package/src/basic/stream.ts +34 -0
  78. package/src/basic/struct-value.ts +85 -0
  79. package/src/index.ts +18 -0
  80. package/src/struct.ts +705 -0
  81. package/src/sync-promise.ts +131 -0
  82. package/src/types/bigint.ts +120 -0
  83. package/src/types/buffer/base.ts +195 -0
  84. package/src/types/buffer/fixed-length.ts +22 -0
  85. package/src/types/buffer/index.ts +3 -0
  86. package/src/types/buffer/variable-length.ts +199 -0
  87. package/src/types/index.ts +3 -0
  88. package/src/types/number.ts +159 -0
  89. package/src/utils.ts +94 -0
  90. package/tsconfig.build.json +3 -0
  91. package/tsconfig.build.tsbuildinfo +1 -0
@@ -0,0 +1,159 @@
1
+ import {
2
+ getInt16,
3
+ getInt32,
4
+ getInt8,
5
+ getUint16,
6
+ getUint32,
7
+ setInt16,
8
+ setInt32,
9
+ setUint16,
10
+ setUint32,
11
+ } from "@yume-chan/no-data-view";
12
+
13
+ import type {
14
+ AsyncExactReadable,
15
+ ExactReadable,
16
+ StructOptions,
17
+ StructValue,
18
+ } from "../basic/index.js";
19
+ import { StructFieldDefinition, StructFieldValue } from "../basic/index.js";
20
+ import { SyncPromise } from "../sync-promise.js";
21
+ import type { ValueOrPromise } from "../utils.js";
22
+
23
+ export interface NumberFieldVariant {
24
+ signed: boolean;
25
+ size: number;
26
+ deserialize(array: Uint8Array, littleEndian: boolean): number;
27
+ serialize(
28
+ array: Uint8Array,
29
+ offset: number,
30
+ value: number,
31
+ littleEndian: boolean,
32
+ ): void;
33
+ }
34
+
35
+ export namespace NumberFieldVariant {
36
+ export const Uint8: NumberFieldVariant = {
37
+ signed: false,
38
+ size: 1,
39
+ deserialize(array) {
40
+ return array[0]!;
41
+ },
42
+ serialize(array, offset, value) {
43
+ array[offset] = value;
44
+ },
45
+ };
46
+
47
+ export const Int8: NumberFieldVariant = {
48
+ signed: true,
49
+ size: 1,
50
+ deserialize(array) {
51
+ return getInt8(array, 0);
52
+ },
53
+ serialize(array, offset, value) {
54
+ array[offset] = value;
55
+ },
56
+ };
57
+
58
+ export const Uint16: NumberFieldVariant = {
59
+ signed: false,
60
+ size: 2,
61
+ deserialize(array, littleEndian) {
62
+ return getUint16(array, 0, littleEndian);
63
+ },
64
+ serialize: setUint16,
65
+ };
66
+
67
+ export const Int16: NumberFieldVariant = {
68
+ signed: true,
69
+ size: 2,
70
+ deserialize(array, littleEndian) {
71
+ return getInt16(array, 0, littleEndian);
72
+ },
73
+ serialize: setInt16,
74
+ };
75
+
76
+ export const Uint32: NumberFieldVariant = {
77
+ signed: false,
78
+ size: 4,
79
+ deserialize(array, littleEndian) {
80
+ return getUint32(array, 0, littleEndian);
81
+ },
82
+ serialize: setUint32,
83
+ };
84
+
85
+ export const Int32: NumberFieldVariant = {
86
+ signed: true,
87
+ size: 4,
88
+ deserialize(array, littleEndian) {
89
+ return getInt32(array, 0, littleEndian);
90
+ },
91
+ serialize: setInt32,
92
+ };
93
+ }
94
+
95
+ export class NumberFieldDefinition<
96
+ TVariant extends NumberFieldVariant = NumberFieldVariant,
97
+ TTypeScriptType = number,
98
+ > extends StructFieldDefinition<void, TTypeScriptType> {
99
+ readonly variant: TVariant;
100
+
101
+ constructor(variant: TVariant, typescriptType?: TTypeScriptType) {
102
+ void typescriptType;
103
+ super();
104
+ this.variant = variant;
105
+ }
106
+
107
+ getSize(): number {
108
+ return this.variant.size;
109
+ }
110
+
111
+ create(
112
+ options: Readonly<StructOptions>,
113
+ struct: StructValue,
114
+ value: TTypeScriptType,
115
+ ): NumberFieldValue<this> {
116
+ return new NumberFieldValue(this, options, struct, value);
117
+ }
118
+
119
+ override deserialize(
120
+ options: Readonly<StructOptions>,
121
+ stream: ExactReadable,
122
+ struct: StructValue,
123
+ ): NumberFieldValue<this>;
124
+ override deserialize(
125
+ options: Readonly<StructOptions>,
126
+ stream: AsyncExactReadable,
127
+ struct: StructValue,
128
+ ): Promise<NumberFieldValue<this>>;
129
+ override deserialize(
130
+ options: Readonly<StructOptions>,
131
+ stream: ExactReadable | AsyncExactReadable,
132
+ struct: StructValue,
133
+ ): ValueOrPromise<NumberFieldValue<this>> {
134
+ return SyncPromise.try(() => {
135
+ return stream.readExactly(this.getSize());
136
+ })
137
+ .then((array) => {
138
+ const value = this.variant.deserialize(
139
+ array,
140
+ options.littleEndian,
141
+ );
142
+ return this.create(options, struct, value as never);
143
+ })
144
+ .valueOrPromise();
145
+ }
146
+ }
147
+
148
+ export class NumberFieldValue<
149
+ TDefinition extends NumberFieldDefinition<NumberFieldVariant, unknown>,
150
+ > extends StructFieldValue<TDefinition> {
151
+ serialize(array: Uint8Array, offset: number): void {
152
+ this.definition.variant.serialize(
153
+ array,
154
+ offset,
155
+ this.value as never,
156
+ this.options.littleEndian,
157
+ );
158
+ }
159
+ }
package/src/utils.ts ADDED
@@ -0,0 +1,94 @@
1
+ /**
2
+ * When evaluating a very complex generic type alias,
3
+ * tell TypeScript to use `T`, instead of current type alias' name, as the result type name
4
+ *
5
+ * Example:
6
+ *
7
+ * ```ts
8
+ * type WithIdentity<T> = Identity<SomeType<T>>;
9
+ * type WithoutIdentity<T> = SomeType<T>;
10
+ *
11
+ * type WithIdentityResult = WithIdentity<number>;
12
+ * // Hover on this one shows `SomeType<number>`
13
+ *
14
+ * type WithoutIdentityResult = WithoutIdentity<number>;
15
+ * // Hover on this one shows `WithoutIdentity<number>`
16
+ * ```
17
+ */
18
+ export type Identity<T> = T;
19
+
20
+ /**
21
+ * Collapse an intersection type (`{ foo: string } & { bar: number }`) to a simple type (`{ foo: string, bar: number }`)
22
+ */
23
+ export type Evaluate<T> = T extends infer U ? { [K in keyof U]: U[K] } : never;
24
+
25
+ /**
26
+ * Overwrite fields in `TBase` with fields in `TNew`
27
+ */
28
+ export type Overwrite<TBase extends object, TNew extends object> = Evaluate<
29
+ Omit<TBase, keyof TNew> & TNew
30
+ >;
31
+
32
+ /**
33
+ * Remove fields with `never` type
34
+ */
35
+ export type OmitNever<T> = Pick<
36
+ T,
37
+ { [K in keyof T]: [T[K]] extends [never] ? never : K }[keyof T]
38
+ >;
39
+
40
+ /**
41
+ * Extract keys of fields in `T` that has type `TValue`
42
+ */
43
+ export type KeysOfType<T, TValue> = {
44
+ [TKey in keyof T]: T[TKey] extends TValue ? TKey : never;
45
+ }[keyof T];
46
+
47
+ export type ValueOrPromise<T> = T | PromiseLike<T>;
48
+
49
+ /**
50
+ * Returns a (fake) value of the given type.
51
+ */
52
+ export function placeholder<T>(): T {
53
+ return undefined as unknown as T;
54
+ }
55
+
56
+ // This library can't use `@types/node` or `lib: dom`
57
+ // because they will pollute the global scope
58
+ // So `TextEncoder` and `TextDecoder` types are not available
59
+
60
+ // Node.js 8.3 ships `TextEncoder` and `TextDecoder` in `util` module.
61
+ // But using top level await to load them requires Node.js 14.1.
62
+ // So there is no point to do that. Let's just assume they exist in global.
63
+
64
+ declare class TextEncoderType {
65
+ constructor();
66
+
67
+ encode(input: string): Uint8Array;
68
+ }
69
+
70
+ declare class TextDecoderType {
71
+ constructor();
72
+
73
+ decode(buffer: ArrayBufferView | ArrayBuffer): string;
74
+ }
75
+
76
+ interface GlobalExtension {
77
+ TextEncoder: typeof TextEncoderType;
78
+ TextDecoder: typeof TextDecoderType;
79
+ }
80
+
81
+ const { TextEncoder, TextDecoder } = globalThis as unknown as GlobalExtension;
82
+
83
+ const SharedEncoder = new TextEncoder();
84
+ const SharedDecoder = new TextDecoder();
85
+
86
+ export function encodeUtf8(input: string): Uint8Array {
87
+ return SharedEncoder.encode(input);
88
+ }
89
+
90
+ export function decodeUtf8(buffer: ArrayBufferView | ArrayBuffer): string {
91
+ // `TextDecoder` has internal states in stream mode,
92
+ // but this method is not for stream mode, so the instance can be reused
93
+ return SharedDecoder.decode(buffer);
94
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "./node_modules/@yume-chan/tsconfig/tsconfig.base.json"
3
+ }
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.string.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.object.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.esnext.regexp.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/.pnpm/typescript@5.5.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","./src/basic/options.ts","./src/basic/struct-value.ts","./src/basic/field-value.ts","./src/utils.ts","./src/basic/stream.ts","./src/basic/definition.ts","./src/basic/index.ts","./src/sync-promise.ts","../no-data-view/esm/int16.d.ts","../no-data-view/esm/int32.d.ts","../no-data-view/esm/int64.d.ts","../no-data-view/esm/int8.d.ts","../no-data-view/esm/uint16.d.ts","../no-data-view/esm/uint32.d.ts","../no-data-view/esm/uint64.d.ts","../no-data-view/esm/index.d.ts","./src/types/bigint.ts","./src/types/buffer/base.ts","./src/types/buffer/fixed-length.ts","./src/types/buffer/variable-length.ts","./src/types/buffer/index.ts","./src/types/number.ts","./src/types/index.ts","./src/struct.ts","./src/index.ts"],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"17edc026abf73c5c2dd508652d63f68ec4efd9d4856e3469890d27598209feb5","impliedFormat":1},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","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":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","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":"ae37d6ccd1560b0203ab88d46987393adaaa78c919e51acf32fb82c86502e98c","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3d7b04b45033f57351c8434f60b6be1ea71a2dfec2d0a0c3c83badbb0e3e693","affectsGlobalScope":true,"impliedFormat":1},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true,"impliedFormat":1},{"version":"d8670852241d4c6e03f2b89d67497a4bbefe29ecaa5a444e2c11a9b05e6fccc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"08a58483392df5fcc1db57d782e87734f77ae9eab42516028acbfe46f29a3ef7","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"0b11f3ca66aa33124202c80b70cd203219c3d4460cfc165e0707aa9ec710fc53","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a3f5a0129cc80cf439ab71164334d649b47059a4f5afca90282362407d0c87f","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"15b98a533864d324e5f57cd3cfc0579b231df58c1c0f6063ea0fcb13c3c74ff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"6827c0ba1bb152cd1a57c960babfdbfbd9bb8d6f2eff37c7b3567df511f707ac","signature":"7ceac7d7800ef7065908464aba0a009e9a03ff95f177a44f999687bdf10d039f","impliedFormat":99},{"version":"fee9d0d4eb4d3e241a618d674134d295fd2ace1fa9d68a52480049d5776ebc0e","signature":"6ed3421533e611f8542c17c128c32a26031cbedcd9b1e7c6c42c3a143982a99d","impliedFormat":99},{"version":"49b5e07213044df63bf1105e51dfc242af6e14c6a37fa9fbdd20c2543c40e376","signature":"bd9cdd3ad0e61ff8a31bcbc38997fa68ec3f5f816727e299328bb3c99ef1304a","impliedFormat":99},{"version":"8372f5ac671f89784c1c9e55d1887bc3e599c7d7a5f43218ad617534cc3408a1","signature":"a740a1e2d889fc4344fbb49a7f8b02ee664850be5cdcf029ace8ceb4316623db","impliedFormat":99},{"version":"55e2881a7092b83a2cee7d8f440924b81823b8a05e387037be4a42657b47e992","signature":"ffe3c0472cf0ad60edbf5037319135c645bd92e7acbf403d72101df3598258e0","impliedFormat":99},{"version":"3bfa4b72871e1eb54fa09848ca112da14866385e28a866793db4bce689074c6c","signature":"64ebe41006e87ea8b5e9b3acf048018b5226c4b08c6575526a76f6801143bf90","impliedFormat":99},{"version":"5af3b8b1a9063e033fc1e32a3e95956f5f5e22548d5ccca628b1ab87e42087d1","impliedFormat":99},{"version":"3401f72a9859484852143cb358ed548b00dcd8ad2fcc7dd123a59496cba568b5","signature":"1efeb47776a2e05521198493d35496d8034543ac1721d4881a5588f9c8346668","impliedFormat":99},{"version":"ae05f9cd1c16cfc37310497693db5ae2a35187579d5bf1abeb033fc0cef5d711","impliedFormat":99},{"version":"58afd688a095623679cbe3a816936ee0f1dc41e2024f19be5c067594f61fcd87","impliedFormat":99},{"version":"1c7a7a88866d0a65928620cbbdd9f0a5d4e13a7ea9e629e2f26a96cacded7949","impliedFormat":99},{"version":"8d2e1284733147f944b2454b8013aa961527290720988eef4401a763213c03fa","impliedFormat":99},{"version":"e5592d565d21c0dab2769bdffe96ecc3409ab2711e651d277289adaa3e97fa35","impliedFormat":99},{"version":"ec4108b0012c9c2bed8d9c81e09a7d2f039564f9b0245eb7ad1fbc32120c1d96","impliedFormat":99},{"version":"5e56bf79192b77d47153ce8c8f7a2bd13ebcf2733538451d18e5c1edc8bd0f7b","impliedFormat":99},{"version":"5aba1004e83ebe1769f09111717b1d3438232eb659f8751d22c438ff14a001c7","impliedFormat":99},{"version":"d87d51b15ea616550dee17a1be0685ccf5bcac7d5c08da14a826c2a93e7b1e61","signature":"3ac6ab1e74d8e16fc4ff4e0e6e6f04704f437a63a4604bc4179995d62f0bd764","impliedFormat":99},{"version":"06f6a441450bb334f6c81c5dd4827bd15878f1384fcb3f3b292f540e270caa18","signature":"01f77e142f3658666e7854140b20378d371762ea3272f19178c4e09c333d369f","impliedFormat":99},{"version":"490d5aa8490d823f4898a82319ce34d4626afc38b5cde6d7c38ac967e70ee88b","signature":"e826cfae98dca09c23ae2a696a46c5e4382e0e610aae292d0b5e2283f049e90e","impliedFormat":99},{"version":"3fb8d31f11872ee27e000ab67b694cc92539fc36f296c5bb9a7954d57a6df3f3","signature":"b83be4742f1a4ad499c55c23728723cf2d3f300daf0aa55159b1a0c578a80b36","impliedFormat":99},{"version":"5ea1325a998e722fffc89ff8c2d00eaf35e491f3fada16fb56c6360f63d16d79","impliedFormat":99},{"version":"b314e340825c6c5e347dfc1f150eee8ffd18d08b643377c3a4f72bef2e64811d","signature":"10562a4947e441650dab502f7d4185b19a4fff5de6d75968060027efcc461372","impliedFormat":99},{"version":"e24d67437856c921a9a40f7fbac38ac576439e6616eb698fb769279ecbc7802a","impliedFormat":99},{"version":"61b65097dd2436dc3490bc61c769816b8d7e9f7c201ea827c6f3eac5a8abba72","signature":"d4fc56eec997d208dc6ed364a5640ac789a655c090322c00e8bb934d4863ef6b","impliedFormat":99},{"version":"f30131aef73ce39b0d2f264fe2950f5dbc3d3dd31c7a90428ed12f0e61b2da2a","signature":"01056fd3092681e2f1c0cb0e1fec91ac081b5bb758551494fca1c1d27f06c2b4","affectsGlobalScope":true,"impliedFormat":99}],"root":[[72,79],[88,96]],"options":{"composite":true,"declaration":true,"declarationDir":"./esm","declarationMap":true,"esModuleInterop":true,"exactOptionalPropertyTypes":true,"module":199,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitOverride":true,"noImplicitReturns":true,"noImplicitThis":true,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./esm","rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strict":true,"stripInternal":true,"target":99,"verbatimModuleSyntax":true},"fileIdsList":[[80,81,82,83,84,85,86],[72,73,74,76],[72,73,77],[72,73,74,76,77],[75],[74,77],[75,78,79,94,95],[75,78,79,94],[75,78,79,87],[75,78,79],[89],[89,90,91],[75,78,89],[88,92,93]],"referencedMap":[[87,1],[77,2],[74,3],[78,4],[76,5],[73,6],[96,7],[95,8],[88,9],[89,10],[90,11],[92,12],[91,13],[94,14],[93,9]],"latestChangedDtsFile":"./esm/index.d.ts"},"version":"5.5.3"}