package com.adealink.weparty.profile.datasource.remote

import com.adealink.frame.base.Rlt
import com.adealink.frame.network.data.Res
import com.adealink.weparty.profile.data.GetUserInfosRes
import com.adealink.weparty.profile.data.GetUserinfoReq
import com.adealink.weparty.profile.data.MyUserInfoRes
import com.adealink.weparty.profile.data.PlaymateCharmStarReq
import com.adealink.weparty.profile.data.UpdateMyUserInfoReq
import retrofit2.http.Body
import retrofit2.http.Core
import retrofit2.http.POST

interface ProfileHttpService {

    @Core
    @POST("user/my/info")
    suspend fun getMyUserInfo(): Rlt<Res<MyUserInfoRes>>

    @POST("user/my/info/edit")
    suspend fun updateUserInfo(
        @Body req: UpdateMyUserInfoReq
    ): Rlt<Res<Any>>

    @Core
    @POST("user/get/infos")
    suspend fun getUserInfosByUid(
        @Body req: GetUserinfoReq
    ): Rlt<Res<GetUserInfosRes>>


    @POST("user/playmate/charmStar")
    suspend fun playmateCharmStar(
        @Body req: PlaymateCharmStarReq
    ): Rlt<Res<Any>>


}