/** * Agentic QE v3 - API Compatibility Service * Implements IApiCompatibilityService for detecting breaking changes */ import { Result } from '../../../shared/types/index.js'; import type { MemoryBackend } from '../../../kernel/interfaces.js'; import type { IApiCompatibilityService, ApiContract, BreakingChange, CompatibilityReport, MigrationGuide } from '../interfaces.js'; /** * Configuration for the API compatibility service */ export interface ApiCompatibilityConfig { strictEnumValidation: boolean; allowOptionalToRequired: boolean; trackDeprecations: boolean; maxMigrationSteps: number; } /** * API Compatibility Service Implementation * Detects breaking changes between API contract versions */ export declare class ApiCompatibilityService implements IApiCompatibilityService { private readonly memory; private readonly config; constructor(memory: MemoryBackend, config?: Partial); /** * Compare two contract versions */ compareVersions(oldContract: ApiContract, newContract: ApiContract): Promise>; /** * Check if new version is backward compatible */ isBackwardCompatible(oldContract: ApiContract, newContract: ApiContract): Promise>; /** * Get breaking changes between versions */ getBreakingChanges(oldContract: ApiContract, newContract: ApiContract): Promise>; /** * Generate migration guide */ generateMigrationGuide(breakingChanges: BreakingChange[]): Promise>; private compareEndpoints; private compareEndpointDetails; private compareSchemas; private compareSchemaContent; private detectDeprecations; private detectSchemaDeprecations; private scanObjectForDeprecations; private buildEndpointMap; private createMigrationStep; private estimateEffort; private storeComparisonResult; } //# sourceMappingURL=api-compatibility.d.ts.map