import { Route } from './Route';
import type { Url } from './types/internal';
/**
 * Abstract route for WebSocket "requests".
 */
export declare abstract class WebSocketRoute<Params = undefined, SomeRequest = unknown, SomeResponse = unknown> extends Route<Params> {
    /**
     * Request type of WebSocket route.
     */
    readonly __REQUEST_KEY: SomeRequest;
    /**
     * Response type of WebSocket route.
     */
    readonly __RESPONSE_KEY: SomeResponse;
    /**
     * Returns `true`, if the request body is in JSON format.
     */
    getIsRequestBodyInJsonFormat(): boolean;
    /**
     * Returns `true`, if the response body is in JSON format.
     */
    getIsResponseBodyInJsonFormat(): boolean;
    /**
     * Returns the origin of the route.
     */
    getOrigin(): Url;
    /**
     * Returns the url of the route.
     */
    getUrl(): Url;
}
