import axiosClient from "./axiosClient"; import { User, AiSettings } from "../types/user"; export const userApi = { getProfile: async (): Promise => { const { data } = await axiosClient.get("/user"); return data; }, updateProfile: async ( profile: Partial & { currentPassword?: string; newPassword?: string; accent_color?: string; show_edit_date?: boolean; colored_icons?: boolean; } ) => { const { data } = await axiosClient.put("/user/profile", profile); return data; }, uploadAvatar: async (file: File) => { const formData = new FormData(); formData.append("avatar", file); const { data } = await axiosClient.post("/user/avatar", formData, { headers: { "Content-Type": "multipart/form-data" }, }); return data; }, deleteAvatar: async () => { await axiosClient.delete("/user/avatar"); }, deleteAccount: async (password: string) => { const { data } = await axiosClient.delete("/user/delete-account", { data: { password }, }); return data; }, getAiSettings: async (): Promise => { const { data } = await axiosClient.get("/user/ai-settings"); return data; }, updateAiSettings: async (settings: Partial) => { const { data } = await axiosClient.put("/user/ai-settings", settings); return data; }, };