/// /// Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.kt /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE. /// https://github.com/mrousavy/nitro /// Copyright © Marc Rousavy @ Margelo /// package com.margelo.nitro.iap import com.facebook.proguard.annotations.DoNotStrip /** * Represents the TypeScript variant "NitroReceiptValidationResultIOS | NitroReceiptValidationResultAndroid". */ @Suppress("ClassName") @DoNotStrip sealed class Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid { @DoNotStrip data class First(@DoNotStrip val value: NitroReceiptValidationResultIOS): Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid() @DoNotStrip data class Second(@DoNotStrip val value: NitroReceiptValidationResultAndroid): Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid() val isFirst: Boolean get() = this is First val isSecond: Boolean get() = this is Second fun asFirstOrNull(): NitroReceiptValidationResultIOS? { val value = (this as? First)?.value ?: return null return value } fun asSecondOrNull(): NitroReceiptValidationResultAndroid? { val value = (this as? Second)?.value ?: return null return value } inline fun match(first: (NitroReceiptValidationResultIOS) -> R, second: (NitroReceiptValidationResultAndroid) -> R): R { return when (this) { is First -> first(value) is Second -> second(value) } } companion object { @JvmStatic @DoNotStrip fun create(value: NitroReceiptValidationResultIOS): Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid = First(value) @JvmStatic @DoNotStrip fun create(value: NitroReceiptValidationResultAndroid): Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid = Second(value) } }