@spyglassmc/core 0.4.2 → 0.4.4

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.
@@ -1,11 +1,11 @@
1
- export declare const Dev: Readonly<{
2
- assertDefined<T>(value: T): asserts value is Exclude<T, undefined>;
3
- assertNever(value: never): never;
4
- assertTrue(value: boolean, message: string): void;
1
+ export declare namespace Dev {
2
+ function assertDefined<T>(value: T): asserts value is Exclude<T, undefined>;
3
+ function assertNever(value: never): never;
4
+ function assertTrue(value: boolean, message: string): void;
5
5
  /**
6
6
  * @returns An estimate of the memory taken by the given value, assuming objects are stored as array-like structures instead of dictionaries in the V8 engine.
7
7
  */
8
- estimateMemoryUsage(value: unknown): number;
9
- stringify(value: unknown): string;
10
- }>;
8
+ function estimateMemoryUsage(value: unknown): number;
9
+ function stringify(value: unknown): string;
10
+ }
11
11
  //# sourceMappingURL=Dev.d.ts.map
package/lib/common/Dev.js CHANGED
@@ -1,21 +1,25 @@
1
- export const Dev = Object.freeze({
2
- assertDefined(value) {
1
+ export var Dev;
2
+ (function (Dev) {
3
+ function assertDefined(value) {
3
4
  if (value === undefined) {
4
5
  throw new Error(`'${Dev.stringify(value)}' is 'undefined'`);
5
6
  }
6
- },
7
- assertNever(value) {
7
+ }
8
+ Dev.assertDefined = assertDefined;
9
+ function assertNever(value) {
8
10
  throw new Error(`'${Dev.stringify(value)}' is not of type 'never'`);
9
- },
10
- assertTrue(value, message) {
11
+ }
12
+ Dev.assertNever = assertNever;
13
+ function assertTrue(value, message) {
11
14
  if (!value) {
12
15
  throw new Error(`Assertion failed: ${message}. '${Dev.stringify(value)}' should be true.`);
13
16
  }
14
- },
17
+ }
18
+ Dev.assertTrue = assertTrue;
15
19
  /**
16
20
  * @returns An estimate of the memory taken by the given value, assuming objects are stored as array-like structures instead of dictionaries in the V8 engine.
17
21
  */
18
- estimateMemoryUsage(value) {
22
+ function estimateMemoryUsage(value) {
19
23
  const ByteToBits = 8;
20
24
  const PointerSize = 8;
21
25
  let ans = 0;
@@ -59,8 +63,9 @@ export const Dev = Object.freeze({
59
63
  }
60
64
  }
61
65
  return ans;
62
- },
63
- stringify(value) {
66
+ }
67
+ Dev.estimateMemoryUsage = estimateMemoryUsage;
68
+ function stringify(value) {
64
69
  if (value && typeof value === 'object') {
65
70
  try {
66
71
  const seen = new Set();
@@ -88,6 +93,7 @@ export const Dev = Object.freeze({
88
93
  else {
89
94
  return `${value}`;
90
95
  }
91
- },
92
- });
96
+ }
97
+ Dev.stringify = stringify;
98
+ })(Dev || (Dev = {}));
93
99
  //# sourceMappingURL=Dev.js.map
@@ -1,9 +1,12 @@
1
- type Wrap<T> = T extends object ? DeepReadonly<T> : T;
1
+ type DeepReadonlyValue<T> = T extends object ? DeepReadonly<T> : T;
2
2
  export type DeepReadonly<T extends object> = {
3
- readonly [K in keyof T]: Wrap<T[K]>;
3
+ readonly [K in keyof T]: DeepReadonlyValue<T[K]>;
4
4
  };
5
- export declare const ReadonlyProxy: Readonly<{
6
- create<T extends object>(obj: T): DeepReadonly<T>;
7
- }>;
5
+ export type ReadWrite<T extends object> = {
6
+ -readonly [K in keyof T]: T[K];
7
+ };
8
+ export declare namespace ReadonlyProxy {
9
+ function create<T extends object>(obj: T): DeepReadonly<T>;
10
+ }
8
11
  export {};
9
12
  //# sourceMappingURL=ReadonlyProxy.d.ts.map
@@ -1,9 +1,11 @@
1
1
  import { emplaceMap, isObject } from './util.js';
2
- export const ReadonlyProxy = Object.freeze({
3
- create(obj) {
2
+ export var ReadonlyProxy;
3
+ (function (ReadonlyProxy) {
4
+ function create(obj) {
4
5
  return new Proxy(obj, new ReadonlyProxyHandler());
5
- },
6
- });
6
+ }
7
+ ReadonlyProxy.create = create;
8
+ })(ReadonlyProxy || (ReadonlyProxy = {}));
7
9
  class ReadonlyProxyHandler {
8
10
  map = new Map();
9
11
  get(target, p, receiver) {
@@ -21,15 +21,15 @@ export type StateProxy<T extends object> = {
21
21
  [Redo]: () => void;
22
22
  [Undo]: () => void;
23
23
  };
24
- export declare const StateProxy: Readonly<{
25
- branchOff<T extends object>(proxy: StateProxy<T>): StateProxy<T>;
26
- create<T_1 extends object>(obj: T_1): T_1 extends StateProxy<any> ? void & {
24
+ export declare namespace StateProxy {
25
+ function branchOff<T extends object>(proxy: StateProxy<T>): StateProxy<T>;
26
+ function create<T extends object>(obj: T): T extends StateProxy<any> ? void & {
27
27
  _cannotCreateProxyFromProxy: never;
28
- } : StateProxy<T_1>;
29
- dereference<T_2 extends object>(value: T_2 | StateProxy<T_2>): T_2;
30
- is(obj: any): obj is StateProxy<object>;
31
- redoChanges(proxy: StateProxy<object>): void;
32
- undoChanges(proxy: StateProxy<object>): void;
33
- }>;
28
+ } : StateProxy<T>;
29
+ function dereference<T extends object>(value: StateProxy<T> | T): T;
30
+ function is(obj: any): obj is StateProxy<object>;
31
+ function redoChanges(proxy: StateProxy<object>): void;
32
+ function undoChanges(proxy: StateProxy<object>): void;
33
+ }
34
34
  export {};
35
35
  //# sourceMappingURL=StateProxy.d.ts.map
@@ -5,29 +5,36 @@ const Is = Symbol('IsStateProxy');
5
5
  const Origin = Symbol('OriginState');
6
6
  const Redo = Symbol('RedoStateChanges');
7
7
  const Undo = Symbol('UndoStateChanges');
8
- export const StateProxy = Object.freeze({
9
- branchOff(proxy) {
8
+ export var StateProxy;
9
+ (function (StateProxy) {
10
+ function branchOff(proxy) {
10
11
  return proxy[BranchOff]();
11
- },
12
- create(obj) {
12
+ }
13
+ StateProxy.branchOff = branchOff;
14
+ function create(obj) {
13
15
  if (StateProxy.is(obj)) {
14
16
  throw new TypeError('Cannot create a proxy over a proxy. You might want to use branchOff instead.');
15
17
  }
16
18
  return _createStateProxy(obj, new Operations());
17
- },
18
- dereference(value) {
19
+ }
20
+ StateProxy.create = create;
21
+ function dereference(value) {
19
22
  return StateProxy.is(value) ? value[Origin] : value;
20
- },
21
- is(obj) {
23
+ }
24
+ StateProxy.dereference = dereference;
25
+ function is(obj) {
22
26
  return obj?.[Is];
23
- },
24
- redoChanges(proxy) {
27
+ }
28
+ StateProxy.is = is;
29
+ function redoChanges(proxy) {
25
30
  proxy[Redo]();
26
- },
27
- undoChanges(proxy) {
31
+ }
32
+ StateProxy.redoChanges = redoChanges;
33
+ function undoChanges(proxy) {
28
34
  proxy[Undo]();
29
- },
30
- });
35
+ }
36
+ StateProxy.undoChanges = undoChanges;
37
+ })(StateProxy || (StateProxy = {}));
31
38
  class StateProxyHandler {
32
39
  rootOps;
33
40
  map = new Map();
@@ -114,8 +114,13 @@ Object.freeze(NodeJsExternals);
114
114
  * @returns A {@link fs.PathLike}.
115
115
  */
116
116
  function toFsPathLike(path) {
117
+ if (path instanceof Uri) {
118
+ // Convert WHATWG URL to string so that it will be converted
119
+ // to Node.js URL by the next if-block.
120
+ path = path.toString();
121
+ }
117
122
  if (typeof path === 'string' && path.startsWith('file:')) {
118
- return new Uri(path);
123
+ return new url.URL(path);
119
124
  }
120
125
  return path;
121
126
  }
@@ -125,7 +130,7 @@ function toPath(path) {
125
130
  }
126
131
  return uriToPath(path);
127
132
  }
128
- const uriToPath = (uri) => url.fileURLToPath(uri);
133
+ const uriToPath = (uri) => url.fileURLToPath(uri instanceof Uri ? new url.URL(uri.toString()) : uri);
129
134
  const uriFromPath = (path) => url.pathToFileURL(path).toString();
130
135
  class ChokidarWatcherWrapper extends EventEmitter {
131
136
  #watcher;
@@ -1,8 +1,8 @@
1
1
  type RemoteUriProtocol = 'http:' | 'https:';
2
2
  export type RemoteUriString = `${RemoteUriProtocol}${string}`;
3
- export declare const RemoteUriString: Readonly<{
4
- is(value: string): value is `http:${string}` | `https:${string}`;
5
- }>;
3
+ export declare namespace RemoteUriString {
4
+ function is(value: string): value is RemoteUriString;
5
+ }
6
6
  export interface ExternalDownloaderOptions {
7
7
  /**
8
8
  * Use an string array to set multiple values to the header.
@@ -16,9 +16,9 @@ export interface ExternalDownloader {
16
16
  */
17
17
  get(uri: RemoteUriString, options?: ExternalDownloaderOptions): Promise<Uint8Array>;
18
18
  }
19
- export declare const ExternalDownloader: Readonly<{
20
- mock(options: ExternalDownloaderMockOptions): ExternalDownloader;
21
- }>;
19
+ export declare namespace ExternalDownloader {
20
+ function mock(options: ExternalDownloaderMockOptions): ExternalDownloader;
21
+ }
22
22
  interface ExternalDownloaderMockOptions {
23
23
  /**
24
24
  * A record from URIs to fixture data. The {@link ExternalDownloader.get} only returns a {@link Uint8Array},
@@ -1,13 +1,17 @@
1
- export const RemoteUriString = Object.freeze({
2
- is(value) {
1
+ export var RemoteUriString;
2
+ (function (RemoteUriString) {
3
+ function is(value) {
3
4
  return value.startsWith('http:') || value.startsWith('https:');
4
- },
5
- });
6
- export const ExternalDownloader = Object.freeze({
7
- mock(options) {
5
+ }
6
+ RemoteUriString.is = is;
7
+ })(RemoteUriString || (RemoteUriString = {}));
8
+ export var ExternalDownloader;
9
+ (function (ExternalDownloader) {
10
+ function mock(options) {
8
11
  return new ExternalDownloaderMock(options);
9
- },
10
- });
12
+ }
13
+ ExternalDownloader.mock = mock;
14
+ })(ExternalDownloader || (ExternalDownloader = {}));
11
15
  class ExternalDownloaderMock {
12
16
  options;
13
17
  constructor(options) {
@@ -74,7 +74,7 @@ export interface ExternalFileSystem {
74
74
  }): Promise<void>;
75
75
  }
76
76
  /**
77
- * A file file URI string or a URI object.
77
+ * A file URI string or a URI object.
78
78
  */
79
79
  export type FsLocation = string | Uri;
80
80
  export interface FsWatcher {
@@ -1,14 +1,10 @@
1
1
  import externalBinarySearch from 'binary-search';
2
+ import { URL } from 'whatwg-url';
2
3
  import type { AstNode } from '../node/index.js';
3
4
  import type { ProcessorContext } from '../service/index.js';
4
5
  import type { Externals } from './externals/index.js';
5
- import type { DeepReadonly } from './ReadonlyProxy.js';
6
- export declare const Uri: {
7
- new (url: string | URL, base?: string | URL | undefined): URL;
8
- prototype: URL;
9
- createObjectURL(obj: Blob | MediaSource): string;
10
- revokeObjectURL(url: string): void;
11
- };
6
+ import type { DeepReadonly, ReadWrite } from './ReadonlyProxy.js';
7
+ export declare const Uri: typeof URL;
12
8
  export type Uri = URL;
13
9
  /**
14
10
  * `NodeJS.Timeout` on Node.js and `number` on browser.
@@ -116,17 +112,23 @@ export declare function emplaceMap<K, V>(map: Map<K, V>, key: K, handler: {
116
112
  export declare function isObject(val: unknown): val is object;
117
113
  export declare function normalizeUri(uri: string): string;
118
114
  /**
115
+ * Return a read-write TARGET type if the INPUT type is read-write, and a
116
+ * readonly TARGET type if the INPUT type is readonly, and `never` if the INPUT
117
+ * type is `undefined`.
118
+ *
119
+ * It is used in the return type of an AST node
120
+ * [user-defined type guard](https://www.typescriptlang.org/docs/handbook/2/narrowing.html#using-type-predicates).
121
+ *
119
122
  * @example
120
123
  * ```ts
121
- * function isCommentNode<T extends DeepReadonly<AstNode> | undefined>(node: T): node is IsHelper<AstNode, CommentNode, T>
122
- * ```
123
- */
124
- export type IsHelper<ROOT extends object, TARGET extends ROOT, INPUT extends DeepReadonly<ROOT> | undefined> = INPUT extends DeepReadonly<ROOT> ? INPUT & DeepReadonly<TARGET> : INPUT & TARGET;
125
- /**
126
- * @example
127
- * ```ts
128
- * function isCommentNode<T extends DeepReadonly<AstNode> | undefined>(node: T): node is NodeIsHelper<CommentNode, T>
124
+ * export namespace CommentNode {
125
+ * export function is<T extends DeepReadonly<AstNode> | undefined>(
126
+ * obj: T,
127
+ * ): obj is InheritReadonly<CommentNode, T> {
128
+ * return (obj as CommentNode | undefined)?.type === 'comment'
129
+ * }
130
+ * }
129
131
  * ```
130
132
  */
131
- export type NodeIsHelper<TARGET extends AstNode, INPUT extends DeepReadonly<AstNode> | undefined> = IsHelper<AstNode, TARGET, INPUT>;
133
+ export type InheritReadonly<TARGET extends AstNode, INPUT extends DeepReadonly<AstNode> | undefined> = INPUT & (INPUT extends ReadWrite<AstNode> ? TARGET : DeepReadonly<TARGET>);
132
134
  //# sourceMappingURL=util.d.ts.map
@@ -1,5 +1,16 @@
1
1
  import externalBinarySearch from 'binary-search';
2
2
  import rfdc from 'rfdc';
3
+ import { URL } from 'whatwg-url';
4
+ // Spyglass uses the URL class provided by the
5
+ // [spec](https://url.spec.whatwg.org/)-compliant `whatwg-url` package instead
6
+ // of the broken one shipped with browsers that do not parse non-special scheme
7
+ // URLs with hosts properly.
8
+ //
9
+ // * [Chromium bug](https://issues.chromium.org/issues/40587286)
10
+ // * [FireFox bug](https://bugzilla.mozilla.org/show_bug.cgi?id=1374505)
11
+ //
12
+ // We use the name "URI" instead of "URL" when possible, since it is what
13
+ // LSP has chosen to use for the string that uniquely identifies a file.
3
14
  export const Uri = URL;
4
15
  /**
5
16
  * @param getKey A function that takes the actual arguments being passed into the decorated method, and returns anything.
@@ -1,4 +1,4 @@
1
- import type { DeepReadonly, NodeIsHelper } from '../common/index.js';
1
+ import type { DeepReadonly, InheritReadonly } from '../common/index.js';
2
2
  import type { AstNode } from './AstNode.js';
3
3
  export interface CommentNode extends AstNode {
4
4
  readonly type: 'comment';
@@ -7,7 +7,7 @@ export interface CommentNode extends AstNode {
7
7
  */
8
8
  comment: string;
9
9
  }
10
- export declare const CommentNode: Readonly<{
11
- is<T extends DeepReadonly<AstNode> | undefined>(obj: T): obj is NodeIsHelper<CommentNode, T>;
12
- }>;
10
+ export declare namespace CommentNode {
11
+ function is<T extends DeepReadonly<AstNode> | undefined>(obj: T): obj is InheritReadonly<CommentNode, T>;
12
+ }
13
13
  //# sourceMappingURL=CommentNode.d.ts.map
@@ -1,6 +1,8 @@
1
- export const CommentNode = Object.freeze({
2
- is(obj) {
1
+ export var CommentNode;
2
+ (function (CommentNode) {
3
+ function is(obj) {
3
4
  return obj?.type === 'comment';
4
- },
5
- });
5
+ }
6
+ CommentNode.is = is;
7
+ })(CommentNode || (CommentNode = {}));
6
8
  //# sourceMappingURL=CommentNode.js.map
@@ -96,7 +96,7 @@ export function resourceLocation(options) {
96
96
  ctx.err.report(localize('parser.resource-location.illegal', arrayToMessage(illegalChars, true, 'and')), ans);
97
97
  }
98
98
  if (ans.isTag && !options.allowTag) {
99
- ctx.err.report(localize('parser.resource-location.tag-diallowed'), ans);
99
+ ctx.err.report(localize('parser.resource-location.tag-disallowed'), ans);
100
100
  }
101
101
  if (!ans.namespace && options.isPredicate) {
102
102
  ctx.err.report(localize('parser.resource-location.namespace-expected'), ans);
@@ -149,5 +149,9 @@ export declare function stopBefore<N extends Returnable>(parser: Parser<N>, ...t
149
149
  export declare function acceptOnly<N extends Returnable>(parser: InfallibleParser<N>, ...characters: (string | readonly string[])[]): InfallibleParser<N>;
150
150
  export declare function acceptOnly<N extends Returnable>(parser: Parser<N>, ...characters: (string | readonly string[])[]): Parser<N>;
151
151
  export declare function acceptIf<P extends Parser<AstNode>>(parser: P, predicate: (this: void, char: string) => boolean): P extends InfallibleParser<infer N> ? InfallibleParser<N> : P extends Parser<infer N> ? Parser<N> : never;
152
+ /**
153
+ * @returns A parser that dumps any parser errors after it finishes parsing.
154
+ */
155
+ export declare function dumpErrors<P extends Parser<AstNode>>(parser: P): P;
152
156
  export {};
153
157
  //# sourceMappingURL=util.d.ts.map
@@ -243,4 +243,14 @@ export function acceptIf(parser, predicate) {
243
243
  return ans;
244
244
  });
245
245
  }
246
+ /**
247
+ * @returns A parser that dumps any parser errors after it finishes parsing.
248
+ */
249
+ export function dumpErrors(parser) {
250
+ return ((src, ctx) => {
251
+ const ans = parser(src, ctx);
252
+ ctx.err.dump();
253
+ return ans;
254
+ });
255
+ }
246
256
  //# sourceMappingURL=util.js.map
@@ -2,8 +2,10 @@ import type { DeepReadonly } from '../common/index.js';
2
2
  import type { AstNode } from '../node/index.js';
3
3
  import type { ProcessorContext } from '../service/index.js';
4
4
  export interface InlayHint {
5
+ label: string;
5
6
  offset: number;
6
- text: string;
7
+ paddingLeft?: boolean;
8
+ paddingRight?: boolean;
7
9
  }
8
10
  export type InlayHintProvider<N extends AstNode = AstNode> = (node: DeepReadonly<N>, ctx: ProcessorContext) => readonly InlayHint[];
9
11
  //# sourceMappingURL=InlayHintProvider.d.ts.map
@@ -8,19 +8,19 @@ export interface SyncBinderInitializer<N extends AstNode> {
8
8
  export interface SyncBinder<N extends AstNode> extends SyncBinderInitializer<N> {
9
9
  [IsAsync]?: never;
10
10
  }
11
- export declare const SyncBinder: Readonly<{
12
- create<N extends AstNode>(binder: SyncBinderInitializer<N>): SyncBinder<N>;
13
- is(binder: Binder<any>): binder is SyncBinder<any>;
14
- }>;
11
+ export declare namespace SyncBinder {
12
+ function create<N extends AstNode>(binder: SyncBinderInitializer<N>): SyncBinder<N>;
13
+ function is(binder: Binder<any>): binder is SyncBinder<any>;
14
+ }
15
15
  interface AsyncBinderInitializer<N extends AstNode> {
16
16
  (node: N, ctx: BinderContext): Promise<void>;
17
17
  }
18
18
  export interface AsyncBinder<N extends AstNode> extends AsyncBinderInitializer<N> {
19
19
  [IsAsync]: true;
20
20
  }
21
- export declare const AsyncBinder: Readonly<{
22
- create<N extends AstNode>(binder: AsyncBinderInitializer<N>): AsyncBinder<N>;
23
- is(binder: Binder<any>): binder is AsyncBinder<any>;
24
- }>;
21
+ export declare namespace AsyncBinder {
22
+ function create<N extends AstNode>(binder: AsyncBinderInitializer<N>): AsyncBinder<N>;
23
+ function is(binder: Binder<any>): binder is AsyncBinder<any>;
24
+ }
25
25
  export {};
26
26
  //# sourceMappingURL=Binder.d.ts.map
@@ -1,18 +1,24 @@
1
1
  const IsAsync = Symbol('IsAsyncBinder');
2
- export const SyncBinder = Object.freeze({
3
- create(binder) {
2
+ export var SyncBinder;
3
+ (function (SyncBinder) {
4
+ function create(binder) {
4
5
  return binder;
5
- },
6
- is(binder) {
6
+ }
7
+ SyncBinder.create = create;
8
+ function is(binder) {
7
9
  return !binder[IsAsync];
8
- },
9
- });
10
- export const AsyncBinder = Object.freeze({
11
- create(binder) {
10
+ }
11
+ SyncBinder.is = is;
12
+ })(SyncBinder || (SyncBinder = {}));
13
+ export var AsyncBinder;
14
+ (function (AsyncBinder) {
15
+ function create(binder) {
12
16
  return Object.assign(binder, { [IsAsync]: true });
13
- },
14
- is(binder) {
17
+ }
18
+ AsyncBinder.create = create;
19
+ function is(binder) {
15
20
  return binder[IsAsync];
16
- },
17
- });
21
+ }
22
+ AsyncBinder.is = is;
23
+ })(AsyncBinder || (AsyncBinder = {}));
18
24
  //# sourceMappingURL=Binder.js.map
@@ -117,7 +117,10 @@ export var SymbolLinterConfig;
117
117
  export const VanillaConfig = {
118
118
  env: {
119
119
  dataSource: 'GitHub',
120
- dependencies: ['@vanilla-mcdoc'],
120
+ dependencies: [
121
+ '@vanilla-datapack',
122
+ '@vanilla-mcdoc',
123
+ ],
121
124
  feature: {
122
125
  codeActions: true,
123
126
  colors: true,
@@ -128,7 +131,16 @@ export const VanillaConfig = {
128
131
  formatting: true,
129
132
  hover: true,
130
133
  inlayHint: {
131
- enabledNodes: ['mcfunction:command_child/unknown'],
134
+ enabledNodes: [
135
+ 'boolean',
136
+ 'double',
137
+ 'float',
138
+ 'integer',
139
+ 'long',
140
+ 'mcfunction:coordinate',
141
+ 'mcfunction:vector',
142
+ 'mcfunction:command_child/unknown',
143
+ ],
132
144
  },
133
145
  semanticColoring: true,
134
146
  selectionRanges: true,
@@ -208,7 +220,7 @@ export const VanillaConfig = {
208
220
  summonAec: 'summon minecraft:area_effect_cloud ~ ~ ~ {Age: -2147483648, Duration: -1, WaitTime: -2147483648, Tags: ["${1:tag}"]}',
209
221
  },
210
222
  };
211
- class ConfigService {
223
+ export class ConfigService {
212
224
  project;
213
225
  defaultConfig;
214
226
  static ConfigFileNames = Object.freeze([
@@ -272,5 +284,4 @@ class ConfigService {
272
284
  return ans;
273
285
  }
274
286
  }
275
- export { ConfigService };
276
287
  //# sourceMappingURL=Config.js.map
@@ -100,7 +100,7 @@ export declare class ArchiveUriSupporter implements UriProtocolSupporter {
100
100
  private static readonly SupportedArchiveExtnames;
101
101
  readonly protocol = "archive:";
102
102
  /**
103
- * @param entries A map from archive URIs to unzipped entries.
103
+ * @param entries A map from archive names to unzipped entries.
104
104
  */
105
105
  private constructor();
106
106
  hash(uri: string): Promise<string>;
@@ -116,7 +116,7 @@ export declare class ArchiveUriSupporter implements UriProtocolSupporter {
116
116
  * @throws When `uri` has the wrong protocol or hostname.
117
117
  */
118
118
  private static decodeUri;
119
- static create(dependencies: readonly Dependency[], externals: Externals, logger: Logger, checksums: Record<RootUriString, string>): Promise<ArchiveUriSupporter>;
119
+ static create(dependencies: readonly Dependency[], externals: Externals, logger: Logger): Promise<ArchiveUriSupporter>;
120
120
  }
121
121
  export {};
122
122
  //# sourceMappingURL=FileService.d.ts.map