UNPKG

@timothy-spaceman/multitrack-vcs

Version:

Version Control System for musicians

94 lines (93 loc) 3.34 kB
import { IFile, IStorageProvider } from "../types.js"; export declare class VirtualFile implements IFile { path: string; name: string; extension: string; fullPath: string; data: Buffer; constructor(fullPath: string, data: Buffer); readData(): Promise<Buffer>; writeData(data: Buffer): Promise<void>; getDataHash(algo?: string): Promise<string>; } export type VirtualDirectoryMockCallbackArgs = [ "has", boolean, string ] | [ "get", VirtualMockedEntry | undefined, string ] | [ "set", VirtualMockedEntry, string, VirtualMockedEntry ] | [ "delete", boolean, string ] | [ "clear", void ] | [ "keys", IterableIterator<string> ] | [ "values", IterableIterator<VirtualMockedEntry> ] | [ "entries", IterableIterator<[string, VirtualMockedEntry]> ] | [ "forEach", void, (value: VirtualMockedEntry, path: string, map: VirtualMockedDirectory) => void, any ]; export declare class VirtualDirectoryMock { callback: (...args: VirtualDirectoryMockCallbackArgs) => any; content: VirtualDirectory; constructor(callback: (...args: VirtualDirectoryMockCallbackArgs) => any); initializeProxies(): void; get size(): number; has: (path: string) => boolean; get: (path: string) => VirtualMockedEntry | undefined; set: (path: string, value: VirtualMockedEntry) => this; delete: (path: string) => boolean; clear: () => void; keys: () => IterableIterator<string>; values: () => IterableIterator<VirtualMockedEntry>; entries: () => IterableIterator<[string, VirtualMockedEntry]>; forEach: (callback: (value: VirtualMockedEntry, path: string, map: VirtualDirectoryMock) => void, thisArg?: any) => void; } export declare class VirtualDirectoryOverrideMock extends VirtualDirectoryMock { initializeProxies(): void; } export type VirtualEntry = VirtualFile | VirtualDirectory; export type VirtualMockedEntry = VirtualEntry | VirtualDirectoryMock; export type VirtualMockedDirectory = VirtualDirectory | VirtualDirectoryMock; export type VirtualDirectory = Map<string, VirtualMockedEntry>; export declare class VirtualStorageProvider implements IStorageProvider { static separator: string; files: VirtualMockedDirectory; constructor(); normalizePath(targetPath: string): string; relativePath(targetPath: string, basePath?: string): string; splitPath(path: string): [string, string]; mkDir(path: string): VirtualMockedDirectory; rm(path: string): void; getEntry(path: string): VirtualMockedEntry | undefined; exists(path: string): Promise<boolean>; isFile(path: string): Promise<boolean>; readFile(filePath: string): Promise<VirtualFile>; createFile(filePath: string, content: Buffer): Promise<VirtualFile>; moveFile(sourcePath: string, targetPath: string): Promise<VirtualFile>; copyFile(sourcePath: string, targetPath: string): Promise<VirtualFile>; isDir(path: string): Promise<boolean>; readDir(dirPath: string, ignore?: string[]): Promise<string[]>; readDirDeep(dirPath: string, ignore?: string[]): Promise<string[]>; createDir(dirPath: string): Promise<string>; mockDir(dirPath: string, mock: VirtualMockedDirectory): Promise<string>; deleteFileOrDir(path: string): Promise<void>; }