export default class VelociousHttpServerClientWebsocketRequest {
    /**
     * Runs constructor.
     * @param {object} args - Options object.
     * @param {?} [args.body] - Request body.
     * @param {Record<string, string>} [args.headers] - Header list.
     * @param {Record<string, ?>} [args.metadata] - Session metadata.
     * @param {string} args.method - HTTP method.
     * @param {string} args.path - Path.
     * @param {Record<string, ?>} [args.params] - Parameters object.
     * @param {string} [args.remoteAddress] - Remote address.
     */
    constructor({ body, headers, metadata, method, params, path, remoteAddress }: {
        body?: unknown;
        headers?: Record<string, string> | undefined;
        metadata?: Record<string, any> | undefined;
        method: string;
        path: string;
        params?: Record<string, any> | undefined;
        remoteAddress?: string | undefined;
    });
    body: any;
    /**
     * Narrows the runtime value to the documented type.
      @type {Record<string, string>} */
    headersMap: Record<string, string>;
    /**
     * Narrows the runtime value to the documented type.
      @type {Record<string, ?>} */
    metadataObject: Record<string, unknown>;
    method: string;
    /**
     * Narrows the runtime value to the documented type.
      @type {Record<string, ?>} */
    paramsObject: Record<string, unknown>;
    _path: string;
    remoteAddressValue: string | undefined;
    baseURL(): string | undefined;
    /**
     * Runs header.
     * @param {string} name - Header name.
     * @returns {string | null} - Header value.
     */
    header(name: string): string | null;
    headers(): Record<string, string>;
    httpMethod(): string;
    httpVersion(): string;
    host(): string | undefined;
    /**
     * Runs metadata.
     * @param {string} [key] - Metadata key.
     * @returns {?} - Metadata value for a key, or the full metadata object.
     */
    metadata(key?: string): unknown;
    hostWithPort(): string | undefined;
    origin(): string | null;
    path(): string;
    params(): Record<string, any>;
    port(): number | undefined;
    protocol(): string | undefined;
    /**
     * Runs query params.
     * @returns {Record<string, string | string[]>} - Parsed query parameters from the URL.
     */
    queryParams(): Record<string, string | string[]>;
    remoteAddress(): string | undefined;
    _parseQueryParams(): any;
}
//# sourceMappingURL=websocket-request.d.ts.map