import { FileTree } from '@principal-ai/repository-abstraction'; import { FileSystemAdapter } from '../providers'; import { FileSystemFilterLayer } from '../types'; interface FilterStats { totalFiltered: number; filteredByLayer: Record; examples: Array<{ path: string; filteredBy: string; }>; filteredByDirectory: Record; }>; } export declare class FilesystemService { private adapter?; private filterStats; constructor(adapter?: FileSystemAdapter | undefined); /** * Build file tree using the provided adapter with efficient filtering */ buildFileSystemTreeFromPath(directoryPath: string, filters?: FileSystemFilterLayer[], options?: { enableInverseFiltering?: boolean; } | object): Promise; }>; /** * Create optimized ignore instances from filter layers */ private createIgnoreInstances; /** * Fast filtering using node-ignore during fdir crawl */ private shouldIncludeFile; /** * Convert array of paths to FileTree structure */ private convertPathsToTree; /** * Find files that would match specific filters - for power user investigation */ private findInverseMatches; /** * Get the filter statistics from the last build */ getFilterStats(): FilterStats; /** * Create an empty tree structure - matches original FilesystemService API */ private getEmptyTree; } export {}; //# sourceMappingURL=FilesystemService.d.ts.map