UNPKG

hook-fetch

Version:

A lightweight and modern HTTP request library developed based on the native Fetch API of the browser, providing a user-friendly interface similar to Axios and powerful extensibility.

35 lines (34 loc) 2.04 kB
import { HookFetchRequest } from '../utils'; interface UseHookFetchOptions<Q extends (...args: any[]) => any> { request: Q; onError?: (e: Error) => any; } /** * Hook fetch composable function | Hook fetch 组合式函数 * @param options - Hook fetch options | Hook fetch 选项 * @param options.request - Request function | 请求函数 * @param options.onError - Error callback function | 错误回调函数 * @returns {Function} request - Request function | 请求函数 * @returns {Function} cancel - Cancel request | 取消请求 * @returns {boolean} loading - Loading state | 加载状态 * @returns {Function} setLoading - Set Loading State | 修改加载状态 * @returns {Function} text - Get response as text | 获取文本响应 * @returns {Function} stream - Get response as stream | 获取流响应 | 获取流响应 * @returns {Function} blob - Get response as blob | 获取二进制响应 * @returns {Function} arrayBuffer - Get response as array buffer | 获取二进制缓冲区响应 * @returns {Function} formDataResult - Get response as form data | 获取表单数据响应 * @returns {Function} bytesData - Get response as bytes | 获取字节数据响应 */ export declare const useHookFetch: <Q extends (...args: any[]) => any>({ request, onError }: UseHookFetchOptions<Q>) => { request: (...args: any[]) => import('react').RefObject<HookFetchRequest<any, any> | null>; stream: (...args: Parameters<Q>) => AsyncGenerator<import('..').StreamContext<unknown> | import('..').StreamContext<null>, import('../utils').ResponseError<unknown> | undefined, unknown>; text: (...args: Parameters<Q>) => Promise<any>; blob: (...args: Parameters<Q>) => Promise<any>; arrayBufferData: (...args: Parameters<Q>) => Promise<any>; formDataResult: (...args: Parameters<Q>) => Promise<any>; bytesData: (...args: Parameters<Q>) => Promise<any>; cancel: () => void; loading: boolean; setLoading: import('react').Dispatch<import('react').SetStateAction<boolean>>; }; export {};