import { Ref, UnwrapRef } from 'vue';
interface IRequestHandler<formData, responseType> {
    before?: () => Promise<any>;
    request: (formData: formData) => Promise<responseType | void>;
    then?: (data: any) => Promise<any>;
    catch?: (err: any) => Promise<any>;
    finally?: () => Promise<any>;
}
export default function <formData, responseType>(requester: IRequestHandler<formData, responseType>, isPreLoading?: boolean): {
    isLoading: Ref<UnwrapRef<boolean>, UnwrapRef<boolean> | boolean>;
    requestHandler: (formData?: formData) => Promise<void>;
    isError: Ref<UnwrapRef<boolean>, UnwrapRef<boolean> | boolean>;
    data: Ref<any>;
};
export {};
