/**
 * Central dependency container for the application
 * Manages all dependencies and their wiring for production use
 */
import { ContainerConfig } from './types.js';
import { IFileSystem, IProcessManager, INetworkManager, ILogger, IProxyManagerFactory, IEnvironment } from '../interfaces/external-dependencies.js';
import { IProcessLauncher, IDebugTargetLauncher, IProxyProcessLauncher } from '../interfaces/process-interfaces.js';
import { ISessionStoreFactory } from '../factories/session-store-factory.js';
import { IAdapterRegistry } from '../adapters/adapter-registry-interface.js';
/**
 * Complete set of application dependencies
 */
export interface Dependencies {
    fileSystem: IFileSystem;
    processManager: IProcessManager;
    networkManager: INetworkManager;
    logger: ILogger;
    environment: IEnvironment;
    processLauncher: IProcessLauncher;
    proxyProcessLauncher: IProxyProcessLauncher;
    debugTargetLauncher: IDebugTargetLauncher;
    proxyManagerFactory: IProxyManagerFactory;
    sessionStoreFactory: ISessionStoreFactory;
    adapterRegistry: IAdapterRegistry;
}
/**
 * Creates production dependencies with real implementations
 * @param config - Configuration for services like logging
 * @returns Complete dependency container for production use
 */
export declare function createProductionDependencies(config?: ContainerConfig): Dependencies;
