/** * QA360 Pack v1 to v2 Migrator * * Migrates Pack v1 configurations to Pack v2 format. */ import { PackConfigV1 } from '../types/pack-v1.js'; import { PackMigrationResultV2 } from '../types/pack-v2.js'; /** * Migrate Pack v1 to v2 */ export declare class PackMigrator { /** * Migrate a v1 pack to v2 format */ migrate(v1Pack: PackConfigV1): PackMigrationResultV2; /** * Migrate gates from v1 to v2 */ private migrateGates; /** * Migrate authentication from v1 to v2 */ private migrateAuth; /** * Migrate hooks from v1 to v2 */ private migrateHooks; /** * Migrate execution config from v1 to v2 */ private migrateExecution; /** * Migrate budgets to individual gates */ private migrateBudgetsToGates; /** * Migrate security config to individual gates */ private migrateSecurityToGates; /** * Migrate targets to gate configs */ private migrateTargetsToGates; /** * Transform relative page paths to full URLs */ private transformPagesToFullUrls; /** * Find a secret in environment variables by trying common names */ private findSecretInEnv; /** * Sanitize gate name for v2 format * Handles both strings and objects (from YAML parsing edge cases) */ private sanitizeGateName; /** * Detect pack version * Handles both integer versions (1, 2) and semver strings (1.0.0, 2.0.0) */ detectVersion(pack: any): 1 | 2 | 'unknown'; /** * Check if pack is in legacy format (v0.9.x or earlier) */ isLegacyFormat(pack: any): boolean; }