/// <reference types="node" />
/// <reference types="node" />
import { Buffer } from 'buffer';
import { IncomingMessage } from 'http';
import WebSocket from 'ws';
import { Server } from '../base';
import { Service, WSRequest, WSResponse } from './service';
export declare class Connection extends Service {
    private readonly request;
    private readonly server;
    private device;
    private readonly router;
    constructor(request: IncomingMessage, ws: WebSocket, server: Server);
    start(): Promise<void>;
    sendMessage(message: Buffer | 'empty'): Promise<void>;
    protected handleRequest(request: WSRequest): Promise<WSResponse>;
    private handleProvision;
    private handleNormal;
    private getDevice;
    private checkAccessKey;
}
