import { JsonBatchRequestBundle } from "@odata/parser"; import { RequestInit } from "node-fetch"; import { BatchPlainODataResponse, BatchRequestOptions } from "./types"; import { BatchPlainODataResponseV4, BatchRequestOptionsV4 } from "./types_v4"; /** * parsed mock batch response */ export interface ParsedResponse { text: () => Promise; json: () => Promise>; status: number; headers: { [key: string]: string; }; statusText: string; } /** * parsed mock batch response */ export interface ParsedResponseV4 { text: () => Promise; json: () => Promise>; status: number; headers: { [key: string]: string; }; statusText: string; } /** * batch request */ export interface BatchRequest { /** * for odata batch request, please give a relative path from odata endpoint */ url: string; init?: RequestInit & { body?: any; }; /** * original options */ options?: BatchRequestOptions; } export interface BatchRequestV4 extends BatchRequest { /** * original options */ options?: BatchRequestOptionsV4; } export declare const formatHttpRequestString: (u: string, r: any) => string; /** * * format batch request in json format (in OData V4.01 Spec) * * ref: https://github.com/Soontao/light-odata/issues/29 * * @experimental * @param requests */ export declare const formatBatchRequestForOData401: (requests?: BatchRequestV4[]) => JsonBatchRequestBundle; /** * format batch request string body * * @param requests * @param boundary a given boundary id */ export declare const formatBatchRequest: (requests: BatchRequest[], boundary: string) => string; /** * parse stringify response in multipart */ export declare const parseResponse2: (httpResponseString: string) => Promise>; export declare const parseMultiPartContent: (multipartBody: string, boundaryId: string) => Promise[]>;