"use client" import { useMutation } from "@tanstack/react-query" import api from "@/lib/api" import type { SidecarExportResponse, SidecarImportResponse, DetectChangesResponse, } from "@/lib/types" export function useExportSidecar() { return useMutation({ mutationFn: async (assetId: string) => { const { data } = await api.post( `/sidecar/export/${assetId}`, ) return data }, }) } export function useImportSidecar() { return useMutation({ mutationFn: async (assetId: string) => { const { data } = await api.post( `/sidecar/import/${assetId}`, ) return data }, }) } export function useDetectChanges() { return useMutation({ mutationFn: async () => { const { data } = await api.post("/sidecar/detect-changes") return data }, }) } export function useResolveSidecarConflict() { return useMutation({ mutationFn: async ({ assetId, policy, }: { assetId: string policy: string }) => { await api.post(`/sidecar/resolve/${assetId}`, { policy }) }, }) } export function useFullExport() { return useMutation({ mutationFn: async () => { await api.post("/sidecar/full-export") }, }) } export function useFullImport() { return useMutation({ mutationFn: async () => { await api.post("/sidecar/full-import") }, }) }