import type { UseAsyncFnOptions, UseAsyncFnReturns } from "../use-async-fn/index.js"; import type { AnyFunc } from "../utils/basic.js"; export interface UseLoadingSlowFnOptions>, E = any> extends UseAsyncFnOptions { /** * The timeout duration in milliseconds to determine if the loading is slow. * * @defaultValue 0 ms */ loadingTimeout?: number; /** * A callback to be called when the loading is slow. * * @defaultValue undefined */ onLoadingSlow?: () => void; } export interface UseLoadingSlowFnReturns>, E = any> extends UseAsyncFnReturns { /** * Whether the loading is slow. */ loadingSlow: boolean; } /** * A hook to run an async function and determine if the loading is slow. * * @since 1.4.0 */ export declare function useLoadingSlowFn>, E = any>(fn: T, options?: UseLoadingSlowFnOptions): UseLoadingSlowFnReturns;