MeilCli/FoodSearch

View on GitHub
features/base/src/main/kotlin/net/meilcli/foodsearch/services/IGnaviService.kt

Summary

Maintainability
A
0 mins
Test Coverage
package net.meilcli.foodsearch.services

import net.meilcli.foodsearch.api.gnavi.entities.*
import net.meilcli.foodsearch.models.RestaurantRequestModel

interface IGnaviService {

    fun createRestaurantRequestModel(): RestaurantRequestModel

    fun createRestaurantRequestModel(id: String): RestaurantRequestModel

    fun createRestaurantRequestModel(ids: Array<String>): RestaurantRequestModel

    fun createRestaurantRequestModel(
        largeArea: LargeArea,
        middleArea: MiddleArea,
        smallArea: SmallArea
    ): RestaurantRequestModel

    fun createRestaurantRequestModel(latitude: Double, longitude: Double): RestaurantRequestModel

    suspend fun searchRestaurant(requestModel: RestaurantRequestModel): ISearchResponse<IRestaurant>

    suspend fun getLargeCategories(): List<LargeCategory>

    suspend fun getSmallCategories(): List<SmallCategory>

    suspend fun getPrefectureArea(): List<PrefectureArea>

    suspend fun getLargeArea(prefectureArea: PrefectureArea): List<LargeArea>

    suspend fun getMiddleArea(largeArea: LargeArea): List<MiddleArea>

    suspend fun getSmallArea(middleArea: MiddleArea): List<SmallArea>
}