/// <reference types="node" />
import * as $dara from '@darabonba/typescript';
import { ErrUseRawMessage } from './awap';
export declare type GeneralMessageFormat = 'text' | 'binary';
export interface GeneralMessage {
    body?: any;
    format?: GeneralMessageFormat;
}
export interface GeneralWebSocketHandler extends $dara.WebSocketHandler {
    handleGeneralMessage(session: $dara.WebSocketSessionInfo, message: GeneralMessage): Promise<void> | void;
}
export declare class AbstractGeneralWebSocketHandler extends $dara.AbstractWebSocketHandler implements GeneralWebSocketHandler {
    handleGeneralMessage(_session: $dara.WebSocketSessionInfo, _message: GeneralMessage): void;
}
export declare function newGeneralMessage(body: string): GeneralMessage;
export declare function parseGeneralMessage(message: $dara.WebSocketMessage): GeneralMessage;
export declare function generalMessageToJSON(message: GeneralMessage): Buffer;
export { ErrUseRawMessage };
