forked from cloudforet-io/console
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathuse-provider-api.ts
32 lines (27 loc) · 1.84 KB
/
use-provider-api.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import { SpaceConnector } from '@cloudforet/core-lib/space-connector';
import { useAPIQueryKey } from '@/api-clients/_common/composables/use-api-query-key';
import type { ListResponse } from '@/api-clients/_common/schema/api-verbs/list';
import type { ProviderCreateParameters } from '@/api-clients/identity/provider/schema/api-verbs/create';
import type { ProviderDeleteParameters } from '@/api-clients/identity/provider/schema/api-verbs/delete';
import type { ProviderGetParameters } from '@/api-clients/identity/provider/schema/api-verbs/get';
import type { ProviderListParameters } from '@/api-clients/identity/provider/schema/api-verbs/list';
import type { ProviderStatParameters } from '@/api-clients/identity/provider/schema/api-verbs/stat';
import type { ProviderUpdateParameters } from '@/api-clients/identity/provider/schema/api-verbs/update';
import type { ProviderModel } from '@/api-clients/identity/provider/schema/model';
export const useProviderApi = () => {
const providerQueryKey = useAPIQueryKey('identity', 'provider', 'get');
const providerListQueryKey = useAPIQueryKey('identity', 'provider', 'list');
const actions = {
create: SpaceConnector.clientV2.identity.provider.create<ProviderCreateParameters, ProviderModel>,
update: SpaceConnector.clientV2.identity.provider.update<ProviderUpdateParameters, ProviderModel>,
delete: SpaceConnector.clientV2.identity.provider.delete<ProviderDeleteParameters>,
get: SpaceConnector.clientV2.identity.provider.get<ProviderGetParameters, ProviderModel>,
list: SpaceConnector.clientV2.identity.provider.list<ProviderListParameters, ListResponse<ProviderModel>>,
stat: SpaceConnector.clientV2.identity.provider.stat<ProviderStatParameters, any>,
};
return {
providerQueryKey,
providerListQueryKey,
providerAPI: actions,
};
};