# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class WalletModel(Model):
    """Wallet Model.

    :param id: Gets or sets the identifier.
    :type id: int
    :param default_token: Gets or sets the default token.
    :type default_token: str
    :param credit_cards: Gets or sets the credit cards.
    :type credit_cards:
     list[~softheon.wallet.api.client.models.CreditCardModel]
    :param bank_accounts: Gets or sets the bank accounts.
    :type bank_accounts:
     list[~softheon.wallet.api.client.models.BankAccountModel]
    """

    _validation = {
        'id': {'required': True},
    }

    _attribute_map = {
        'id': {'key': 'id', 'type': 'int'},
        'default_token': {'key': 'defaultToken', 'type': 'str'},
        'credit_cards': {'key': 'creditCards', 'type': '[CreditCardModel]'},
        'bank_accounts': {'key': 'bankAccounts', 'type': '[BankAccountModel]'},
    }

    def __init__(self, id, default_token=None, credit_cards=None, bank_accounts=None):
        super(WalletModel, self).__init__()
        self.id = id
        self.default_token = default_token
        self.credit_cards = credit_cards
        self.bank_accounts = bank_accounts
