hardhat 2.12.2 → 2.13.0-dev.1

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 (86) hide show
  1. package/internal/artifacts/caching.d.ts +27 -0
  2. package/internal/artifacts/caching.d.ts.map +1 -0
  3. package/internal/artifacts/caching.js +167 -0
  4. package/internal/artifacts/caching.js.map +1 -0
  5. package/internal/artifacts/index.d.ts +44 -0
  6. package/internal/artifacts/index.d.ts.map +1 -0
  7. package/internal/artifacts/index.js +187 -0
  8. package/internal/artifacts/index.js.map +1 -0
  9. package/internal/artifacts/mutable.d.ts +29 -0
  10. package/internal/artifacts/mutable.d.ts.map +1 -0
  11. package/internal/artifacts/mutable.js +226 -0
  12. package/internal/artifacts/mutable.js.map +1 -0
  13. package/internal/artifacts/readonly.d.ts +88 -0
  14. package/internal/artifacts/readonly.d.ts.map +1 -0
  15. package/internal/artifacts/readonly.js +324 -0
  16. package/internal/artifacts/readonly.js.map +1 -0
  17. package/internal/cli/cli.js +5 -2
  18. package/internal/cli/cli.js.map +1 -1
  19. package/internal/core/config/config-env.d.ts +7 -1
  20. package/internal/core/config/config-env.d.ts.map +1 -1
  21. package/internal/core/config/config-env.js +13 -2
  22. package/internal/core/config/config-env.js.map +1 -1
  23. package/internal/core/config/extenders.d.ts +7 -4
  24. package/internal/core/config/extenders.d.ts.map +1 -1
  25. package/internal/core/config/extenders.js +12 -5
  26. package/internal/core/config/extenders.js.map +1 -1
  27. package/internal/core/errors-list.d.ts +7 -0
  28. package/internal/core/errors-list.d.ts.map +1 -1
  29. package/internal/core/errors-list.js +9 -0
  30. package/internal/core/errors-list.js.map +1 -1
  31. package/internal/core/runtime-environment.d.ts +2 -2
  32. package/internal/core/runtime-environment.d.ts.map +1 -1
  33. package/internal/core/runtime-environment.js +2 -2
  34. package/internal/core/runtime-environment.js.map +1 -1
  35. package/internal/hardhat-network/provider/utils/bloom.d.ts +28 -0
  36. package/internal/hardhat-network/provider/utils/bloom.d.ts.map +1 -0
  37. package/internal/hardhat-network/provider/utils/bloom.js +73 -0
  38. package/internal/hardhat-network/provider/utils/bloom.js.map +1 -0
  39. package/internal/hardhat-network/provider/utils/convertToRethnet.d.ts +29 -0
  40. package/internal/hardhat-network/provider/utils/convertToRethnet.d.ts.map +1 -0
  41. package/internal/hardhat-network/provider/utils/convertToRethnet.js +214 -0
  42. package/internal/hardhat-network/provider/utils/convertToRethnet.js.map +1 -0
  43. package/internal/hardhat-network/provider/vm/block-builder.d.ts +30 -0
  44. package/internal/hardhat-network/provider/vm/block-builder.d.ts.map +1 -0
  45. package/internal/hardhat-network/provider/vm/block-builder.js +147 -0
  46. package/internal/hardhat-network/provider/vm/block-builder.js.map +1 -0
  47. package/internal/hardhat-network/provider/vm/dual.d.ts +43 -0
  48. package/internal/hardhat-network/provider/vm/dual.d.ts.map +1 -0
  49. package/internal/hardhat-network/provider/vm/dual.js +120 -0
  50. package/internal/hardhat-network/provider/vm/dual.js.map +1 -0
  51. package/internal/hardhat-network/provider/vm/ethereumjs.d.ts +55 -0
  52. package/internal/hardhat-network/provider/vm/ethereumjs.d.ts.map +1 -0
  53. package/internal/hardhat-network/provider/vm/ethereumjs.js +272 -0
  54. package/internal/hardhat-network/provider/vm/ethereumjs.js.map +1 -0
  55. package/internal/hardhat-network/provider/vm/rethnet.d.ts +111 -0
  56. package/internal/hardhat-network/provider/vm/rethnet.d.ts.map +1 -0
  57. package/internal/hardhat-network/provider/vm/rethnet.js +171 -0
  58. package/internal/hardhat-network/provider/vm/rethnet.js.map +1 -0
  59. package/internal/hardhat-network/provider/vm/vm-adapter.d.ts +36 -0
  60. package/internal/hardhat-network/provider/vm/vm-adapter.d.ts.map +1 -0
  61. package/internal/hardhat-network/provider/vm/vm-adapter.js +3 -0
  62. package/internal/hardhat-network/provider/vm/vm-adapter.js.map +1 -0
  63. package/internal/lib/hardhat-lib.d.ts.map +1 -1
  64. package/internal/lib/hardhat-lib.js +4 -1
  65. package/internal/lib/hardhat-lib.js.map +1 -1
  66. package/package.json +1 -1
  67. package/register.js +4 -1
  68. package/register.js.map +1 -1
  69. package/src/internal/artifacts/caching.ts +239 -0
  70. package/src/internal/artifacts/index.ts +296 -0
  71. package/src/internal/artifacts/mutable.ts +330 -0
  72. package/src/internal/artifacts/readonly.ts +438 -0
  73. package/src/internal/cli/cli.ts +6 -1
  74. package/src/internal/core/config/config-env.ts +13 -1
  75. package/src/internal/core/config/extenders.ts +15 -6
  76. package/src/internal/core/errors-list.ts +9 -0
  77. package/src/internal/core/runtime-environment.ts +3 -1
  78. package/src/internal/lib/hardhat-lib.ts +6 -1
  79. package/src/register.ts +6 -1
  80. package/src/types/artifacts.ts +104 -3
  81. package/src/types/runtime.ts +7 -1
  82. package/types/artifacts.d.ts +90 -3
  83. package/types/artifacts.d.ts.map +1 -1
  84. package/types/runtime.d.ts +6 -1
  85. package/types/runtime.d.ts.map +1 -1
  86. package/src/internal/artifacts.ts +0 -918
@@ -92,7 +92,9 @@ export interface Artifacts {
92
92
  ): Promise<string>;
93
93
 
94
94
  /**
95
- * Returns the absolute path to the given artifact.
95
+ * Returns the absolute path to the given artifact, as if it were saved
96
+ * locally, and not by a plugin (i.e. this method does not support
97
+ * ArtifactsExtension artifacts).
96
98
  *
97
99
  * @param fullyQualifiedName The FQN of the artifact.
98
100
  */
@@ -106,7 +108,7 @@ export interface Artifacts {
106
108
  *
107
109
  * This method, if present, clears that cache.
108
110
  */
109
- clearCache?: () => void;
111
+ clearCache?(): void;
110
112
 
111
113
  /**
112
114
  * This method, if present, disables the artifact paths cache.
@@ -117,7 +119,106 @@ export interface Artifacts {
117
119
  *
118
120
  * @see clearCache
119
121
  */
120
- disableCache?: () => void;
122
+ disableCache?(): void;
123
+ }
124
+
125
+ /**
126
+ * Classes implementing this interface can be used as extra sources of
127
+ * artifacts.
128
+ *
129
+ * Not every method needs to be fully implemented; some of them can have a
130
+ * minimal valid implementation, as explained on their jsdocs.
131
+ */
132
+ export interface ArtifactsSource {
133
+ /**
134
+ * Reads an Artifact, returning `undefined` if not found.
135
+ * @see Artifacts#readArtifact
136
+ */
137
+ readArtifact(
138
+ contractNameOrFullyQualifiedName: string
139
+ ): Promise<Artifact | undefined>;
140
+
141
+ /**
142
+ * Reads an Artifact, returning `undefined` if not found.
143
+ * @see Artifacts#readArtifactSync
144
+ */
145
+ readArtifactSync(
146
+ contractNameOrFullyQualifiedName: string
147
+ ): Artifact | undefined;
148
+
149
+ /**
150
+ * @see Artifacts#artifactExists
151
+ */
152
+ artifactExists(contractNameOrFullyQualifiedName: string): Promise<boolean>;
153
+
154
+ /**
155
+ * Returns an array with the fully qualified names of all the artifacts.
156
+ *
157
+ * Always returning an empty array is a valid implementation.
158
+ *
159
+ * @see Artifacts#getAllFullyQualifiedNames
160
+ */
161
+ getAllFullyQualifiedNames(): Promise<string[]>;
162
+
163
+ /**
164
+ * Returns the BuildInfo associated with an artifact. Return `undefined` if
165
+ * there's none.
166
+ *
167
+ * Always returning `undefined` is a valid implementation if you don't handle
168
+ * BuildInfos.
169
+ *
170
+ * @see Artifacts#getBuildInfo
171
+ */
172
+ getBuildInfo(fullyQualifiedName: string): Promise<BuildInfo | undefined>;
173
+
174
+ /**
175
+ * Returns the paths of all the artifacts that the plugin can read.
176
+ *
177
+ * Always returning an empty array is a valid implementation.
178
+ *
179
+ * @see Artifacts#getArtifactPaths
180
+ */
181
+ getArtifactPaths(): Promise<string[]>;
182
+
183
+ /**
184
+ * Returns the paths of all the debug files associated with the artifacts that
185
+ * the plugin can read.
186
+ *
187
+ * Always returning an empty array is a valid implementation if you don't
188
+ * handle debug files.
189
+ *
190
+ * @see Artifacts#getDebugFilePaths
191
+ */
192
+ getDebugFilePaths(): Promise<string[]>;
193
+
194
+ /**
195
+ * Returns the paths of all the BuildInfos associated with the artifacts that
196
+ * the plugin can read.
197
+ *
198
+ * Always returning an empty array is a valid implementation if you don't
199
+ * handle BuildInfos.
200
+ *
201
+ * @see Artifacts#getBuildInfoPaths
202
+ */
203
+ getBuildInfoPaths(): Promise<string[]>;
204
+
205
+ /**
206
+ * Clears the internal cache, if any.
207
+ *
208
+ * An empty function is a valid implementation if you don't cache results.
209
+ *
210
+ * @see Artifacts#clearCache
211
+ */
212
+ clearCache: () => void;
213
+
214
+ /**
215
+ * Disables the internal cache, if any.
216
+ *
217
+ * An empty function is a valid implementation if you don't cache results.
218
+ *
219
+ * @see Artifacts#disableCache
220
+ */
221
+ disableCache: () => void;
121
222
  }
122
223
 
123
224
  /**
@@ -1,4 +1,4 @@
1
- import { Artifacts } from "./artifacts";
1
+ import { Artifacts, ArtifactsSource } from "./artifacts";
2
2
  import { HardhatConfig, HardhatUserConfig, NetworkConfig } from "./config";
3
3
  import { EthereumProvider } from "./provider";
4
4
 
@@ -207,3 +207,9 @@ export interface Network {
207
207
  * modify its properties or add new ones.
208
208
  */
209
209
  export type EnvironmentExtender = (env: HardhatRuntimeEnvironment) => void;
210
+
211
+ /**
212
+ * A function that receives the resolved Hardhat configuration and
213
+ * returns an extra source of artifacts.
214
+ */
215
+ export type ArtifactsExtender = (config: HardhatConfig) => ArtifactsSource;
@@ -74,7 +74,9 @@ export interface Artifacts {
74
74
  */
75
75
  saveBuildInfo(solcVersion: string, solcLongVersion: string, input: CompilerInput, output: CompilerOutput): Promise<string>;
76
76
  /**
77
- * Returns the absolute path to the given artifact.
77
+ * Returns the absolute path to the given artifact, as if it were saved
78
+ * locally, and not by a plugin (i.e. this method does not support
79
+ * ArtifactsExtension artifacts).
78
80
  *
79
81
  * @param fullyQualifiedName The FQN of the artifact.
80
82
  */
@@ -87,7 +89,7 @@ export interface Artifacts {
87
89
  *
88
90
  * This method, if present, clears that cache.
89
91
  */
90
- clearCache?: () => void;
92
+ clearCache?(): void;
91
93
  /**
92
94
  * This method, if present, disables the artifact paths cache.
93
95
  *
@@ -97,7 +99,92 @@ export interface Artifacts {
97
99
  *
98
100
  * @see clearCache
99
101
  */
100
- disableCache?: () => void;
102
+ disableCache?(): void;
103
+ }
104
+ /**
105
+ * Classes implementing this interface can be used as extra sources of
106
+ * artifacts.
107
+ *
108
+ * Not every method needs to be fully implemented; some of them can have a
109
+ * minimal valid implementation, as explained on their jsdocs.
110
+ */
111
+ export interface ArtifactsSource {
112
+ /**
113
+ * Reads an Artifact, returning `undefined` if not found.
114
+ * @see Artifacts#readArtifact
115
+ */
116
+ readArtifact(contractNameOrFullyQualifiedName: string): Promise<Artifact | undefined>;
117
+ /**
118
+ * Reads an Artifact, returning `undefined` if not found.
119
+ * @see Artifacts#readArtifactSync
120
+ */
121
+ readArtifactSync(contractNameOrFullyQualifiedName: string): Artifact | undefined;
122
+ /**
123
+ * @see Artifacts#artifactExists
124
+ */
125
+ artifactExists(contractNameOrFullyQualifiedName: string): Promise<boolean>;
126
+ /**
127
+ * Returns an array with the fully qualified names of all the artifacts.
128
+ *
129
+ * Always returning an empty array is a valid implementation.
130
+ *
131
+ * @see Artifacts#getAllFullyQualifiedNames
132
+ */
133
+ getAllFullyQualifiedNames(): Promise<string[]>;
134
+ /**
135
+ * Returns the BuildInfo associated with an artifact. Return `undefined` if
136
+ * there's none.
137
+ *
138
+ * Always returning `undefined` is a valid implementation if you don't handle
139
+ * BuildInfos.
140
+ *
141
+ * @see Artifacts#getBuildInfo
142
+ */
143
+ getBuildInfo(fullyQualifiedName: string): Promise<BuildInfo | undefined>;
144
+ /**
145
+ * Returns the paths of all the artifacts that the plugin can read.
146
+ *
147
+ * Always returning an empty array is a valid implementation.
148
+ *
149
+ * @see Artifacts#getArtifactPaths
150
+ */
151
+ getArtifactPaths(): Promise<string[]>;
152
+ /**
153
+ * Returns the paths of all the debug files associated with the artifacts that
154
+ * the plugin can read.
155
+ *
156
+ * Always returning an empty array is a valid implementation if you don't
157
+ * handle debug files.
158
+ *
159
+ * @see Artifacts#getDebugFilePaths
160
+ */
161
+ getDebugFilePaths(): Promise<string[]>;
162
+ /**
163
+ * Returns the paths of all the BuildInfos associated with the artifacts that
164
+ * the plugin can read.
165
+ *
166
+ * Always returning an empty array is a valid implementation if you don't
167
+ * handle BuildInfos.
168
+ *
169
+ * @see Artifacts#getBuildInfoPaths
170
+ */
171
+ getBuildInfoPaths(): Promise<string[]>;
172
+ /**
173
+ * Clears the internal cache, if any.
174
+ *
175
+ * An empty function is a valid implementation if you don't cache results.
176
+ *
177
+ * @see Artifacts#clearCache
178
+ */
179
+ clearCache: () => void;
180
+ /**
181
+ * Disables the internal cache, if any.
182
+ *
183
+ * An empty function is a valid implementation if you don't cache results.
184
+ *
185
+ * @see Artifacts#disableCache
186
+ */
187
+ disableCache: () => void;
101
188
  }
102
189
  /**
103
190
  * An artifact representing the compilation output of a contract.
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../src/types/artifacts.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB;;;;;;;;;;OAUG;IACH,YAAY,CAAC,gCAAgC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE1E;;OAEG;IACH,gBAAgB,CAAC,gCAAgC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAErE;;;;;;;OAOG;IACH,cAAc,CAAC,gCAAgC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3E;;OAEG;IACH,yBAAyB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE/C;;;;;;OAMG;IACH,YAAY,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAEzE;;;;OAIG;IACH,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEtC;;;;OAIG;IACH,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEvC;;;;;OAKG;IACH,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEvC;;;;;;;OAOG;IACH,wBAAwB,CACtB,QAAQ,EAAE,QAAQ,EAClB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;OAOG;IACH,aAAa,CACX,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB;;;;OAIG;IACH,sCAAsC,CAAC,kBAAkB,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3E;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IAExB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,GAAG,EAAE,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,cAAc,CAAC;IAC/B,sBAAsB,EAAE,cAAc,CAAC;CACxC;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,CAAC,eAAe,EAAE,MAAM,GAAG;QACzB,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACjE,CAAC;CACH;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE;QAAE,CAAC,UAAU,EAAE,MAAM,GAAG;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACvD,QAAQ,EAAE;QACR,SAAS,EAAE;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QAChD,QAAQ,CAAC,EAAE;YAAE,iBAAiB,EAAE,OAAO,CAAA;SAAE,CAAC;QAC1C,eAAe,EAAE;YACf,CAAC,UAAU,EAAE,MAAM,GAAG;gBACpB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;aAClC,CAAC;SACH,CAAC;QACF,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE;YACV,CAAC,eAAe,EAAE,MAAM,GAAG;gBACzB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;aAC/B,CAAC;SACH,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,GAAG,CAAC;IACT,GAAG,EAAE;QACH,QAAQ,EAAE,sBAAsB,CAAC;QACjC,gBAAgB,EAAE,sBAAsB,CAAC;QACzC,iBAAiB,EAAE;YACjB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC;SACnC,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,SAAS,EAAE;QACT,CAAC,UAAU,EAAE,MAAM,GAAG;YACpB,CAAC,YAAY,EAAE,MAAM,GAAG,sBAAsB,CAAC;SAChD,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,GAAG,CAAC;CACV;AAED,MAAM,WAAW,qBAAqB;IACpC,CAAC,UAAU,EAAE,MAAM,GAAG,oBAAoB,CAAC;CAC5C;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE;QACd,CAAC,UAAU,EAAE,MAAM,GAAG;YACpB,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,EAAE,CAAA;aAAE,CAAC,CAAC;SAC7D,CAAC;KACH,CAAC;IACF,mBAAmB,CAAC,EAAE;QACpB,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACzD,CAAC;CACH"}
1
+ {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../src/types/artifacts.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Artifacts } from "./artifacts";
1
+ import { Artifacts, ArtifactsSource } from "./artifacts";
2
2
  import { HardhatConfig, HardhatUserConfig, NetworkConfig } from "./config";
3
3
  import { EthereumProvider } from "./provider";
4
4
  /**
@@ -132,4 +132,9 @@ export interface Network {
132
132
  * modify its properties or add new ones.
133
133
  */
134
134
  export declare type EnvironmentExtender = (env: HardhatRuntimeEnvironment) => void;
135
+ /**
136
+ * A function that receives the resolved Hardhat configuration and
137
+ * returns an extra source of artifacts.
138
+ */
139
+ export declare type ArtifactsExtender = (config: HardhatConfig) => ArtifactsSource;
135
140
  //# sourceMappingURL=runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/types/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/types/runtime.ts"],"names":[],"mappings":"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"}