stigg 0.1.0.pre.alpha.8 → 0.1.0.pre.alpha.9

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d7e8572cb3270a065845531993d6dfa0dd780f3131e7e10eac02e02507fd86be
4
- data.tar.gz: 2a09c27bf8142cdf28baad93219e0da2b3b9d9e47c2a9adf0ab6c90d4863512b
3
+ metadata.gz: 1e8637c6858e928c867edf2b83fc567a57861a2ea189c14a6fbe98bd4f03198f
4
+ data.tar.gz: 606bc8979a82ef67b1b0ddf7e19e79e8fd9b9abbbf606768794456f39c513378
5
5
  SHA512:
6
- metadata.gz: 82f045b225aaa5e9e797bde6511ebf8797faf312f041ce3ce28d0edf64ec930a8cf81690efc7cfdd5a6474f987e29775779f739d6f747eaf29c1d311a1e6471f
7
- data.tar.gz: 8b11f4716054b08d12d203f8af18aced2c0cf499b5ba0379b44b9f142ad392cc4e736118432aaef4d2dbf349948e20674fe07ba9dd1362ef9a640b05f442182f
6
+ metadata.gz: fe66d391669e9eef4555b6e4fe8b5e382442d32ff61dc7c189df4a5ef9de85d3b8c1f4dae6dccfd930eea967426e9d96185859e2979e0ea07b1de722cbabcd47
7
+ data.tar.gz: 9b437a3b4ee95d9e47a79f509e04dc5501af1c27b042b85469740701172879b46eb16ae5ce9b088d73df21997f7a19a3c8da8f9d8e2be8a9f6e5a2d39e1d7b52
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.9 (2026-02-26)
4
+
5
+ Full Changelog: [v0.1.0-alpha.8...v0.1.0-alpha.9](https://github.com/stiggio/stigg-ruby/compare/v0.1.0-alpha.8...v0.1.0-alpha.9)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([6d00132](https://github.com/stiggio/stigg-ruby/commit/6d0013205c53378a661bcb45e9e3ef61e3e0c45a))
10
+
3
11
  ## 0.1.0-alpha.8 (2026-02-22)
4
12
 
5
13
  Full Changelog: [v0.1.0-alpha.7...v0.1.0-alpha.8](https://github.com/stiggio/stigg-ruby/compare/v0.1.0-alpha.7...v0.1.0-alpha.8)
data/README.md CHANGED
@@ -24,7 +24,7 @@ To use this gem, install via Bundler by adding the following to your application
24
24
  <!-- x-release-please-start-version -->
25
25
 
26
26
  ```ruby
27
- gem "stigg", "~> 0.1.0.pre.alpha.8"
27
+ gem "stigg", "~> 0.1.0.pre.alpha.9"
28
28
  ```
29
29
 
30
30
  <!-- x-release-please-end -->
@@ -33,6 +33,15 @@ module Stigg
33
33
  # @return [String, nil]
34
34
  optional :billing_id, String, api_name: :billingId, nil?: true
35
35
 
36
+ # @!attribute default_trial_config
37
+ # Default trial configuration for the plan
38
+ #
39
+ # @return [Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig, nil]
40
+ optional :default_trial_config,
41
+ -> { Stigg::V1::Events::PlanCreateParams::DefaultTrialConfig },
42
+ api_name: :defaultTrialConfig,
43
+ nil?: true
44
+
36
45
  # @!attribute description
37
46
  # The description of the package
38
47
  #
@@ -66,7 +75,7 @@ module Stigg
66
75
  # @return [Symbol, Stigg::Models::V1::Events::PlanCreateParams::Status, nil]
67
76
  optional :status, enum: -> { Stigg::V1::Events::PlanCreateParams::Status }
68
77
 
69
- # @!method initialize(id:, display_name:, product_id:, billing_id: nil, description: nil, metadata: nil, parent_plan_id: nil, pricing_type: nil, status: nil, request_options: {})
78
+ # @!method initialize(id:, display_name:, product_id:, billing_id: nil, default_trial_config: nil, description: nil, metadata: nil, parent_plan_id: nil, pricing_type: nil, status: nil, request_options: {})
70
79
  # @param id [String] The unique identifier for the entity
71
80
  #
72
81
  # @param display_name [String] The display name of the package
@@ -75,6 +84,8 @@ module Stigg
75
84
  #
76
85
  # @param billing_id [String, nil] The unique identifier for the entity in the billing provider
77
86
  #
87
+ # @param default_trial_config [Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig, nil] Default trial configuration for the plan
88
+ #
78
89
  # @param description [String, nil] The description of the package
79
90
  #
80
91
  # @param metadata [Hash{Symbol=>String}] Metadata associated with the entity
@@ -87,6 +98,98 @@ module Stigg
87
98
  #
88
99
  # @param request_options [Stigg::RequestOptions, Hash{Symbol=>Object}]
89
100
 
101
+ class DefaultTrialConfig < Stigg::Internal::Type::BaseModel
102
+ # @!attribute duration
103
+ # The duration of the trial in the specified units
104
+ #
105
+ # @return [Float]
106
+ required :duration, Float
107
+
108
+ # @!attribute units
109
+ # The time unit for the trial duration (DAY or MONTH)
110
+ #
111
+ # @return [Symbol, Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig::Units]
112
+ required :units, enum: -> { Stigg::V1::Events::PlanCreateParams::DefaultTrialConfig::Units }
113
+
114
+ # @!attribute budget
115
+ # Budget configuration for the trial
116
+ #
117
+ # @return [Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig::Budget, nil]
118
+ optional :budget,
119
+ -> {
120
+ Stigg::V1::Events::PlanCreateParams::DefaultTrialConfig::Budget
121
+ },
122
+ nil?: true
123
+
124
+ # @!attribute trial_end_behavior
125
+ # Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
126
+ #
127
+ # @return [Symbol, Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig::TrialEndBehavior, nil]
128
+ optional :trial_end_behavior,
129
+ enum: -> { Stigg::V1::Events::PlanCreateParams::DefaultTrialConfig::TrialEndBehavior },
130
+ api_name: :trialEndBehavior,
131
+ nil?: true
132
+
133
+ # @!method initialize(duration:, units:, budget: nil, trial_end_behavior: nil)
134
+ # Default trial configuration for the plan
135
+ #
136
+ # @param duration [Float] The duration of the trial in the specified units
137
+ #
138
+ # @param units [Symbol, Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig::Units] The time unit for the trial duration (DAY or MONTH)
139
+ #
140
+ # @param budget [Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig::Budget, nil] Budget configuration for the trial
141
+ #
142
+ # @param trial_end_behavior [Symbol, Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig::TrialEndBehavior, nil] Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
143
+
144
+ # The time unit for the trial duration (DAY or MONTH)
145
+ #
146
+ # @see Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig#units
147
+ module Units
148
+ extend Stigg::Internal::Type::Enum
149
+
150
+ DAY = :DAY
151
+ MONTH = :MONTH
152
+
153
+ # @!method self.values
154
+ # @return [Array<Symbol>]
155
+ end
156
+
157
+ # @see Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig#budget
158
+ class Budget < Stigg::Internal::Type::BaseModel
159
+ # @!attribute has_soft_limit
160
+ # Whether the budget limit is a soft limit (allows overage) or hard limit
161
+ #
162
+ # @return [Boolean]
163
+ required :has_soft_limit, Stigg::Internal::Type::Boolean, api_name: :hasSoftLimit
164
+
165
+ # @!attribute limit
166
+ # The budget limit amount
167
+ #
168
+ # @return [Float]
169
+ required :limit, Float
170
+
171
+ # @!method initialize(has_soft_limit:, limit:)
172
+ # Budget configuration for the trial
173
+ #
174
+ # @param has_soft_limit [Boolean] Whether the budget limit is a soft limit (allows overage) or hard limit
175
+ #
176
+ # @param limit [Float] The budget limit amount
177
+ end
178
+
179
+ # Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
180
+ #
181
+ # @see Stigg::Models::V1::Events::PlanCreateParams::DefaultTrialConfig#trial_end_behavior
182
+ module TrialEndBehavior
183
+ extend Stigg::Internal::Type::Enum
184
+
185
+ CONVERT_TO_PAID = :CONVERT_TO_PAID
186
+ CANCEL_SUBSCRIPTION = :CANCEL_SUBSCRIPTION
187
+
188
+ # @!method self.values
189
+ # @return [Array<Symbol>]
190
+ end
191
+ end
192
+
90
193
  # The pricing type of the package
91
194
  module PricingType
92
195
  extend Stigg::Internal::Type::Enum
@@ -31,12 +31,29 @@ module Stigg
31
31
  # @return [String, nil]
32
32
  required :billing_id, String, api_name: :billingId, nil?: true
33
33
 
34
+ # @!attribute compatible_addon_ids
35
+ #
36
+ # @return [Array<String>, nil]
37
+ required :compatible_addon_ids,
38
+ Stigg::Internal::Type::ArrayOf[String],
39
+ api_name: :compatibleAddonIds,
40
+ nil?: true
41
+
34
42
  # @!attribute created_at
35
43
  # Timestamp of when the record was created
36
44
  #
37
45
  # @return [Time]
38
46
  required :created_at, Time, api_name: :createdAt
39
47
 
48
+ # @!attribute default_trial_config
49
+ # Default trial configuration for the plan
50
+ #
51
+ # @return [Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig, nil]
52
+ required :default_trial_config,
53
+ -> { Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig },
54
+ api_name: :defaultTrialConfig,
55
+ nil?: true
56
+
40
57
  # @!attribute description
41
58
  # The description of the package
42
59
  #
@@ -107,15 +124,19 @@ module Stigg
107
124
  # @return [Integer]
108
125
  required :version_number, Integer, api_name: :versionNumber
109
126
 
110
- # @!method initialize(id:, billing_id:, created_at:, description:, display_name:, entitlements:, is_latest:, metadata:, parent_plan_id:, pricing_type:, product_id:, status:, updated_at:, version_number:)
127
+ # @!method initialize(id:, billing_id:, compatible_addon_ids:, created_at:, default_trial_config:, description:, display_name:, entitlements:, is_latest:, metadata:, parent_plan_id:, pricing_type:, product_id:, status:, updated_at:, version_number:)
111
128
  # Plan configuration object
112
129
  #
113
130
  # @param id [String] The unique identifier for the entity
114
131
  #
115
132
  # @param billing_id [String, nil] The unique identifier for the entity in the billing provider
116
133
  #
134
+ # @param compatible_addon_ids [Array<String>, nil]
135
+ #
117
136
  # @param created_at [Time] Timestamp of when the record was created
118
137
  #
138
+ # @param default_trial_config [Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig, nil] Default trial configuration for the plan
139
+ #
119
140
  # @param description [String, nil] The description of the package
120
141
  #
121
142
  # @param display_name [String] The display name of the package
@@ -138,6 +159,98 @@ module Stigg
138
159
  #
139
160
  # @param version_number [Integer] The version number of the package
140
161
 
162
+ # @see Stigg::Models::V1::Events::PlanCreateResponse::Data#default_trial_config
163
+ class DefaultTrialConfig < Stigg::Internal::Type::BaseModel
164
+ # @!attribute duration
165
+ # The duration of the trial in the specified units
166
+ #
167
+ # @return [Float]
168
+ required :duration, Float
169
+
170
+ # @!attribute units
171
+ # The time unit for the trial duration (DAY or MONTH)
172
+ #
173
+ # @return [Symbol, Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::Units]
174
+ required :units,
175
+ enum: -> { Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::Units }
176
+
177
+ # @!attribute budget
178
+ # Budget configuration for the trial
179
+ #
180
+ # @return [Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::Budget, nil]
181
+ optional :budget,
182
+ -> { Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::Budget },
183
+ nil?: true
184
+
185
+ # @!attribute trial_end_behavior
186
+ # Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
187
+ #
188
+ # @return [Symbol, Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::TrialEndBehavior, nil]
189
+ optional :trial_end_behavior,
190
+ enum: -> { Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::TrialEndBehavior },
191
+ api_name: :trialEndBehavior,
192
+ nil?: true
193
+
194
+ # @!method initialize(duration:, units:, budget: nil, trial_end_behavior: nil)
195
+ # Default trial configuration for the plan
196
+ #
197
+ # @param duration [Float] The duration of the trial in the specified units
198
+ #
199
+ # @param units [Symbol, Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::Units] The time unit for the trial duration (DAY or MONTH)
200
+ #
201
+ # @param budget [Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::Budget, nil] Budget configuration for the trial
202
+ #
203
+ # @param trial_end_behavior [Symbol, Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig::TrialEndBehavior, nil] Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
204
+
205
+ # The time unit for the trial duration (DAY or MONTH)
206
+ #
207
+ # @see Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig#units
208
+ module Units
209
+ extend Stigg::Internal::Type::Enum
210
+
211
+ DAY = :DAY
212
+ MONTH = :MONTH
213
+
214
+ # @!method self.values
215
+ # @return [Array<Symbol>]
216
+ end
217
+
218
+ # @see Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig#budget
219
+ class Budget < Stigg::Internal::Type::BaseModel
220
+ # @!attribute has_soft_limit
221
+ # Whether the budget limit is a soft limit (allows overage) or hard limit
222
+ #
223
+ # @return [Boolean]
224
+ required :has_soft_limit, Stigg::Internal::Type::Boolean, api_name: :hasSoftLimit
225
+
226
+ # @!attribute limit
227
+ # The budget limit amount
228
+ #
229
+ # @return [Float]
230
+ required :limit, Float
231
+
232
+ # @!method initialize(has_soft_limit:, limit:)
233
+ # Budget configuration for the trial
234
+ #
235
+ # @param has_soft_limit [Boolean] Whether the budget limit is a soft limit (allows overage) or hard limit
236
+ #
237
+ # @param limit [Float] The budget limit amount
238
+ end
239
+
240
+ # Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
241
+ #
242
+ # @see Stigg::Models::V1::Events::PlanCreateResponse::Data::DefaultTrialConfig#trial_end_behavior
243
+ module TrialEndBehavior
244
+ extend Stigg::Internal::Type::Enum
245
+
246
+ CONVERT_TO_PAID = :CONVERT_TO_PAID
247
+ CANCEL_SUBSCRIPTION = :CANCEL_SUBSCRIPTION
248
+
249
+ # @!method self.values
250
+ # @return [Array<Symbol>]
251
+ end
252
+ end
253
+
141
254
  class Entitlement < Stigg::Internal::Type::BaseModel
142
255
  # @!attribute id
143
256
  # The unique identifier for the entity
@@ -18,12 +18,29 @@ module Stigg
18
18
  # @return [String, nil]
19
19
  required :billing_id, String, api_name: :billingId, nil?: true
20
20
 
21
+ # @!attribute compatible_addon_ids
22
+ #
23
+ # @return [Array<String>, nil]
24
+ required :compatible_addon_ids,
25
+ Stigg::Internal::Type::ArrayOf[String],
26
+ api_name: :compatibleAddonIds,
27
+ nil?: true
28
+
21
29
  # @!attribute created_at
22
30
  # Timestamp of when the record was created
23
31
  #
24
32
  # @return [Time]
25
33
  required :created_at, Time, api_name: :createdAt
26
34
 
35
+ # @!attribute default_trial_config
36
+ # Default trial configuration for the plan
37
+ #
38
+ # @return [Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig, nil]
39
+ required :default_trial_config,
40
+ -> { Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig },
41
+ api_name: :defaultTrialConfig,
42
+ nil?: true
43
+
27
44
  # @!attribute description
28
45
  # The description of the package
29
46
  #
@@ -94,15 +111,19 @@ module Stigg
94
111
  # @return [Integer]
95
112
  required :version_number, Integer, api_name: :versionNumber
96
113
 
97
- # @!method initialize(id:, billing_id:, created_at:, description:, display_name:, entitlements:, is_latest:, metadata:, parent_plan_id:, pricing_type:, product_id:, status:, updated_at:, version_number:)
114
+ # @!method initialize(id:, billing_id:, compatible_addon_ids:, created_at:, default_trial_config:, description:, display_name:, entitlements:, is_latest:, metadata:, parent_plan_id:, pricing_type:, product_id:, status:, updated_at:, version_number:)
98
115
  # Plan configuration object
99
116
  #
100
117
  # @param id [String] The unique identifier for the entity
101
118
  #
102
119
  # @param billing_id [String, nil] The unique identifier for the entity in the billing provider
103
120
  #
121
+ # @param compatible_addon_ids [Array<String>, nil]
122
+ #
104
123
  # @param created_at [Time] Timestamp of when the record was created
105
124
  #
125
+ # @param default_trial_config [Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig, nil] Default trial configuration for the plan
126
+ #
106
127
  # @param description [String, nil] The description of the package
107
128
  #
108
129
  # @param display_name [String] The display name of the package
@@ -125,6 +146,97 @@ module Stigg
125
146
  #
126
147
  # @param version_number [Integer] The version number of the package
127
148
 
149
+ # @see Stigg::Models::V1::Events::PlanListResponse#default_trial_config
150
+ class DefaultTrialConfig < Stigg::Internal::Type::BaseModel
151
+ # @!attribute duration
152
+ # The duration of the trial in the specified units
153
+ #
154
+ # @return [Float]
155
+ required :duration, Float
156
+
157
+ # @!attribute units
158
+ # The time unit for the trial duration (DAY or MONTH)
159
+ #
160
+ # @return [Symbol, Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::Units]
161
+ required :units, enum: -> { Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::Units }
162
+
163
+ # @!attribute budget
164
+ # Budget configuration for the trial
165
+ #
166
+ # @return [Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::Budget, nil]
167
+ optional :budget,
168
+ -> { Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::Budget },
169
+ nil?: true
170
+
171
+ # @!attribute trial_end_behavior
172
+ # Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
173
+ #
174
+ # @return [Symbol, Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::TrialEndBehavior, nil]
175
+ optional :trial_end_behavior,
176
+ enum: -> { Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::TrialEndBehavior },
177
+ api_name: :trialEndBehavior,
178
+ nil?: true
179
+
180
+ # @!method initialize(duration:, units:, budget: nil, trial_end_behavior: nil)
181
+ # Default trial configuration for the plan
182
+ #
183
+ # @param duration [Float] The duration of the trial in the specified units
184
+ #
185
+ # @param units [Symbol, Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::Units] The time unit for the trial duration (DAY or MONTH)
186
+ #
187
+ # @param budget [Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::Budget, nil] Budget configuration for the trial
188
+ #
189
+ # @param trial_end_behavior [Symbol, Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig::TrialEndBehavior, nil] Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
190
+
191
+ # The time unit for the trial duration (DAY or MONTH)
192
+ #
193
+ # @see Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig#units
194
+ module Units
195
+ extend Stigg::Internal::Type::Enum
196
+
197
+ DAY = :DAY
198
+ MONTH = :MONTH
199
+
200
+ # @!method self.values
201
+ # @return [Array<Symbol>]
202
+ end
203
+
204
+ # @see Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig#budget
205
+ class Budget < Stigg::Internal::Type::BaseModel
206
+ # @!attribute has_soft_limit
207
+ # Whether the budget limit is a soft limit (allows overage) or hard limit
208
+ #
209
+ # @return [Boolean]
210
+ required :has_soft_limit, Stigg::Internal::Type::Boolean, api_name: :hasSoftLimit
211
+
212
+ # @!attribute limit
213
+ # The budget limit amount
214
+ #
215
+ # @return [Float]
216
+ required :limit, Float
217
+
218
+ # @!method initialize(has_soft_limit:, limit:)
219
+ # Budget configuration for the trial
220
+ #
221
+ # @param has_soft_limit [Boolean] Whether the budget limit is a soft limit (allows overage) or hard limit
222
+ #
223
+ # @param limit [Float] The budget limit amount
224
+ end
225
+
226
+ # Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
227
+ #
228
+ # @see Stigg::Models::V1::Events::PlanListResponse::DefaultTrialConfig#trial_end_behavior
229
+ module TrialEndBehavior
230
+ extend Stigg::Internal::Type::Enum
231
+
232
+ CONVERT_TO_PAID = :CONVERT_TO_PAID
233
+ CANCEL_SUBSCRIPTION = :CANCEL_SUBSCRIPTION
234
+
235
+ # @!method self.values
236
+ # @return [Array<Symbol>]
237
+ end
238
+ end
239
+
128
240
  class Entitlement < Stigg::Internal::Type::BaseModel
129
241
  # @!attribute id
130
242
  # The unique identifier for the entity
@@ -31,12 +31,29 @@ module Stigg
31
31
  # @return [String, nil]
32
32
  required :billing_id, String, api_name: :billingId, nil?: true
33
33
 
34
+ # @!attribute compatible_addon_ids
35
+ #
36
+ # @return [Array<String>, nil]
37
+ required :compatible_addon_ids,
38
+ Stigg::Internal::Type::ArrayOf[String],
39
+ api_name: :compatibleAddonIds,
40
+ nil?: true
41
+
34
42
  # @!attribute created_at
35
43
  # Timestamp of when the record was created
36
44
  #
37
45
  # @return [Time]
38
46
  required :created_at, Time, api_name: :createdAt
39
47
 
48
+ # @!attribute default_trial_config
49
+ # Default trial configuration for the plan
50
+ #
51
+ # @return [Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig, nil]
52
+ required :default_trial_config,
53
+ -> { Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig },
54
+ api_name: :defaultTrialConfig,
55
+ nil?: true
56
+
40
57
  # @!attribute description
41
58
  # The description of the package
42
59
  #
@@ -107,15 +124,19 @@ module Stigg
107
124
  # @return [Integer]
108
125
  required :version_number, Integer, api_name: :versionNumber
109
126
 
110
- # @!method initialize(id:, billing_id:, created_at:, description:, display_name:, entitlements:, is_latest:, metadata:, parent_plan_id:, pricing_type:, product_id:, status:, updated_at:, version_number:)
127
+ # @!method initialize(id:, billing_id:, compatible_addon_ids:, created_at:, default_trial_config:, description:, display_name:, entitlements:, is_latest:, metadata:, parent_plan_id:, pricing_type:, product_id:, status:, updated_at:, version_number:)
111
128
  # Plan configuration object
112
129
  #
113
130
  # @param id [String] The unique identifier for the entity
114
131
  #
115
132
  # @param billing_id [String, nil] The unique identifier for the entity in the billing provider
116
133
  #
134
+ # @param compatible_addon_ids [Array<String>, nil]
135
+ #
117
136
  # @param created_at [Time] Timestamp of when the record was created
118
137
  #
138
+ # @param default_trial_config [Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig, nil] Default trial configuration for the plan
139
+ #
119
140
  # @param description [String, nil] The description of the package
120
141
  #
121
142
  # @param display_name [String] The display name of the package
@@ -138,6 +159,98 @@ module Stigg
138
159
  #
139
160
  # @param version_number [Integer] The version number of the package
140
161
 
162
+ # @see Stigg::Models::V1::Events::PlanRetrieveResponse::Data#default_trial_config
163
+ class DefaultTrialConfig < Stigg::Internal::Type::BaseModel
164
+ # @!attribute duration
165
+ # The duration of the trial in the specified units
166
+ #
167
+ # @return [Float]
168
+ required :duration, Float
169
+
170
+ # @!attribute units
171
+ # The time unit for the trial duration (DAY or MONTH)
172
+ #
173
+ # @return [Symbol, Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::Units]
174
+ required :units,
175
+ enum: -> { Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::Units }
176
+
177
+ # @!attribute budget
178
+ # Budget configuration for the trial
179
+ #
180
+ # @return [Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::Budget, nil]
181
+ optional :budget,
182
+ -> { Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::Budget },
183
+ nil?: true
184
+
185
+ # @!attribute trial_end_behavior
186
+ # Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
187
+ #
188
+ # @return [Symbol, Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::TrialEndBehavior, nil]
189
+ optional :trial_end_behavior,
190
+ enum: -> { Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::TrialEndBehavior },
191
+ api_name: :trialEndBehavior,
192
+ nil?: true
193
+
194
+ # @!method initialize(duration:, units:, budget: nil, trial_end_behavior: nil)
195
+ # Default trial configuration for the plan
196
+ #
197
+ # @param duration [Float] The duration of the trial in the specified units
198
+ #
199
+ # @param units [Symbol, Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::Units] The time unit for the trial duration (DAY or MONTH)
200
+ #
201
+ # @param budget [Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::Budget, nil] Budget configuration for the trial
202
+ #
203
+ # @param trial_end_behavior [Symbol, Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig::TrialEndBehavior, nil] Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
204
+
205
+ # The time unit for the trial duration (DAY or MONTH)
206
+ #
207
+ # @see Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig#units
208
+ module Units
209
+ extend Stigg::Internal::Type::Enum
210
+
211
+ DAY = :DAY
212
+ MONTH = :MONTH
213
+
214
+ # @!method self.values
215
+ # @return [Array<Symbol>]
216
+ end
217
+
218
+ # @see Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig#budget
219
+ class Budget < Stigg::Internal::Type::BaseModel
220
+ # @!attribute has_soft_limit
221
+ # Whether the budget limit is a soft limit (allows overage) or hard limit
222
+ #
223
+ # @return [Boolean]
224
+ required :has_soft_limit, Stigg::Internal::Type::Boolean, api_name: :hasSoftLimit
225
+
226
+ # @!attribute limit
227
+ # The budget limit amount
228
+ #
229
+ # @return [Float]
230
+ required :limit, Float
231
+
232
+ # @!method initialize(has_soft_limit:, limit:)
233
+ # Budget configuration for the trial
234
+ #
235
+ # @param has_soft_limit [Boolean] Whether the budget limit is a soft limit (allows overage) or hard limit
236
+ #
237
+ # @param limit [Float] The budget limit amount
238
+ end
239
+
240
+ # Behavior when the trial ends (CONVERT_TO_PAID or CANCEL_SUBSCRIPTION)
241
+ #
242
+ # @see Stigg::Models::V1::Events::PlanRetrieveResponse::Data::DefaultTrialConfig#trial_end_behavior
243
+ module TrialEndBehavior
244
+ extend Stigg::Internal::Type::Enum
245
+
246
+ CONVERT_TO_PAID = :CONVERT_TO_PAID
247
+ CANCEL_SUBSCRIPTION = :CANCEL_SUBSCRIPTION
248
+
249
+ # @!method self.values
250
+ # @return [Array<Symbol>]
251
+ end
252
+ end
253
+
141
254
  class Entitlement < Stigg::Internal::Type::BaseModel
142
255
  # @!attribute id
143
256
  # The unique identifier for the entity
@@ -429,10 +429,50 @@ module Stigg
429
429
  # @return [String]
430
430
  required :currency_id, String, api_name: :currencyId
431
431
 
432
- # @!method initialize(currency_id:)
432
+ # @!attribute display_name
433
+ # The display name of the currency.
434
+ #
435
+ # @return [String]
436
+ required :display_name, String, api_name: :displayName
437
+
438
+ # @!attribute additional_meta_data
439
+ # Additional metadata associated with the currency.
440
+ #
441
+ # @return [Object, nil]
442
+ optional :additional_meta_data, Stigg::Internal::Type::Unknown, api_name: :additionalMetaData
443
+
444
+ # @!attribute description
445
+ # A description of the currency.
446
+ #
447
+ # @return [String, nil]
448
+ optional :description, String, nil?: true
449
+
450
+ # @!attribute unit_plural
451
+ # The plural form of the currency unit.
452
+ #
453
+ # @return [String, nil]
454
+ optional :unit_plural, String, api_name: :unitPlural, nil?: true
455
+
456
+ # @!attribute unit_singular
457
+ # The singular form of the currency unit.
458
+ #
459
+ # @return [String, nil]
460
+ optional :unit_singular, String, api_name: :unitSingular, nil?: true
461
+
462
+ # @!method initialize(currency_id:, display_name:, additional_meta_data: nil, description: nil, unit_plural: nil, unit_singular: nil)
433
463
  # The currency associated with a credit entitlement.
434
464
  #
435
465
  # @param currency_id [String] The unique identifier of the custom currency.
466
+ #
467
+ # @param display_name [String] The display name of the currency.
468
+ #
469
+ # @param additional_meta_data [Object] Additional metadata associated with the currency.
470
+ #
471
+ # @param description [String, nil] A description of the currency.
472
+ #
473
+ # @param unit_plural [String, nil] The plural form of the currency unit.
474
+ #
475
+ # @param unit_singular [String, nil] The singular form of the currency unit.
436
476
  end
437
477
 
438
478
  # @see Stigg::Models::V1::SubscriptionProvisionResponse::Data::Entitlement::UnionObjectVariant1#type