export type HttpRequestContext = Record<any, any>;
export interface HttpRequest<Body extends BodyInit = BodyInit> extends RequestInit {
    /**
     * A metadata object. Useful for pass some metadata cross middleware.
     */
    context: HttpRequestContext;
    headers: Headers;
    url: string;
    body?: Body;
}
/**
 * Transform a HttpRequest into an native Request.
 * @param request
 */
export declare function asNativeRequest(request: HttpRequest): Request;
/**
 * Clone a HttpRequest.
 * @param request
 */
export declare function cloneRequest(request: HttpRequest): HttpRequest;
