import type { DataWithResponseInit } from './interfaces.js'; /** * Returns a function that can only be called once. * Subsequent calls will return the result of the first call. * This is useful for lazy initialization. * @param fn - The function to be called once. * @returns A function that can only be called once. */ export declare function lazy(fn: () => T): () => T; /** * Returns true if the response is a redirect. * @param res - The response to check. * @returns True if the response is a redirect. */ export declare function isRedirect(res: Response): boolean; /** * Returns true if the response is a JSON response. * This is determined by checking if the Content-Type header includes 'application/json'. * @param res - The response to check. * @returns True if the response is a JSON response. */ export declare function isJsonResponse(res: Response): boolean; /** * Returns true if the response is a response. * @param response - The response to check. * @returns True if the response is a response. */ export declare function isResponse(response: unknown): response is Response; /** * Checks if the data is a DataWithResponseInit object. * @param data - The data to check. * @returns True if the data is a DataWithResponseInit object. */ export declare function isDataWithResponseInit(data: unknown): data is DataWithResponseInit;