/* Options: Date: 2025-12-06 05:25:15 Version: 8.70 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.sbbet.ath.cx //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: InstallProductInstance.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* @Route(Path="/cmd/products/instances", Verbs="POST") open class InstallProductInstance : IReturn { open var id:String? = null open var name:String? = null open var title:String? = null open var product:ProductReference? = null open var currency:Ref? = null open var bettingPolicies:BettingPolicies? = null open var apiUrl:String? = null open var backOfficeUrl:String? = null open var instanceUrl:String? = null open var feedPlayerUrl:String? = null companion object { private val responseType = ResponseStatus::class.java } override fun getResponseType(): Any? = InstallProductInstance.responseType } @DataContract open class ResponseStatus { @DataMember(Order=1) open var errorCode:String? = null @DataMember(Order=2) open var message:String? = null @DataMember(Order=3) open var stackTrace:String? = null @DataMember(Order=4) open var errors:ArrayList? = null @DataMember(Order=5) open var meta:HashMap? = null } open class Money { open var amount:BigDecimal? = null open var currency:String? = null } open class BettingPolicies { open var payinConstraints:RecordList? = null open var payinTaxationPolicyId:String? = null open var winningsCaps:RecordList? = null open var winningsTaxationPolicyId:String? = null } open class Ref { open var id:String? = null @SerializedName("val") open var Val:String? = null } open class ProductReference { open var id:String? = null open var value:String? = null open var category:String? = null open var productProvider:Ref? = null } open class RecordList : ArrayList() { } open class PayinConstraint { @SerializedName("type") open var Type:PayinConstraintType? = null open var min:Money? = null @SerializedName("default") open var Default:Money? = null open var warningThreshold:Money? = null open var max:Money? = null } open class WinningsCap { @SerializedName("type") open var Type:WinningsCapType? = null open var cap:Money? = null } enum class PayinConstraintType(val value:Int) { @SerializedName("0") SingleBet(0), @SerializedName("1") MultiBet(1), @SerializedName("2") SystemBet(2), } enum class WinningsCapType(val value:Int) { @SerializedName("0") SingleBet(0), @SerializedName("1") MultiBet(1), @SerializedName("2") SystemBet(2), }