rawi
Version:
Rawi (راوي) is the developer-friendly AI CLI that brings the power of 12 major AI providers directly to your terminal. With seamless shell integration, persistent conversations, and 200+ specialized prompt templates, Rawi transforms your command line into
23 lines (20 loc) • 706 B
text/typescript
import { RawiConfig, RawiCredentials } from '../../shared/types.cjs';
interface IConfigPersistence {
readConfig(): RawiConfig;
writeConfig(config: RawiConfig): void;
ensureConfigDir(): void;
configExists(): boolean;
backupConfig(): void;
restoreConfig(): void;
}
interface IConfigValidator {
validateCredentials(credentials: RawiCredentials): ValidationResult;
validateApiKey(apiKey: string, provider: string): ValidationResult;
validateSettings(credentials: RawiCredentials): ValidationResult;
}
interface ValidationResult {
isValid: boolean;
errors: string[];
warnings: string[];
}
export type { IConfigPersistence, IConfigValidator, ValidationResult };