import { DurableBody, DurableBodyLike, DurableRequestData, DurableResponseData } from "./types";
export declare function fromMaybeDurableBody(body: unknown): Promise<BodyInit>;
export declare function fromDurableBody(body: DurableBody): Promise<RequestInit["body"]>;
export declare function fromDurableRequest(durableRequest: Request | DurableRequestData, getOrigin?: () => string): Promise<Request>;
export declare function fromDurableResponse(durableResponse: Omit<DurableResponseData, "body"> & {
    body?: BodyInit | DurableBodyLike;
}): Promise<Response>;
export interface FromRequestResponseOptions {
    fileName?: string;
    body?: DurableBodyLike;
    signal?: AbortSignal;
    persist?: boolean;
}
export declare function getFetchHeadersObject(fetchHeaders: Headers | HeadersInit): Record<string, string>;
export declare function fromRequestWithoutBody(request: Request | DurableRequestData): DurableRequestData;
export declare function fromRequestWithSourceBody(request: Request): DurableRequestData;
export declare function fromRequest(request: Request, options?: FromRequestResponseOptions): Promise<{
    body: DurableBodyLike;
    url: string;
    method?: string;
    headers?: Record<string, string>;
    response?: DurableResponseData;
    expiresAt?: string;
}>;
export declare function fromRequestResponseWithoutBody(request: Pick<DurableRequestData, "url">, response: Response): DurableResponseData;
export declare function fromRequestResponse(request: Request | DurableRequestData, response: Response, options?: FromRequestResponseOptions): Promise<DurableRequestData>;
