# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: twirp/twitch.fulton.example.twitchnami/service.proto

require 'google/protobuf'

Google::Protobuf::DescriptorPool.generated_pool.build do
  add_file("twirp/twitch.fulton.example.twitchnami/service.proto", :syntax => :proto3) do
    add_message "twitch.fulton.example.twitchnami.Balance" do
      optional :currency, :string, 1
      optional :amount, :int64, 2
      optional :exponent, :int64, 3
    end
    add_message "twitch.fulton.example.twitchnami.GetBalanceRequest" do
      optional :user_id, :string, 1
      optional :wallet_type, :enum, 2, "twitch.fulton.example.twitchnami.WalletType"
    end
    add_message "twitch.fulton.example.twitchnami.GetBalanceResponse" do
      repeated :user_balances, :message, 1, "twitch.fulton.example.twitchnami.Balance"
    end
    add_message "twitch.fulton.example.twitchnami.UpdateWalletStatusRequest" do
      optional :user_id, :string, 1
      optional :wallet_type, :enum, 2, "twitch.fulton.example.twitchnami.WalletType"
      optional :wallet_status, :enum, 3, "twitch.fulton.example.twitchnami.WalletStatus"
      optional :reason, :string, 4
    end
    add_message "twitch.fulton.example.twitchnami.UpdateWalletStatusResponse" do
    end
    add_message "twitch.fulton.example.twitchnami.TransactRequest" do
      optional :user_id, :string, 1
      optional :wallet_type, :enum, 2, "twitch.fulton.example.twitchnami.WalletType"
      optional :operation, :enum, 3, "twitch.fulton.example.twitchnami.Operation"
      optional :request_amount, :message, 4, "twitch.fulton.example.twitchnami.Balance"
      optional :ldap_email, :string, 5
      optional :reason, :string, 6
      optional :transaction_id, :string, 7
      optional :origin_id, :string, 8
    end
    add_message "twitch.fulton.example.twitchnami.TransactResponse" do
      optional :user_balance, :message, 1, "twitch.fulton.example.twitchnami.Balance"
      optional :user_balance_with_hold, :message, 2, "twitch.fulton.example.twitchnami.Balance"
      optional :failure, :enum, 3, "twitch.fulton.example.twitchnami.TransactFailure"
      optional :transaction_id, :string, 4
      optional :hold_id, :string, 5
    end
    add_enum "twitch.fulton.example.twitchnami.Operation" do
      value :ADD, 0
      value :DEDUCT, 1
    end
    add_enum "twitch.fulton.example.twitchnami.WalletType" do
      value :UNKNOWN, 0
      value :GIFT_CARD, 1
      value :CREATOR, 2
    end
    add_enum "twitch.fulton.example.twitchnami.WalletStatus" do
      value :ACTIVE, 0
      value :FROZEN, 1
    end
    add_enum "twitch.fulton.example.twitchnami.TransactFailure" do
      value :NONE, 0
      value :INSUFFICIENT_FUNDS, 1
      value :BALANCE_MAX_EXCEEDED, 2
      value :TRANSACTION_COMMITTED, 3
    end
  end
end

module Twitch
  module Fulton
    module Example
      module Twitchnami
        Balance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.Balance").msgclass
        GetBalanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.GetBalanceRequest").msgclass
        GetBalanceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.GetBalanceResponse").msgclass
        UpdateWalletStatusRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.UpdateWalletStatusRequest").msgclass
        UpdateWalletStatusResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.UpdateWalletStatusResponse").msgclass
        TransactRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.TransactRequest").msgclass
        TransactResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.TransactResponse").msgclass
        Operation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.Operation").enummodule
        WalletType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.WalletType").enummodule
        WalletStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.WalletStatus").enummodule
        TransactFailure = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("twitch.fulton.example.twitchnami.TransactFailure").enummodule
      end
    end
  end
end
