import type { ExtractionResult, ExtractionWarning } from '../types'; /** * Generic base class for all extractors (TypeScript and non-TypeScript) */ export declare abstract class BaseExtractor { protected config: unknown; constructor(config?: unknown); /** * Main extraction method - must be implemented by subclasses */ abstract extract(input: TInput): Promise>; /** * Validate input before extraction - can be overridden */ protected validateInput(input: TInput): boolean; /** * Handle extraction errors - can be overridden for custom error handling */ protected handleError(error: unknown, context?: unknown): ExtractionResult; /** * Create a successful extraction result */ protected createSuccessResult(data: TOutput, warnings?: ExtractionWarning[], sourceFile?: string, duration?: number): ExtractionResult; /** * Add warning to extraction result */ protected addWarning(type: string, message: string, suggestion?: string): ExtractionWarning; /** * Clear any caches (useful for watch mode) */ clearCache(): void; } //# sourceMappingURL=BaseExtractor.d.ts.map