// Pipeline API types

export interface PipelineJobResult {
  success: boolean;
  jobId?: string;
  message?: string;
  error?: string;
  data?: unknown;
}

export interface PipelineStatsResult {
  success: boolean;
  data?: unknown;
  error?: string;
}

export interface ExchangeStats {
  totalExchanges: number;
  activeExchanges: number;
  totalProviderMappings: number;
  activeProviderMappings: number;
  verifiedProviderMappings: number;
  providers: string[];
}

export interface ProviderMappingStats {
  totalMappings: number;
  activeMappings: number;
  verifiedMappings: number;
  autoMappedCount: number;
  mappingsByProvider: Record<string, number>;
  coveragePercentage: number;
}

export type DataClearType = 'exchanges' | 'provider_mappings' | 'all';

export interface PipelineOperation {
  id: string;
  name: string;
  description: string;
  endpoint: string;
  method: 'GET' | 'POST';
  category: 'sync' | 'stats' | 'maintenance';
  dangerous?: boolean;
  params?: Record<string, unknown>;
}
