Sha256: 0d4c31e893072b4b240263ae15e3a978d97bca3f578ab4918c3f2c735ec86ab9

Contents?: true

Size: 1.5 KB

Versions: 5

Compression:

Stored size: 1.5 KB

Contents

# typed: strict
# frozen_string_literal: true

require_relative "transaction_modification_base"

module LunchMoney
  module Objects
    # object used when updating a transaction https://lunchmoney.dev/#update-transaction
    class UpdateTransaction < TransactionModificationBase
      sig { returns(T.nilable(String)) }
      attr_accessor :amount, :currency, :status, :external_id

      sig { returns(T.nilable(Integer)) }
      attr_accessor :asset_id, :recurring_id

      sig { returns(T.nilable(T::Array[T.any(String, Integer)])) }
      attr_accessor :tags

      sig do
        params(
          tags: T.nilable(T::Array[T.any(String, Integer)]),
          category_id: T.nilable(Integer),
          payee: T.nilable(String),
          amount: T.nilable(String),
          currency: T.nilable(String),
          asset_id: T.nilable(Integer),
          recurring_id: T.nilable(Integer),
          notes: T.nilable(String),
          status: T.nilable(String),
          external_id: T.nilable(String),
          date: T.nilable(String),
        ).void
      end
      def initialize(tags: nil, category_id: nil, payee: nil, amount: nil, currency: nil, asset_id: nil,
        recurring_id: nil, notes: nil, status: nil, external_id: nil, date: nil)
        super(payee:, date:, category_id:, notes:)
        @amount = amount
        @tags = tags
        @currency = currency
        @asset_id = asset_id
        @recurring_id = recurring_id
        @status = status
        @external_id = external_id
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

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