package com.tangem.feature.swap.models

import com.tangem.common.ui.account.AccountTitleUM
import com.tangem.common.ui.navigationButtons.NavigationUM
import com.tangem.core.ui.components.currency.icon.CurrencyIconState
import com.tangem.core.ui.extensions.TextReference

data class SwapSuccessStateHolder(
    val timestamp: Long,
    val txUrl: String,
    val fee: TextReference?,
    val rate: TextReference,
    val shouldShowStatusButton: Boolean,
    val isTransferMode: Boolean,
    val providerName: TextReference,
    val providerType: TextReference,
    val providerIcon: String,
    val fromTitle: AccountTitleUM,
    val toTitle: AccountTitleUM,
    val fromTokenAmount: TextReference,
    val toTokenAmount: TextReference,
    val fromTokenFiatAmount: TextReference,
    val toTokenFiatAmount: TextReference,
    val fromTokenIconState: CurrencyIconState?,
    val toTokenIconState: CurrencyIconState?,
    val navigationUM: NavigationUM,
    val onStatusButtonClick: () -> Unit,
) {
    val shouldShowProvider: Boolean
        get() = !isTransferMode
}