Skip to content

Instantly share code, notes, and snippets.

@jacobjuul
Created November 29, 2023 13:25
Show Gist options
  • Save jacobjuul/f76fa342fd252036a2d366fe9f435e8f to your computer and use it in GitHub Desktop.
Save jacobjuul/f76fa342fd252036a2d366fe9f435e8f to your computer and use it in GitHub Desktop.
Mutations with inferred types
// Explicit types
export const useCreateDocumentBookmarkMutation = (
options: UseMutationOptions<UserAlertOld, unknown, CreateDocumentBookmarkArgs>
): UseMutationResult<UserAlertOld, unknown, CreateDocumentBookmarkArgs> =>
useMutation({
mutationFn: params => addDocumentBookmark(params),
onSuccess: () => {
queryClient.invalidateQueries([queryKeys.documentBookmarks])
},
...options
})
// inferred types
export const useCreateDocumentBookmarkMutation = () => // instead of spreading ...options, be specific about what you want
useMutation({
mutationFn: (params: CreateDocumentBookmarkArgs) =>
addDocumentBookmark(params),
onSuccess: () => {
queryClient.invalidateQueries([queryKeys.documentBookmarks])
}
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment