/** * E2E Test Runner - Adapter Registry * * Manages adapter lifecycle and provides unified access */ import type { AdapterContext, AdapterType, EnvironmentConfig, Logger, UnifiedTestDefinition } from '../types'; import { BaseAdapter } from './base.adapter'; import { HTTPAdapter } from './http.adapter'; import { PostgreSQLAdapter } from './postgresql.adapter'; import { RedisAdapter } from './redis.adapter'; import { MongoDBAdapter } from './mongodb.adapter'; import { EventHubAdapter } from './eventhub.adapter'; import { ShellAdapter } from './shell.adapter'; import { KafkaAdapter } from './kafka.adapter'; export interface AdapterRegistryOptions { /** Only initialize these adapters (if not provided, all configured adapters are initialized) */ requiredAdapters?: Set; } export declare class AdapterRegistry { private adapters; private logger; private config; private requiredAdapters?; constructor(config: EnvironmentConfig, logger: Logger, options?: AdapterRegistryOptions); /** * Check if an adapter is required (or if no filter, all configured adapters are required) */ private isRequired; /** * Initialize adapters that are both configured AND required */ private initializeAdapters; /** * Connect all adapters */ connectAll(): Promise; /** * Disconnect all adapters */ disconnectAll(): Promise; /** * Get an adapter by type */ get(type: AdapterType): BaseAdapter; /** * Get HTTP adapter */ getHTTP(): HTTPAdapter; /** * Get PostgreSQL adapter */ getPostgreSQL(): PostgreSQLAdapter; /** * Get Redis adapter */ getRedis(): RedisAdapter; /** * Get MongoDB adapter */ getMongoDB(): MongoDBAdapter; /** * Get EventHub adapter */ getEventHub(): EventHubAdapter; /** * Get Shell adapter */ getShell(): ShellAdapter; /** * Get Kafka adapter */ getKafka(): KafkaAdapter; /** * Check if an adapter is available */ has(type: AdapterType): boolean; /** * Get all available adapter types */ getAvailableAdapters(): AdapterType[]; /** * Health check all adapters */ healthCheckAll(): Promise>; /** * Health check a specific adapter */ healthCheck(type: AdapterType): Promise; /** * Create an adapter context for test execution */ createContext(variables: Record, captured: Record, baseUrl: string): AdapterContext; } /** * Create an adapter registry from environment config */ export declare function createAdapterRegistry(config: EnvironmentConfig, logger: Logger, options?: AdapterRegistryOptions): AdapterRegistry; /** * Analyze test definitions and extract the set of required adapters */ export declare function getRequiredAdapters(tests: UnifiedTestDefinition[]): Set; /** * Get adapter type from string */ export declare function parseAdapterType(type: string): AdapterType; //# sourceMappingURL=adapter-registry.d.ts.map