vue-hooks-plus
Version:
Vue hooks library
73 lines (72 loc) • 2.55 kB
TypeScript
import { PropType, SlotsType } from "vue";
import useRequest from "../useRequest";
import type { UseRequestService, UseRequestOptions, UseRequestPlugin } from "../types";
declare function createUseRequestComponent<TServiceData = any, TParams extends unknown[] = any[], TFormatResult = TServiceData>(): import("vue").DefineComponent<import("vue").ExtractPropTypes<{
service: {
type: PropType<UseRequestService<TServiceData, TParams>>;
required: true;
};
manual: {
type: BooleanConstructor;
default: boolean;
};
ready: {
type: PropType<UseRequestOptions<TServiceData, TParams>["ready"]>;
default: () => {
ready: boolean;
};
};
refreshDeps: {
type: PropType<any[]>;
default: () => never[];
};
plugins: {
type: PropType<UseRequestPlugin<TServiceData, TParams>[]>;
default: () => never[];
};
formatResult: {
type: PropType<(res: TServiceData) => TFormatResult>;
default: undefined;
};
}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
service: {
type: PropType<UseRequestService<TServiceData, TParams>>;
required: true;
};
manual: {
type: BooleanConstructor;
default: boolean;
};
ready: {
type: PropType<UseRequestOptions<TServiceData, TParams>["ready"]>;
default: () => {
ready: boolean;
};
};
refreshDeps: {
type: PropType<any[]>;
default: () => never[];
};
plugins: {
type: PropType<UseRequestPlugin<TServiceData, TParams>[]>;
default: () => never[];
};
formatResult: {
type: PropType<(res: TServiceData) => TFormatResult>;
default: undefined;
};
}>> & Readonly<{}>, {
manual: boolean;
ready: boolean | import("vue").Ref<boolean, boolean> | undefined;
refreshDeps: any[];
formatResult: (res: TServiceData) => TFormatResult;
plugins: UseRequestPlugin<TServiceData, TParams, any>[];
}, SlotsType<{
default: (props: ReturnType<typeof useRequest<TFormatResult, TParams>>) => any;
loading: () => any;
error: (props: {
error: ReturnType<typeof useRequest<TFormatResult, TParams>>["error"]["value"];
}) => any;
target?: () => any;
}>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default createUseRequestComponent;