UNPKG

@fox-hound-tools/refine-library

Version:

Refine sdk library

30 lines (29 loc) 2.19 kB
/** * kiotaの戻り値がoptionalなので、Requiredを使った型でAPIを実行する * * 一括で必須とするため、個別対応をすることはできない * 個別対応の場合はこれを使用せずに、個別で判定を行うこと */ import { AdditionalDataHolder, RequestConfiguration } from '@microsoft/kiota-abstractions'; import { ApiFunction, ApiFunctionBody, ApiFunctionRequest, ApiFunctionResponse, NonBodyApiFunction, NonBodyFunctionRequest, NonBodyFunctionResponse, RequiredDeepWithoutAdditionalData, ResponseVoidApiFunction, ResponseVoidApiFunctionBody, ResponseVoidApiFunctionRequest } from './type'; /** * APIを実行する * * @example * ``` * const client = await createSdkServerClient(); * const response = await executeKiotaApi(client.v1.xxx.get.bind(client))({ queryParameters: { companyId: 1 } }); * ``` */ export declare function executeKiotaApi<T extends NonBodyApiFunction, Request extends object = NonBodyFunctionRequest<T>, Response extends AdditionalDataHolder = NonBodyFunctionResponse<T>>(getApiFunction: T): (requestConfiguration?: RequestConfiguration<Request>) => Promise<RequiredDeepWithoutAdditionalData<Response>>; /** * BodyをもつAPIを実行する * * @example * ``` * const client = await createSdkServerClient(); * const response = await executeKiotaApiWithBody(client.v1.xxx.post.bind(client))(body, requestConfiguration); * ``` */ export declare function executeKiotaApiWithBody<T extends ApiFunction, Body extends AdditionalDataHolder = ApiFunctionBody<T>, Request extends object = ApiFunctionRequest<T>, Response extends AdditionalDataHolder = ApiFunctionResponse<T>>(apiFunction: T): (body: RequiredDeepWithoutAdditionalData<Body>, requestConfiguration?: RequestConfiguration<Request>) => Promise<RequiredDeepWithoutAdditionalData<Response>>; export declare function executeKiotaApiWithBodyResponseVoid<T extends ResponseVoidApiFunction, Body extends AdditionalDataHolder = ResponseVoidApiFunctionBody<T>, Request extends object = ResponseVoidApiFunctionRequest<T>>(apiFunction: T): (body: RequiredDeepWithoutAdditionalData<Body>, requestConfiguration?: RequestConfiguration<Request>) => Promise<void>;