enum class PaymentOption { CASH, CARD, TRANSFER } fun PaymentOption.startPayment(transaction: TransactionData) { when (this) { PaymentOption.CASH -> showCashPaimentInfo(transaction) PaymentOption.CARD -> moveToCardPaymentPage(transaction) PaymentOption.TRANSFER -> { showMoneyTransferInfo() setupPaymentWatcher(transaction) } } }