Sha256: dd038772d20e2f354e81c8d90beff2372df52e929f3927d82684a847edd7bba1

Contents?: true

Size: 867 Bytes

Versions: 5

Compression:

Stored size: 867 Bytes

Contents

# typed: strict
# frozen_string_literal: true

module LunchMoney
  module Objects
    # Base object used for transaction objects that are used to update
    # transactions https://lunchmoney.dev/#update-transaction
    class TransactionModificationBase < LunchMoney::Objects::Object
      sig { returns(T.nilable(String)) }
      attr_accessor :payee, :date, :notes

      sig { returns(T.nilable(Integer)) }
      attr_accessor :category_id

      sig do
        params(
          payee: T.nilable(String),
          date: T.nilable(String),
          category_id: T.nilable(Integer),
          notes: T.nilable(String),
        ).void
      end
      def initialize(payee: nil, date: nil, category_id: nil, notes: nil)
        super()
        @payee = payee
        @date = date
        @category_id = category_id
        @notes = notes
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
lunchmoney-1.4.0 lib/lunchmoney/objects/transaction_modification_base.rb
lunchmoney-1.2.0 lib/lunchmoney/objects/transaction_modification_base.rb
lunchmoney-1.1.2 lib/lunchmoney/objects/transaction_modification_base.rb
lunchmoney-1.1.1 lib/lunchmoney/objects/transaction_modification_base.rb
lunchmoney-1.1.0 lib/lunchmoney/objects/transaction_modification_base.rb