/**
* Generated by Kubb (https://kubb.dev/).
* Do not edit manually.
*/
import fetch from "@kubb/plugin-client/clients/axios";
import type {
PutV1WorkoutsWorkoutidMutationRequest,
PutV1WorkoutsWorkoutidMutationResponse,
PutV1WorkoutsWorkoutidPathParams,
PutV1WorkoutsWorkoutidHeaderParams,
PutV1WorkoutsWorkoutid400,
} from "../types/PutV1WorkoutsWorkoutid.ts";
import type {
RequestConfig,
ResponseErrorConfig,
} from "@kubb/plugin-client/clients/axios";
function getPutV1WorkoutsWorkoutidUrl(
workoutId: PutV1WorkoutsWorkoutidPathParams["workoutId"],
) {
const res = { method: "PUT", url: `/v1/workouts/${workoutId}` as const };
return res;
}
/**
* @summary Update an existing workout
* {@link /v1/workouts/:workoutId}
*/
export async function putV1WorkoutsWorkoutid(
workoutId: PutV1WorkoutsWorkoutidPathParams["workoutId"],
headers: PutV1WorkoutsWorkoutidHeaderParams,
data?: PutV1WorkoutsWorkoutidMutationRequest,
config: Partial<RequestConfig<PutV1WorkoutsWorkoutidMutationRequest>> & {
client?: typeof fetch;
} = {},
) {
const { client: request = fetch, ...requestConfig } = config;
const requestData = data;
const res = await request<
PutV1WorkoutsWorkoutidMutationResponse,
ResponseErrorConfig<PutV1WorkoutsWorkoutid400>,
PutV1WorkoutsWorkoutidMutationRequest
>({
method: "PUT",
url: getPutV1WorkoutsWorkoutidUrl(workoutId).url.toString(),
data: requestData,
...requestConfig,
headers: { ...headers, ...requestConfig.headers },
});
return res.data;
}