/// <reference types="node" />
import * as TCP from 'net';
import { BaseServer } from '../base';
import { BufferWriter } from '../buffer/index';
/**
 * 获取套接字远程端口信息
 * @param socket 套接字
 */
export declare function getSocketRemoteAddress(socket: TCP.Socket): string;
/**
 * 将数据写入Socket
 * @param socket 套接字
 * @param writeFunc 写数据的方法
 */
export declare function writeDataToSocket(socket: TCP.Socket, writeFunc: (bufferWriter: BufferWriter) => void): void;
/**
 * 名称:Socket 服务
 * @description 提供Socket透明传输的服务
 * @author pao
 */
export declare class SocketServer extends BaseServer {
    name?: string;
    port?: number;
    hostName?: string;
    allowHalfOpen?: boolean;
    private tcp?;
    constructor(name?: string, port?: number, hostName?: string, allowHalfOpen?: boolean);
    protected onStart?(): void;
    protected onStop?(): void;
    /**
     * 启动事件
     */
    protected onCreated?(): void;
    /**
     * 停止事件
     */
    protected onClosed?(): void;
    /**
     * 连接建立事件
     * @param socket 套接字
     */
    protected onConnected?(socket: TCP.Socket): void;
    /**
     * 连接建立
     * @param socket 套接字
     */
    connect?(socket: TCP.Socket): void;
}
//# sourceMappingURL=socket.d.ts.map