import { LintResult, LintOptions } from "./types"; export interface PipelineStep { name: string; execute: (context: PipelineContext) => Promise; enabled: boolean; } export interface PipelineContext { options: LintOptions; files: Map; queries: any[]; result: LintResult; metadata: Map; } export interface PipelineConfig { steps: PipelineStep[]; options: LintOptions; outputFormats: string[]; exitOnError: boolean; exitOnUnused?: boolean; failThreshold?: number; parallel: boolean; } export declare class Pipeline { private config; private reporter; constructor(config: PipelineConfig); execute(): Promise; static createFileScanStep(): PipelineStep; static createQueryExtractionStep(): PipelineStep; static createUsageAnalysisStep(): PipelineStep; static createReportingStep(outputFormats: string[]): PipelineStep; static createValidationStep(): PipelineStep; } //# sourceMappingURL=pipeline.d.ts.map