convex
Version:
Client for the Convex Cloud
69 lines • 2.19 kB
TypeScript
/// <reference types="node" />
import { Dirent, Mode, Stats } from "fs";
export interface Filesystem {
listDir(dirPath: string): Dirent[];
exists(path: string): boolean;
stat(path: string): Stats;
readUtf8File(path: string): string;
access(path: string): void;
writeUtf8File(path: string, contents: string, mode?: Mode): void;
mkdir(path: string, options?: {
allowExisting?: boolean;
}): void;
rm(path: string, options?: {
force?: boolean;
recursive?: boolean;
}): void;
unlink(path: string): void;
registerPath(path: string, st: Stats | null): void;
invalidate(): void;
}
export declare const nodeFs: Filesystem;
export declare class RecordingFs implements Filesystem {
private observedDirectories;
private observedFiles;
private invalidated;
private traceEvents;
constructor(traceEvents: boolean);
listDir(dirPath: string): Dirent[];
exists(path: string): boolean;
stat(path: string): Stats;
readUtf8File(path: string): string;
access(path: string): void;
writeUtf8File(filePath: string, contents: string, mode?: Mode): void;
mkdir(dirPath: string, options?: {
allowExisting?: boolean;
}): void;
rm(entityPath: string, options?: {
force?: boolean;
recursive?: boolean;
}): void;
unlink(filePath: string): void;
registerPath(p: string, st: Stats | null): void;
invalidate(): void;
private registerNormalized;
finalize(): Observations | "invalidated";
}
export declare type WatchEvent = {
name: "add" | "addDir" | "change" | "unlink" | "unlinkDir";
absPath: string;
};
export declare class Observations {
directories: Map<string, Set<string>>;
files: Map<string, Stats | null>;
constructor(directories: Map<string, Set<string>>, files: Map<string, Stats | null>);
paths(): string[];
overlaps({ absPath, }: WatchEvent): {
overlaps: false;
} | {
overlaps: true;
reason: string;
};
}
export declare function stMatches(a: Stats | null, b: Stats | null): {
matches: true;
} | {
matches: false;
reason: string;
};
//# sourceMappingURL=fs.d.ts.map