UNPKG

qraft

Version:

A powerful CLI tool to qraft structured project setups from GitHub template repositories

57 lines 1.78 kB
export interface FileInfo { path: string; relativePath: string; name: string; extension: string; size: number; isDirectory: boolean; isFile: boolean; lastModified: Date; content?: string | undefined; } export interface DirectoryStructure { files: FileInfo[]; directories: FileInfo[]; totalFiles: number; totalDirectories: number; totalSize: number; depth: number; rootPath: string; } export interface ScanOptions { includeContent?: boolean; maxContentSize?: number; maxDepth?: number; followSymlinks?: boolean; excludePatterns?: string[]; includeHidden?: boolean; } export interface ExclusionPatterns { directories: string[]; files: string[]; extensions: string[]; patterns: string[]; } export declare class DirectoryScanner { private readonly defaultExcludePatterns; private readonly defaultOptions; scanDirectory(directoryPath: string, options?: ScanOptions): Promise<DirectoryStructure>; private validateDirectory; private scanRecursive; private flattenExclusionPatterns; private shouldExclude; private isExcludedByPatterns; private matchesPattern; private shouldIncludeContent; getDirectorySummary(structure: DirectoryStructure): string; getFileTypeDistribution(structure: DirectoryStructure): Record<string, number>; getExclusionPatterns(category?: keyof ExclusionPatterns): string[]; wouldBeExcluded(filePath: string, options?: Partial<ScanOptions>): boolean; getExclusionStats(directoryPath: string): Promise<{ totalItems: number; excludedItems: number; includedItems: number; exclusionReasons: Record<string, number>; }>; } //# sourceMappingURL=directoryScanner.d.ts.map