igir
Version:
🕹 A zero-setup ROM collection manager that sorts, filters, extracts or archives, patches, and reports on collections of any size on any OS.
28 lines (27 loc) • 1.13 kB
TypeScript
import ProgressBar from '../console/progressBar.js';
import DAT from '../types/dats/dat.js';
import File from '../types/files/file.js';
import Module from './module.js';
/**
* After all output {@link File}s have been written, delete any input {@link File}s that were
* "moved." This needs to happen after all writing has finished in order to guarantee we're done
* reading input {@link File}s from disk.
*/
export default class MovedROMDeleter extends Module {
constructor(progressBar: ProgressBar);
/**
* Delete input files that were moved.
*/
delete(inputRoms: File[], movedRoms: File[], datsToWrittenFiles: Map<DAT, File[]>): Promise<string[]>;
/**
* Archives that do not have all of their file entries matched should not be deleted during
* moving.
*/
private filterOutPartiallyConsumedArchives;
private static groupFilesByFilePath;
/**
* When an input directory is also used as the output directory, and a file is matched multiple
* times, do not delete the input file if it is in a correct location.
*/
private static filterOutWrittenFiles;
}