UNPKG

shelving

Version:

Toolkit for using data in JavaScript.

21 lines (20 loc) 911 B
import type { Callback } from "../../util/function.js"; import type { APIProvider } from "./APIProvider.js"; import { ThroughAPIProvider } from "./ThroughAPIProvider.js"; /** * Provider that logs fetches to the console to keep useful logs in production. * - Defaults to calling `console.log()` for requests/responses and */ export declare class LoggingAPIProvider<P, R> extends ThroughAPIProvider<P, R> { protected _logRequest: Callback<[Request]>; protected _logResponse: Callback<[Response, Request]>; protected _logError: Callback<[reason: unknown, Request]>; constructor(source: APIProvider<P, R>, /** Log requests. */ onRequest?: Callback<[Request]>, /** Log responses to requests. */ onResponse?: Callback<[Response, Request]>, /** Log errors for requests. */ onError?: Callback<[reason: unknown, Request]>); fetch(request: Request): Promise<Response>; }