This commit is contained in:
Tutur33
2023-11-24 22:35:41 +01:00
parent 3c0b507a93
commit 7644b2a0f7
45165 changed files with 4803356 additions and 3 deletions
+22
View File
@@ -0,0 +1,22 @@
/// <reference types="node" />
import * as fs from 'fs';
import { FilterFunction } from '@mrmlnc/readdir-enhanced';
import { IOptions } from '../managers/options';
import { Entry } from '../types/entries';
import { Pattern } from '../types/patterns';
export default abstract class FileSystem<T> {
private readonly options;
constructor(options: IOptions);
/**
* The main logic of reading the entries that must be implemented by each adapter.
*/
abstract read(filepaths: string[], filter: FilterFunction): T;
/**
* Return full path to entry.
*/
getFullEntryPath(filepath: string): string;
/**
* Return an implementation of the Entry interface.
*/
makeEntry(stat: fs.Stats, pattern: Pattern): Entry;
}