growsurf-ruby 0.7.0 → 1.0.0

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 (57) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +1 -1
  4. data/lib/growsurf_ruby/models/campaign/campaign_reward_list_response.rb +21 -0
  5. data/lib/growsurf_ruby/models/campaign/delete_reward_response.rb +26 -0
  6. data/lib/growsurf_ruby/models/campaign/reward.rb +193 -0
  7. data/lib/growsurf_ruby/models/campaign/reward_create_params.rb +212 -0
  8. data/lib/growsurf_ruby/models/campaign/reward_delete_params.rb +4 -4
  9. data/lib/growsurf_ruby/models/campaign/reward_update_params.rb +205 -0
  10. data/lib/growsurf_ruby/models/campaign.rb +28 -1
  11. data/lib/growsurf_ruby/models/campaign_create_params.rb +68 -0
  12. data/lib/growsurf_ruby/models/campaign_update_params.rb +63 -0
  13. data/lib/growsurf_ruby/models/reward_tax_valuation.rb +35 -0
  14. data/lib/growsurf_ruby/models.rb +6 -0
  15. data/lib/growsurf_ruby/resources/campaign/design.rb +66 -0
  16. data/lib/growsurf_ruby/resources/campaign/emails.rb +63 -0
  17. data/lib/growsurf_ruby/resources/campaign/installation.rb +65 -0
  18. data/lib/growsurf_ruby/resources/campaign/options.rb +63 -0
  19. data/lib/growsurf_ruby/resources/campaign/rewards.rb +199 -0
  20. data/lib/growsurf_ruby/resources/campaign.rb +112 -0
  21. data/lib/growsurf_ruby/version.rb +1 -1
  22. data/lib/growsurf_ruby.rb +13 -0
  23. data/rbi/growsurf_ruby/models/campaign/campaign_reward_list_response.rbi +41 -0
  24. data/rbi/growsurf_ruby/models/campaign/delete_reward_response.rbi +38 -0
  25. data/rbi/growsurf_ruby/models/campaign/reward.rbi +291 -0
  26. data/rbi/growsurf_ruby/models/campaign/reward_create_params.rbi +358 -0
  27. data/rbi/growsurf_ruby/models/campaign/reward_delete_params.rbi +4 -4
  28. data/rbi/growsurf_ruby/models/campaign/reward_update_params.rbi +309 -0
  29. data/rbi/growsurf_ruby/models/campaign.rbi +42 -3
  30. data/rbi/growsurf_ruby/models/campaign_create_params.rbi +125 -0
  31. data/rbi/growsurf_ruby/models/campaign_update_params.rbi +130 -0
  32. data/rbi/growsurf_ruby/models/reward_tax_valuation.rbi +56 -0
  33. data/rbi/growsurf_ruby/models.rbi +6 -0
  34. data/rbi/growsurf_ruby/resources/campaign/design.rbi +50 -0
  35. data/rbi/growsurf_ruby/resources/campaign/emails.rbi +49 -0
  36. data/rbi/growsurf_ruby/resources/campaign/installation.rbi +50 -0
  37. data/rbi/growsurf_ruby/resources/campaign/options.rbi +49 -0
  38. data/rbi/growsurf_ruby/resources/campaign/rewards.rbi +216 -0
  39. data/rbi/growsurf_ruby/resources/campaign.rbi +94 -0
  40. data/sig/growsurf_ruby/models/campaign/campaign_reward_list_response.rbs +18 -0
  41. data/sig/growsurf_ruby/models/campaign/delete_reward_response.rbs +17 -0
  42. data/sig/growsurf_ruby/models/campaign/reward.rbs +146 -0
  43. data/sig/growsurf_ruby/models/campaign/reward_create_params.rbs +210 -0
  44. data/sig/growsurf_ruby/models/campaign/reward_delete_params.rbs +4 -4
  45. data/sig/growsurf_ruby/models/campaign/reward_update_params.rbs +200 -0
  46. data/sig/growsurf_ruby/models/campaign.rbs +18 -3
  47. data/sig/growsurf_ruby/models/campaign_create_params.rbs +74 -0
  48. data/sig/growsurf_ruby/models/campaign_update_params.rbs +70 -0
  49. data/sig/growsurf_ruby/models/reward_tax_valuation.rbs +19 -0
  50. data/sig/growsurf_ruby/models.rbs +6 -0
  51. data/sig/growsurf_ruby/resources/campaign/design.rbs +20 -0
  52. data/sig/growsurf_ruby/resources/campaign/emails.rbs +20 -0
  53. data/sig/growsurf_ruby/resources/campaign/installation.rbs +20 -0
  54. data/sig/growsurf_ruby/resources/campaign/options.rbs +20 -0
  55. data/sig/growsurf_ruby/resources/campaign/rewards.rbs +74 -0
  56. data/sig/growsurf_ruby/resources/campaign.rbs +34 -0
  57. metadata +41 -2
@@ -0,0 +1,291 @@
1
+ # typed: strong
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ class Reward < GrowsurfRuby::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ GrowsurfRuby::Models::Campaign::Reward,
11
+ GrowsurfRuby::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ sig { returns(T::Boolean) }
19
+ attr_accessor :is_unlimited
20
+
21
+ # Shallow custom metadata object.
22
+ sig { returns(T::Hash[Symbol, T.anything]) }
23
+ attr_accessor :metadata
24
+
25
+ sig do
26
+ returns(GrowsurfRuby::Models::Campaign::Reward::Type::TaggedSymbol)
27
+ end
28
+ attr_accessor :type
29
+
30
+ sig { returns(T.nilable(GrowsurfRuby::CommissionStructure)) }
31
+ attr_reader :commission_structure
32
+
33
+ sig do
34
+ params(
35
+ commission_structure:
36
+ T.nilable(GrowsurfRuby::CommissionStructure::OrHash)
37
+ ).void
38
+ end
39
+ attr_writer :commission_structure
40
+
41
+ sig { returns(T.nilable(Integer)) }
42
+ attr_accessor :conversions_required
43
+
44
+ sig { returns(T.nilable(String)) }
45
+ attr_accessor :coupon_code
46
+
47
+ sig { returns(T.nilable(String)) }
48
+ attr_accessor :description
49
+
50
+ sig { returns(T.nilable(String)) }
51
+ attr_accessor :image_url
52
+
53
+ # `-1` represents an unlimited reward in REST responses.
54
+ sig { returns(T.nilable(Integer)) }
55
+ attr_accessor :limit
56
+
57
+ sig do
58
+ returns(
59
+ T.nilable(
60
+ GrowsurfRuby::Models::Campaign::Reward::LimitDuration::TaggedSymbol
61
+ )
62
+ )
63
+ end
64
+ attr_accessor :limit_duration
65
+
66
+ sig { returns(T.nilable(String)) }
67
+ attr_accessor :next_milestone_prefix
68
+
69
+ sig { returns(T.nilable(String)) }
70
+ attr_accessor :next_milestone_suffix
71
+
72
+ sig { returns(T.nilable(Integer)) }
73
+ attr_accessor :number_of_winners
74
+
75
+ sig { returns(T.nilable(Integer)) }
76
+ attr_accessor :order
77
+
78
+ # The coupon code delivered to the referred friend (double-sided rewards).
79
+ sig { returns(T.nilable(String)) }
80
+ attr_accessor :referral_coupon_code
81
+
82
+ sig { returns(T.nilable(String)) }
83
+ attr_accessor :referral_description
84
+
85
+ sig { returns(T.nilable(T::Boolean)) }
86
+ attr_reader :referred_reward_upfront
87
+
88
+ sig { params(referred_reward_upfront: T::Boolean).void }
89
+ attr_writer :referred_reward_upfront
90
+
91
+ # Tax valuation for the referred friend's side of a double-sided reward.
92
+ sig { returns(T.nilable(GrowsurfRuby::RewardTaxValuation)) }
93
+ attr_reader :referred_value
94
+
95
+ sig do
96
+ params(
97
+ referred_value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash)
98
+ ).void
99
+ end
100
+ attr_writer :referred_value
101
+
102
+ # Tax valuation for the reward (the referrer's side of a double-sided reward).
103
+ sig { returns(T.nilable(GrowsurfRuby::RewardTaxValuation)) }
104
+ attr_reader :value
105
+
106
+ sig do
107
+ params(
108
+ value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash)
109
+ ).void
110
+ end
111
+ attr_writer :value
112
+
113
+ sig do
114
+ params(
115
+ id: String,
116
+ is_unlimited: T::Boolean,
117
+ metadata: T::Hash[Symbol, T.anything],
118
+ type: GrowsurfRuby::Models::Campaign::Reward::Type::OrSymbol,
119
+ commission_structure:
120
+ T.nilable(GrowsurfRuby::CommissionStructure::OrHash),
121
+ conversions_required: T.nilable(Integer),
122
+ coupon_code: T.nilable(String),
123
+ description: T.nilable(String),
124
+ image_url: T.nilable(String),
125
+ limit: T.nilable(Integer),
126
+ limit_duration:
127
+ T.nilable(
128
+ GrowsurfRuby::Models::Campaign::Reward::LimitDuration::OrSymbol
129
+ ),
130
+ next_milestone_prefix: T.nilable(String),
131
+ next_milestone_suffix: T.nilable(String),
132
+ number_of_winners: T.nilable(Integer),
133
+ order: T.nilable(Integer),
134
+ referral_coupon_code: T.nilable(String),
135
+ referral_description: T.nilable(String),
136
+ referred_reward_upfront: T::Boolean,
137
+ referred_value:
138
+ T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash),
139
+ value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash)
140
+ ).returns(T.attached_class)
141
+ end
142
+ def self.new(
143
+ id:,
144
+ is_unlimited:,
145
+ # Shallow custom metadata object.
146
+ metadata:,
147
+ type:,
148
+ commission_structure: nil,
149
+ conversions_required: nil,
150
+ coupon_code: nil,
151
+ description: nil,
152
+ image_url: nil,
153
+ # `-1` represents an unlimited reward in REST responses.
154
+ limit: nil,
155
+ limit_duration: nil,
156
+ next_milestone_prefix: nil,
157
+ next_milestone_suffix: nil,
158
+ number_of_winners: nil,
159
+ order: nil,
160
+ # The coupon code delivered to the referred friend (double-sided rewards).
161
+ referral_coupon_code: nil,
162
+ referral_description: nil,
163
+ referred_reward_upfront: nil,
164
+ # Tax valuation for the referred friend's side of a double-sided reward.
165
+ referred_value: nil,
166
+ # Tax valuation for the reward (the referrer's side of a double-sided reward).
167
+ value: nil
168
+ )
169
+ end
170
+
171
+ sig do
172
+ override.returns(
173
+ {
174
+ id: String,
175
+ is_unlimited: T::Boolean,
176
+ metadata: T::Hash[Symbol, T.anything],
177
+ type: GrowsurfRuby::Models::Campaign::Reward::Type::TaggedSymbol,
178
+ commission_structure:
179
+ T.nilable(GrowsurfRuby::CommissionStructure),
180
+ conversions_required: T.nilable(Integer),
181
+ coupon_code: T.nilable(String),
182
+ description: T.nilable(String),
183
+ image_url: T.nilable(String),
184
+ limit: T.nilable(Integer),
185
+ limit_duration:
186
+ T.nilable(
187
+ GrowsurfRuby::Models::Campaign::Reward::LimitDuration::TaggedSymbol
188
+ ),
189
+ next_milestone_prefix: T.nilable(String),
190
+ next_milestone_suffix: T.nilable(String),
191
+ number_of_winners: T.nilable(Integer),
192
+ order: T.nilable(Integer),
193
+ referral_coupon_code: T.nilable(String),
194
+ referral_description: T.nilable(String),
195
+ referred_reward_upfront: T::Boolean,
196
+ referred_value: T.nilable(GrowsurfRuby::RewardTaxValuation),
197
+ value: T.nilable(GrowsurfRuby::RewardTaxValuation)
198
+ }
199
+ )
200
+ end
201
+ def to_hash
202
+ end
203
+
204
+ module Type
205
+ extend GrowsurfRuby::Internal::Type::Enum
206
+
207
+ TaggedSymbol =
208
+ T.type_alias do
209
+ T.all(Symbol, GrowsurfRuby::Models::Campaign::Reward::Type)
210
+ end
211
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
212
+
213
+ SINGLE_SIDED =
214
+ T.let(
215
+ :SINGLE_SIDED,
216
+ GrowsurfRuby::Models::Campaign::Reward::Type::TaggedSymbol
217
+ )
218
+ DOUBLE_SIDED =
219
+ T.let(
220
+ :DOUBLE_SIDED,
221
+ GrowsurfRuby::Models::Campaign::Reward::Type::TaggedSymbol
222
+ )
223
+ MILESTONE =
224
+ T.let(
225
+ :MILESTONE,
226
+ GrowsurfRuby::Models::Campaign::Reward::Type::TaggedSymbol
227
+ )
228
+ LEADERBOARD =
229
+ T.let(
230
+ :LEADERBOARD,
231
+ GrowsurfRuby::Models::Campaign::Reward::Type::TaggedSymbol
232
+ )
233
+ AFFILIATE =
234
+ T.let(
235
+ :AFFILIATE,
236
+ GrowsurfRuby::Models::Campaign::Reward::Type::TaggedSymbol
237
+ )
238
+
239
+ sig do
240
+ override.returns(
241
+ T::Array[
242
+ GrowsurfRuby::Models::Campaign::Reward::Type::TaggedSymbol
243
+ ]
244
+ )
245
+ end
246
+ def self.values
247
+ end
248
+ end
249
+
250
+ module LimitDuration
251
+ extend GrowsurfRuby::Internal::Type::Enum
252
+
253
+ TaggedSymbol =
254
+ T.type_alias do
255
+ T.all(
256
+ Symbol,
257
+ GrowsurfRuby::Models::Campaign::Reward::LimitDuration
258
+ )
259
+ end
260
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
261
+
262
+ IN_TOTAL =
263
+ T.let(
264
+ :IN_TOTAL,
265
+ GrowsurfRuby::Models::Campaign::Reward::LimitDuration::TaggedSymbol
266
+ )
267
+ PER_MONTH =
268
+ T.let(
269
+ :PER_MONTH,
270
+ GrowsurfRuby::Models::Campaign::Reward::LimitDuration::TaggedSymbol
271
+ )
272
+ PER_YEAR =
273
+ T.let(
274
+ :PER_YEAR,
275
+ GrowsurfRuby::Models::Campaign::Reward::LimitDuration::TaggedSymbol
276
+ )
277
+
278
+ sig do
279
+ override.returns(
280
+ T::Array[
281
+ GrowsurfRuby::Models::Campaign::Reward::LimitDuration::TaggedSymbol
282
+ ]
283
+ )
284
+ end
285
+ def self.values
286
+ end
287
+ end
288
+ end
289
+ end
290
+ end
291
+ end
@@ -0,0 +1,358 @@
1
+ # typed: strong
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ class RewardCreateParams < GrowsurfRuby::Internal::Type::BaseModel
7
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
8
+ include GrowsurfRuby::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ GrowsurfRuby::Campaign::RewardCreateParams,
14
+ GrowsurfRuby::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig do
19
+ returns(
20
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::OrSymbol
21
+ )
22
+ end
23
+ attr_accessor :type
24
+
25
+ sig { returns(T.nilable(GrowsurfRuby::CommissionStructure)) }
26
+ attr_reader :commission_structure
27
+
28
+ sig do
29
+ params(
30
+ commission_structure: GrowsurfRuby::CommissionStructure::OrHash
31
+ ).void
32
+ end
33
+ attr_writer :commission_structure
34
+
35
+ sig { returns(T.nilable(Integer)) }
36
+ attr_reader :conversions_required
37
+
38
+ sig { params(conversions_required: Integer).void }
39
+ attr_writer :conversions_required
40
+
41
+ sig { returns(T.nilable(String)) }
42
+ attr_reader :coupon_code
43
+
44
+ sig { params(coupon_code: String).void }
45
+ attr_writer :coupon_code
46
+
47
+ sig { returns(T.nilable(String)) }
48
+ attr_reader :description
49
+
50
+ sig { params(description: String).void }
51
+ attr_writer :description
52
+
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :image_url
55
+
56
+ sig { params(image_url: String).void }
57
+ attr_writer :image_url
58
+
59
+ sig { returns(T.nilable(T::Boolean)) }
60
+ attr_reader :is_active
61
+
62
+ sig { params(is_active: T::Boolean).void }
63
+ attr_writer :is_active
64
+
65
+ sig { returns(T.nilable(T::Boolean)) }
66
+ attr_reader :is_unlimited
67
+
68
+ sig { params(is_unlimited: T::Boolean).void }
69
+ attr_writer :is_unlimited
70
+
71
+ sig { returns(T.nilable(T::Boolean)) }
72
+ attr_reader :is_visible
73
+
74
+ sig { params(is_visible: T::Boolean).void }
75
+ attr_writer :is_visible
76
+
77
+ sig { returns(T.nilable(Integer)) }
78
+ attr_reader :limit
79
+
80
+ sig { params(limit: Integer).void }
81
+ attr_writer :limit
82
+
83
+ sig do
84
+ returns(
85
+ T.nilable(
86
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration::OrSymbol
87
+ )
88
+ )
89
+ end
90
+ attr_reader :limit_duration
91
+
92
+ sig do
93
+ params(
94
+ limit_duration:
95
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration::OrSymbol
96
+ ).void
97
+ end
98
+ attr_writer :limit_duration
99
+
100
+ # Custom key/value metadata (single-level; values are stored as strings).
101
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
102
+ attr_reader :metadata
103
+
104
+ sig { params(metadata: T::Hash[Symbol, T.anything]).void }
105
+ attr_writer :metadata
106
+
107
+ sig { returns(T.nilable(String)) }
108
+ attr_reader :next_milestone_prefix
109
+
110
+ sig { params(next_milestone_prefix: String).void }
111
+ attr_writer :next_milestone_prefix
112
+
113
+ sig { returns(T.nilable(String)) }
114
+ attr_reader :next_milestone_suffix
115
+
116
+ sig { params(next_milestone_suffix: String).void }
117
+ attr_writer :next_milestone_suffix
118
+
119
+ sig { returns(T.nilable(Integer)) }
120
+ attr_reader :number_of_winners
121
+
122
+ sig { params(number_of_winners: Integer).void }
123
+ attr_writer :number_of_winners
124
+
125
+ sig { returns(T.nilable(Integer)) }
126
+ attr_reader :order
127
+
128
+ sig { params(order: Integer).void }
129
+ attr_writer :order
130
+
131
+ sig { returns(T.nilable(String)) }
132
+ attr_reader :referral_coupon_code
133
+
134
+ sig { params(referral_coupon_code: String).void }
135
+ attr_writer :referral_coupon_code
136
+
137
+ sig { returns(T.nilable(String)) }
138
+ attr_reader :referral_description
139
+
140
+ sig { params(referral_description: String).void }
141
+ attr_writer :referral_description
142
+
143
+ sig { returns(T.nilable(T::Boolean)) }
144
+ attr_reader :referred_reward_upfront
145
+
146
+ sig { params(referred_reward_upfront: T::Boolean).void }
147
+ attr_writer :referred_reward_upfront
148
+
149
+ # Tax valuation for the referred friend's side of a double-sided reward.
150
+ # Defaults to not tax-reportable (a purchase rebate).
151
+ sig { returns(T.nilable(GrowsurfRuby::RewardTaxValuation)) }
152
+ attr_reader :referred_value
153
+
154
+ sig do
155
+ params(referred_value: GrowsurfRuby::RewardTaxValuation::OrHash).void
156
+ end
157
+ attr_writer :referred_value
158
+
159
+ sig { returns(T.nilable(String)) }
160
+ attr_reader :title
161
+
162
+ sig { params(title: String).void }
163
+ attr_writer :title
164
+
165
+ # Tax valuation for the reward (the referrer's side of a double-sided reward).
166
+ # Used by tax documentation / 1099 reporting.
167
+ sig { returns(T.nilable(GrowsurfRuby::RewardTaxValuation)) }
168
+ attr_reader :value
169
+
170
+ sig { params(value: GrowsurfRuby::RewardTaxValuation::OrHash).void }
171
+ attr_writer :value
172
+
173
+ sig do
174
+ params(
175
+ type:
176
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::OrSymbol,
177
+ commission_structure: GrowsurfRuby::CommissionStructure::OrHash,
178
+ conversions_required: Integer,
179
+ coupon_code: String,
180
+ description: String,
181
+ image_url: String,
182
+ is_active: T::Boolean,
183
+ is_unlimited: T::Boolean,
184
+ is_visible: T::Boolean,
185
+ limit: Integer,
186
+ limit_duration:
187
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration::OrSymbol,
188
+ metadata: T::Hash[Symbol, T.anything],
189
+ next_milestone_prefix: String,
190
+ next_milestone_suffix: String,
191
+ number_of_winners: Integer,
192
+ order: Integer,
193
+ referral_coupon_code: String,
194
+ referral_description: String,
195
+ referred_reward_upfront: T::Boolean,
196
+ referred_value: GrowsurfRuby::RewardTaxValuation::OrHash,
197
+ title: String,
198
+ value: GrowsurfRuby::RewardTaxValuation::OrHash,
199
+ request_options: GrowsurfRuby::RequestOptions::OrHash
200
+ ).returns(T.attached_class)
201
+ end
202
+ def self.new(
203
+ type:,
204
+ commission_structure: nil,
205
+ conversions_required: nil,
206
+ coupon_code: nil,
207
+ description: nil,
208
+ image_url: nil,
209
+ is_active: nil,
210
+ is_unlimited: nil,
211
+ is_visible: nil,
212
+ limit: nil,
213
+ limit_duration: nil,
214
+ # Custom key/value metadata (single-level; values are stored as strings).
215
+ metadata: nil,
216
+ next_milestone_prefix: nil,
217
+ next_milestone_suffix: nil,
218
+ number_of_winners: nil,
219
+ order: nil,
220
+ referral_coupon_code: nil,
221
+ referral_description: nil,
222
+ referred_reward_upfront: nil,
223
+ # Tax valuation for the referred friend's side of a double-sided reward.
224
+ # Defaults to not tax-reportable (a purchase rebate).
225
+ referred_value: nil,
226
+ title: nil,
227
+ # Tax valuation for the reward (the referrer's side of a double-sided reward).
228
+ # Used by tax documentation / 1099 reporting.
229
+ value: nil,
230
+ request_options: {}
231
+ )
232
+ end
233
+
234
+ sig do
235
+ override.returns(
236
+ {
237
+ type:
238
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::OrSymbol,
239
+ commission_structure: GrowsurfRuby::CommissionStructure::OrHash,
240
+ conversions_required: Integer,
241
+ coupon_code: String,
242
+ description: String,
243
+ image_url: String,
244
+ is_active: T::Boolean,
245
+ is_unlimited: T::Boolean,
246
+ is_visible: T::Boolean,
247
+ limit: Integer,
248
+ limit_duration:
249
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration::OrSymbol,
250
+ metadata: T::Hash[Symbol, T.anything],
251
+ next_milestone_prefix: String,
252
+ next_milestone_suffix: String,
253
+ number_of_winners: Integer,
254
+ order: Integer,
255
+ referral_coupon_code: String,
256
+ referral_description: String,
257
+ referred_reward_upfront: T::Boolean,
258
+ referred_value: GrowsurfRuby::RewardTaxValuation::OrHash,
259
+ title: String,
260
+ value: GrowsurfRuby::RewardTaxValuation::OrHash,
261
+ request_options: GrowsurfRuby::RequestOptions
262
+ }
263
+ )
264
+ end
265
+ def to_hash
266
+ end
267
+
268
+ module Type
269
+ extend GrowsurfRuby::Internal::Type::Enum
270
+
271
+ TaggedSymbol =
272
+ T.type_alias do
273
+ T.all(
274
+ Symbol,
275
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type
276
+ )
277
+ end
278
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
279
+
280
+ SINGLE_SIDED =
281
+ T.let(
282
+ :SINGLE_SIDED,
283
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::TaggedSymbol
284
+ )
285
+ DOUBLE_SIDED =
286
+ T.let(
287
+ :DOUBLE_SIDED,
288
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::TaggedSymbol
289
+ )
290
+ MILESTONE =
291
+ T.let(
292
+ :MILESTONE,
293
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::TaggedSymbol
294
+ )
295
+ LEADERBOARD =
296
+ T.let(
297
+ :LEADERBOARD,
298
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::TaggedSymbol
299
+ )
300
+ AFFILIATE =
301
+ T.let(
302
+ :AFFILIATE,
303
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::TaggedSymbol
304
+ )
305
+
306
+ sig do
307
+ override.returns(
308
+ T::Array[
309
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::Type::TaggedSymbol
310
+ ]
311
+ )
312
+ end
313
+ def self.values
314
+ end
315
+ end
316
+
317
+ module LimitDuration
318
+ extend GrowsurfRuby::Internal::Type::Enum
319
+
320
+ TaggedSymbol =
321
+ T.type_alias do
322
+ T.all(
323
+ Symbol,
324
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration
325
+ )
326
+ end
327
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
328
+
329
+ IN_TOTAL =
330
+ T.let(
331
+ :IN_TOTAL,
332
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration::TaggedSymbol
333
+ )
334
+ PER_MONTH =
335
+ T.let(
336
+ :PER_MONTH,
337
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration::TaggedSymbol
338
+ )
339
+ PER_YEAR =
340
+ T.let(
341
+ :PER_YEAR,
342
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration::TaggedSymbol
343
+ )
344
+
345
+ sig do
346
+ override.returns(
347
+ T::Array[
348
+ GrowsurfRuby::Models::Campaign::RewardCreateParams::LimitDuration::TaggedSymbol
349
+ ]
350
+ )
351
+ end
352
+ def self.values
353
+ end
354
+ end
355
+ end
356
+ end
357
+ end
358
+ end
@@ -19,23 +19,23 @@ module GrowsurfRuby
19
19
  attr_accessor :id
20
20
 
21
21
  sig { returns(String) }
22
- attr_accessor :reward_id
22
+ attr_accessor :campaign_reward_id
23
23
 
24
24
  sig do
25
25
  params(
26
26
  id: String,
27
- reward_id: String,
27
+ campaign_reward_id: String,
28
28
  request_options: GrowsurfRuby::RequestOptions::OrHash
29
29
  ).returns(T.attached_class)
30
30
  end
31
- def self.new(id:, reward_id:, request_options: {})
31
+ def self.new(id:, campaign_reward_id:, request_options: {})
32
32
  end
33
33
 
34
34
  sig do
35
35
  override.returns(
36
36
  {
37
37
  id: String,
38
- reward_id: String,
38
+ campaign_reward_id: String,
39
39
  request_options: GrowsurfRuby::RequestOptions
40
40
  }
41
41
  )