package com.yidianling.fm.http

import com.ydl.ydlcommon.data.http.BaseAPIResponse
import com.ydl.ydlcommon.data.http.BaseResponse
import com.yidianling.fm.param.DetailParam
import com.yidianling.fm.param.FMParam
import com.yidianling.fm.param.FavParam
import com.yidianling.fm.response.FMDetail
import com.yidianling.fm.response.FMList
import com.yidianling.fm.response.FavFM
import io.reactivex.Observable

/**
 * author : Zhangwenchao
 * e-mail : zhangwch@yidianling.com
 * time   : 2018/03/05
 */
interface FMHttp {

    fun getFavFMs(fmParam: FMParam): Observable<BaseAPIResponse<FMList>>

    fun getAllFMs(fmParam: FMParam): Observable<BaseAPIResponse<FMList>>

    fun fmDetail(param: DetailParam): Observable<BaseResponse<FMDetail>>

    fun favFM(param: FavParam): Observable<BaseResponse<FavFM>>
}