@velcro/strategy-fs
Version:
Velcro resolver strategy backed by an fs-compatible object
42 lines • 1.41 kB
TypeScript
import { Uri } from "@velcro/common";
import { AbstractResolverStrategyWithRoot, ResolverContext, ResolverStrategy } from "@velcro/resolver";
declare const version = "__VERSION__";
declare namespace FsStrategy {
type Dirent = {
isFile(): boolean;
isDirectory(): boolean;
name: string;
};
interface FsInterface {
promises: {
readdir(path: string, options: {
encoding: "utf-8";
withFileTypes: true;
}): Promise<Dirent[]>;
readFile(path: string): Promise<ArrayBuffer>;
realpath(path: string): Promise<string>;
};
}
interface Options {
fs: FsInterface;
rootUri?: Uri;
}
}
declare class FsStrategy extends AbstractResolverStrategyWithRoot {
private readonly fs;
constructor(options: FsStrategy.Options);
private ensureUriUnderRoot;
getCanonicalUrl(_ctx: ResolverContext, uri: Uri): Promise<ResolverStrategy.CanonicalizeResult>;
getRootUrl(): {
uri: Uri;
};
getResolveRoot(_ctx: ResolverContext, uri: Uri): Promise<never> | {
uri: Uri;
};
listEntries(_ctx: ResolverContext, uri: Uri): Promise<ResolverStrategy.ListEntriesResult>;
readFileContent(_ctx: ResolverContext, uri: Uri): Promise<{
content: ArrayBuffer;
}>;
}
export { version, FsStrategy };
//# sourceMappingURL=index.d.ts.map