import * as plugins from './plugins.js';
export interface IDomainConfig {
    domain: string;
    allowedIPs: string[];
    targetIP?: string;
}
export interface IProxySettings extends plugins.tls.TlsOptions {
    fromPort: number;
    toPort: number;
    toHost?: string;
    domains: IDomainConfig[];
    sniEnabled?: boolean;
    defaultAllowedIPs?: string[];
    preserveSourceIP?: boolean;
}
export declare class PortProxy {
    netServer: plugins.net.Server;
    settings: IProxySettings;
    private connectionRecords;
    private connectionLogger;
    private terminationStats;
    constructor(settings: IProxySettings);
    private incrementTerminationStat;
    start(): Promise<void>;
    stop(): Promise<void>;
}
