rawi
Version:
Rawi (راوي) is the developer-friendly AI CLI that brings the power of 11 major AI providers directly to your terminal. With seamless shell integration, persistent conversations, and 200+ specialized prompt templates, Rawi transforms your command line into
33 lines (30 loc) • 1.66 kB
text/typescript
import { FileReaderOptions, SupportedFileType, FileReaderResult, BatchProcessingOptions, BatchProcessingSummary, GlobOptions } from '../interfaces/types.cjs';
import { AbstractFileReader } from '../readers/base.reader.cjs';
interface FileReaderManagerOptions extends FileReaderOptions {
forceFileType?: SupportedFileType;
enableFallback?: boolean;
}
declare class FileReaderManager {
#private;
constructor(options?: FileReaderManagerOptions);
readFile(filePath: string): Promise<FileReaderResult>;
readFiles(filePaths: string[]): Promise<FileReaderResult[]>;
readFilesParallel(filePaths: string[]): Promise<FileReaderResult[]>;
canReadFile(filePath: string): Promise<boolean>;
getFileInfo(filePath: string): Promise<{
filePath: string;
fileType: SupportedFileType;
description: string;
supported: boolean;
readerAvailable: boolean;
}>;
getSupportedFileTypes(): SupportedFileType[];
registerReader(fileType: SupportedFileType, reader: AbstractFileReader): void;
updateOptions(newOptions: Partial<FileReaderManagerOptions>): void;
processMultipleFiles(filePaths: string[], options?: BatchProcessingOptions): Promise<BatchProcessingSummary>;
processGlobPatterns(patterns: string[], options?: BatchProcessingOptions & GlobOptions): Promise<BatchProcessingSummary>;
expandGlob(patterns: string[], options?: GlobOptions): Promise<string[]>;
filterSupportedFiles(filePaths: string[]): Promise<string[]>;
}
declare const defaultFileReaderManager: FileReaderManager;
export { FileReaderManager, type FileReaderManagerOptions, defaultFileReaderManager };