"use client" import { AppRouter } from "@server/shared/trpc/trpc.instance" import { inferProcedureInput } from "@trpc/server" import { trpc } from "~/trpc/react" export function TodoList() { const utils = trpc.useUtils() const [todos, { refetch }] = trpc.todo.list.useSuspenseQuery({}) const addTodo = trpc.todo.create.useMutation({ async onSuccess() { // refetches posts after a post is added await utils.todo.list.invalidate() }, }) const deleteTodo = trpc.todo.delete.useMutation({ async onSuccess() { await utils.todo.list.invalidate() } }) const updateTodo = trpc.todo.update.useMutation({ async onSuccess() { await utils.todo.list.invalidate() } }) return (