import { useMutation, useQueryClient } from '@tanstack/react-query'; import { api } from '@/lib/api-client'; import { MutationConfig } from '@/lib/react-query'; import { getDiscussionsQueryOptions } from './get-discussions'; export const deleteDiscussion = ({ discussionId, }: { discussionId: string; }) => { return api.delete(`/discussions/${discussionId}`); }; type UseDeleteDiscussionOptions = { mutationConfig?: MutationConfig; }; export const useDeleteDiscussion = ({ mutationConfig, }: UseDeleteDiscussionOptions = {}) => { const queryClient = useQueryClient(); const { onSuccess, ...restConfig } = mutationConfig || {}; return useMutation({ onSuccess: (...args) => { queryClient.invalidateQueries({ queryKey: getDiscussionsQueryOptions().queryKey, }); onSuccess?.(...args); }, ...restConfig, mutationFn: deleteDiscussion, }); };