@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.
14 lines (13 loc) • 1.44 kB
TypeScript
import { IGenericApiControllerFactory, IGenericControllerSetup } from '../@types/genericController';
/**
* Creates a factory of state management tools from a generic API controller object.
*
* @param {TConfig} globalFetchConfig - Optional custom fetch config to pass to all API calls. Can be overridden at endpoint and fetch level.
* @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 {IApiControllerFactory} A library of controller factory methods that create state management tools for a generic controller.
*/
export declare const genericApiControllerFactory: <TConfig extends object | undefined, TProcessingResponse>({ globalFetchConfig, enableMocking, useApiProcessing, useGlobalFetchWrapper, swrConfig, swrInfiniteConfig, }?: IGenericControllerSetup<TConfig, TProcessingResponse>) => IGenericApiControllerFactory<TConfig, TProcessingResponse>;