UNPKG

@rocketmakers/api-swr

Version:

Rocketmakers front-end library for parsing a generated Typescript API client into a set of configurable React hooks for fetching and mutating data.

16 lines (15 loc) 1.58 kB
import type { IOpenApiControllerSetup, IAxiosOpenApiControllerFactory } from '../@types/axiosOpenApiController'; /** * Creates a factory of state management tools from an OpenAPI controller using Axios. * * @param {IAxiosOpenApiControllerSetup} options - An object containing options for the factory. * @param {string} options.basePath - The base URL path for the OpenAPI controller. * @param {Configuration} options.openApiConfig - The configuration object for OpenAPI HTTP requests. * @param {boolean} options.enableMocking - Will use mock endpoint definitions instead of calling out to the real API. * @param {APIProcessingHook} options.useApiProcessing - Optional processing hook for all client side fetches. * @param {GlobalFetchWrapperHook<TConfig>} options.useGlobalFetchWrapper - Optional fetch wrapper hook for all client side fetches. * @param {SWRConfiguration<any | undefined>} options.swrConfig - Additional config to send to SWR for all queries. * @param {SWRInfiniteConfiguration<any | undefined>} options.swrInfiniteConfig - Additional config to send to SWR for all infinite loader queries. * @returns {IAxiosOpenApiControllerFactory} A library of controller factory methods that create state management tools for an OpenAPI controller. */ export declare const axiosOpenApiControllerFactory: <TConfig, TProcessingResponse>({ basePath, openApiConfig, enableMocking, useApiProcessing, useGlobalFetchWrapper, swrConfig, swrInfiniteConfig, }: IOpenApiControllerSetup<TConfig, TProcessingResponse>) => IAxiosOpenApiControllerFactory<TProcessingResponse>;