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,668 @@
1
+ # typed: strong
2
+
3
+ module Stigg
4
+ module Models
5
+ module V1
6
+ class SubscriptionCreateResponse < Stigg::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Stigg::Models::V1::SubscriptionCreateResponse,
11
+ Stigg::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(Stigg::Models::V1::SubscriptionCreateResponse::Data) }
16
+ attr_reader :data
17
+
18
+ sig do
19
+ params(
20
+ data: Stigg::Models::V1::SubscriptionCreateResponse::Data::OrHash
21
+ ).void
22
+ end
23
+ attr_writer :data
24
+
25
+ sig do
26
+ params(
27
+ data: Stigg::Models::V1::SubscriptionCreateResponse::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::SubscriptionCreateResponse::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::SubscriptionCreateResponse::Data,
46
+ Stigg::Internal::AnyHash
47
+ )
48
+ end
49
+
50
+ # Unique identifier for the provisioned subscription
51
+ sig { returns(String) }
52
+ attr_accessor :id
53
+
54
+ # Provision status: SUCCESS or PAYMENT_REQUIRED
55
+ sig do
56
+ returns(
57
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Status::TaggedSymbol
58
+ )
59
+ end
60
+ attr_accessor :status
61
+
62
+ # Checkout billing ID when payment is required
63
+ sig { returns(T.nilable(String)) }
64
+ attr_accessor :checkout_billing_id
65
+
66
+ # URL to complete payment when PAYMENT_REQUIRED
67
+ sig { returns(T.nilable(String)) }
68
+ attr_accessor :checkout_url
69
+
70
+ # Whether the subscription is scheduled for future activation
71
+ sig { returns(T.nilable(T::Boolean)) }
72
+ attr_reader :is_scheduled
73
+
74
+ sig { params(is_scheduled: T::Boolean).void }
75
+ attr_writer :is_scheduled
76
+
77
+ sig do
78
+ returns(
79
+ T.nilable(
80
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription
81
+ )
82
+ )
83
+ end
84
+ attr_reader :subscription
85
+
86
+ sig do
87
+ params(
88
+ subscription:
89
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::OrHash
90
+ ).void
91
+ end
92
+ attr_writer :subscription
93
+
94
+ sig do
95
+ params(
96
+ id: String,
97
+ status:
98
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Status::OrSymbol,
99
+ checkout_billing_id: T.nilable(String),
100
+ checkout_url: T.nilable(String),
101
+ is_scheduled: T::Boolean,
102
+ subscription:
103
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::OrHash
104
+ ).returns(T.attached_class)
105
+ end
106
+ def self.new(
107
+ # Unique identifier for the provisioned subscription
108
+ id:,
109
+ # Provision status: SUCCESS or PAYMENT_REQUIRED
110
+ status:,
111
+ # Checkout billing ID when payment is required
112
+ checkout_billing_id: nil,
113
+ # URL to complete payment when PAYMENT_REQUIRED
114
+ checkout_url: nil,
115
+ # Whether the subscription is scheduled for future activation
116
+ is_scheduled: nil,
117
+ subscription: nil
118
+ )
119
+ end
120
+
121
+ sig do
122
+ override.returns(
123
+ {
124
+ id: String,
125
+ status:
126
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Status::TaggedSymbol,
127
+ checkout_billing_id: T.nilable(String),
128
+ checkout_url: T.nilable(String),
129
+ is_scheduled: T::Boolean,
130
+ subscription:
131
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription
132
+ }
133
+ )
134
+ end
135
+ def to_hash
136
+ end
137
+
138
+ # Provision status: SUCCESS or PAYMENT_REQUIRED
139
+ module Status
140
+ extend Stigg::Internal::Type::Enum
141
+
142
+ TaggedSymbol =
143
+ T.type_alias do
144
+ T.all(
145
+ Symbol,
146
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Status
147
+ )
148
+ end
149
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
150
+
151
+ SUCCESS =
152
+ T.let(
153
+ :SUCCESS,
154
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Status::TaggedSymbol
155
+ )
156
+ PAYMENT_REQUIRED =
157
+ T.let(
158
+ :PAYMENT_REQUIRED,
159
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Status::TaggedSymbol
160
+ )
161
+
162
+ sig do
163
+ override.returns(
164
+ T::Array[
165
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Status::TaggedSymbol
166
+ ]
167
+ )
168
+ end
169
+ def self.values
170
+ end
171
+ end
172
+
173
+ class Subscription < Stigg::Internal::Type::BaseModel
174
+ OrHash =
175
+ T.type_alias do
176
+ T.any(
177
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription,
178
+ Stigg::Internal::AnyHash
179
+ )
180
+ end
181
+
182
+ # Subscription ID
183
+ sig { returns(String) }
184
+ attr_accessor :id
185
+
186
+ # Billing ID
187
+ sig { returns(T.nilable(String)) }
188
+ attr_accessor :billing_id
189
+
190
+ # Created at
191
+ sig { returns(Time) }
192
+ attr_accessor :created_at
193
+
194
+ # Customer ID
195
+ sig { returns(String) }
196
+ attr_accessor :customer_id
197
+
198
+ # Payment collection
199
+ sig do
200
+ returns(
201
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection::TaggedSymbol
202
+ )
203
+ end
204
+ attr_accessor :payment_collection
205
+
206
+ # Plan ID
207
+ sig { returns(String) }
208
+ attr_accessor :plan_id
209
+
210
+ # Pricing type
211
+ sig do
212
+ returns(
213
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PricingType::TaggedSymbol
214
+ )
215
+ end
216
+ attr_accessor :pricing_type
217
+
218
+ # Subscription start date
219
+ sig { returns(Time) }
220
+ attr_accessor :start_date
221
+
222
+ # Subscription status
223
+ sig do
224
+ returns(
225
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol
226
+ )
227
+ end
228
+ attr_accessor :status
229
+
230
+ # Subscription cancellation date
231
+ sig { returns(T.nilable(Time)) }
232
+ attr_accessor :cancellation_date
233
+
234
+ # Subscription cancel reason
235
+ sig do
236
+ returns(
237
+ T.nilable(
238
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
239
+ )
240
+ )
241
+ end
242
+ attr_accessor :cancel_reason
243
+
244
+ # End of the current billing period
245
+ sig { returns(T.nilable(Time)) }
246
+ attr_accessor :current_billing_period_end
247
+
248
+ # Start of the current billing period
249
+ sig { returns(T.nilable(Time)) }
250
+ attr_accessor :current_billing_period_start
251
+
252
+ # Subscription effective end date
253
+ sig { returns(T.nilable(Time)) }
254
+ attr_accessor :effective_end_date
255
+
256
+ # Subscription end date
257
+ sig { returns(T.nilable(Time)) }
258
+ attr_accessor :end_date
259
+
260
+ # Additional metadata for the subscription
261
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
262
+ attr_reader :metadata
263
+
264
+ sig { params(metadata: T::Hash[Symbol, String]).void }
265
+ attr_writer :metadata
266
+
267
+ # Paying customer ID for delegated billing
268
+ sig { returns(T.nilable(String)) }
269
+ attr_accessor :paying_customer_id
270
+
271
+ # The method used to collect payments for a subscription
272
+ sig do
273
+ returns(
274
+ T.nilable(
275
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollectionMethod::TaggedSymbol
276
+ )
277
+ )
278
+ end
279
+ attr_accessor :payment_collection_method
280
+
281
+ # Resource ID
282
+ sig { returns(T.nilable(String)) }
283
+ attr_accessor :resource_id
284
+
285
+ # Subscription trial end date
286
+ sig { returns(T.nilable(Time)) }
287
+ attr_accessor :trial_end_date
288
+
289
+ sig do
290
+ params(
291
+ id: String,
292
+ billing_id: T.nilable(String),
293
+ created_at: Time,
294
+ customer_id: String,
295
+ payment_collection:
296
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection::OrSymbol,
297
+ plan_id: String,
298
+ pricing_type:
299
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PricingType::OrSymbol,
300
+ start_date: Time,
301
+ status:
302
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::OrSymbol,
303
+ cancellation_date: T.nilable(Time),
304
+ cancel_reason:
305
+ T.nilable(
306
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::OrSymbol
307
+ ),
308
+ current_billing_period_end: T.nilable(Time),
309
+ current_billing_period_start: T.nilable(Time),
310
+ effective_end_date: T.nilable(Time),
311
+ end_date: T.nilable(Time),
312
+ metadata: T::Hash[Symbol, String],
313
+ paying_customer_id: T.nilable(String),
314
+ payment_collection_method:
315
+ T.nilable(
316
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollectionMethod::OrSymbol
317
+ ),
318
+ resource_id: T.nilable(String),
319
+ trial_end_date: T.nilable(Time)
320
+ ).returns(T.attached_class)
321
+ end
322
+ def self.new(
323
+ # Subscription ID
324
+ id:,
325
+ # Billing ID
326
+ billing_id:,
327
+ # Created at
328
+ created_at:,
329
+ # Customer ID
330
+ customer_id:,
331
+ # Payment collection
332
+ payment_collection:,
333
+ # Plan ID
334
+ plan_id:,
335
+ # Pricing type
336
+ pricing_type:,
337
+ # Subscription start date
338
+ start_date:,
339
+ # Subscription status
340
+ status:,
341
+ # Subscription cancellation date
342
+ cancellation_date: nil,
343
+ # Subscription cancel reason
344
+ cancel_reason: nil,
345
+ # End of the current billing period
346
+ current_billing_period_end: nil,
347
+ # Start of the current billing period
348
+ current_billing_period_start: nil,
349
+ # Subscription effective end date
350
+ effective_end_date: nil,
351
+ # Subscription end date
352
+ end_date: nil,
353
+ # Additional metadata for the subscription
354
+ metadata: nil,
355
+ # Paying customer ID for delegated billing
356
+ paying_customer_id: nil,
357
+ # The method used to collect payments for a subscription
358
+ payment_collection_method: nil,
359
+ # Resource ID
360
+ resource_id: nil,
361
+ # Subscription trial end date
362
+ trial_end_date: nil
363
+ )
364
+ end
365
+
366
+ sig do
367
+ override.returns(
368
+ {
369
+ id: String,
370
+ billing_id: T.nilable(String),
371
+ created_at: Time,
372
+ customer_id: String,
373
+ payment_collection:
374
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection::TaggedSymbol,
375
+ plan_id: String,
376
+ pricing_type:
377
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PricingType::TaggedSymbol,
378
+ start_date: Time,
379
+ status:
380
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol,
381
+ cancellation_date: T.nilable(Time),
382
+ cancel_reason:
383
+ T.nilable(
384
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
385
+ ),
386
+ current_billing_period_end: T.nilable(Time),
387
+ current_billing_period_start: T.nilable(Time),
388
+ effective_end_date: T.nilable(Time),
389
+ end_date: T.nilable(Time),
390
+ metadata: T::Hash[Symbol, String],
391
+ paying_customer_id: T.nilable(String),
392
+ payment_collection_method:
393
+ T.nilable(
394
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollectionMethod::TaggedSymbol
395
+ ),
396
+ resource_id: T.nilable(String),
397
+ trial_end_date: T.nilable(Time)
398
+ }
399
+ )
400
+ end
401
+ def to_hash
402
+ end
403
+
404
+ # Payment collection
405
+ module PaymentCollection
406
+ extend Stigg::Internal::Type::Enum
407
+
408
+ TaggedSymbol =
409
+ T.type_alias do
410
+ T.all(
411
+ Symbol,
412
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection
413
+ )
414
+ end
415
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
416
+
417
+ NOT_REQUIRED =
418
+ T.let(
419
+ :NOT_REQUIRED,
420
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection::TaggedSymbol
421
+ )
422
+ PROCESSING =
423
+ T.let(
424
+ :PROCESSING,
425
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection::TaggedSymbol
426
+ )
427
+ FAILED =
428
+ T.let(
429
+ :FAILED,
430
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection::TaggedSymbol
431
+ )
432
+ ACTION_REQUIRED =
433
+ T.let(
434
+ :ACTION_REQUIRED,
435
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection::TaggedSymbol
436
+ )
437
+
438
+ sig do
439
+ override.returns(
440
+ T::Array[
441
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollection::TaggedSymbol
442
+ ]
443
+ )
444
+ end
445
+ def self.values
446
+ end
447
+ end
448
+
449
+ # Pricing type
450
+ module PricingType
451
+ extend Stigg::Internal::Type::Enum
452
+
453
+ TaggedSymbol =
454
+ T.type_alias do
455
+ T.all(
456
+ Symbol,
457
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PricingType
458
+ )
459
+ end
460
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
461
+
462
+ FREE =
463
+ T.let(
464
+ :FREE,
465
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PricingType::TaggedSymbol
466
+ )
467
+ PAID =
468
+ T.let(
469
+ :PAID,
470
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PricingType::TaggedSymbol
471
+ )
472
+ CUSTOM =
473
+ T.let(
474
+ :CUSTOM,
475
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PricingType::TaggedSymbol
476
+ )
477
+
478
+ sig do
479
+ override.returns(
480
+ T::Array[
481
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PricingType::TaggedSymbol
482
+ ]
483
+ )
484
+ end
485
+ def self.values
486
+ end
487
+ end
488
+
489
+ # Subscription status
490
+ module Status
491
+ extend Stigg::Internal::Type::Enum
492
+
493
+ TaggedSymbol =
494
+ T.type_alias do
495
+ T.all(
496
+ Symbol,
497
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status
498
+ )
499
+ end
500
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
501
+
502
+ PAYMENT_PENDING =
503
+ T.let(
504
+ :PAYMENT_PENDING,
505
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol
506
+ )
507
+ ACTIVE =
508
+ T.let(
509
+ :ACTIVE,
510
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol
511
+ )
512
+ EXPIRED =
513
+ T.let(
514
+ :EXPIRED,
515
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol
516
+ )
517
+ IN_TRIAL =
518
+ T.let(
519
+ :IN_TRIAL,
520
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol
521
+ )
522
+ CANCELED =
523
+ T.let(
524
+ :CANCELED,
525
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol
526
+ )
527
+ NOT_STARTED =
528
+ T.let(
529
+ :NOT_STARTED,
530
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol
531
+ )
532
+
533
+ sig do
534
+ override.returns(
535
+ T::Array[
536
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::Status::TaggedSymbol
537
+ ]
538
+ )
539
+ end
540
+ def self.values
541
+ end
542
+ end
543
+
544
+ # Subscription cancel reason
545
+ module CancelReason
546
+ extend Stigg::Internal::Type::Enum
547
+
548
+ TaggedSymbol =
549
+ T.type_alias do
550
+ T.all(
551
+ Symbol,
552
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason
553
+ )
554
+ end
555
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
556
+
557
+ UPGRADE_OR_DOWNGRADE =
558
+ T.let(
559
+ :UPGRADE_OR_DOWNGRADE,
560
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
561
+ )
562
+ CANCELLED_BY_BILLING =
563
+ T.let(
564
+ :CANCELLED_BY_BILLING,
565
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
566
+ )
567
+ EXPIRED =
568
+ T.let(
569
+ :EXPIRED,
570
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
571
+ )
572
+ DETACH_BILLING =
573
+ T.let(
574
+ :DETACH_BILLING,
575
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
576
+ )
577
+ TRIAL_ENDED =
578
+ T.let(
579
+ :TRIAL_ENDED,
580
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
581
+ )
582
+ IMMEDIATE =
583
+ T.let(
584
+ :Immediate,
585
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
586
+ )
587
+ TRIAL_CONVERTED =
588
+ T.let(
589
+ :TRIAL_CONVERTED,
590
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
591
+ )
592
+ PENDING_PAYMENT_EXPIRED =
593
+ T.let(
594
+ :PENDING_PAYMENT_EXPIRED,
595
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
596
+ )
597
+ SCHEDULED_CANCELLATION =
598
+ T.let(
599
+ :ScheduledCancellation,
600
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
601
+ )
602
+ CUSTOMER_ARCHIVED =
603
+ T.let(
604
+ :CustomerArchived,
605
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
606
+ )
607
+ AUTO_CANCELLATION_RULE =
608
+ T.let(
609
+ :AutoCancellationRule,
610
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
611
+ )
612
+
613
+ sig do
614
+ override.returns(
615
+ T::Array[
616
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::CancelReason::TaggedSymbol
617
+ ]
618
+ )
619
+ end
620
+ def self.values
621
+ end
622
+ end
623
+
624
+ # The method used to collect payments for a subscription
625
+ module PaymentCollectionMethod
626
+ extend Stigg::Internal::Type::Enum
627
+
628
+ TaggedSymbol =
629
+ T.type_alias do
630
+ T.all(
631
+ Symbol,
632
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollectionMethod
633
+ )
634
+ end
635
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
636
+
637
+ CHARGE =
638
+ T.let(
639
+ :CHARGE,
640
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollectionMethod::TaggedSymbol
641
+ )
642
+ INVOICE =
643
+ T.let(
644
+ :INVOICE,
645
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollectionMethod::TaggedSymbol
646
+ )
647
+ NONE =
648
+ T.let(
649
+ :NONE,
650
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollectionMethod::TaggedSymbol
651
+ )
652
+
653
+ sig do
654
+ override.returns(
655
+ T::Array[
656
+ Stigg::Models::V1::SubscriptionCreateResponse::Data::Subscription::PaymentCollectionMethod::TaggedSymbol
657
+ ]
658
+ )
659
+ end
660
+ def self.values
661
+ end
662
+ end
663
+ end
664
+ end
665
+ end
666
+ end
667
+ end
668
+ end
@@ -0,0 +1,48 @@
1
+ # typed: strong
2
+
3
+ module Stigg
4
+ module Models
5
+ module V1
6
+ class SubscriptionDelegateParams < Stigg::Internal::Type::BaseModel
7
+ extend Stigg::Internal::Type::RequestParameters::Converter
8
+ include Stigg::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Stigg::V1::SubscriptionDelegateParams,
14
+ Stigg::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ # The customer ID to delegate the subscription to
19
+ sig { returns(String) }
20
+ attr_accessor :target_customer_id
21
+
22
+ sig do
23
+ params(
24
+ target_customer_id: String,
25
+ request_options: Stigg::RequestOptions::OrHash
26
+ ).returns(T.attached_class)
27
+ end
28
+ def self.new(
29
+ # The customer ID to delegate the subscription to
30
+ target_customer_id:,
31
+ request_options: {}
32
+ )
33
+ end
34
+
35
+ sig do
36
+ override.returns(
37
+ {
38
+ target_customer_id: String,
39
+ request_options: Stigg::RequestOptions
40
+ }
41
+ )
42
+ end
43
+ def to_hash
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end