/// import * as $dara from '@darabonba/typescript'; export declare type AwapMessageType = string; export declare type AwapMessageFormat = 'text' | 'binary'; export interface AwapMessage { type: AwapMessageType; id: string; headers?: { [key: string]: string; }; payload?: any; format?: AwapMessageFormat; } export interface AwapWebSocketHandler extends $dara.WebSocketHandler { handleAwapMessage(session: $dara.WebSocketSessionInfo, message: AwapMessage): Promise | void; } export declare class AbstractAwapWebSocketHandler extends $dara.AbstractWebSocketHandler implements AwapWebSocketHandler { handleAwapMessage(_session: $dara.WebSocketSessionInfo, _message: AwapMessage): void; } export declare type AwapMessageOption = (message: AwapMessage) => void; export declare function withType(msgType: AwapMessageType): AwapMessageOption; export declare function withID(id: string): AwapMessageOption; export declare function withHeader(key: string, value: string): AwapMessageOption; export declare function newAwapMessage(payload: any, ...opts: AwapMessageOption[]): AwapMessage; export declare function buildAwapMessageText(message: AwapMessage): string; export declare function buildAwapMessageBinary(message: AwapMessage): Buffer; export declare function parseAwapMessage(message: $dara.WebSocketMessage): AwapMessage; export declare const ErrUseRawMessage: Error;