stigg 0.1.0.pre.alpha.1 → 0.1.0.pre.alpha.3

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 (190) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/README.md +29 -1
  4. data/lib/stigg/internal/my_cursor_id_page.rb +32 -4
  5. data/lib/stigg/internal/type/base_model.rb +2 -2
  6. data/lib/stigg/models/v1/{coupon_create_response.rb → coupon.rb} +31 -26
  7. data/lib/stigg/models/v1/coupon_create_params.rb +2 -0
  8. data/lib/stigg/models/v1/coupon_list_params.rb +14 -14
  9. data/lib/stigg/models/v1/coupon_list_response.rb +262 -278
  10. data/lib/stigg/models/v1/customer_import_params.rb +75 -0
  11. data/lib/stigg/models/v1/customer_import_response.rb +35 -0
  12. data/lib/stigg/models/v1/customer_list_params.rb +14 -14
  13. data/lib/stigg/models/v1/customer_list_response.rb +160 -174
  14. data/lib/stigg/models/v1/{customer_create_params.rb → customer_provision_params.rb} +18 -16
  15. data/lib/stigg/models/v1/customer_response.rb +9 -2
  16. data/lib/stigg/models/v1/customer_update_params.rb +2 -0
  17. data/lib/stigg/models/v1/customers/payment_method_attach_params.rb +3 -1
  18. data/lib/stigg/models/v1/customers/{promotional_create_params.rb → promotional_entitlement_grant_params.rb} +46 -44
  19. data/lib/stigg/models/v1/customers/{promotional_create_response.rb → promotional_entitlement_grant_response.rb} +105 -32
  20. data/lib/stigg/models/v1/customers/{promotional_revoke_params.rb → promotional_entitlement_revoke_params.rb} +2 -2
  21. data/lib/stigg/models/v1/customers/{promotional_revoke_response.rb → promotional_entitlement_revoke_response.rb} +107 -33
  22. data/lib/stigg/models/v1/event_report_params.rb +91 -0
  23. data/lib/stigg/models/v1/event_report_response.rb +25 -0
  24. data/lib/stigg/models/v1/{subscription_retrieve_response.rb → subscription.rb} +67 -26
  25. data/lib/stigg/models/v1/subscription_cancel_params.rb +75 -0
  26. data/lib/stigg/models/v1/subscription_delegate_params.rb +7 -2
  27. data/lib/stigg/models/v1/subscription_import_params.rb +92 -0
  28. data/lib/stigg/models/v1/subscription_import_response.rb +32 -0
  29. data/lib/stigg/models/v1/subscription_list_params.rb +20 -24
  30. data/lib/stigg/models/v1/subscription_list_response.rb +255 -236
  31. data/lib/stigg/models/v1/subscription_migrate_params.rb +3 -3
  32. data/lib/stigg/models/v1/subscription_preview_params.rb +139 -46
  33. data/lib/stigg/models/v1/subscription_preview_response.rb +164 -49
  34. data/lib/stigg/models/v1/subscription_provision_params.rb +1693 -0
  35. data/lib/stigg/models/v1/subscription_provision_response.rb +1038 -0
  36. data/lib/stigg/models/v1/subscription_transfer_params.rb +2 -6
  37. data/lib/stigg/models/v1/subscription_update_params.rb +1114 -0
  38. data/lib/stigg/models/v1/subscriptions/{future_update_cancel_pending_payment_response.rb → cancel_subscription.rb} +9 -5
  39. data/lib/stigg/models/v1/usage_history_params.rb +54 -0
  40. data/lib/stigg/models/v1/usage_history_response.rb +155 -0
  41. data/lib/stigg/models/v1/usage_report_params.rb +114 -0
  42. data/lib/stigg/models/v1/usage_report_response.rb +120 -0
  43. data/lib/stigg/models.rb +0 -4
  44. data/lib/stigg/resources/v1/coupons.rb +16 -14
  45. data/lib/stigg/resources/v1/customers/payment_method.rb +6 -5
  46. data/lib/stigg/resources/v1/customers/{promotional.rb → promotional_entitlements.rb} +17 -17
  47. data/lib/stigg/resources/v1/customers.rb +78 -56
  48. data/lib/stigg/resources/v1/events.rb +38 -0
  49. data/lib/stigg/resources/v1/subscriptions/future_update.rb +10 -8
  50. data/lib/stigg/resources/v1/subscriptions.rb +206 -79
  51. data/lib/stigg/resources/v1/usage.rb +79 -0
  52. data/lib/stigg/resources/v1.rb +6 -42
  53. data/lib/stigg/version.rb +1 -1
  54. data/lib/stigg.rb +25 -23
  55. data/rbi/stigg/internal/my_cursor_id_page.rbi +27 -0
  56. data/rbi/stigg/models/v1/coupon.rbi +891 -0
  57. data/rbi/stigg/models/v1/coupon_create_params.rbi +1 -0
  58. data/rbi/stigg/models/v1/coupon_list_params.rbi +21 -21
  59. data/rbi/stigg/models/v1/coupon_list_response.rbi +812 -869
  60. data/rbi/stigg/models/v1/customer_import_params.rbi +130 -0
  61. data/rbi/stigg/models/v1/customer_import_response.rbi +76 -0
  62. data/rbi/stigg/models/v1/customer_list_params.rbi +21 -21
  63. data/rbi/stigg/models/v1/customer_list_response.rbi +307 -347
  64. data/rbi/stigg/models/v1/{customer_create_params.rbi → customer_provision_params.rbi} +36 -35
  65. data/rbi/stigg/models/v1/customer_response.rbi +8 -1
  66. data/rbi/stigg/models/v1/customer_update_params.rbi +1 -0
  67. data/rbi/stigg/models/v1/customers/payment_method_attach_params.rbi +3 -0
  68. data/rbi/stigg/models/v1/customers/{promotional_create_params.rbi → promotional_entitlement_grant_params.rbi} +78 -77
  69. data/rbi/stigg/models/v1/customers/promotional_entitlement_grant_response.rbi +690 -0
  70. data/rbi/stigg/models/v1/customers/{promotional_revoke_params.rbi → promotional_entitlement_revoke_params.rbi} +2 -2
  71. data/rbi/stigg/models/v1/customers/promotional_entitlement_revoke_response.rbi +696 -0
  72. data/rbi/stigg/models/v1/event_report_params.rbi +168 -0
  73. data/rbi/stigg/models/v1/event_report_response.rbi +35 -0
  74. data/rbi/stigg/models/v1/{subscription_migrate_response.rbi → subscription.rbi} +130 -98
  75. data/rbi/stigg/models/v1/subscription_cancel_params.rbi +182 -0
  76. data/rbi/stigg/models/v1/subscription_delegate_params.rbi +6 -2
  77. data/rbi/stigg/models/v1/subscription_import_params.rbi +148 -0
  78. data/rbi/stigg/models/v1/subscription_import_response.rbi +69 -0
  79. data/rbi/stigg/models/v1/subscription_list_params.rbi +26 -28
  80. data/rbi/stigg/models/v1/subscription_list_response.rbi +460 -435
  81. data/rbi/stigg/models/v1/subscription_migrate_params.rbi +3 -3
  82. data/rbi/stigg/models/v1/subscription_preview_params.rbi +112 -14
  83. data/rbi/stigg/models/v1/subscription_preview_response.rbi +139 -6
  84. data/rbi/stigg/models/v1/subscription_provision_params.rbi +5306 -0
  85. data/rbi/stigg/models/v1/subscription_provision_response.rbi +3175 -0
  86. data/rbi/stigg/models/v1/subscription_transfer_params.rbi +2 -4
  87. data/rbi/stigg/models/v1/subscription_update_params.rbi +3578 -0
  88. data/rbi/stigg/models/v1/subscriptions/{future_update_cancel_schedule_response.rbi → cancel_subscription.rbi} +10 -16
  89. data/rbi/stigg/models/v1/usage_history_params.rbi +79 -0
  90. data/rbi/stigg/models/v1/usage_history_response.rbi +347 -0
  91. data/rbi/stigg/models/v1/usage_report_params.rbi +227 -0
  92. data/rbi/stigg/models/v1/usage_report_response.rbi +162 -0
  93. data/rbi/stigg/models.rbi +0 -4
  94. data/rbi/stigg/resources/v1/coupons.rbi +22 -14
  95. data/rbi/stigg/resources/v1/customers/payment_method.rbi +9 -3
  96. data/rbi/stigg/resources/v1/customers/{promotional.rbi → promotional_entitlements.rbi} +13 -9
  97. data/rbi/stigg/resources/v1/customers.rbi +84 -53
  98. data/rbi/stigg/resources/v1/events.rbi +28 -0
  99. data/rbi/stigg/resources/v1/subscriptions/future_update.rbi +14 -10
  100. data/rbi/stigg/resources/v1/subscriptions.rbi +242 -58
  101. data/rbi/stigg/resources/v1/usage.rbi +57 -0
  102. data/rbi/stigg/resources/v1.rbi +4 -26
  103. data/sig/stigg/internal/my_cursor_id_page.rbs +17 -0
  104. data/sig/stigg/models/v1/{coupon_create_response.rbs → coupon.rbs} +29 -32
  105. data/sig/stigg/models/v1/coupon_list_params.rbs +11 -11
  106. data/sig/stigg/models/v1/coupon_list_response.rbs +331 -351
  107. data/sig/stigg/models/v1/customer_import_params.rbs +74 -0
  108. data/sig/stigg/models/v1/customer_import_response.rbs +30 -0
  109. data/sig/stigg/models/v1/customer_list_params.rbs +11 -11
  110. data/sig/stigg/models/v1/customer_list_response.rbs +133 -153
  111. data/sig/stigg/models/v1/{customer_create_params.rbs → customer_provision_params.rbs} +22 -22
  112. data/sig/stigg/models/v1/customers/{promotional_create_params.rbs → promotional_entitlement_grant_params.rbs} +43 -43
  113. data/sig/stigg/models/v1/customers/promotional_entitlement_grant_response.rbs +281 -0
  114. data/sig/stigg/models/v1/customers/{promotional_revoke_params.rbs → promotional_entitlement_revoke_params.rbs} +2 -2
  115. data/sig/stigg/models/v1/customers/promotional_entitlement_revoke_response.rbs +281 -0
  116. data/sig/stigg/models/v1/event_report_params.rbs +82 -0
  117. data/sig/stigg/models/v1/event_report_response.rbs +15 -0
  118. data/sig/stigg/models/v1/{subscription_retrieve_response.rbs → subscription.rbs} +61 -35
  119. data/sig/stigg/models/v1/subscription_cancel_params.rbs +79 -0
  120. data/sig/stigg/models/v1/subscription_import_params.rbs +84 -0
  121. data/sig/stigg/models/v1/subscription_import_response.rbs +30 -0
  122. data/sig/stigg/models/v1/subscription_list_params.rbs +14 -14
  123. data/sig/stigg/models/v1/subscription_list_response.rbs +196 -189
  124. data/sig/stigg/models/v1/subscription_preview_params.rbs +2 -6
  125. data/sig/stigg/models/v1/subscription_provision_params.rbs +2223 -0
  126. data/sig/stigg/models/v1/subscription_provision_response.rbs +1305 -0
  127. data/sig/stigg/models/v1/subscription_update_params.rbs +1544 -0
  128. data/sig/stigg/models/v1/subscriptions/cancel_subscription.rbs +34 -0
  129. data/sig/stigg/models/v1/usage_history_params.rbs +52 -0
  130. data/sig/stigg/models/v1/usage_history_response.rbs +129 -0
  131. data/sig/stigg/models/v1/usage_report_params.rbs +102 -0
  132. data/sig/stigg/models/v1/usage_report_response.rbs +87 -0
  133. data/sig/stigg/models.rbs +0 -4
  134. data/sig/stigg/resources/v1/coupons.rbs +5 -5
  135. data/sig/stigg/resources/v1/customers/{promotional.rbs → promotional_entitlements.rbs} +5 -5
  136. data/sig/stigg/resources/v1/customers.rbs +20 -17
  137. data/sig/stigg/resources/v1/events.rbs +14 -0
  138. data/sig/stigg/resources/v1/subscriptions/future_update.rbs +2 -2
  139. data/sig/stigg/resources/v1/subscriptions.rbs +68 -20
  140. data/sig/stigg/resources/v1/usage.rbs +24 -0
  141. data/sig/stigg/resources/v1.rbs +2 -8
  142. metadata +77 -71
  143. data/lib/stigg/models/v1/coupon_retrieve_response.rb +0 -317
  144. data/lib/stigg/models/v1/customers/usage_retrieve_params.rb +0 -56
  145. data/lib/stigg/models/v1/customers/usage_retrieve_response.rb +0 -145
  146. data/lib/stigg/models/v1/subscription_create_params.rb +0 -214
  147. data/lib/stigg/models/v1/subscription_create_response.rb +0 -338
  148. data/lib/stigg/models/v1/subscription_delegate_response.rb +0 -274
  149. data/lib/stigg/models/v1/subscription_migrate_response.rb +0 -274
  150. data/lib/stigg/models/v1/subscription_transfer_response.rb +0 -274
  151. data/lib/stigg/models/v1/subscriptions/future_update_cancel_schedule_response.rb +0 -32
  152. data/lib/stigg/models/v1_create_event_params.rb +0 -87
  153. data/lib/stigg/models/v1_create_event_response.rb +0 -16
  154. data/lib/stigg/models/v1_create_usage_params.rb +0 -96
  155. data/lib/stigg/models/v1_create_usage_response.rb +0 -112
  156. data/lib/stigg/resources/v1/customers/usage.rb +0 -59
  157. data/rbi/stigg/models/v1/coupon_create_response.rbi +0 -986
  158. data/rbi/stigg/models/v1/coupon_retrieve_response.rbi +0 -986
  159. data/rbi/stigg/models/v1/customers/promotional_create_response.rbi +0 -495
  160. data/rbi/stigg/models/v1/customers/promotional_revoke_response.rbi +0 -497
  161. data/rbi/stigg/models/v1/customers/usage_retrieve_params.rbi +0 -84
  162. data/rbi/stigg/models/v1/customers/usage_retrieve_response.rbi +0 -353
  163. data/rbi/stigg/models/v1/subscription_create_params.rbi +0 -394
  164. data/rbi/stigg/models/v1/subscription_create_response.rbi +0 -668
  165. data/rbi/stigg/models/v1/subscription_delegate_response.rbi +0 -535
  166. data/rbi/stigg/models/v1/subscription_retrieve_response.rbi +0 -535
  167. data/rbi/stigg/models/v1/subscription_transfer_response.rbi +0 -535
  168. data/rbi/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_response.rbi +0 -79
  169. data/rbi/stigg/models/v1_create_event_params.rbi +0 -160
  170. data/rbi/stigg/models/v1_create_event_response.rbi +0 -23
  171. data/rbi/stigg/models/v1_create_usage_params.rbi +0 -177
  172. data/rbi/stigg/models/v1_create_usage_response.rbi +0 -150
  173. data/rbi/stigg/resources/v1/customers/usage.rbi +0 -45
  174. data/sig/stigg/models/v1/coupon_retrieve_response.rbs +0 -394
  175. data/sig/stigg/models/v1/customers/promotional_create_response.rbs +0 -209
  176. data/sig/stigg/models/v1/customers/promotional_revoke_response.rbs +0 -209
  177. data/sig/stigg/models/v1/customers/usage_retrieve_params.rbs +0 -54
  178. data/sig/stigg/models/v1/customers/usage_retrieve_response.rbs +0 -134
  179. data/sig/stigg/models/v1/subscription_create_params.rbs +0 -199
  180. data/sig/stigg/models/v1/subscription_create_response.rbs +0 -283
  181. data/sig/stigg/models/v1/subscription_delegate_response.rbs +0 -224
  182. data/sig/stigg/models/v1/subscription_migrate_response.rbs +0 -224
  183. data/sig/stigg/models/v1/subscription_transfer_response.rbs +0 -224
  184. data/sig/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_response.rbs +0 -34
  185. data/sig/stigg/models/v1/subscriptions/future_update_cancel_schedule_response.rbs +0 -34
  186. data/sig/stigg/models/v1_create_event_params.rbs +0 -80
  187. data/sig/stigg/models/v1_create_event_response.rbs +0 -13
  188. data/sig/stigg/models/v1_create_usage_params.rbs +0 -90
  189. data/sig/stigg/models/v1_create_usage_response.rbs +0 -85
  190. data/sig/stigg/resources/v1/customers/usage.rbs +0 -21
@@ -3,35 +3,32 @@
3
3
  module Stigg
4
4
  module Models
5
5
  module V1
6
+ CancelSubscription = Subscriptions::CancelSubscription
7
+
6
8
  module Subscriptions
7
- class FutureUpdateCancelScheduleResponse < Stigg::Internal::Type::BaseModel
9
+ class CancelSubscription < Stigg::Internal::Type::BaseModel
8
10
  OrHash =
9
11
  T.type_alias do
10
12
  T.any(
11
- Stigg::Models::V1::Subscriptions::FutureUpdateCancelScheduleResponse,
13
+ Stigg::V1::Subscriptions::CancelSubscription,
12
14
  Stigg::Internal::AnyHash
13
15
  )
14
16
  end
15
17
 
16
- sig do
17
- returns(
18
- Stigg::Models::V1::Subscriptions::FutureUpdateCancelScheduleResponse::Data
19
- )
20
- end
18
+ sig { returns(Stigg::V1::Subscriptions::CancelSubscription::Data) }
21
19
  attr_reader :data
22
20
 
23
21
  sig do
24
22
  params(
25
- data:
26
- Stigg::Models::V1::Subscriptions::FutureUpdateCancelScheduleResponse::Data::OrHash
23
+ data: Stigg::V1::Subscriptions::CancelSubscription::Data::OrHash
27
24
  ).void
28
25
  end
29
26
  attr_writer :data
30
27
 
28
+ # Response object
31
29
  sig do
32
30
  params(
33
- data:
34
- Stigg::Models::V1::Subscriptions::FutureUpdateCancelScheduleResponse::Data::OrHash
31
+ data: Stigg::V1::Subscriptions::CancelSubscription::Data::OrHash
35
32
  ).returns(T.attached_class)
36
33
  end
37
34
  def self.new(data:)
@@ -39,10 +36,7 @@ module Stigg
39
36
 
40
37
  sig do
41
38
  override.returns(
42
- {
43
- data:
44
- Stigg::Models::V1::Subscriptions::FutureUpdateCancelScheduleResponse::Data
45
- }
39
+ { data: Stigg::V1::Subscriptions::CancelSubscription::Data }
46
40
  )
47
41
  end
48
42
  def to_hash
@@ -52,7 +46,7 @@ module Stigg
52
46
  OrHash =
53
47
  T.type_alias do
54
48
  T.any(
55
- Stigg::Models::V1::Subscriptions::FutureUpdateCancelScheduleResponse::Data,
49
+ Stigg::V1::Subscriptions::CancelSubscription::Data,
56
50
  Stigg::Internal::AnyHash
57
51
  )
58
52
  end
@@ -0,0 +1,79 @@
1
+ # typed: strong
2
+
3
+ module Stigg
4
+ module Models
5
+ module V1
6
+ class UsageHistoryParams < 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(Stigg::V1::UsageHistoryParams, Stigg::Internal::AnyHash)
13
+ end
14
+
15
+ sig { returns(String) }
16
+ attr_accessor :customer_id
17
+
18
+ # The start date of the range
19
+ sig { returns(Time) }
20
+ attr_accessor :start_date
21
+
22
+ # The end date of the range
23
+ sig { returns(T.nilable(Time)) }
24
+ attr_reader :end_date
25
+
26
+ sig { params(end_date: Time).void }
27
+ attr_writer :end_date
28
+
29
+ sig { returns(T.nilable(String)) }
30
+ attr_reader :group_by
31
+
32
+ sig { params(group_by: String).void }
33
+ attr_writer :group_by
34
+
35
+ # Resource id
36
+ sig { returns(T.nilable(String)) }
37
+ attr_accessor :resource_id
38
+
39
+ sig do
40
+ params(
41
+ customer_id: String,
42
+ start_date: Time,
43
+ end_date: Time,
44
+ group_by: String,
45
+ resource_id: T.nilable(String),
46
+ request_options: Stigg::RequestOptions::OrHash
47
+ ).returns(T.attached_class)
48
+ end
49
+ def self.new(
50
+ customer_id:,
51
+ # The start date of the range
52
+ start_date:,
53
+ # The end date of the range
54
+ end_date: nil,
55
+ group_by: nil,
56
+ # Resource id
57
+ resource_id: nil,
58
+ request_options: {}
59
+ )
60
+ end
61
+
62
+ sig do
63
+ override.returns(
64
+ {
65
+ customer_id: String,
66
+ start_date: Time,
67
+ end_date: Time,
68
+ group_by: String,
69
+ resource_id: T.nilable(String),
70
+ request_options: Stigg::RequestOptions
71
+ }
72
+ )
73
+ end
74
+ def to_hash
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,347 @@
1
+ # typed: strong
2
+
3
+ module Stigg
4
+ module Models
5
+ module V1
6
+ class UsageHistoryResponse < Stigg::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Stigg::Models::V1::UsageHistoryResponse,
11
+ Stigg::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ # Historical usage time series
16
+ sig { returns(Stigg::Models::V1::UsageHistoryResponse::Data) }
17
+ attr_reader :data
18
+
19
+ sig do
20
+ params(
21
+ data: Stigg::Models::V1::UsageHistoryResponse::Data::OrHash
22
+ ).void
23
+ end
24
+ attr_writer :data
25
+
26
+ # Response object
27
+ sig do
28
+ params(
29
+ data: Stigg::Models::V1::UsageHistoryResponse::Data::OrHash
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(
33
+ # Historical usage time series
34
+ data:
35
+ )
36
+ end
37
+
38
+ sig do
39
+ override.returns(
40
+ { data: Stigg::Models::V1::UsageHistoryResponse::Data }
41
+ )
42
+ end
43
+ def to_hash
44
+ end
45
+
46
+ class Data < Stigg::Internal::Type::BaseModel
47
+ OrHash =
48
+ T.type_alias do
49
+ T.any(
50
+ Stigg::Models::V1::UsageHistoryResponse::Data,
51
+ Stigg::Internal::AnyHash
52
+ )
53
+ end
54
+
55
+ # Markers for events that affecting feature usage
56
+ sig do
57
+ returns(
58
+ T::Array[Stigg::Models::V1::UsageHistoryResponse::Data::Marker]
59
+ )
60
+ end
61
+ attr_accessor :markers
62
+
63
+ # Series of usage history
64
+ sig do
65
+ returns(
66
+ T::Array[Stigg::Models::V1::UsageHistoryResponse::Data::Series]
67
+ )
68
+ end
69
+ attr_accessor :series
70
+
71
+ # Historical usage time series
72
+ sig do
73
+ params(
74
+ markers:
75
+ T::Array[
76
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker::OrHash
77
+ ],
78
+ series:
79
+ T::Array[
80
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::OrHash
81
+ ]
82
+ ).returns(T.attached_class)
83
+ end
84
+ def self.new(
85
+ # Markers for events that affecting feature usage
86
+ markers:,
87
+ # Series of usage history
88
+ series:
89
+ )
90
+ end
91
+
92
+ sig do
93
+ override.returns(
94
+ {
95
+ markers:
96
+ T::Array[
97
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker
98
+ ],
99
+ series:
100
+ T::Array[
101
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series
102
+ ]
103
+ }
104
+ )
105
+ end
106
+ def to_hash
107
+ end
108
+
109
+ class Marker < Stigg::Internal::Type::BaseModel
110
+ OrHash =
111
+ T.type_alias do
112
+ T.any(
113
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker,
114
+ Stigg::Internal::AnyHash
115
+ )
116
+ end
117
+
118
+ # Timestamp of the marker
119
+ sig { returns(Time) }
120
+ attr_accessor :timestamp
121
+
122
+ # Type of marker for a usage history point
123
+ sig do
124
+ returns(
125
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker::Type::TaggedSymbol
126
+ )
127
+ end
128
+ attr_accessor :type
129
+
130
+ # Usage reset or change marker
131
+ sig do
132
+ params(
133
+ timestamp: Time,
134
+ type:
135
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker::Type::OrSymbol
136
+ ).returns(T.attached_class)
137
+ end
138
+ def self.new(
139
+ # Timestamp of the marker
140
+ timestamp:,
141
+ # Type of marker for a usage history point
142
+ type:
143
+ )
144
+ end
145
+
146
+ sig do
147
+ override.returns(
148
+ {
149
+ timestamp: Time,
150
+ type:
151
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker::Type::TaggedSymbol
152
+ }
153
+ )
154
+ end
155
+ def to_hash
156
+ end
157
+
158
+ # Type of marker for a usage history point
159
+ module Type
160
+ extend Stigg::Internal::Type::Enum
161
+
162
+ TaggedSymbol =
163
+ T.type_alias do
164
+ T.all(
165
+ Symbol,
166
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker::Type
167
+ )
168
+ end
169
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
170
+
171
+ PERIODIC_RESET =
172
+ T.let(
173
+ :PERIODIC_RESET,
174
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker::Type::TaggedSymbol
175
+ )
176
+ SUBSCRIPTION_CHANGE_RESET =
177
+ T.let(
178
+ :SUBSCRIPTION_CHANGE_RESET,
179
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker::Type::TaggedSymbol
180
+ )
181
+
182
+ sig do
183
+ override.returns(
184
+ T::Array[
185
+ Stigg::Models::V1::UsageHistoryResponse::Data::Marker::Type::TaggedSymbol
186
+ ]
187
+ )
188
+ end
189
+ def self.values
190
+ end
191
+ end
192
+ end
193
+
194
+ class Series < Stigg::Internal::Type::BaseModel
195
+ OrHash =
196
+ T.type_alias do
197
+ T.any(
198
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series,
199
+ Stigg::Internal::AnyHash
200
+ )
201
+ end
202
+
203
+ # Points in the usage history series
204
+ sig do
205
+ returns(
206
+ T::Array[
207
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::Point
208
+ ]
209
+ )
210
+ end
211
+ attr_accessor :points
212
+
213
+ # Tags for the usage history series
214
+ sig do
215
+ returns(
216
+ T::Array[
217
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::Tag
218
+ ]
219
+ )
220
+ end
221
+ attr_accessor :tags
222
+
223
+ # Usage data points with tags
224
+ sig do
225
+ params(
226
+ points:
227
+ T::Array[
228
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::Point::OrHash
229
+ ],
230
+ tags:
231
+ T::Array[
232
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::Tag::OrHash
233
+ ]
234
+ ).returns(T.attached_class)
235
+ end
236
+ def self.new(
237
+ # Points in the usage history series
238
+ points:,
239
+ # Tags for the usage history series
240
+ tags:
241
+ )
242
+ end
243
+
244
+ sig do
245
+ override.returns(
246
+ {
247
+ points:
248
+ T::Array[
249
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::Point
250
+ ],
251
+ tags:
252
+ T::Array[
253
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::Tag
254
+ ]
255
+ }
256
+ )
257
+ end
258
+ def to_hash
259
+ end
260
+
261
+ class Point < Stigg::Internal::Type::BaseModel
262
+ OrHash =
263
+ T.type_alias do
264
+ T.any(
265
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::Point,
266
+ Stigg::Internal::AnyHash
267
+ )
268
+ end
269
+
270
+ # Indicates whether there was usage reset in this point, see `markers` for details
271
+ sig { returns(T::Boolean) }
272
+ attr_accessor :is_reset_point
273
+
274
+ # Timestamp of the usage history point
275
+ sig { returns(Time) }
276
+ attr_accessor :timestamp
277
+
278
+ # Value of the usage history point
279
+ sig { returns(Float) }
280
+ attr_accessor :value
281
+
282
+ # Single usage data point
283
+ sig do
284
+ params(
285
+ is_reset_point: T::Boolean,
286
+ timestamp: Time,
287
+ value: Float
288
+ ).returns(T.attached_class)
289
+ end
290
+ def self.new(
291
+ # Indicates whether there was usage reset in this point, see `markers` for details
292
+ is_reset_point:,
293
+ # Timestamp of the usage history point
294
+ timestamp:,
295
+ # Value of the usage history point
296
+ value:
297
+ )
298
+ end
299
+
300
+ sig do
301
+ override.returns(
302
+ { is_reset_point: T::Boolean, timestamp: Time, value: Float }
303
+ )
304
+ end
305
+ def to_hash
306
+ end
307
+ end
308
+
309
+ class Tag < Stigg::Internal::Type::BaseModel
310
+ OrHash =
311
+ T.type_alias do
312
+ T.any(
313
+ Stigg::Models::V1::UsageHistoryResponse::Data::Series::Tag,
314
+ Stigg::Internal::AnyHash
315
+ )
316
+ end
317
+
318
+ # Key of the tag
319
+ sig { returns(String) }
320
+ attr_accessor :key
321
+
322
+ # Value of the tag
323
+ sig { returns(String) }
324
+ attr_accessor :value
325
+
326
+ # Grouping tag key-value
327
+ sig do
328
+ params(key: String, value: String).returns(T.attached_class)
329
+ end
330
+ def self.new(
331
+ # Key of the tag
332
+ key:,
333
+ # Value of the tag
334
+ value:
335
+ )
336
+ end
337
+
338
+ sig { override.returns({ key: String, value: String }) }
339
+ def to_hash
340
+ end
341
+ end
342
+ end
343
+ end
344
+ end
345
+ end
346
+ end
347
+ end
@@ -0,0 +1,227 @@
1
+ # typed: strong
2
+
3
+ module Stigg
4
+ module Models
5
+ module V1
6
+ class UsageReportParams < 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(Stigg::V1::UsageReportParams, Stigg::Internal::AnyHash)
13
+ end
14
+
15
+ # A list of usage reports to be submitted in bulk
16
+ sig { returns(T::Array[Stigg::V1::UsageReportParams::Usage]) }
17
+ attr_accessor :usages
18
+
19
+ sig do
20
+ params(
21
+ usages: T::Array[Stigg::V1::UsageReportParams::Usage::OrHash],
22
+ request_options: Stigg::RequestOptions::OrHash
23
+ ).returns(T.attached_class)
24
+ end
25
+ def self.new(
26
+ # A list of usage reports to be submitted in bulk
27
+ usages:,
28
+ request_options: {}
29
+ )
30
+ end
31
+
32
+ sig do
33
+ override.returns(
34
+ {
35
+ usages: T::Array[Stigg::V1::UsageReportParams::Usage],
36
+ request_options: Stigg::RequestOptions
37
+ }
38
+ )
39
+ end
40
+ def to_hash
41
+ end
42
+
43
+ class Usage < Stigg::Internal::Type::BaseModel
44
+ OrHash =
45
+ T.type_alias do
46
+ T.any(
47
+ Stigg::V1::UsageReportParams::Usage,
48
+ Stigg::Internal::AnyHash
49
+ )
50
+ end
51
+
52
+ # Customer id
53
+ sig { returns(String) }
54
+ attr_accessor :customer_id
55
+
56
+ # Feature id
57
+ sig { returns(String) }
58
+ attr_accessor :feature_id
59
+
60
+ # The value to report for usage
61
+ sig { returns(Integer) }
62
+ attr_accessor :value
63
+
64
+ # Timestamp of when the record was created
65
+ sig { returns(T.nilable(Time)) }
66
+ attr_reader :created_at
67
+
68
+ sig { params(created_at: Time).void }
69
+ attr_writer :created_at
70
+
71
+ # Additional dimensions for the usage report
72
+ sig do
73
+ returns(
74
+ T.nilable(
75
+ T::Hash[
76
+ Symbol,
77
+ Stigg::V1::UsageReportParams::Usage::Dimension::Variants
78
+ ]
79
+ )
80
+ )
81
+ end
82
+ attr_reader :dimensions
83
+
84
+ sig do
85
+ params(
86
+ dimensions:
87
+ T::Hash[
88
+ Symbol,
89
+ Stigg::V1::UsageReportParams::Usage::Dimension::Variants
90
+ ]
91
+ ).void
92
+ end
93
+ attr_writer :dimensions
94
+
95
+ # Resource id
96
+ sig { returns(T.nilable(String)) }
97
+ attr_accessor :resource_id
98
+
99
+ # The method by which the usage value should be updated
100
+ sig do
101
+ returns(
102
+ T.nilable(
103
+ Stigg::V1::UsageReportParams::Usage::UpdateBehavior::OrSymbol
104
+ )
105
+ )
106
+ end
107
+ attr_reader :update_behavior
108
+
109
+ sig do
110
+ params(
111
+ update_behavior:
112
+ Stigg::V1::UsageReportParams::Usage::UpdateBehavior::OrSymbol
113
+ ).void
114
+ end
115
+ attr_writer :update_behavior
116
+
117
+ # Single usage measurement
118
+ sig do
119
+ params(
120
+ customer_id: String,
121
+ feature_id: String,
122
+ value: Integer,
123
+ created_at: Time,
124
+ dimensions:
125
+ T::Hash[
126
+ Symbol,
127
+ Stigg::V1::UsageReportParams::Usage::Dimension::Variants
128
+ ],
129
+ resource_id: T.nilable(String),
130
+ update_behavior:
131
+ Stigg::V1::UsageReportParams::Usage::UpdateBehavior::OrSymbol
132
+ ).returns(T.attached_class)
133
+ end
134
+ def self.new(
135
+ # Customer id
136
+ customer_id:,
137
+ # Feature id
138
+ feature_id:,
139
+ # The value to report for usage
140
+ value:,
141
+ # Timestamp of when the record was created
142
+ created_at: nil,
143
+ # Additional dimensions for the usage report
144
+ dimensions: nil,
145
+ # Resource id
146
+ resource_id: nil,
147
+ # The method by which the usage value should be updated
148
+ update_behavior: nil
149
+ )
150
+ end
151
+
152
+ sig do
153
+ override.returns(
154
+ {
155
+ customer_id: String,
156
+ feature_id: String,
157
+ value: Integer,
158
+ created_at: Time,
159
+ dimensions:
160
+ T::Hash[
161
+ Symbol,
162
+ Stigg::V1::UsageReportParams::Usage::Dimension::Variants
163
+ ],
164
+ resource_id: T.nilable(String),
165
+ update_behavior:
166
+ Stigg::V1::UsageReportParams::Usage::UpdateBehavior::OrSymbol
167
+ }
168
+ )
169
+ end
170
+ def to_hash
171
+ end
172
+
173
+ module Dimension
174
+ extend Stigg::Internal::Type::Union
175
+
176
+ Variants = T.type_alias { T.any(String, Float, T::Boolean) }
177
+
178
+ sig do
179
+ override.returns(
180
+ T::Array[
181
+ Stigg::V1::UsageReportParams::Usage::Dimension::Variants
182
+ ]
183
+ )
184
+ end
185
+ def self.variants
186
+ end
187
+ end
188
+
189
+ # The method by which the usage value should be updated
190
+ module UpdateBehavior
191
+ extend Stigg::Internal::Type::Enum
192
+
193
+ TaggedSymbol =
194
+ T.type_alias do
195
+ T.all(
196
+ Symbol,
197
+ Stigg::V1::UsageReportParams::Usage::UpdateBehavior
198
+ )
199
+ end
200
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
201
+
202
+ DELTA =
203
+ T.let(
204
+ :DELTA,
205
+ Stigg::V1::UsageReportParams::Usage::UpdateBehavior::TaggedSymbol
206
+ )
207
+ SET =
208
+ T.let(
209
+ :SET,
210
+ Stigg::V1::UsageReportParams::Usage::UpdateBehavior::TaggedSymbol
211
+ )
212
+
213
+ sig do
214
+ override.returns(
215
+ T::Array[
216
+ Stigg::V1::UsageReportParams::Usage::UpdateBehavior::TaggedSymbol
217
+ ]
218
+ )
219
+ end
220
+ def self.values
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
226
+ end
227
+ end