import type { SocketConstructorOpts, SocketConnectOpts } from 'node:net';
import { AbstractPhysicalLayer } from './abstract-physical-layer';
export declare class TcpClientPhysicalLayer extends AbstractPhysicalLayer {
    TYPE: 'SERIAL' | 'NET';
    private _socket;
    private _isOpen;
    private _destroyed;
    get isOpen(): boolean;
    get destroyed(): boolean;
    constructor(options?: SocketConstructorOpts);
    open(options?: SocketConnectOpts): Promise<void>;
    write(data: Buffer): Promise<void>;
    close(): Promise<void>;
    destroy(): Promise<void>;
}
