import { EventEmitter } from 'node:events';
import { ISyslogClientOptions } from './clientOptions.js';
import { IIdentity } from './identity.js';
import { ITCPOptions } from './tcp.js';
export declare class SyslogClient extends EventEmitter {
    private options;
    private identity;
    private tcpOptions;
    private socket;
    private isReconnecting;
    private isConnected;
    constructor(options: ISyslogClientOptions, defaultIdentity?: Partial<IIdentity>, tcpOptions?: Partial<ITCPOptions>);
    connect(): Promise<void>;
    private connectTCP;
    private connectUDP;
    log(message: string, overrideIdentity?: Partial<IIdentity>): Promise<void>;
    private _prepareMessage;
    private _send;
    disconnect(): void;
}
