import { EventEmitter } from "node:events";
import type { ISocketLike } from "../source";
export declare class HalfComChannel extends EventEmitter implements ISocketLike {
    private _hasEnded;
    destroyed: boolean;
    private _ended;
    private _timeoutId;
    private timeout;
    constructor();
    remoteAddress?: string | undefined;
    remotePort?: number | undefined;
    write(data: string | Buffer): void;
    onReceiveEnd(_err?: Error): void;
    onReceiveData(data: Buffer): void;
    private _disconnectOtherParty;
    end(): void;
    destroy(err?: Error): void;
    setKeepAlive(_enable?: boolean, _initialDelay?: number): this;
    setNoDelay(_noDelay?: boolean): this;
    setTimeout(timeout: number, _callback?: () => void): this;
    private _triggerTimeoutTimer;
}
