package com.jachdev.consumerprotection.network;

import com.jachdev.consumerprotection.AppConstant;
import com.jachdev.consumerprotection.data.AppResponse;
import com.jachdev.consumerprotection.data.Health;
import com.jachdev.consumerprotection.data.LipidProfile;
import com.jachdev.consumerprotection.data.Report;
import com.jachdev.consumerprotection.data.User;

import java.util.List;

import io.reactivex.Single;
import okhttp3.MultipartBody;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.Multipart;
import retrofit2.http.POST;
import retrofit2.http.Part;
import retrofit2.http.Query;

/**
 * Created by prabuddhaon 9/20/2021.
 */
public interface ApiInterface {

    @POST(AppConstant.PATH_SIGN_UP)
    Single<AppResponse> signUp(@Body User user);

    @POST(AppConstant.PATH_LOGIN)
    Single<AppResponse> login(@Body User user);

    @GET(AppConstant.PATH_GET_CATEGORIES)
    Single<AppResponse> getCategories();

    @POST(AppConstant.PATH_COMPLAINTS)
    Single<AppResponse> complaints(@Body Report report);

    @GET(AppConstant.PATH_GET_NOTIFICATIONS)
    Single<AppResponse> getNotifications(@Query("uid") long uid);

    @POST(AppConstant.PATH_ADD_LIPID_PROFILE)
    Single<AppResponse> addLipidProfile(@Body LipidProfile profile);

    @GET(AppConstant.PATH_GET_LIPID_PROFILE)
    Single<AppResponse> getLipidProfile(@Query("uid") String uid);

    @GET(AppConstant.PATH_GET_DIET_PLAN)
    Single<AppResponse> getDietPlan();

    @POST(AppConstant.PATH_ADD_HEALTH)
    Single<AppResponse> addHealth(@Body Health user);

    @GET(AppConstant.PATH_GET_HEALTH)
    Single<AppResponse> getHealth(@Query("uid") String uid);

    @GET(AppConstant.PATH_GET_EXER)
    Single<AppResponse> getExercisePlan();
}
