filesops
Version:
Advanced file operations library with search, type detection, size calculation, and permission utilities
64 lines • 2 kB
TypeScript
import { SizeInfo } from './types';
/**
* File and directory size calculation utilities
*/
export declare class SizeCalculator {
private static readonly UNITS;
/**
* Convert bytes to human-readable format
*/
static formatBytes(bytes: number, decimals?: number): string;
/**
* Get detailed size information for a given byte count
*/
static getSizeInfo(bytes: number): SizeInfo;
/**
* Get file size
*/
static getFileSize(filePath: string): Promise<SizeInfo>;
/**
* Calculate directory size recursively
*/
static getDirectorySize(dirPath: string, includeHidden?: boolean): Promise<SizeInfo>;
private static calculateDirectorySizeRecursive;
/**
* Get size statistics for a directory (file count, total size, largest files)
*/
static getDirectoryStats(dirPath: string, includeHidden?: boolean): Promise<{
totalSize: SizeInfo;
fileCount: number;
directoryCount: number;
largestFiles: Array<{
path: string;
size: SizeInfo;
}>;
averageFileSize: SizeInfo;
}>;
private static gatherDirectoryStats;
/**
* Compare sizes of multiple files or directories
*/
static compareItems(paths: string[]): Promise<Array<{
path: string;
size: SizeInfo;
isDirectory: boolean;
}>>;
/**
* Find the largest files in a directory
*/
static findLargestFiles(dirPath: string, limit?: number, includeHidden?: boolean): Promise<Array<{
path: string;
size: SizeInfo;
}>>;
private static collectFiles;
/**
* Calculate size of files matching a pattern
*/
static getSizeByPattern(dirPath: string, pattern: RegExp, includeHidden?: boolean): Promise<SizeInfo>;
private static collectSizeByPattern;
/**
* Parse human-readable size string to bytes
*/
static parseSize(sizeString: string): number;
}
//# sourceMappingURL=size.d.ts.map