import useAutoRunPlugin from './plugins/useAutoRunPlugin'; import useCachePlugin from './plugins/useCachePlugin'; import useDebouncePlugin from './plugins/useDebouncePlugin'; import useLoadingDelayPlugin from './plugins/useLoadingDelayPlugin'; import usePollingPlugin from './plugins/usePollingPlugin'; import useRefreshOnWindowFocusPlugin from './plugins/useRefreshOnWindowFocusPlugin'; import useRetryPlugin from './plugins/useRetryPlugin'; import useThrottlePlugin from './plugins/useThrottlePlugin'; import type { Service, UseRequestOptions, UseRequestPlugin } from './types'; import { useRequestImplement } from './useRequestImplement'; export { clearCache } from './utils/cache'; export function useRequest( service: Service, options?: UseRequestOptions, plugins?: UseRequestPlugin[], ) { return useRequestImplement(service, options, [ ...(plugins || []), useDebouncePlugin, useLoadingDelayPlugin, usePollingPlugin, useRefreshOnWindowFocusPlugin, useThrottlePlugin, useAutoRunPlugin, useCachePlugin, useRetryPlugin, ] as UseRequestPlugin[]); }