moov_ruby 26.4.0.pre.dev.3 → 26.4.0.pre.dev.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/metadata_fields.rb +17 -11
  3. data/lib/crystalline/module.rb +94 -10
  4. data/lib/crystalline/types.rb +52 -0
  5. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod.rb +40 -0
  6. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod.rbi +17 -0
  7. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod_paymentmethodtype.rb +18 -0
  8. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod_paymentmethodtype.rbi +11 -0
  9. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod.rb +40 -0
  10. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod.rbi +17 -0
  11. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod_paymentmethodtype.rb +18 -0
  12. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
  13. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod.rb +40 -0
  14. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod.rbi +17 -0
  15. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod_paymentmethodtype.rb +18 -0
  16. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod_paymentmethodtype.rbi +11 -0
  17. data/lib/moov/models/components/achdebitfundtransferpaymentmethod.rb +40 -0
  18. data/lib/moov/models/components/achdebitfundtransferpaymentmethod.rbi +17 -0
  19. data/lib/moov/models/components/achdebitfundtransferpaymentmethod_paymentmethodtype.rb +18 -0
  20. data/lib/moov/models/components/achdebitfundtransferpaymentmethod_paymentmethodtype.rbi +11 -0
  21. data/lib/moov/models/components/applepaytransferpaymentmethod.rb +40 -0
  22. data/lib/moov/models/components/applepaytransferpaymentmethod.rbi +17 -0
  23. data/lib/moov/models/components/applepaytransferpaymentmethod_paymentmethodtype.rb +18 -0
  24. data/lib/moov/models/components/applepaytransferpaymentmethod_paymentmethodtype.rbi +11 -0
  25. data/lib/moov/models/components/cardpaymenttransferpaymentmethod.rb +40 -0
  26. data/lib/moov/models/components/cardpaymenttransferpaymentmethod.rbi +17 -0
  27. data/lib/moov/models/components/cardpaymenttransferpaymentmethod_paymentmethodtype.rb +18 -0
  28. data/lib/moov/models/components/cardpaymenttransferpaymentmethod_paymentmethodtype.rbi +11 -0
  29. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod.rb +40 -0
  30. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod.rbi +17 -0
  31. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod_paymentmethodtype.rb +18 -0
  32. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod_paymentmethodtype.rbi +11 -0
  33. data/lib/moov/models/components/generatedby.rb +6 -2
  34. data/lib/moov/models/components/generatedby.rbi +2 -0
  35. data/lib/moov/models/components/instantbankcredittransferpaymentmethod.rb +40 -0
  36. data/lib/moov/models/components/instantbankcredittransferpaymentmethod.rbi +17 -0
  37. data/lib/moov/models/components/instantbankcredittransferpaymentmethod_paymentmethodtype.rb +18 -0
  38. data/lib/moov/models/components/instantbankcredittransferpaymentmethod_paymentmethodtype.rbi +11 -0
  39. data/lib/moov/models/components/moovwallettransferpaymentmethod.rb +40 -0
  40. data/lib/moov/models/components/moovwallettransferpaymentmethod.rbi +17 -0
  41. data/lib/moov/models/components/moovwallettransferpaymentmethod_paymentmethodtype.rb +18 -0
  42. data/lib/moov/models/components/moovwallettransferpaymentmethod_paymentmethodtype.rbi +11 -0
  43. data/lib/moov/models/components/pullfromcardtransferpaymentmethod.rb +40 -0
  44. data/lib/moov/models/components/pullfromcardtransferpaymentmethod.rbi +17 -0
  45. data/lib/moov/models/components/pullfromcardtransferpaymentmethod_paymentmethodtype.rb +18 -0
  46. data/lib/moov/models/components/pullfromcardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
  47. data/lib/moov/models/components/pushtocardtransferpaymentmethod.rb +40 -0
  48. data/lib/moov/models/components/pushtocardtransferpaymentmethod.rbi +17 -0
  49. data/lib/moov/models/components/pushtocardtransferpaymentmethod_paymentmethodtype.rb +18 -0
  50. data/lib/moov/models/components/pushtocardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
  51. data/lib/moov/models/components/rtpcredittransferpaymentmethod.rb +40 -0
  52. data/lib/moov/models/components/rtpcredittransferpaymentmethod.rbi +17 -0
  53. data/lib/moov/models/components/rtpcredittransferpaymentmethod_paymentmethodtype.rb +18 -0
  54. data/lib/moov/models/components/rtpcredittransferpaymentmethod_paymentmethodtype.rbi +11 -0
  55. data/lib/moov/models/components/transferdestination.rb +5 -5
  56. data/lib/moov/models/components/transferentrymode.rb +18 -0
  57. data/lib/moov/models/components/transferentrymode.rbi +11 -0
  58. data/lib/moov/models/components/transferoptions.rb +3 -3
  59. data/lib/moov/models/components/transferpaymentmethod.rb +27 -0
  60. data/lib/moov/models/components/transferpaymentmethod.rbi +11 -0
  61. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +70 -0
  62. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rbi +31 -0
  63. data/lib/moov/models/components/transferpaymentmethodscard.rb +98 -0
  64. data/lib/moov/models/components/transferpaymentmethodscard.rbi +45 -0
  65. data/lib/moov/models/components/transferpaymentmethodswallet.rb +42 -0
  66. data/lib/moov/models/components/transferpaymentmethodswallet.rbi +17 -0
  67. data/lib/moov/models/components/transferpaymentmethodtype.rb +29 -0
  68. data/lib/moov/models/components/transferpaymentmethodtype.rbi +11 -0
  69. data/lib/moov/models/components/transfersource.rb +6 -6
  70. data/lib/moov/models/components/transferterminalcard.rb +78 -0
  71. data/lib/moov/models/components/transferterminalcard.rbi +35 -0
  72. data/lib/moov/models/components.rb +31 -0
  73. data/lib/moov/sdkconfiguration.rb +3 -3
  74. metadata +66 -4
@@ -0,0 +1,18 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class ApplePayTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ APPLE_PAY = new('apple-pay')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::ApplePayTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::ApplePayTransferPaymentMethodPaymentMethodType
11
+ end
@@ -0,0 +1,40 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class CardPaymentTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::CardPaymentTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::CardPaymentTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A card as contained within a payment method.
20
+ field :card, Models::Components::TransferPaymentMethodsCard, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::CardPaymentTransferPaymentMethodPaymentMethodType, card: Models::Components::TransferPaymentMethodsCard).void }
23
+ def initialize(payment_method_id:, payment_method_type:, card:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @card = card
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @card == other.card
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CardPaymentTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CardPaymentTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def card(); end
16
+ def card=(str_); end
17
+ end
@@ -0,0 +1,18 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class CardPaymentTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ CARD_PAYMENT = new('card-payment')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CardPaymentTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CardPaymentTransferPaymentMethodPaymentMethodType
11
+ end
@@ -0,0 +1,40 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+ # A card used at point of sale terminal for a card present transaction as contained within a payment method.
11
+ class CardPresentPaymentTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType, false) } }
19
+ # Describes payment card details captured with tap or in-person payment.
20
+ field :terminal_card, Crystalline::Nilable.new(Models::Components::TransferTerminalCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('terminalCard') } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType, terminal_card: T.nilable(Models::Components::TransferTerminalCard)).void }
23
+ def initialize(payment_method_id:, payment_method_type:, terminal_card: nil)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @terminal_card = terminal_card
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @terminal_card == other.terminal_card
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CardPresentPaymentTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CardPresentPaymentTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def terminal_card(); end
16
+ def terminal_card=(str_); end
17
+ end
@@ -0,0 +1,18 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class CardPresentPaymentTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ CARD_PRESENT_PAYMENT = new('card-present-payment')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType
11
+ end
@@ -23,13 +23,16 @@ module Moov
23
23
 
24
24
  field :bank_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccountID') } }
25
25
 
26
- sig { params(transfer_id: T.nilable(::String), card_id: T.nilable(::String), dispute_id: T.nilable(::String), account_id: T.nilable(::String), bank_account_id: T.nilable(::String)).void }
27
- def initialize(transfer_id: nil, card_id: nil, dispute_id: nil, account_id: nil, bank_account_id: nil)
26
+ field :invoice_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceID') } }
27
+
28
+ sig { params(transfer_id: T.nilable(::String), card_id: T.nilable(::String), dispute_id: T.nilable(::String), account_id: T.nilable(::String), bank_account_id: T.nilable(::String), invoice_id: T.nilable(::String)).void }
29
+ def initialize(transfer_id: nil, card_id: nil, dispute_id: nil, account_id: nil, bank_account_id: nil, invoice_id: nil)
28
30
  @transfer_id = transfer_id
29
31
  @card_id = card_id
30
32
  @dispute_id = dispute_id
31
33
  @account_id = account_id
32
34
  @bank_account_id = bank_account_id
35
+ @invoice_id = invoice_id
33
36
  end
34
37
 
35
38
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -40,6 +43,7 @@ module Moov
40
43
  return false unless @dispute_id == other.dispute_id
41
44
  return false unless @account_id == other.account_id
42
45
  return false unless @bank_account_id == other.bank_account_id
46
+ return false unless @invoice_id == other.invoice_id
43
47
  true
44
48
  end
45
49
  end
@@ -18,4 +18,6 @@ class Moov::Models::Components::GeneratedBy
18
18
  def account_id=(str_); end
19
19
  def bank_account_id(); end
20
20
  def bank_account_id=(str_); end
21
+ def invoice_id(); end
22
+ def invoice_id=(str_); end
21
23
  end
@@ -0,0 +1,40 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+ # Instantly send funds to a bank account.
11
+ class InstantBankCreditTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A bank account as contained within a payment method.
20
+ field :bank_account, Models::Components::TransferPaymentMethodsBankAccount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, bank_account: Models::Components::TransferPaymentMethodsBankAccount).void }
23
+ def initialize(payment_method_id:, payment_method_type:, bank_account:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @bank_account = bank_account
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @bank_account == other.bank_account
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::InstantBankCreditTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::InstantBankCreditTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def bank_account(); end
16
+ def bank_account=(str_); end
17
+ end
@@ -0,0 +1,18 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class InstantBankCreditTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ INSTANT_BANK_CREDIT = new('instant-bank-credit')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType
11
+ end
@@ -0,0 +1,40 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class MoovWalletTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType, false) } }
19
+
20
+ field :wallet, Models::Components::TransferPaymentMethodsWallet, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wallet'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType, wallet: Models::Components::TransferPaymentMethodsWallet).void }
23
+ def initialize(payment_method_id:, payment_method_type:, wallet:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @wallet = wallet
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @wallet == other.wallet
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::MoovWalletTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::MoovWalletTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def wallet(); end
16
+ def wallet=(str_); end
17
+ end
@@ -0,0 +1,18 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class MoovWalletTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ MOOV_WALLET = new('moov-wallet')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType
11
+ end
@@ -0,0 +1,40 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class PullFromCardTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A card as contained within a payment method.
20
+ field :card, Models::Components::TransferPaymentMethodsCard, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType, card: Models::Components::TransferPaymentMethodsCard).void }
23
+ def initialize(payment_method_id:, payment_method_type:, card:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @card = card
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @card == other.card
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::PullFromCardTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PullFromCardTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def card(); end
16
+ def card=(str_); end
17
+ end
@@ -0,0 +1,18 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class PullFromCardTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ PULL_FROM_CARD = new('pull-from-card')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType
11
+ end
@@ -0,0 +1,40 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class PushToCardTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::PushToCardTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::PushToCardTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A card as contained within a payment method.
20
+ field :card, Models::Components::TransferPaymentMethodsCard, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::PushToCardTransferPaymentMethodPaymentMethodType, card: Models::Components::TransferPaymentMethodsCard).void }
23
+ def initialize(payment_method_id:, payment_method_type:, card:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @card = card
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @card == other.card
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::PushToCardTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PushToCardTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def card(); end
16
+ def card=(str_); end
17
+ end
@@ -0,0 +1,18 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class PushToCardTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ PUSH_TO_CARD = new('push-to-card')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::PushToCardTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PushToCardTransferPaymentMethodPaymentMethodType
11
+ end
@@ -0,0 +1,40 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class RtpCreditTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::RtpCreditTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::RtpCreditTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A bank account as contained within a payment method.
20
+ field :bank_account, Models::Components::TransferPaymentMethodsBankAccount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::RtpCreditTransferPaymentMethodPaymentMethodType, bank_account: Models::Components::TransferPaymentMethodsBankAccount).void }
23
+ def initialize(payment_method_id:, payment_method_type:, bank_account:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @bank_account = bank_account
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @bank_account == other.bank_account
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end