package com.gh.gamecenter.common.provider

import android.content.Context
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import com.alibaba.android.arouter.facade.template.IProvider
import com.gh.gamecenter.common.entity.SimpleGameEntity
import com.gh.gamecenter.common.entity.SuggestType

interface IHelpAndFeedbackProvider : IProvider {

    fun startSuggestionActivity(
        context: Context?,
        suggestType: SuggestType?,
        suggestHintType: String?,
        content: String?
    )

    fun startSuggestionActivity(
        context: Context?,
        suggestType: SuggestType?,
        suggestHintType: String?,
        content: String?,
        isQaFeedback: Boolean,
        qaContentId: String?
    )

    fun startSuggestionActivity(
        context: Context?,
        suggestType: SuggestType?,
        suggestHintType: String?,
        content: String?,
        game: SimpleGameEntity?
    )

    fun startSuggestionActivity(
        context: Context?,
        suggestType: SuggestType?,
        suggestHintType: String?,
        content: String?,
        game: SimpleGameEntity?,
        gamePlatform: String?
    )

    fun startSuggestionActivity(context: Context?, suggestType: SuggestType?, hint: String?)

    fun getIntentFromNetworkDiagnosis(context: Context?, diagnosis: String?): Intent?

    fun getIntent(
        context: Context?,
        suggestType: SuggestType?,
        hiddenHint: String?,
        suggestHintType: String?,
        content: String?,
        platform: String?,
        game: SimpleGameEntity?,
        isQaFeedback: Boolean,
        qaContentId: String?,
        fromRatingKey: Boolean,
        diagnosis: String
    ): Intent?

    fun showQaFeedbackDialogFragment(activity: AppCompatActivity, contentId: String)
}