import { ProtocolVersion } from '../enums/index.js';
import { Protocol } from './protocol.js';
export interface ProtocolRequest {
    messageId?: number;
    protocol?: Protocol;
    method?: string | undefined;
    params?: unknown[] | Record<string, unknown> | undefined;
    secure?: boolean;
    nonce?: number;
    timestamp?: number;
    version?: string;
    dps?: Record<string, unknown>;
    body?: string;
}
export declare class RequestMessage {
    version: string | undefined;
    readonly messageId: number;
    readonly protocol: Protocol;
    readonly method: string | undefined;
    readonly params: unknown[] | Record<string, unknown> | undefined;
    readonly secure: boolean;
    readonly timestamp: number;
    readonly nonce: number;
    readonly dps: Record<string, unknown> | undefined;
    readonly body: string | undefined;
    constructor(args: ProtocolRequest);
    isForProtocol(protocol: Protocol): boolean;
    toMqttRequest(): this;
    toLocalRequest(protocolVersion?: string | ProtocolVersion | undefined): RequestMessage;
}
//# sourceMappingURL=requestMessage.d.ts.map