/** * Generated by orval v7.16.0 🍺 * Do not edit manually. * OpenAPI definition * OpenAPI spec version: v0 */ import { useMutation, useQuery } from '@tanstack/vue-query'; import type { DataTag, MutationFunction, QueryClient, QueryFunction, QueryKey, UseMutationOptions, UseMutationReturnType, UseQueryOptions, UseQueryReturnType } from '@tanstack/vue-query'; import { unref } from 'vue'; import type { MaybeRef } from 'vue'; import type { PlaylistCreateRequest, PlaylistReadResponse } from '.././models'; import { axiosInstance } from '.././axios-instance'; type SecondParameter unknown> = Parameters[1]; export const createPlaylist = ( playlistCreateRequest: MaybeRef, options?: SecondParameter,signal?: AbortSignal ) => { playlistCreateRequest = unref(playlistCreateRequest); return axiosInstance( {url: `/playlist`, method: 'POST', headers: {'Content-Type': 'application/json', }, data: playlistCreateRequest, signal }, options); } export const getCreatePlaylistMutationOptions = (options?: { mutation?:UseMutationOptions>, TError,{data: PlaylistCreateRequest}, TContext>, request?: SecondParameter} ): UseMutationOptions>, TError,{data: PlaylistCreateRequest}, TContext> => { const mutationKey = ['createPlaylist']; const {mutation: mutationOptions, request: requestOptions} = options ? options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ? options : {...options, mutation: {...options.mutation, mutationKey}} : {mutation: { mutationKey, }, request: undefined}; const mutationFn: MutationFunction>, {data: PlaylistCreateRequest}> = (props) => { const {data} = props ?? {}; return createPlaylist(data,requestOptions) } return { mutationFn, ...mutationOptions }} export type CreatePlaylistMutationResult = NonNullable>> export type CreatePlaylistMutationBody = PlaylistCreateRequest export type CreatePlaylistMutationError = unknown export const useCreatePlaylist = (options?: { mutation?:UseMutationOptions>, TError,{data: PlaylistCreateRequest}, TContext>, request?: SecondParameter} , queryClient?: QueryClient): UseMutationReturnType< Awaited>, TError, {data: PlaylistCreateRequest}, TContext > => { const mutationOptions = getCreatePlaylistMutationOptions(options); return useMutation(mutationOptions, queryClient); } export const playlists = ( options?: SecondParameter,signal?: AbortSignal ) => { return axiosInstance( {url: `/playlists`, method: 'GET', signal }, options); } export const getPlaylistsQueryKey = () => { return [ 'playlists' ] as const; } export const getPlaylistsQueryOptions = >, TError = unknown>( options?: { query?:Partial>, TError, TData>>, request?: SecondParameter} ) => { const {query: queryOptions, request: requestOptions} = options ?? {}; const queryKey = getPlaylistsQueryKey(); const queryFn: QueryFunction>> = ({ signal }) => playlists(requestOptions, signal); return { queryKey, queryFn, ...queryOptions} as UseQueryOptions>, TError, TData> } export type PlaylistsQueryResult = NonNullable>> export type PlaylistsQueryError = unknown export function usePlaylists>, TError = unknown>( options?: { query?:Partial>, TError, TData>>, request?: SecondParameter} , queryClient?: QueryClient ): UseQueryReturnType & { queryKey: DataTag } { const queryOptions = getPlaylistsQueryOptions(options) const query = useQuery(queryOptions, queryClient) as UseQueryReturnType & { queryKey: DataTag }; query.queryKey = unref(queryOptions).queryKey as DataTag; return query; }