stigg 0.1.0.pre.alpha.1

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 (230) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +45 -0
  4. data/README.md +233 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/stigg/client.rb +72 -0
  7. data/lib/stigg/errors.rb +228 -0
  8. data/lib/stigg/file_part.rb +58 -0
  9. data/lib/stigg/internal/my_cursor_id_page.rb +82 -0
  10. data/lib/stigg/internal/transport/base_client.rb +570 -0
  11. data/lib/stigg/internal/transport/pooled_net_requester.rb +210 -0
  12. data/lib/stigg/internal/type/array_of.rb +168 -0
  13. data/lib/stigg/internal/type/base_model.rb +529 -0
  14. data/lib/stigg/internal/type/base_page.rb +55 -0
  15. data/lib/stigg/internal/type/boolean.rb +77 -0
  16. data/lib/stigg/internal/type/converter.rb +327 -0
  17. data/lib/stigg/internal/type/enum.rb +131 -0
  18. data/lib/stigg/internal/type/file_input.rb +110 -0
  19. data/lib/stigg/internal/type/hash_of.rb +188 -0
  20. data/lib/stigg/internal/type/request_parameters.rb +42 -0
  21. data/lib/stigg/internal/type/union.rb +237 -0
  22. data/lib/stigg/internal/type/unknown.rb +81 -0
  23. data/lib/stigg/internal/util.rb +920 -0
  24. data/lib/stigg/internal.rb +20 -0
  25. data/lib/stigg/models/v1/coupon_create_params.rb +221 -0
  26. data/lib/stigg/models/v1/coupon_create_response.rb +317 -0
  27. data/lib/stigg/models/v1/coupon_list_params.rb +40 -0
  28. data/lib/stigg/models/v1/coupon_list_response.rb +324 -0
  29. data/lib/stigg/models/v1/coupon_retrieve_params.rb +16 -0
  30. data/lib/stigg/models/v1/coupon_retrieve_response.rb +317 -0
  31. data/lib/stigg/models/v1/customer_archive_params.rb +16 -0
  32. data/lib/stigg/models/v1/customer_create_params.rb +185 -0
  33. data/lib/stigg/models/v1/customer_list_params.rb +40 -0
  34. data/lib/stigg/models/v1/customer_list_response.rb +223 -0
  35. data/lib/stigg/models/v1/customer_response.rb +216 -0
  36. data/lib/stigg/models/v1/customer_retrieve_params.rb +16 -0
  37. data/lib/stigg/models/v1/customer_unarchive_params.rb +16 -0
  38. data/lib/stigg/models/v1/customer_update_params.rb +107 -0
  39. data/lib/stigg/models/v1/customers/payment_method_attach_params.rb +197 -0
  40. data/lib/stigg/models/v1/customers/payment_method_detach_params.rb +18 -0
  41. data/lib/stigg/models/v1/customers/promotional_create_params.rb +294 -0
  42. data/lib/stigg/models/v1/customers/promotional_create_response.rb +268 -0
  43. data/lib/stigg/models/v1/customers/promotional_revoke_params.rb +24 -0
  44. data/lib/stigg/models/v1/customers/promotional_revoke_response.rb +268 -0
  45. data/lib/stigg/models/v1/customers/usage_retrieve_params.rb +56 -0
  46. data/lib/stigg/models/v1/customers/usage_retrieve_response.rb +145 -0
  47. data/lib/stigg/models/v1/subscription_create_params.rb +214 -0
  48. data/lib/stigg/models/v1/subscription_create_response.rb +338 -0
  49. data/lib/stigg/models/v1/subscription_delegate_params.rb +24 -0
  50. data/lib/stigg/models/v1/subscription_delegate_response.rb +274 -0
  51. data/lib/stigg/models/v1/subscription_list_params.rb +60 -0
  52. data/lib/stigg/models/v1/subscription_list_response.rb +281 -0
  53. data/lib/stigg/models/v1/subscription_migrate_params.rb +37 -0
  54. data/lib/stigg/models/v1/subscription_migrate_response.rb +274 -0
  55. data/lib/stigg/models/v1/subscription_preview_params.rb +644 -0
  56. data/lib/stigg/models/v1/subscription_preview_response.rb +431 -0
  57. data/lib/stigg/models/v1/subscription_retrieve_params.rb +16 -0
  58. data/lib/stigg/models/v1/subscription_retrieve_response.rb +274 -0
  59. data/lib/stigg/models/v1/subscription_transfer_params.rb +28 -0
  60. data/lib/stigg/models/v1/subscription_transfer_response.rb +274 -0
  61. data/lib/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_params.rb +18 -0
  62. data/lib/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_response.rb +32 -0
  63. data/lib/stigg/models/v1/subscriptions/future_update_cancel_schedule_params.rb +18 -0
  64. data/lib/stigg/models/v1/subscriptions/future_update_cancel_schedule_response.rb +32 -0
  65. data/lib/stigg/models/v1_create_event_params.rb +87 -0
  66. data/lib/stigg/models/v1_create_event_response.rb +16 -0
  67. data/lib/stigg/models/v1_create_usage_params.rb +96 -0
  68. data/lib/stigg/models/v1_create_usage_response.rb +112 -0
  69. data/lib/stigg/models.rb +47 -0
  70. data/lib/stigg/request_options.rb +77 -0
  71. data/lib/stigg/resources/v1/coupons.rb +95 -0
  72. data/lib/stigg/resources/v1/customers/payment_method.rb +67 -0
  73. data/lib/stigg/resources/v1/customers/promotional.rb +69 -0
  74. data/lib/stigg/resources/v1/customers/usage.rb +59 -0
  75. data/lib/stigg/resources/v1/customers.rb +177 -0
  76. data/lib/stigg/resources/v1/subscriptions/future_update.rb +56 -0
  77. data/lib/stigg/resources/v1/subscriptions.rb +241 -0
  78. data/lib/stigg/resources/v1.rb +70 -0
  79. data/lib/stigg/version.rb +5 -0
  80. data/lib/stigg.rb +108 -0
  81. data/manifest.yaml +17 -0
  82. data/rbi/stigg/client.rbi +49 -0
  83. data/rbi/stigg/errors.rbi +205 -0
  84. data/rbi/stigg/file_part.rbi +37 -0
  85. data/rbi/stigg/internal/my_cursor_id_page.rbi +19 -0
  86. data/rbi/stigg/internal/transport/base_client.rbi +297 -0
  87. data/rbi/stigg/internal/transport/pooled_net_requester.rbi +82 -0
  88. data/rbi/stigg/internal/type/array_of.rbi +104 -0
  89. data/rbi/stigg/internal/type/base_model.rbi +299 -0
  90. data/rbi/stigg/internal/type/base_page.rbi +42 -0
  91. data/rbi/stigg/internal/type/boolean.rbi +58 -0
  92. data/rbi/stigg/internal/type/converter.rbi +204 -0
  93. data/rbi/stigg/internal/type/enum.rbi +82 -0
  94. data/rbi/stigg/internal/type/file_input.rbi +58 -0
  95. data/rbi/stigg/internal/type/hash_of.rbi +104 -0
  96. data/rbi/stigg/internal/type/request_parameters.rbi +29 -0
  97. data/rbi/stigg/internal/type/union.rbi +126 -0
  98. data/rbi/stigg/internal/type/unknown.rbi +58 -0
  99. data/rbi/stigg/internal/util.rbi +478 -0
  100. data/rbi/stigg/internal.rbi +16 -0
  101. data/rbi/stigg/models/v1/coupon_create_params.rbi +758 -0
  102. data/rbi/stigg/models/v1/coupon_create_response.rbi +986 -0
  103. data/rbi/stigg/models/v1/coupon_list_params.rbi +70 -0
  104. data/rbi/stigg/models/v1/coupon_list_response.rbi +983 -0
  105. data/rbi/stigg/models/v1/coupon_retrieve_params.rbi +29 -0
  106. data/rbi/stigg/models/v1/coupon_retrieve_response.rbi +986 -0
  107. data/rbi/stigg/models/v1/customer_archive_params.rbi +29 -0
  108. data/rbi/stigg/models/v1/customer_create_params.rbi +376 -0
  109. data/rbi/stigg/models/v1/customer_list_params.rbi +70 -0
  110. data/rbi/stigg/models/v1/customer_list_response.rbi +447 -0
  111. data/rbi/stigg/models/v1/customer_response.rbi +423 -0
  112. data/rbi/stigg/models/v1/customer_retrieve_params.rbi +29 -0
  113. data/rbi/stigg/models/v1/customer_unarchive_params.rbi +29 -0
  114. data/rbi/stigg/models/v1/customer_update_params.rbi +226 -0
  115. data/rbi/stigg/models/v1/customers/payment_method_attach_params.rbi +769 -0
  116. data/rbi/stigg/models/v1/customers/payment_method_detach_params.rbi +34 -0
  117. data/rbi/stigg/models/v1/customers/promotional_create_params.rbi +639 -0
  118. data/rbi/stigg/models/v1/customers/promotional_create_response.rbi +495 -0
  119. data/rbi/stigg/models/v1/customers/promotional_revoke_params.rbi +42 -0
  120. data/rbi/stigg/models/v1/customers/promotional_revoke_response.rbi +497 -0
  121. data/rbi/stigg/models/v1/customers/usage_retrieve_params.rbi +84 -0
  122. data/rbi/stigg/models/v1/customers/usage_retrieve_response.rbi +353 -0
  123. data/rbi/stigg/models/v1/subscription_create_params.rbi +394 -0
  124. data/rbi/stigg/models/v1/subscription_create_response.rbi +668 -0
  125. data/rbi/stigg/models/v1/subscription_delegate_params.rbi +48 -0
  126. data/rbi/stigg/models/v1/subscription_delegate_response.rbi +535 -0
  127. data/rbi/stigg/models/v1/subscription_list_params.rbi +94 -0
  128. data/rbi/stigg/models/v1/subscription_list_response.rbi +543 -0
  129. data/rbi/stigg/models/v1/subscription_migrate_params.rbi +99 -0
  130. data/rbi/stigg/models/v1/subscription_migrate_response.rbi +535 -0
  131. data/rbi/stigg/models/v1/subscription_preview_params.rbi +1786 -0
  132. data/rbi/stigg/models/v1/subscription_preview_response.rbi +929 -0
  133. data/rbi/stigg/models/v1/subscription_retrieve_params.rbi +32 -0
  134. data/rbi/stigg/models/v1/subscription_retrieve_response.rbi +535 -0
  135. data/rbi/stigg/models/v1/subscription_transfer_params.rbi +50 -0
  136. data/rbi/stigg/models/v1/subscription_transfer_response.rbi +535 -0
  137. data/rbi/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_params.rbi +34 -0
  138. data/rbi/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_response.rbi +79 -0
  139. data/rbi/stigg/models/v1/subscriptions/future_update_cancel_schedule_params.rbi +34 -0
  140. data/rbi/stigg/models/v1/subscriptions/future_update_cancel_schedule_response.rbi +79 -0
  141. data/rbi/stigg/models/v1_create_event_params.rbi +160 -0
  142. data/rbi/stigg/models/v1_create_event_response.rbi +23 -0
  143. data/rbi/stigg/models/v1_create_usage_params.rbi +177 -0
  144. data/rbi/stigg/models/v1_create_usage_response.rbi +150 -0
  145. data/rbi/stigg/models.rbi +9 -0
  146. data/rbi/stigg/request_options.rbi +55 -0
  147. data/rbi/stigg/resources/v1/coupons.rbi +79 -0
  148. data/rbi/stigg/resources/v1/customers/payment_method.rbi +54 -0
  149. data/rbi/stigg/resources/v1/customers/promotional.rbi +53 -0
  150. data/rbi/stigg/resources/v1/customers/usage.rbi +45 -0
  151. data/rbi/stigg/resources/v1/customers.rbi +138 -0
  152. data/rbi/stigg/resources/v1/subscriptions/future_update.rbi +40 -0
  153. data/rbi/stigg/resources/v1/subscriptions.rbi +199 -0
  154. data/rbi/stigg/resources/v1.rbi +49 -0
  155. data/rbi/stigg/version.rbi +5 -0
  156. data/sig/stigg/client.rbs +26 -0
  157. data/sig/stigg/errors.rbs +117 -0
  158. data/sig/stigg/file_part.rbs +21 -0
  159. data/sig/stigg/internal/my_cursor_id_page.rbs +11 -0
  160. data/sig/stigg/internal/transport/base_client.rbs +133 -0
  161. data/sig/stigg/internal/transport/pooled_net_requester.rbs +48 -0
  162. data/sig/stigg/internal/type/array_of.rbs +48 -0
  163. data/sig/stigg/internal/type/base_model.rbs +102 -0
  164. data/sig/stigg/internal/type/base_page.rbs +24 -0
  165. data/sig/stigg/internal/type/boolean.rbs +26 -0
  166. data/sig/stigg/internal/type/converter.rbs +79 -0
  167. data/sig/stigg/internal/type/enum.rbs +32 -0
  168. data/sig/stigg/internal/type/file_input.rbs +25 -0
  169. data/sig/stigg/internal/type/hash_of.rbs +48 -0
  170. data/sig/stigg/internal/type/request_parameters.rbs +17 -0
  171. data/sig/stigg/internal/type/union.rbs +52 -0
  172. data/sig/stigg/internal/type/unknown.rbs +26 -0
  173. data/sig/stigg/internal/util.rbs +185 -0
  174. data/sig/stigg/internal.rbs +9 -0
  175. data/sig/stigg/models/v1/coupon_create_params.rbs +323 -0
  176. data/sig/stigg/models/v1/coupon_create_response.rbs +392 -0
  177. data/sig/stigg/models/v1/coupon_list_params.rbs +40 -0
  178. data/sig/stigg/models/v1/coupon_list_response.rbs +399 -0
  179. data/sig/stigg/models/v1/coupon_retrieve_params.rbs +17 -0
  180. data/sig/stigg/models/v1/coupon_retrieve_response.rbs +394 -0
  181. data/sig/stigg/models/v1/customer_archive_params.rbs +17 -0
  182. data/sig/stigg/models/v1/customer_create_params.rbs +169 -0
  183. data/sig/stigg/models/v1/customer_list_params.rbs +40 -0
  184. data/sig/stigg/models/v1/customer_list_response.rbs +198 -0
  185. data/sig/stigg/models/v1/customer_response.rbs +188 -0
  186. data/sig/stigg/models/v1/customer_retrieve_params.rbs +17 -0
  187. data/sig/stigg/models/v1/customer_unarchive_params.rbs +17 -0
  188. data/sig/stigg/models/v1/customer_update_params.rbs +110 -0
  189. data/sig/stigg/models/v1/customers/payment_method_attach_params.rbs +315 -0
  190. data/sig/stigg/models/v1/customers/payment_method_detach_params.rbs +19 -0
  191. data/sig/stigg/models/v1/customers/promotional_create_params.rbs +234 -0
  192. data/sig/stigg/models/v1/customers/promotional_create_response.rbs +209 -0
  193. data/sig/stigg/models/v1/customers/promotional_revoke_params.rbs +27 -0
  194. data/sig/stigg/models/v1/customers/promotional_revoke_response.rbs +209 -0
  195. data/sig/stigg/models/v1/customers/usage_retrieve_params.rbs +54 -0
  196. data/sig/stigg/models/v1/customers/usage_retrieve_response.rbs +134 -0
  197. data/sig/stigg/models/v1/subscription_create_params.rbs +199 -0
  198. data/sig/stigg/models/v1/subscription_create_response.rbs +283 -0
  199. data/sig/stigg/models/v1/subscription_delegate_params.rbs +26 -0
  200. data/sig/stigg/models/v1/subscription_delegate_response.rbs +224 -0
  201. data/sig/stigg/models/v1/subscription_list_params.rbs +58 -0
  202. data/sig/stigg/models/v1/subscription_list_response.rbs +229 -0
  203. data/sig/stigg/models/v1/subscription_migrate_params.rbs +43 -0
  204. data/sig/stigg/models/v1/subscription_migrate_response.rbs +224 -0
  205. data/sig/stigg/models/v1/subscription_preview_params.rbs +821 -0
  206. data/sig/stigg/models/v1/subscription_preview_response.rbs +466 -0
  207. data/sig/stigg/models/v1/subscription_retrieve_params.rbs +17 -0
  208. data/sig/stigg/models/v1/subscription_retrieve_response.rbs +224 -0
  209. data/sig/stigg/models/v1/subscription_transfer_params.rbs +26 -0
  210. data/sig/stigg/models/v1/subscription_transfer_response.rbs +224 -0
  211. data/sig/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_params.rbs +19 -0
  212. data/sig/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_response.rbs +34 -0
  213. data/sig/stigg/models/v1/subscriptions/future_update_cancel_schedule_params.rbs +19 -0
  214. data/sig/stigg/models/v1/subscriptions/future_update_cancel_schedule_response.rbs +34 -0
  215. data/sig/stigg/models/v1_create_event_params.rbs +80 -0
  216. data/sig/stigg/models/v1_create_event_response.rbs +13 -0
  217. data/sig/stigg/models/v1_create_usage_params.rbs +90 -0
  218. data/sig/stigg/models/v1_create_usage_response.rbs +85 -0
  219. data/sig/stigg/models.rbs +7 -0
  220. data/sig/stigg/request_options.rbs +34 -0
  221. data/sig/stigg/resources/v1/coupons.rbs +32 -0
  222. data/sig/stigg/resources/v1/customers/payment_method.rbs +25 -0
  223. data/sig/stigg/resources/v1/customers/promotional.rbs +23 -0
  224. data/sig/stigg/resources/v1/customers/usage.rbs +21 -0
  225. data/sig/stigg/resources/v1/customers.rbs +58 -0
  226. data/sig/stigg/resources/v1/subscriptions/future_update.rbs +21 -0
  227. data/sig/stigg/resources/v1/subscriptions.rbs +76 -0
  228. data/sig/stigg/resources/v1.rbs +23 -0
  229. data/sig/stigg/version.rbs +3 -0
  230. metadata +301 -0
@@ -0,0 +1,929 @@
1
+ # typed: strong
2
+
3
+ module Stigg
4
+ module Models
5
+ module V1
6
+ class SubscriptionPreviewResponse < Stigg::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Stigg::Models::V1::SubscriptionPreviewResponse,
11
+ Stigg::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(Stigg::Models::V1::SubscriptionPreviewResponse::Data) }
16
+ attr_reader :data
17
+
18
+ sig do
19
+ params(
20
+ data: Stigg::Models::V1::SubscriptionPreviewResponse::Data::OrHash
21
+ ).void
22
+ end
23
+ attr_writer :data
24
+
25
+ sig do
26
+ params(
27
+ data: Stigg::Models::V1::SubscriptionPreviewResponse::Data::OrHash
28
+ ).returns(T.attached_class)
29
+ end
30
+ def self.new(data:)
31
+ end
32
+
33
+ sig do
34
+ override.returns(
35
+ { data: Stigg::Models::V1::SubscriptionPreviewResponse::Data }
36
+ )
37
+ end
38
+ def to_hash
39
+ end
40
+
41
+ class Data < Stigg::Internal::Type::BaseModel
42
+ OrHash =
43
+ T.type_alias do
44
+ T.any(
45
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data,
46
+ Stigg::Internal::AnyHash
47
+ )
48
+ end
49
+
50
+ sig do
51
+ returns(
52
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice
53
+ )
54
+ end
55
+ attr_reader :immediate_invoice
56
+
57
+ sig do
58
+ params(
59
+ immediate_invoice:
60
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::OrHash
61
+ ).void
62
+ end
63
+ attr_writer :immediate_invoice
64
+
65
+ sig do
66
+ returns(
67
+ T.nilable(
68
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::BillingPeriodRange
69
+ )
70
+ )
71
+ end
72
+ attr_reader :billing_period_range
73
+
74
+ sig do
75
+ params(
76
+ billing_period_range:
77
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::BillingPeriodRange::OrHash
78
+ ).void
79
+ end
80
+ attr_writer :billing_period_range
81
+
82
+ sig do
83
+ returns(
84
+ T.nilable(
85
+ T::Array[
86
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::FreeItem
87
+ ]
88
+ )
89
+ )
90
+ end
91
+ attr_reader :free_items
92
+
93
+ sig do
94
+ params(
95
+ free_items:
96
+ T::Array[
97
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::FreeItem::OrHash
98
+ ]
99
+ ).void
100
+ end
101
+ attr_writer :free_items
102
+
103
+ sig { returns(T.nilable(T::Boolean)) }
104
+ attr_reader :has_scheduled_updates
105
+
106
+ sig { params(has_scheduled_updates: T::Boolean).void }
107
+ attr_writer :has_scheduled_updates
108
+
109
+ sig { returns(T.nilable(T::Boolean)) }
110
+ attr_reader :is_plan_downgrade
111
+
112
+ sig { params(is_plan_downgrade: T::Boolean).void }
113
+ attr_writer :is_plan_downgrade
114
+
115
+ sig do
116
+ returns(
117
+ T.nilable(
118
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice
119
+ )
120
+ )
121
+ end
122
+ attr_reader :recurring_invoice
123
+
124
+ sig do
125
+ params(
126
+ recurring_invoice:
127
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::OrHash
128
+ ).void
129
+ end
130
+ attr_writer :recurring_invoice
131
+
132
+ sig do
133
+ params(
134
+ immediate_invoice:
135
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::OrHash,
136
+ billing_period_range:
137
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::BillingPeriodRange::OrHash,
138
+ free_items:
139
+ T::Array[
140
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::FreeItem::OrHash
141
+ ],
142
+ has_scheduled_updates: T::Boolean,
143
+ is_plan_downgrade: T::Boolean,
144
+ recurring_invoice:
145
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::OrHash
146
+ ).returns(T.attached_class)
147
+ end
148
+ def self.new(
149
+ immediate_invoice:,
150
+ billing_period_range: nil,
151
+ free_items: nil,
152
+ has_scheduled_updates: nil,
153
+ is_plan_downgrade: nil,
154
+ recurring_invoice: nil
155
+ )
156
+ end
157
+
158
+ sig do
159
+ override.returns(
160
+ {
161
+ immediate_invoice:
162
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice,
163
+ billing_period_range:
164
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::BillingPeriodRange,
165
+ free_items:
166
+ T::Array[
167
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::FreeItem
168
+ ],
169
+ has_scheduled_updates: T::Boolean,
170
+ is_plan_downgrade: T::Boolean,
171
+ recurring_invoice:
172
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice
173
+ }
174
+ )
175
+ end
176
+ def to_hash
177
+ end
178
+
179
+ class ImmediateInvoice < Stigg::Internal::Type::BaseModel
180
+ OrHash =
181
+ T.type_alias do
182
+ T.any(
183
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice,
184
+ Stigg::Internal::AnyHash
185
+ )
186
+ end
187
+
188
+ sig { returns(Float) }
189
+ attr_accessor :sub_total
190
+
191
+ sig { returns(Float) }
192
+ attr_accessor :total
193
+
194
+ sig do
195
+ returns(
196
+ T.nilable(
197
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::BillingPeriodRange
198
+ )
199
+ )
200
+ end
201
+ attr_reader :billing_period_range
202
+
203
+ sig do
204
+ params(
205
+ billing_period_range:
206
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::BillingPeriodRange::OrHash
207
+ ).void
208
+ end
209
+ attr_writer :billing_period_range
210
+
211
+ sig { returns(T.nilable(String)) }
212
+ attr_accessor :currency
213
+
214
+ sig { returns(T.nilable(Float)) }
215
+ attr_reader :discount
216
+
217
+ sig { params(discount: Float).void }
218
+ attr_writer :discount
219
+
220
+ sig do
221
+ returns(
222
+ T.nilable(
223
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::DiscountDetails
224
+ )
225
+ )
226
+ end
227
+ attr_reader :discount_details
228
+
229
+ sig do
230
+ params(
231
+ discount_details:
232
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::DiscountDetails::OrHash
233
+ ).void
234
+ end
235
+ attr_writer :discount_details
236
+
237
+ sig do
238
+ returns(
239
+ T.nilable(
240
+ T::Array[
241
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Discount
242
+ ]
243
+ )
244
+ )
245
+ end
246
+ attr_reader :discounts
247
+
248
+ sig do
249
+ params(
250
+ discounts:
251
+ T::Array[
252
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Discount::OrHash
253
+ ]
254
+ ).void
255
+ end
256
+ attr_writer :discounts
257
+
258
+ sig do
259
+ returns(
260
+ T.nilable(
261
+ T::Array[
262
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Line
263
+ ]
264
+ )
265
+ )
266
+ end
267
+ attr_reader :lines
268
+
269
+ sig do
270
+ params(
271
+ lines:
272
+ T::Array[
273
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Line::OrHash
274
+ ]
275
+ ).void
276
+ end
277
+ attr_writer :lines
278
+
279
+ sig { returns(T.nilable(Float)) }
280
+ attr_reader :tax
281
+
282
+ sig { params(tax: Float).void }
283
+ attr_writer :tax
284
+
285
+ sig do
286
+ params(
287
+ sub_total: Float,
288
+ total: Float,
289
+ billing_period_range:
290
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::BillingPeriodRange::OrHash,
291
+ currency: T.nilable(String),
292
+ discount: Float,
293
+ discount_details:
294
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::DiscountDetails::OrHash,
295
+ discounts:
296
+ T::Array[
297
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Discount::OrHash
298
+ ],
299
+ lines:
300
+ T::Array[
301
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Line::OrHash
302
+ ],
303
+ tax: Float
304
+ ).returns(T.attached_class)
305
+ end
306
+ def self.new(
307
+ sub_total:,
308
+ total:,
309
+ billing_period_range: nil,
310
+ currency: nil,
311
+ discount: nil,
312
+ discount_details: nil,
313
+ discounts: nil,
314
+ lines: nil,
315
+ tax: nil
316
+ )
317
+ end
318
+
319
+ sig do
320
+ override.returns(
321
+ {
322
+ sub_total: Float,
323
+ total: Float,
324
+ billing_period_range:
325
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::BillingPeriodRange,
326
+ currency: T.nilable(String),
327
+ discount: Float,
328
+ discount_details:
329
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::DiscountDetails,
330
+ discounts:
331
+ T::Array[
332
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Discount
333
+ ],
334
+ lines:
335
+ T::Array[
336
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Line
337
+ ],
338
+ tax: Float
339
+ }
340
+ )
341
+ end
342
+ def to_hash
343
+ end
344
+
345
+ class BillingPeriodRange < Stigg::Internal::Type::BaseModel
346
+ OrHash =
347
+ T.type_alias do
348
+ T.any(
349
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::BillingPeriodRange,
350
+ Stigg::Internal::AnyHash
351
+ )
352
+ end
353
+
354
+ # Billing period end date
355
+ sig { returns(Time) }
356
+ attr_accessor :end_
357
+
358
+ # Billing period start date
359
+ sig { returns(Time) }
360
+ attr_accessor :start
361
+
362
+ sig { params(end_: Time, start: Time).returns(T.attached_class) }
363
+ def self.new(
364
+ # Billing period end date
365
+ end_:,
366
+ # Billing period start date
367
+ start:
368
+ )
369
+ end
370
+
371
+ sig { override.returns({ end_: Time, start: Time }) }
372
+ def to_hash
373
+ end
374
+ end
375
+
376
+ class DiscountDetails < Stigg::Internal::Type::BaseModel
377
+ OrHash =
378
+ T.type_alias do
379
+ T.any(
380
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::DiscountDetails,
381
+ Stigg::Internal::AnyHash
382
+ )
383
+ end
384
+
385
+ sig { returns(T.nilable(String)) }
386
+ attr_reader :code
387
+
388
+ sig { params(code: String).void }
389
+ attr_writer :code
390
+
391
+ sig { returns(T.nilable(Float)) }
392
+ attr_reader :fixed_amount
393
+
394
+ sig { params(fixed_amount: Float).void }
395
+ attr_writer :fixed_amount
396
+
397
+ sig { returns(T.nilable(Float)) }
398
+ attr_reader :percentage
399
+
400
+ sig { params(percentage: Float).void }
401
+ attr_writer :percentage
402
+
403
+ sig do
404
+ params(
405
+ code: String,
406
+ fixed_amount: Float,
407
+ percentage: Float
408
+ ).returns(T.attached_class)
409
+ end
410
+ def self.new(code: nil, fixed_amount: nil, percentage: nil)
411
+ end
412
+
413
+ sig do
414
+ override.returns(
415
+ { code: String, fixed_amount: Float, percentage: Float }
416
+ )
417
+ end
418
+ def to_hash
419
+ end
420
+ end
421
+
422
+ class Discount < Stigg::Internal::Type::BaseModel
423
+ OrHash =
424
+ T.type_alias do
425
+ T.any(
426
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Discount,
427
+ Stigg::Internal::AnyHash
428
+ )
429
+ end
430
+
431
+ sig { returns(Float) }
432
+ attr_accessor :amount
433
+
434
+ sig { returns(String) }
435
+ attr_accessor :currency
436
+
437
+ sig { returns(String) }
438
+ attr_accessor :description
439
+
440
+ sig do
441
+ params(
442
+ amount: Float,
443
+ currency: String,
444
+ description: String
445
+ ).returns(T.attached_class)
446
+ end
447
+ def self.new(amount:, currency:, description:)
448
+ end
449
+
450
+ sig do
451
+ override.returns(
452
+ { amount: Float, currency: String, description: String }
453
+ )
454
+ end
455
+ def to_hash
456
+ end
457
+ end
458
+
459
+ class Line < Stigg::Internal::Type::BaseModel
460
+ OrHash =
461
+ T.type_alias do
462
+ T.any(
463
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::ImmediateInvoice::Line,
464
+ Stigg::Internal::AnyHash
465
+ )
466
+ end
467
+
468
+ sig { returns(String) }
469
+ attr_accessor :currency
470
+
471
+ sig { returns(String) }
472
+ attr_accessor :description
473
+
474
+ sig { returns(Float) }
475
+ attr_accessor :sub_total
476
+
477
+ sig { returns(Float) }
478
+ attr_accessor :unit_price
479
+
480
+ sig { returns(T.nilable(Float)) }
481
+ attr_reader :quantity
482
+
483
+ sig { params(quantity: Float).void }
484
+ attr_writer :quantity
485
+
486
+ sig do
487
+ params(
488
+ currency: String,
489
+ description: String,
490
+ sub_total: Float,
491
+ unit_price: Float,
492
+ quantity: Float
493
+ ).returns(T.attached_class)
494
+ end
495
+ def self.new(
496
+ currency:,
497
+ description:,
498
+ sub_total:,
499
+ unit_price:,
500
+ quantity: nil
501
+ )
502
+ end
503
+
504
+ sig do
505
+ override.returns(
506
+ {
507
+ currency: String,
508
+ description: String,
509
+ sub_total: Float,
510
+ unit_price: Float,
511
+ quantity: Float
512
+ }
513
+ )
514
+ end
515
+ def to_hash
516
+ end
517
+ end
518
+ end
519
+
520
+ class BillingPeriodRange < Stigg::Internal::Type::BaseModel
521
+ OrHash =
522
+ T.type_alias do
523
+ T.any(
524
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::BillingPeriodRange,
525
+ Stigg::Internal::AnyHash
526
+ )
527
+ end
528
+
529
+ # Billing period end date
530
+ sig { returns(T.nilable(Time)) }
531
+ attr_reader :end_
532
+
533
+ sig { params(end_: Time).void }
534
+ attr_writer :end_
535
+
536
+ # Billing period start date
537
+ sig { returns(T.nilable(Time)) }
538
+ attr_reader :start
539
+
540
+ sig { params(start: Time).void }
541
+ attr_writer :start
542
+
543
+ sig { params(end_: Time, start: Time).returns(T.attached_class) }
544
+ def self.new(
545
+ # Billing period end date
546
+ end_: nil,
547
+ # Billing period start date
548
+ start: nil
549
+ )
550
+ end
551
+
552
+ sig { override.returns({ end_: Time, start: Time }) }
553
+ def to_hash
554
+ end
555
+ end
556
+
557
+ class FreeItem < Stigg::Internal::Type::BaseModel
558
+ OrHash =
559
+ T.type_alias do
560
+ T.any(
561
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::FreeItem,
562
+ Stigg::Internal::AnyHash
563
+ )
564
+ end
565
+
566
+ sig { returns(String) }
567
+ attr_accessor :addon_id
568
+
569
+ sig { returns(Float) }
570
+ attr_accessor :quantity
571
+
572
+ sig do
573
+ params(addon_id: String, quantity: Float).returns(
574
+ T.attached_class
575
+ )
576
+ end
577
+ def self.new(addon_id:, quantity:)
578
+ end
579
+
580
+ sig { override.returns({ addon_id: String, quantity: Float }) }
581
+ def to_hash
582
+ end
583
+ end
584
+
585
+ class RecurringInvoice < Stigg::Internal::Type::BaseModel
586
+ OrHash =
587
+ T.type_alias do
588
+ T.any(
589
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice,
590
+ Stigg::Internal::AnyHash
591
+ )
592
+ end
593
+
594
+ sig { returns(Float) }
595
+ attr_accessor :sub_total
596
+
597
+ sig { returns(Float) }
598
+ attr_accessor :total
599
+
600
+ sig do
601
+ returns(
602
+ T.nilable(
603
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::BillingPeriodRange
604
+ )
605
+ )
606
+ end
607
+ attr_reader :billing_period_range
608
+
609
+ sig do
610
+ params(
611
+ billing_period_range:
612
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::BillingPeriodRange::OrHash
613
+ ).void
614
+ end
615
+ attr_writer :billing_period_range
616
+
617
+ sig { returns(T.nilable(String)) }
618
+ attr_accessor :currency
619
+
620
+ sig { returns(T.nilable(Float)) }
621
+ attr_reader :discount
622
+
623
+ sig { params(discount: Float).void }
624
+ attr_writer :discount
625
+
626
+ sig do
627
+ returns(
628
+ T.nilable(
629
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::DiscountDetails
630
+ )
631
+ )
632
+ end
633
+ attr_reader :discount_details
634
+
635
+ sig do
636
+ params(
637
+ discount_details:
638
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::DiscountDetails::OrHash
639
+ ).void
640
+ end
641
+ attr_writer :discount_details
642
+
643
+ sig do
644
+ returns(
645
+ T.nilable(
646
+ T::Array[
647
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Discount
648
+ ]
649
+ )
650
+ )
651
+ end
652
+ attr_reader :discounts
653
+
654
+ sig do
655
+ params(
656
+ discounts:
657
+ T::Array[
658
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Discount::OrHash
659
+ ]
660
+ ).void
661
+ end
662
+ attr_writer :discounts
663
+
664
+ sig do
665
+ returns(
666
+ T.nilable(
667
+ T::Array[
668
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Line
669
+ ]
670
+ )
671
+ )
672
+ end
673
+ attr_reader :lines
674
+
675
+ sig do
676
+ params(
677
+ lines:
678
+ T::Array[
679
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Line::OrHash
680
+ ]
681
+ ).void
682
+ end
683
+ attr_writer :lines
684
+
685
+ sig { returns(T.nilable(Float)) }
686
+ attr_reader :tax
687
+
688
+ sig { params(tax: Float).void }
689
+ attr_writer :tax
690
+
691
+ sig do
692
+ params(
693
+ sub_total: Float,
694
+ total: Float,
695
+ billing_period_range:
696
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::BillingPeriodRange::OrHash,
697
+ currency: T.nilable(String),
698
+ discount: Float,
699
+ discount_details:
700
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::DiscountDetails::OrHash,
701
+ discounts:
702
+ T::Array[
703
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Discount::OrHash
704
+ ],
705
+ lines:
706
+ T::Array[
707
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Line::OrHash
708
+ ],
709
+ tax: Float
710
+ ).returns(T.attached_class)
711
+ end
712
+ def self.new(
713
+ sub_total:,
714
+ total:,
715
+ billing_period_range: nil,
716
+ currency: nil,
717
+ discount: nil,
718
+ discount_details: nil,
719
+ discounts: nil,
720
+ lines: nil,
721
+ tax: nil
722
+ )
723
+ end
724
+
725
+ sig do
726
+ override.returns(
727
+ {
728
+ sub_total: Float,
729
+ total: Float,
730
+ billing_period_range:
731
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::BillingPeriodRange,
732
+ currency: T.nilable(String),
733
+ discount: Float,
734
+ discount_details:
735
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::DiscountDetails,
736
+ discounts:
737
+ T::Array[
738
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Discount
739
+ ],
740
+ lines:
741
+ T::Array[
742
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Line
743
+ ],
744
+ tax: Float
745
+ }
746
+ )
747
+ end
748
+ def to_hash
749
+ end
750
+
751
+ class BillingPeriodRange < Stigg::Internal::Type::BaseModel
752
+ OrHash =
753
+ T.type_alias do
754
+ T.any(
755
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::BillingPeriodRange,
756
+ Stigg::Internal::AnyHash
757
+ )
758
+ end
759
+
760
+ # Billing period end date
761
+ sig { returns(Time) }
762
+ attr_accessor :end_
763
+
764
+ # Billing period start date
765
+ sig { returns(Time) }
766
+ attr_accessor :start
767
+
768
+ sig { params(end_: Time, start: Time).returns(T.attached_class) }
769
+ def self.new(
770
+ # Billing period end date
771
+ end_:,
772
+ # Billing period start date
773
+ start:
774
+ )
775
+ end
776
+
777
+ sig { override.returns({ end_: Time, start: Time }) }
778
+ def to_hash
779
+ end
780
+ end
781
+
782
+ class DiscountDetails < Stigg::Internal::Type::BaseModel
783
+ OrHash =
784
+ T.type_alias do
785
+ T.any(
786
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::DiscountDetails,
787
+ Stigg::Internal::AnyHash
788
+ )
789
+ end
790
+
791
+ sig { returns(T.nilable(String)) }
792
+ attr_reader :code
793
+
794
+ sig { params(code: String).void }
795
+ attr_writer :code
796
+
797
+ sig { returns(T.nilable(Float)) }
798
+ attr_reader :fixed_amount
799
+
800
+ sig { params(fixed_amount: Float).void }
801
+ attr_writer :fixed_amount
802
+
803
+ sig { returns(T.nilable(Float)) }
804
+ attr_reader :percentage
805
+
806
+ sig { params(percentage: Float).void }
807
+ attr_writer :percentage
808
+
809
+ sig do
810
+ params(
811
+ code: String,
812
+ fixed_amount: Float,
813
+ percentage: Float
814
+ ).returns(T.attached_class)
815
+ end
816
+ def self.new(code: nil, fixed_amount: nil, percentage: nil)
817
+ end
818
+
819
+ sig do
820
+ override.returns(
821
+ { code: String, fixed_amount: Float, percentage: Float }
822
+ )
823
+ end
824
+ def to_hash
825
+ end
826
+ end
827
+
828
+ class Discount < Stigg::Internal::Type::BaseModel
829
+ OrHash =
830
+ T.type_alias do
831
+ T.any(
832
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Discount,
833
+ Stigg::Internal::AnyHash
834
+ )
835
+ end
836
+
837
+ sig { returns(Float) }
838
+ attr_accessor :amount
839
+
840
+ sig { returns(String) }
841
+ attr_accessor :currency
842
+
843
+ sig { returns(String) }
844
+ attr_accessor :description
845
+
846
+ sig do
847
+ params(
848
+ amount: Float,
849
+ currency: String,
850
+ description: String
851
+ ).returns(T.attached_class)
852
+ end
853
+ def self.new(amount:, currency:, description:)
854
+ end
855
+
856
+ sig do
857
+ override.returns(
858
+ { amount: Float, currency: String, description: String }
859
+ )
860
+ end
861
+ def to_hash
862
+ end
863
+ end
864
+
865
+ class Line < Stigg::Internal::Type::BaseModel
866
+ OrHash =
867
+ T.type_alias do
868
+ T.any(
869
+ Stigg::Models::V1::SubscriptionPreviewResponse::Data::RecurringInvoice::Line,
870
+ Stigg::Internal::AnyHash
871
+ )
872
+ end
873
+
874
+ sig { returns(String) }
875
+ attr_accessor :currency
876
+
877
+ sig { returns(String) }
878
+ attr_accessor :description
879
+
880
+ sig { returns(Float) }
881
+ attr_accessor :sub_total
882
+
883
+ sig { returns(Float) }
884
+ attr_accessor :unit_price
885
+
886
+ sig { returns(T.nilable(Float)) }
887
+ attr_reader :quantity
888
+
889
+ sig { params(quantity: Float).void }
890
+ attr_writer :quantity
891
+
892
+ sig do
893
+ params(
894
+ currency: String,
895
+ description: String,
896
+ sub_total: Float,
897
+ unit_price: Float,
898
+ quantity: Float
899
+ ).returns(T.attached_class)
900
+ end
901
+ def self.new(
902
+ currency:,
903
+ description:,
904
+ sub_total:,
905
+ unit_price:,
906
+ quantity: nil
907
+ )
908
+ end
909
+
910
+ sig do
911
+ override.returns(
912
+ {
913
+ currency: String,
914
+ description: String,
915
+ sub_total: Float,
916
+ unit_price: Float,
917
+ quantity: Float
918
+ }
919
+ )
920
+ end
921
+ def to_hash
922
+ end
923
+ end
924
+ end
925
+ end
926
+ end
927
+ end
928
+ end
929
+ end