import { MultiUserConfig } from './multi-user-config.js';
/**
 * Extended configuration for TCP MCP Server
 */
export interface TCPMCPConfig extends MultiUserConfig {
    tcp: {
        port: number;
        host: string;
        maxConnections: number;
        connectionTimeout: number;
        keepAliveTimeout: number;
        heartbeatInterval: number;
    };
    authentication: {
        required: boolean;
        sessionTimeout: number;
        maxAuthAttempts: number;
        authTimeoutWindow: number;
    };
    security: {
        allowedIPs: string[];
        rateLimiting: {
            enabled: boolean;
            maxRequestsPerMinute: number;
            maxRequestsPerHour: number;
        };
    };
    logging: {
        level: 'debug' | 'info' | 'warn' | 'error';
        logConnections: boolean;
        logToolCalls: boolean;
        logAuthentication: boolean;
    };
}
/**
 * Configuration manager for TCP MCP Server
 */
export declare class TCPMCPConfigManager {
    private static readonly CONFIG_FILE;
    /**
     * Get default TCP MCP configuration
     */
    static getDefaultConfig(): TCPMCPConfig;
    /**
     * Load configuration from file or environment
     */
    static loadConfig(): TCPMCPConfig;
    /**
     * Save configuration to file
     */
    static saveConfig(config: TCPMCPConfig): void;
    /**
     * Validate configuration
     */
    static validateConfig(config: TCPMCPConfig): boolean;
    /**
     * Create sample configuration file
     */
    static createSampleConfig(): void;
}
//# sourceMappingURL=tcp-config.d.ts.map