moov_ruby 0.0.0.pre.dev.30 → 0.0.0.pre.dev.32

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 (167) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/card_issuing.rb +538 -0
  3. data/lib/moov/files.rb +186 -0
  4. data/lib/moov/invoices.rb +180 -0
  5. data/lib/moov/issuing_transactions.rb +246 -0
  6. data/lib/moov/models/components/applicationscope.rb +1 -0
  7. data/lib/moov/models/components/authorizationsimulationasyncresponse.rb +32 -0
  8. data/lib/moov/models/components/authorizationsimulationasyncresponse.rbi +13 -0
  9. data/lib/moov/models/components/bankaccount.rb +7 -2
  10. data/lib/moov/models/components/bankaccount.rbi +2 -0
  11. data/lib/moov/models/components/bankaccountpayload.rb +7 -2
  12. data/lib/moov/models/components/bankaccountpayload.rbi +2 -0
  13. data/lib/moov/models/components/capturestatus.rb +1 -0
  14. data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rb +6 -2
  15. data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rbi +2 -0
  16. data/lib/moov/models/components/createauthorizationsimulation.rb +40 -0
  17. data/lib/moov/models/components/createauthorizationsimulation.rbi +17 -0
  18. data/lib/moov/models/components/{createcancellation.rb → createclearingsimulation.rb} +5 -7
  19. data/lib/moov/models/components/{createcancellation.rbi → createclearingsimulation.rbi} +2 -2
  20. data/lib/moov/models/components/createdtransfer.rb +2 -1
  21. data/lib/moov/models/components/createinvoice.rb +14 -2
  22. data/lib/moov/models/components/createinvoice.rbi +6 -0
  23. data/lib/moov/models/components/createinvoicenotification.rb +32 -0
  24. data/lib/moov/models/components/createinvoicenotification.rbi +13 -0
  25. data/lib/moov/models/components/createtransfer.rb +6 -2
  26. data/lib/moov/models/components/createtransfer.rbi +2 -0
  27. data/lib/moov/models/components/createtransferdestination.rb +2 -14
  28. data/lib/moov/models/components/createtransferdestination.rbi +0 -6
  29. data/lib/moov/models/components/createtransferrailoptions.rb +52 -0
  30. data/lib/moov/models/components/createtransferrailoptions.rbi +23 -0
  31. data/lib/moov/models/components/createtransferresponse.rb +27 -0
  32. data/lib/moov/models/components/createtransferresponse.rbi +11 -0
  33. data/lib/moov/models/components/createtransfersource.rb +2 -10
  34. data/lib/moov/models/components/createtransfersource.rbi +0 -4
  35. data/lib/moov/models/components/disbursementpaymentmethodtype.rb +1 -0
  36. data/lib/moov/models/components/incurredfee.rb +6 -2
  37. data/lib/moov/models/components/incurredfee.rbi +2 -0
  38. data/lib/moov/models/components/invoice.rb +6 -2
  39. data/lib/moov/models/components/invoice.rbi +2 -0
  40. data/lib/moov/models/components/invoicenotificationlimitedchannel.rb +36 -0
  41. data/lib/moov/models/components/invoicenotificationlimitedchannel.rbi +15 -0
  42. data/lib/moov/models/components/invoicepaymentoptions.rb +40 -0
  43. data/lib/moov/models/components/invoicepaymentoptions.rbi +17 -0
  44. data/lib/moov/models/components/invoicepaymentoptionserror.rb +40 -0
  45. data/lib/moov/models/components/invoicepaymentoptionserror.rbi +17 -0
  46. data/lib/moov/models/components/invoicepaymentoptionsupdate.rb +40 -0
  47. data/lib/moov/models/components/invoicepaymentoptionsupdate.rbi +17 -0
  48. data/lib/moov/models/components/issuedcardactivity.rb +78 -0
  49. data/lib/moov/models/components/issuedcardactivity.rbi +33 -0
  50. data/lib/moov/models/components/notificationchannel.rb +18 -0
  51. data/lib/moov/models/components/notificationchannel.rbi +11 -0
  52. data/lib/moov/models/components/paymentmethodsbankaccount.rb +7 -2
  53. data/lib/moov/models/components/paymentmethodsbankaccount.rbi +2 -0
  54. data/lib/moov/models/components/product.rb +1 -1
  55. data/lib/moov/models/components/productrequest.rb +1 -1
  56. data/lib/moov/models/components/pushtocardoptions.rb +6 -2
  57. data/lib/moov/models/components/pushtocardoptions.rbi +2 -0
  58. data/lib/moov/models/components/requestcard.rb +2 -6
  59. data/lib/moov/models/components/requestcard.rbi +0 -2
  60. data/lib/moov/models/components/riskverificationoutcome.rb +23 -0
  61. data/lib/moov/models/components/riskverificationoutcome.rbi +11 -0
  62. data/lib/moov/models/components/simulationissuingmerchantdata.rb +56 -0
  63. data/lib/moov/models/components/simulationissuingmerchantdata.rbi +25 -0
  64. data/lib/moov/models/components/simulationissuingmerchantdatavalidationerror.rb +56 -0
  65. data/lib/moov/models/components/simulationissuingmerchantdatavalidationerror.rbi +25 -0
  66. data/lib/moov/models/components/transfer.rb +2 -1
  67. data/lib/moov/models/components/transferauthorization.rb +9 -2
  68. data/lib/moov/models/components/transferauthorization.rbi +2 -0
  69. data/lib/moov/models/components/transferevent.rb +48 -0
  70. data/lib/moov/models/components/transferevent.rbi +21 -0
  71. data/lib/moov/models/components/transfereventachdetails.rb +40 -0
  72. data/lib/moov/models/components/transfereventachdetails.rbi +17 -0
  73. data/lib/moov/models/components/transfereventauthorizationdetails.rb +40 -0
  74. data/lib/moov/models/components/transfereventauthorizationdetails.rbi +17 -0
  75. data/lib/moov/models/components/transfereventauthorizationstatus.rb +22 -0
  76. data/lib/moov/models/components/transfereventauthorizationstatus.rbi +11 -0
  77. data/lib/moov/models/components/transfereventcancellationdetails.rb +36 -0
  78. data/lib/moov/models/components/transfereventcancellationdetails.rbi +15 -0
  79. data/lib/moov/models/components/transfereventcapturedetails.rb +40 -0
  80. data/lib/moov/models/components/transfereventcapturedetails.rbi +17 -0
  81. data/lib/moov/models/components/transfereventcardpaymentdetails.rb +36 -0
  82. data/lib/moov/models/components/transfereventcardpaymentdetails.rbi +15 -0
  83. data/lib/moov/models/components/transfereventdetails.rb +88 -0
  84. data/lib/moov/models/components/transfereventdetails.rbi +41 -0
  85. data/lib/moov/models/components/transfereventdisputedetails.rb +46 -0
  86. data/lib/moov/models/components/transfereventdisputedetails.rbi +19 -0
  87. data/lib/moov/models/components/transfereventinstantbankcreditdetails.rb +36 -0
  88. data/lib/moov/models/components/transfereventinstantbankcreditdetails.rbi +15 -0
  89. data/lib/moov/models/components/transfereventpullfromcarddetails.rb +36 -0
  90. data/lib/moov/models/components/transfereventpullfromcarddetails.rbi +15 -0
  91. data/lib/moov/models/components/transfereventpushtocarddetails.rb +36 -0
  92. data/lib/moov/models/components/transfereventpushtocarddetails.rbi +15 -0
  93. data/lib/moov/models/components/transfereventrefunddetails.rb +44 -0
  94. data/lib/moov/models/components/transfereventrefunddetails.rbi +19 -0
  95. data/lib/moov/models/components/transfereventtransferdetails.rb +32 -0
  96. data/lib/moov/models/components/transfereventtransferdetails.rbi +13 -0
  97. data/lib/moov/models/components/transfereventtype.rb +34 -0
  98. data/lib/moov/models/components/transfereventtype.rbi +11 -0
  99. data/lib/moov/models/components/transfereventwallettransactiondetails.rb +48 -0
  100. data/lib/moov/models/components/transfereventwallettransactiondetails.rbi +21 -0
  101. data/lib/moov/models/components/transfereventwirecreditdetails.rb +36 -0
  102. data/lib/moov/models/components/transfereventwirecreditdetails.rbi +15 -0
  103. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +7 -2
  104. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rbi +2 -0
  105. data/lib/moov/models/components/updateinvoice.rb +6 -2
  106. data/lib/moov/models/components/updateinvoice.rbi +2 -0
  107. data/lib/moov/models/components/webhookdatatransferstatus.rb +1 -0
  108. data/lib/moov/models/components.rb +32 -2
  109. data/lib/moov/models/errors/authorizationsimulationvalidationerror.rb +44 -0
  110. data/lib/moov/models/errors/authorizationsimulationvalidationerror.rbi +19 -0
  111. data/lib/moov/models/errors/clearingsimulationvalidationerror.rb +36 -0
  112. data/lib/moov/models/errors/clearingsimulationvalidationerror.rbi +15 -0
  113. data/lib/moov/models/errors/createinvoiceerror.rb +14 -2
  114. data/lib/moov/models/errors/createinvoiceerror.rbi +6 -0
  115. data/lib/moov/models/errors/invoicenotificationerror.rb +36 -0
  116. data/lib/moov/models/errors/invoicenotificationerror.rbi +15 -0
  117. data/lib/moov/models/errors/invoicenotificationratelimitederror.rb +44 -0
  118. data/lib/moov/models/errors/invoicenotificationratelimitederror.rbi +19 -0
  119. data/lib/moov/models/errors/requestcarderror.rb +2 -6
  120. data/lib/moov/models/errors/requestcarderror.rbi +0 -2
  121. data/lib/moov/models/errors/transfer_error.rb +2 -1
  122. data/lib/moov/models/errors/updateinvoiceerror.rb +6 -2
  123. data/lib/moov/models/errors/updateinvoiceerror.rbi +2 -0
  124. data/lib/moov/models/errors.rb +4 -0
  125. data/lib/moov/models/operations/createauthorizationsimulation_request.rb +36 -0
  126. data/lib/moov/models/operations/createauthorizationsimulation_request.rbi +15 -0
  127. data/lib/moov/models/operations/createauthorizationsimulation_response.rb +52 -0
  128. data/lib/moov/models/operations/createauthorizationsimulation_response.rbi +23 -0
  129. data/lib/moov/models/operations/createclearingsimulation_request.rb +40 -0
  130. data/lib/moov/models/operations/createclearingsimulation_request.rbi +17 -0
  131. data/lib/moov/models/operations/createclearingsimulation_response.rb +52 -0
  132. data/lib/moov/models/operations/createclearingsimulation_response.rbi +23 -0
  133. data/lib/moov/models/operations/createinvoicenotification_request.rb +40 -0
  134. data/lib/moov/models/operations/createinvoicenotification_request.rbi +17 -0
  135. data/lib/moov/models/operations/createinvoicenotification_response.rb +44 -0
  136. data/lib/moov/models/operations/{createcancellation_response.rbi → createinvoicenotification_response.rbi} +2 -4
  137. data/lib/moov/models/operations/createreversalsimulation_request.rb +36 -0
  138. data/lib/moov/models/operations/createreversalsimulation_request.rbi +15 -0
  139. data/lib/moov/models/operations/createreversalsimulation_response.rb +52 -0
  140. data/lib/moov/models/operations/createreversalsimulation_response.rbi +23 -0
  141. data/lib/moov/models/operations/createtransfer_response.rb +5 -5
  142. data/lib/moov/models/operations/createtransfer_response.rbi +2 -2
  143. data/lib/moov/models/operations/downloadfile_request.rb +36 -0
  144. data/lib/moov/models/operations/downloadfile_request.rbi +15 -0
  145. data/lib/moov/models/operations/downloadfile_response.rb +64 -0
  146. data/lib/moov/models/operations/downloadfile_response.rbi +29 -0
  147. data/lib/moov/models/operations/getissuedcardactivity_request.rb +36 -0
  148. data/lib/moov/models/operations/getissuedcardactivity_request.rbi +15 -0
  149. data/lib/moov/models/operations/getissuedcardactivity_response.rb +48 -0
  150. data/lib/moov/models/operations/getissuedcardactivity_response.rbi +21 -0
  151. data/lib/moov/models/operations/initiaterefund_request.rb +1 -1
  152. data/lib/moov/models/operations/listissuedcardactivity_request.rb +60 -0
  153. data/lib/moov/models/operations/listissuedcardactivity_request.rbi +27 -0
  154. data/lib/moov/models/operations/listissuedcardactivity_response.rb +48 -0
  155. data/lib/moov/models/operations/listissuedcardactivity_response.rbi +21 -0
  156. data/lib/moov/models/operations/{createcancellation_request.rb → listtransferevents_request.rb} +5 -9
  157. data/lib/moov/models/operations/{createcancellation_request.rbi → listtransferevents_request.rbi} +2 -4
  158. data/lib/moov/models/operations/{createcancellation_response.rb → listtransferevents_response.rb} +6 -6
  159. data/lib/moov/models/operations/listtransferevents_response.rbi +21 -0
  160. data/lib/moov/models/operations/listtransfers_request.rb +6 -2
  161. data/lib/moov/models/operations/listtransfers_request.rbi +2 -0
  162. data/lib/moov/models/operations.rb +16 -2
  163. data/lib/moov/sdkconfiguration.rb +3 -3
  164. data/lib/moov/transfers.rb +128 -156
  165. metadata +106 -10
  166. data/lib/moov/models/components/cardexpirationerror.rb +0 -36
  167. data/lib/moov/models/components/cardexpirationerror.rbi +0 -15
@@ -0,0 +1,64 @@
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 Operations
10
+
11
+ class DownloadFileResponse
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # HTTP response content type for this operation
16
+ field :content_type, ::String
17
+ # HTTP response status code for this operation
18
+ field :status_code, ::Integer
19
+ # Raw HTTP response; suitable for custom response parsing
20
+ field :raw_response, ::Faraday::Response
21
+
22
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
23
+ # Response body for returning the raw contents of a file.
24
+ field :two_hundred_application_pdf_bytes, Crystalline::Nilable.new(::String)
25
+ # Response body for returning the raw contents of a file.
26
+ field :two_hundred_image_png_bytes, Crystalline::Nilable.new(::String)
27
+ # Response body for returning the raw contents of a file.
28
+ field :two_hundred_image_jpeg_bytes, Crystalline::Nilable.new(::String)
29
+ # Response body for returning the raw contents of a file.
30
+ field :two_hundred_text_plain_bytes, Crystalline::Nilable.new(::String)
31
+ # Response body for returning the raw contents of a file.
32
+ field :two_hundred_application_octet_stream_bytes, Crystalline::Nilable.new(::String)
33
+
34
+ sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]], two_hundred_application_pdf_bytes: T.nilable(::String), two_hundred_image_png_bytes: T.nilable(::String), two_hundred_image_jpeg_bytes: T.nilable(::String), two_hundred_text_plain_bytes: T.nilable(::String), two_hundred_application_octet_stream_bytes: T.nilable(::String)).void }
35
+ def initialize(content_type:, status_code:, raw_response:, headers:, two_hundred_application_pdf_bytes: nil, two_hundred_image_png_bytes: nil, two_hundred_image_jpeg_bytes: nil, two_hundred_text_plain_bytes: nil, two_hundred_application_octet_stream_bytes: nil)
36
+ @content_type = content_type
37
+ @status_code = status_code
38
+ @raw_response = raw_response
39
+ @headers = headers
40
+ @two_hundred_application_pdf_bytes = two_hundred_application_pdf_bytes
41
+ @two_hundred_image_png_bytes = two_hundred_image_png_bytes
42
+ @two_hundred_image_jpeg_bytes = two_hundred_image_jpeg_bytes
43
+ @two_hundred_text_plain_bytes = two_hundred_text_plain_bytes
44
+ @two_hundred_application_octet_stream_bytes = two_hundred_application_octet_stream_bytes
45
+ end
46
+
47
+ sig { params(other: T.untyped).returns(T::Boolean) }
48
+ def ==(other)
49
+ return false unless other.is_a? self.class
50
+ return false unless @content_type == other.content_type
51
+ return false unless @status_code == other.status_code
52
+ return false unless @raw_response == other.raw_response
53
+ return false unless @headers == other.headers
54
+ return false unless @two_hundred_application_pdf_bytes == other.two_hundred_application_pdf_bytes
55
+ return false unless @two_hundred_image_png_bytes == other.two_hundred_image_png_bytes
56
+ return false unless @two_hundred_image_jpeg_bytes == other.two_hundred_image_jpeg_bytes
57
+ return false unless @two_hundred_text_plain_bytes == other.two_hundred_text_plain_bytes
58
+ return false unless @two_hundred_application_octet_stream_bytes == other.two_hundred_application_octet_stream_bytes
59
+ true
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,29 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::DownloadFileResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::DownloadFileResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def status_code(); end
14
+ def status_code=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ def headers(); end
18
+ def headers=(str_); end
19
+ def two_hundred_application_pdf_bytes(); end
20
+ def two_hundred_application_pdf_bytes=(str_); end
21
+ def two_hundred_image_png_bytes(); end
22
+ def two_hundred_image_png_bytes=(str_); end
23
+ def two_hundred_image_jpeg_bytes(); end
24
+ def two_hundred_image_jpeg_bytes=(str_); end
25
+ def two_hundred_text_plain_bytes(); end
26
+ def two_hundred_text_plain_bytes=(str_); end
27
+ def two_hundred_application_octet_stream_bytes(); end
28
+ def two_hundred_application_octet_stream_bytes=(str_); end
29
+ end
@@ -0,0 +1,36 @@
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 Operations
10
+
11
+ class GetIssuedCardActivityRequest
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The Moov business account for which cards have been issued.
16
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
17
+ # The identifier for the activity item, either authorizationID or cardTransactionID.
18
+ field :id, ::String, { 'path_param': { 'field_name': 'id', 'style': 'simple', 'explode': false } }
19
+
20
+ sig { params(account_id: ::String, id: ::String).void }
21
+ def initialize(account_id:, id:)
22
+ @account_id = account_id
23
+ @id = id
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @account_id == other.account_id
30
+ return false unless @id == other.id
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::GetIssuedCardActivityRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::GetIssuedCardActivityRequest
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def id(); end
14
+ def id=(str_); end
15
+ end
@@ -0,0 +1,48 @@
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 Operations
10
+
11
+ class GetIssuedCardActivityResponse
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # HTTP response content type for this operation
16
+ field :content_type, ::String
17
+ # HTTP response status code for this operation
18
+ field :status_code, ::Integer
19
+ # Raw HTTP response; suitable for custom response parsing
20
+ field :raw_response, ::Faraday::Response
21
+
22
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
23
+ # The request completed successfully.
24
+ field :issued_card_activity, Crystalline::Nilable.new(Models::Components::IssuedCardActivity)
25
+
26
+ sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]], issued_card_activity: T.nilable(Models::Components::IssuedCardActivity)).void }
27
+ def initialize(content_type:, status_code:, raw_response:, headers:, issued_card_activity: nil)
28
+ @content_type = content_type
29
+ @status_code = status_code
30
+ @raw_response = raw_response
31
+ @headers = headers
32
+ @issued_card_activity = issued_card_activity
33
+ end
34
+
35
+ sig { params(other: T.untyped).returns(T::Boolean) }
36
+ def ==(other)
37
+ return false unless other.is_a? self.class
38
+ return false unless @content_type == other.content_type
39
+ return false unless @status_code == other.status_code
40
+ return false unless @raw_response == other.raw_response
41
+ return false unless @headers == other.headers
42
+ return false unless @issued_card_activity == other.issued_card_activity
43
+ true
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::GetIssuedCardActivityResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::GetIssuedCardActivityResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def status_code(); end
14
+ def status_code=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ def headers(); end
18
+ def headers=(str_); end
19
+ def issued_card_activity(); end
20
+ def issued_card_activity=(str_); end
21
+ end
@@ -14,7 +14,7 @@ module Moov
14
14
 
15
15
  # Prevents duplicate refunds from being created.
16
16
  field :x_idempotency_key, ::String, { 'header': { 'field_name': 'x-idempotency-key', 'style': 'simple', 'explode': false } }
17
- # The merchant's Moov account ID.
17
+ # Moov account ID of the partner for the transfer.
18
18
  field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
19
19
  # Identifier for the transfer.
20
20
  field :transfer_id, ::String, { 'path_param': { 'field_name': 'transferID', 'style': 'simple', 'explode': false } }
@@ -0,0 +1,60 @@
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 Operations
10
+
11
+ class ListIssuedCardActivityRequest
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The Moov business account for which cards have been issued.
16
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
17
+
18
+ field :skip, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'skip', 'style': 'form', 'explode': false } }
19
+ # Page size. When omitted, the server defaults to `200`.
20
+ field :count, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'count', 'style': 'form', 'explode': false } }
21
+ # Optional ID of the issued card to filter results.
22
+ field :issued_card_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'issuedCardID', 'style': 'form', 'explode': false } }
23
+ # Optional identifier for the account of the card's authorized user.
24
+ field :authorized_user_account_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'authorizedUserAccountID', 'style': 'form', 'explode': false } }
25
+ # Optional, comma-separated statuses of the activity to filter results.
26
+ field :statuses, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::IssuingAuthorizationStatus)), { 'query_param': { 'field_name': 'statuses', 'style': 'form', 'explode': false } }
27
+ # Optional date-time which inclusively filters all activity created after this date-time.
28
+ field :start_date_time, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'startDateTime', 'style': 'form', 'explode': false } }
29
+ # Optional date-time which exclusively filters all activity created before this date-time.
30
+ field :end_date_time, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'endDateTime', 'style': 'form', 'explode': false } }
31
+
32
+ sig { params(account_id: ::String, skip: T.nilable(::Integer), count: T.nilable(::Integer), issued_card_id: T.nilable(::String), authorized_user_account_id: T.nilable(::String), statuses: T.nilable(T::Array[Models::Components::IssuingAuthorizationStatus]), start_date_time: T.nilable(::DateTime), end_date_time: T.nilable(::DateTime)).void }
33
+ def initialize(account_id:, skip: nil, count: nil, issued_card_id: nil, authorized_user_account_id: nil, statuses: nil, start_date_time: nil, end_date_time: nil)
34
+ @account_id = account_id
35
+ @skip = skip
36
+ @count = count
37
+ @issued_card_id = issued_card_id
38
+ @authorized_user_account_id = authorized_user_account_id
39
+ @statuses = statuses
40
+ @start_date_time = start_date_time
41
+ @end_date_time = end_date_time
42
+ end
43
+
44
+ sig { params(other: T.untyped).returns(T::Boolean) }
45
+ def ==(other)
46
+ return false unless other.is_a? self.class
47
+ return false unless @account_id == other.account_id
48
+ return false unless @skip == other.skip
49
+ return false unless @count == other.count
50
+ return false unless @issued_card_id == other.issued_card_id
51
+ return false unless @authorized_user_account_id == other.authorized_user_account_id
52
+ return false unless @statuses == other.statuses
53
+ return false unless @start_date_time == other.start_date_time
54
+ return false unless @end_date_time == other.end_date_time
55
+ true
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,27 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::ListIssuedCardActivityRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::ListIssuedCardActivityRequest
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def skip(); end
14
+ def skip=(str_); end
15
+ def count(); end
16
+ def count=(str_); end
17
+ def issued_card_id(); end
18
+ def issued_card_id=(str_); end
19
+ def authorized_user_account_id(); end
20
+ def authorized_user_account_id=(str_); end
21
+ def statuses(); end
22
+ def statuses=(str_); end
23
+ def start_date_time(); end
24
+ def start_date_time=(str_); end
25
+ def end_date_time(); end
26
+ def end_date_time=(str_); end
27
+ end
@@ -0,0 +1,48 @@
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 Operations
10
+
11
+ class ListIssuedCardActivityResponse
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # HTTP response content type for this operation
16
+ field :content_type, ::String
17
+ # HTTP response status code for this operation
18
+ field :status_code, ::Integer
19
+ # Raw HTTP response; suitable for custom response parsing
20
+ field :raw_response, ::Faraday::Response
21
+
22
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
23
+ # The request completed successfully.
24
+ field :issued_card_activities, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::IssuedCardActivity))
25
+
26
+ sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]], issued_card_activities: T.nilable(T::Array[Models::Components::IssuedCardActivity])).void }
27
+ def initialize(content_type:, status_code:, raw_response:, headers:, issued_card_activities: nil)
28
+ @content_type = content_type
29
+ @status_code = status_code
30
+ @raw_response = raw_response
31
+ @headers = headers
32
+ @issued_card_activities = issued_card_activities
33
+ end
34
+
35
+ sig { params(other: T.untyped).returns(T::Boolean) }
36
+ def ==(other)
37
+ return false unless other.is_a? self.class
38
+ return false unless @content_type == other.content_type
39
+ return false unless @status_code == other.status_code
40
+ return false unless @raw_response == other.raw_response
41
+ return false unless @headers == other.headers
42
+ return false unless @issued_card_activities == other.issued_card_activities
43
+ true
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::ListIssuedCardActivityResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::ListIssuedCardActivityResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def status_code(); end
14
+ def status_code=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ def headers(); end
18
+ def headers=(str_); end
19
+ def issued_card_activities(); end
20
+ def issued_card_activities=(str_); end
21
+ end
@@ -8,22 +8,19 @@ module Moov
8
8
  module Models
9
9
  module Operations
10
10
 
11
- class CreateCancellationRequest
11
+ class ListTransferEventsRequest
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
- # The partner's Moov account ID.
15
+ # Moov account ID of the partner or the Transfer's source or destination.
16
16
  field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
17
- # The transfer ID to cancel.
17
+ # Identifier for the Transfer.
18
18
  field :transfer_id, ::String, { 'path_param': { 'field_name': 'transferID', 'style': 'simple', 'explode': false } }
19
19
 
20
- field :create_cancellation, Models::Components::CreateCancellation, { 'request': { 'media_type': 'application/json' } }
21
-
22
- sig { params(account_id: ::String, transfer_id: ::String, create_cancellation: Models::Components::CreateCancellation).void }
23
- def initialize(account_id:, transfer_id:, create_cancellation:)
20
+ sig { params(account_id: ::String, transfer_id: ::String).void }
21
+ def initialize(account_id:, transfer_id:)
24
22
  @account_id = account_id
25
23
  @transfer_id = transfer_id
26
- @create_cancellation = create_cancellation
27
24
  end
28
25
 
29
26
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -31,7 +28,6 @@ module Moov
31
28
  return false unless other.is_a? self.class
32
29
  return false unless @account_id == other.account_id
33
30
  return false unless @transfer_id == other.transfer_id
34
- return false unless @create_cancellation == other.create_cancellation
35
31
  true
36
32
  end
37
33
  end
@@ -2,16 +2,14 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
 
5
- class Moov::Models::Operations::CreateCancellationRequest
5
+ class Moov::Models::Operations::ListTransferEventsRequest
6
6
  extend ::Crystalline::MetadataFields::ClassMethods
7
7
  end
8
8
 
9
9
 
10
- class Moov::Models::Operations::CreateCancellationRequest
10
+ class Moov::Models::Operations::ListTransferEventsRequest
11
11
  def account_id(); end
12
12
  def account_id=(str_); end
13
13
  def transfer_id(); end
14
14
  def transfer_id=(str_); end
15
- def create_cancellation(); end
16
- def create_cancellation=(str_); end
17
15
  end
@@ -8,7 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Operations
10
10
 
11
- class CreateCancellationResponse
11
+ class ListTransferEventsResponse
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
@@ -21,15 +21,15 @@ module Moov
21
21
 
22
22
  field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
23
23
  # The request completed successfully.
24
- field :cancellation, Crystalline::Nilable.new(Models::Components::Cancellation)
24
+ field :transfer_events, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::TransferEvent))
25
25
 
26
- sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]], cancellation: T.nilable(Models::Components::Cancellation)).void }
27
- def initialize(content_type:, status_code:, raw_response:, headers:, cancellation: nil)
26
+ sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]], transfer_events: T.nilable(T::Array[Models::Components::TransferEvent])).void }
27
+ def initialize(content_type:, status_code:, raw_response:, headers:, transfer_events: nil)
28
28
  @content_type = content_type
29
29
  @status_code = status_code
30
30
  @raw_response = raw_response
31
31
  @headers = headers
32
- @cancellation = cancellation
32
+ @transfer_events = transfer_events
33
33
  end
34
34
 
35
35
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -39,7 +39,7 @@ module Moov
39
39
  return false unless @status_code == other.status_code
40
40
  return false unless @raw_response == other.raw_response
41
41
  return false unless @headers == other.headers
42
- return false unless @cancellation == other.cancellation
42
+ return false unless @transfer_events == other.transfer_events
43
43
  true
44
44
  end
45
45
  end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::ListTransferEventsResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::ListTransferEventsResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def status_code(); end
14
+ def status_code=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ def headers(); end
18
+ def headers=(str_); end
19
+ def transfer_events(); end
20
+ def transfer_events=(str_); end
21
+ end
@@ -36,6 +36,8 @@ module Moov
36
36
  field :foreign_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'foreignID', 'style': 'form', 'explode': false } }
37
37
  # Optional comma-separated authorization IDs.
38
38
  field :authorization_i_ds, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'query_param': { 'field_name': 'authorizationIDs', 'style': 'form', 'explode': false } }
39
+ # Optional comma-separated invoice IDs.
40
+ field :invoice_i_ds, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'query_param': { 'field_name': 'invoiceIDs', 'style': 'form', 'explode': false } }
39
41
  # Optional, comma-separated transfer types by which the response is filtered.
40
42
  field :transfer_types, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::TransferType)), { 'query_param': { 'field_name': 'transferTypes', 'style': 'form', 'explode': false } }
41
43
 
@@ -43,8 +45,8 @@ module Moov
43
45
  # Page size. When omitted, the server defaults to `200`.
44
46
  field :count, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'count', 'style': 'form', 'explode': false } }
45
47
 
46
- sig { params(account_id: ::String, account_i_ds: T.nilable(T::Array[::String]), status: T.nilable(Models::Components::TransferStatus), start_date_time: T.nilable(::DateTime), end_date_time: T.nilable(::DateTime), group_id: T.nilable(::String), schedule_id: T.nilable(::String), payment_link_code: T.nilable(::String), refunded: T.nilable(T::Boolean), disputed: T.nilable(T::Boolean), foreign_id: T.nilable(::String), authorization_i_ds: T.nilable(T::Array[::String]), transfer_types: T.nilable(T::Array[Models::Components::TransferType]), skip: T.nilable(::Integer), count: T.nilable(::Integer)).void }
47
- def initialize(account_id:, account_i_ds: nil, status: nil, start_date_time: nil, end_date_time: nil, group_id: nil, schedule_id: nil, payment_link_code: nil, refunded: nil, disputed: nil, foreign_id: nil, authorization_i_ds: nil, transfer_types: nil, skip: nil, count: nil)
48
+ sig { params(account_id: ::String, account_i_ds: T.nilable(T::Array[::String]), status: T.nilable(Models::Components::TransferStatus), start_date_time: T.nilable(::DateTime), end_date_time: T.nilable(::DateTime), group_id: T.nilable(::String), schedule_id: T.nilable(::String), payment_link_code: T.nilable(::String), refunded: T.nilable(T::Boolean), disputed: T.nilable(T::Boolean), foreign_id: T.nilable(::String), authorization_i_ds: T.nilable(T::Array[::String]), invoice_i_ds: T.nilable(T::Array[::String]), transfer_types: T.nilable(T::Array[Models::Components::TransferType]), skip: T.nilable(::Integer), count: T.nilable(::Integer)).void }
49
+ def initialize(account_id:, account_i_ds: nil, status: nil, start_date_time: nil, end_date_time: nil, group_id: nil, schedule_id: nil, payment_link_code: nil, refunded: nil, disputed: nil, foreign_id: nil, authorization_i_ds: nil, invoice_i_ds: nil, transfer_types: nil, skip: nil, count: nil)
48
50
  @account_id = account_id
49
51
  @account_i_ds = account_i_ds
50
52
  @status = status
@@ -57,6 +59,7 @@ module Moov
57
59
  @disputed = disputed
58
60
  @foreign_id = foreign_id
59
61
  @authorization_i_ds = authorization_i_ds
62
+ @invoice_i_ds = invoice_i_ds
60
63
  @transfer_types = transfer_types
61
64
  @skip = skip
62
65
  @count = count
@@ -77,6 +80,7 @@ module Moov
77
80
  return false unless @disputed == other.disputed
78
81
  return false unless @foreign_id == other.foreign_id
79
82
  return false unless @authorization_i_ds == other.authorization_i_ds
83
+ return false unless @invoice_i_ds == other.invoice_i_ds
80
84
  return false unless @transfer_types == other.transfer_types
81
85
  return false unless @skip == other.skip
82
86
  return false unless @count == other.count
@@ -32,6 +32,8 @@ class Moov::Models::Operations::ListTransfersRequest
32
32
  def foreign_id=(str_); end
33
33
  def authorization_i_ds(); end
34
34
  def authorization_i_ds=(str_); end
35
+ def invoice_i_ds(); end
36
+ def invoice_i_ds=(str_); end
35
37
  def transfer_types(); end
36
38
  def transfer_types=(str_); end
37
39
  def skip(); end
@@ -24,18 +24,22 @@ module Moov
24
24
  autoload :CreateAccountResponse, 'moov/models/operations/createaccount_response.rb'
25
25
  autoload :CreateApplePaySessionRequest, 'moov/models/operations/createapplepaysession_request.rb'
26
26
  autoload :CreateApplePaySessionResponse, 'moov/models/operations/createapplepaysession_response.rb'
27
+ autoload :CreateAuthorizationSimulationRequest, 'moov/models/operations/createauthorizationsimulation_request.rb'
28
+ autoload :CreateAuthorizationSimulationResponse, 'moov/models/operations/createauthorizationsimulation_response.rb'
27
29
  autoload :CreateBankAccountAttestationRequest, 'moov/models/operations/createbankaccountattestation_request.rb'
28
30
  autoload :CreateBankAccountAttestationResponse, 'moov/models/operations/createbankaccountattestation_response.rb'
29
31
  autoload :CreateBrandRequest, 'moov/models/operations/createbrand_request.rb'
30
32
  autoload :CreateBrandResponse, 'moov/models/operations/createbrand_response.rb'
31
- autoload :CreateCancellationRequest, 'moov/models/operations/createcancellation_request.rb'
32
- autoload :CreateCancellationResponse, 'moov/models/operations/createcancellation_response.rb'
33
33
  autoload :CreateCaptureRequest, 'moov/models/operations/createcapture_request.rb'
34
34
  autoload :CreateCaptureResponse, 'moov/models/operations/createcapture_response.rb'
35
+ autoload :CreateClearingSimulationRequest, 'moov/models/operations/createclearingsimulation_request.rb'
36
+ autoload :CreateClearingSimulationResponse, 'moov/models/operations/createclearingsimulation_response.rb'
35
37
  autoload :CreateDepositAccountRequest, 'moov/models/operations/createdepositaccount_request.rb'
36
38
  autoload :CreateDepositAccountResponse, 'moov/models/operations/createdepositaccount_response.rb'
37
39
  autoload :CreateFeePlanAgreementsRequest, 'moov/models/operations/createfeeplanagreements_request.rb'
38
40
  autoload :CreateFeePlanAgreementsResponse, 'moov/models/operations/createfeeplanagreements_response.rb'
41
+ autoload :CreateInvoiceNotificationRequest, 'moov/models/operations/createinvoicenotification_request.rb'
42
+ autoload :CreateInvoiceNotificationResponse, 'moov/models/operations/createinvoicenotification_response.rb'
39
43
  autoload :CreateInvoicePaymentRequest, 'moov/models/operations/createinvoicepayment_request.rb'
40
44
  autoload :CreateInvoicePaymentResponse, 'moov/models/operations/createinvoicepayment_response.rb'
41
45
  autoload :CreateInvoiceRequest, 'moov/models/operations/createinvoice_request.rb'
@@ -50,6 +54,8 @@ module Moov
50
54
  autoload :CreateRepresentativeResponse, 'moov/models/operations/createrepresentative_response.rb'
51
55
  autoload :CreateResolutionLinkRequest, 'moov/models/operations/createresolutionlink_request.rb'
52
56
  autoload :CreateResolutionLinkResponse, 'moov/models/operations/createresolutionlink_response.rb'
57
+ autoload :CreateReversalSimulationRequest, 'moov/models/operations/createreversalsimulation_request.rb'
58
+ autoload :CreateReversalSimulationResponse, 'moov/models/operations/createreversalsimulation_response.rb'
53
59
  autoload :CreateReversalRequest, 'moov/models/operations/createreversal_request.rb'
54
60
  autoload :CreateReversalResponse, 'moov/models/operations/createreversal_response.rb'
55
61
  autoload :CreateScheduleRequest, 'moov/models/operations/createschedule_request.rb'
@@ -99,6 +105,8 @@ module Moov
99
105
  autoload :DisableWebhookResponse, 'moov/models/operations/disablewebhook_response.rb'
100
106
  autoload :DisconnectAccountRequest, 'moov/models/operations/disconnectaccount_request.rb'
101
107
  autoload :DisconnectAccountResponse, 'moov/models/operations/disconnectaccount_response.rb'
108
+ autoload :DownloadFileRequest, 'moov/models/operations/downloadfile_request.rb'
109
+ autoload :DownloadFileResponse, 'moov/models/operations/downloadfile_response.rb'
102
110
  autoload :GenerateEndToEndKeyResponse, 'moov/models/operations/generateendtoendkey_response.rb'
103
111
  autoload :GetAccountCountriesRequest, 'moov/models/operations/getaccountcountries_request.rb'
104
112
  autoload :GetAccountCountriesResponse, 'moov/models/operations/getaccountcountries_response.rb'
@@ -147,6 +155,8 @@ module Moov
147
155
  autoload :GetImageMetadataResponse, 'moov/models/operations/getimagemetadata_response.rb'
148
156
  autoload :GetInvoiceRequest, 'moov/models/operations/getinvoice_request.rb'
149
157
  autoload :GetInvoiceResponse, 'moov/models/operations/getinvoice_response.rb'
158
+ autoload :GetIssuedCardActivityRequest, 'moov/models/operations/getissuedcardactivity_request.rb'
159
+ autoload :GetIssuedCardActivityResponse, 'moov/models/operations/getissuedcardactivity_response.rb'
150
160
  autoload :GetIssuedCardAuthorizationRequest, 'moov/models/operations/getissuedcardauthorization_request.rb'
151
161
  autoload :GetIssuedCardAuthorizationResponse, 'moov/models/operations/getissuedcardauthorization_response.rb'
152
162
  autoload :GetIssuedCardTransactionRequest, 'moov/models/operations/getissuedcardtransaction_request.rb'
@@ -270,6 +280,8 @@ module Moov
270
280
  autoload :ListInvoicePaymentsResponse, 'moov/models/operations/listinvoicepayments_response.rb'
271
281
  autoload :ListInvoicesRequest, 'moov/models/operations/listinvoices_request.rb'
272
282
  autoload :ListInvoicesResponse, 'moov/models/operations/listinvoices_response.rb'
283
+ autoload :ListIssuedCardActivityRequest, 'moov/models/operations/listissuedcardactivity_request.rb'
284
+ autoload :ListIssuedCardActivityResponse, 'moov/models/operations/listissuedcardactivity_response.rb'
273
285
  autoload :ListIssuedCardAuthorizationEventsRequest, 'moov/models/operations/listissuedcardauthorizationevents_request.rb'
274
286
  autoload :ListIssuedCardAuthorizationEventsResponse, 'moov/models/operations/listissuedcardauthorizationevents_response.rb'
275
287
  autoload :ListIssuedCardAuthorizationsRequest, 'moov/models/operations/listissuedcardauthorizations_request.rb'
@@ -315,6 +327,8 @@ module Moov
315
327
  autoload :ListTicketsResponseBody, 'moov/models/operations/listtickets_responsebody.rb'
316
328
  autoload :ListTicketsRequest, 'moov/models/operations/listtickets_request.rb'
317
329
  autoload :ListTicketsResponse, 'moov/models/operations/listtickets_response.rb'
330
+ autoload :ListTransferEventsRequest, 'moov/models/operations/listtransferevents_request.rb'
331
+ autoload :ListTransferEventsResponse, 'moov/models/operations/listtransferevents_response.rb'
318
332
  autoload :ListTransfersRequest, 'moov/models/operations/listtransfers_request.rb'
319
333
  autoload :ListTransfersResponse, 'moov/models/operations/listtransfers_response.rb'
320
334
  autoload :ListWalletTransactionsRequest, 'moov/models/operations/listwallettransactions_request.rb'
@@ -88,9 +88,9 @@ module Moov
88
88
  end
89
89
  @language = 'ruby'
90
90
  @openapi_doc_version = 'dev'
91
- @sdk_version = '0.0.0-dev.30'
92
- @gen_version = '2.938.0'
93
- @user_agent = 'speakeasy-sdk/ruby 0.0.0-dev.30 2.938.0 dev moov_ruby'
91
+ @sdk_version = '0.0.0-dev.32'
92
+ @gen_version = '2.950.2'
93
+ @user_agent = 'speakeasy-sdk/ruby 0.0.0-dev.32 2.950.2 dev moov_ruby'
94
94
  end
95
95
 
96
96
  sig { returns([String, T::Hash[Symbol, String]]) }