knockapi 1.16.0 → 1.18.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 (80) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +36 -0
  3. data/README.md +1 -1
  4. data/lib/knockapi/internal/transport/pooled_net_requester.rb +30 -24
  5. data/lib/knockapi/internal/util.rb +5 -5
  6. data/lib/knockapi/models/identify_user_request.rb +2 -2
  7. data/lib/knockapi/models/inline_identify_user_request.rb +2 -2
  8. data/lib/knockapi/models/inline_object_request.rb +2 -2
  9. data/lib/knockapi/models/message.rb +94 -3
  10. data/lib/knockapi/models/messages/batch_archive_response.rb +1 -1
  11. data/lib/knockapi/models/messages/batch_mark_as_interacted_response.rb +1 -1
  12. data/lib/knockapi/models/messages/batch_mark_as_read_response.rb +1 -1
  13. data/lib/knockapi/models/messages/batch_mark_as_seen_response.rb +1 -1
  14. data/lib/knockapi/models/messages/batch_mark_as_unread_response.rb +1 -1
  15. data/lib/knockapi/models/messages/batch_mark_as_unseen_response.rb +1 -1
  16. data/lib/knockapi/models/messages/batch_unarchive_response.rb +1 -1
  17. data/lib/knockapi/models/object_set_params.rb +2 -2
  18. data/lib/knockapi/models/objects/bulk_set_params.rb +2 -2
  19. data/lib/knockapi/models/recipients/channel_data.rb +133 -11
  20. data/lib/knockapi/models/recipients/channel_data_request.rb +151 -9
  21. data/lib/knockapi/models/recipients/inline_channel_data_request.rb +149 -7
  22. data/lib/knockapi/models/recipients/preference_set.rb +130 -3
  23. data/lib/knockapi/models/recipients/preference_set_request.rb +136 -3
  24. data/lib/knockapi/models/tenant_request.rb +2 -2
  25. data/lib/knockapi/models/tenant_set_params.rb +2 -2
  26. data/lib/knockapi/models/users/guide_get_channel_response.rb +270 -34
  27. data/lib/knockapi/resources/messages/batch.rb +7 -7
  28. data/lib/knockapi/resources/objects.rb +7 -3
  29. data/lib/knockapi/resources/tenants.rb +1 -1
  30. data/lib/knockapi/resources/users.rb +7 -3
  31. data/lib/knockapi/version.rb +1 -1
  32. data/lib/knockapi.rb +0 -2
  33. data/rbi/knockapi/models/identify_user_request.rbi +15 -9
  34. data/rbi/knockapi/models/inline_identify_user_request.rbi +15 -9
  35. data/rbi/knockapi/models/inline_object_request.rbi +15 -9
  36. data/rbi/knockapi/models/message.rbi +123 -2
  37. data/rbi/knockapi/models/messages/batch_archive_response.rbi +1 -1
  38. data/rbi/knockapi/models/messages/batch_mark_as_interacted_response.rbi +1 -1
  39. data/rbi/knockapi/models/messages/batch_mark_as_read_response.rbi +1 -1
  40. data/rbi/knockapi/models/messages/batch_mark_as_seen_response.rbi +1 -1
  41. data/rbi/knockapi/models/messages/batch_mark_as_unread_response.rbi +1 -1
  42. data/rbi/knockapi/models/messages/batch_mark_as_unseen_response.rbi +1 -1
  43. data/rbi/knockapi/models/messages/batch_unarchive_response.rbi +1 -1
  44. data/rbi/knockapi/models/object_set_params.rbi +20 -12
  45. data/rbi/knockapi/models/objects/bulk_set_params.rbi +15 -9
  46. data/rbi/knockapi/models/recipients/channel_data.rbi +250 -12
  47. data/rbi/knockapi/models/recipients/channel_data_request.rbi +298 -14
  48. data/rbi/knockapi/models/recipients/inline_channel_data_request.rbi +281 -5
  49. data/rbi/knockapi/models/recipients/preference_set.rbi +279 -0
  50. data/rbi/knockapi/models/recipients/preference_set_request.rbi +299 -0
  51. data/rbi/knockapi/models/tenant_request.rbi +15 -9
  52. data/rbi/knockapi/models/tenant_set_params.rbi +15 -9
  53. data/rbi/knockapi/models/users/guide_get_channel_response.rbi +532 -70
  54. data/rbi/knockapi/resources/messages/batch.rbi +7 -7
  55. data/rbi/knockapi/resources/objects.rbi +26 -6
  56. data/rbi/knockapi/resources/tenants.rbi +5 -3
  57. data/rbi/knockapi/resources/users.rbi +26 -6
  58. data/sig/knockapi/models/message.rbs +79 -0
  59. data/sig/knockapi/models/messages/batch_archive_response.rbs +1 -1
  60. data/sig/knockapi/models/messages/batch_mark_as_interacted_response.rbs +1 -2
  61. data/sig/knockapi/models/messages/batch_mark_as_read_response.rbs +1 -1
  62. data/sig/knockapi/models/messages/batch_mark_as_seen_response.rbs +1 -1
  63. data/sig/knockapi/models/messages/batch_mark_as_unread_response.rbs +1 -1
  64. data/sig/knockapi/models/messages/batch_mark_as_unseen_response.rbs +1 -1
  65. data/sig/knockapi/models/messages/batch_unarchive_response.rbs +1 -1
  66. data/sig/knockapi/models/recipients/channel_data.rbs +97 -7
  67. data/sig/knockapi/models/recipients/channel_data_request.rbs +108 -5
  68. data/sig/knockapi/models/recipients/inline_channel_data_request.rbs +108 -5
  69. data/sig/knockapi/models/recipients/preference_set.rbs +87 -0
  70. data/sig/knockapi/models/recipients/preference_set_request.rbs +87 -0
  71. data/sig/knockapi/models/users/guide_get_channel_response.rbs +294 -31
  72. data/sig/knockapi/resources/objects.rbs +2 -0
  73. data/sig/knockapi/resources/users.rbs +2 -0
  74. metadata +2 -8
  75. data/lib/knockapi/models/recipients/one_signal_channel_data.rb +0 -20
  76. data/lib/knockapi/models/recipients/push_channel_data.rb +0 -20
  77. data/rbi/knockapi/models/recipients/one_signal_channel_data.rbi +0 -33
  78. data/rbi/knockapi/models/recipients/push_channel_data.rbi +0 -33
  79. data/sig/knockapi/models/recipients/one_signal_channel_data.rbs +0 -15
  80. data/sig/knockapi/models/recipients/push_channel_data.rbs +0 -15
@@ -2,9 +2,11 @@ module Knockapi
2
2
  module Models
3
3
  module Recipients
4
4
  type inline_channel_data_request_item =
5
- Knockapi::Recipients::PushChannelData
6
- | Knockapi::Recipients::OneSignalChannelData
7
- | Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData
5
+ Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly
6
+ | Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly
7
+ | Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly
8
+ | Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly
9
+ | Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly
8
10
  | Knockapi::Recipients::SlackChannelData
9
11
  | Knockapi::Recipients::MsTeamsChannelData
10
12
  | Knockapi::Recipients::DiscordChannelData
@@ -12,9 +14,59 @@ module Knockapi
12
14
  module InlineChannelDataRequestItem
13
15
  extend Knockapi::Internal::Type::Union
14
16
 
15
- type aws_sns_push_channel_data = { target_arns: ::Array[String] }
17
+ type push_channel_data_tokens_only = { tokens: ::Array[String] }
16
18
 
17
- class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel
19
+ class PushChannelDataTokensOnly < Knockapi::Internal::Type::BaseModel
20
+ attr_accessor tokens: ::Array[String]
21
+
22
+ def initialize: (tokens: ::Array[String]) -> void
23
+
24
+ def to_hash: -> { tokens: ::Array[String] }
25
+ end
26
+
27
+ type push_channel_data_devices_only =
28
+ {
29
+ devices: ::Array[Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::Device]
30
+ }
31
+
32
+ class PushChannelDataDevicesOnly < Knockapi::Internal::Type::BaseModel
33
+ attr_accessor devices: ::Array[Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::Device]
34
+
35
+ def initialize: (
36
+ devices: ::Array[Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::Device]
37
+ ) -> void
38
+
39
+ def to_hash: -> {
40
+ devices: ::Array[Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::Device]
41
+ }
42
+
43
+ type device = { token: String, locale: String?, timezone: String? }
44
+
45
+ class Device < Knockapi::Internal::Type::BaseModel
46
+ attr_accessor token: String
47
+
48
+ attr_accessor locale: String?
49
+
50
+ attr_accessor timezone: String?
51
+
52
+ def initialize: (
53
+ token: String,
54
+ ?locale: String?,
55
+ ?timezone: String?
56
+ ) -> void
57
+
58
+ def to_hash: -> {
59
+ token: String,
60
+ locale: String?,
61
+ timezone: String?
62
+ }
63
+ end
64
+ end
65
+
66
+ type awssns_push_channel_data_target_ar_ns_only =
67
+ { target_arns: ::Array[String] }
68
+
69
+ class AwssnsPushChannelDataTargetArNsOnly < Knockapi::Internal::Type::BaseModel
18
70
  attr_accessor target_arns: ::Array[String]
19
71
 
20
72
  def initialize: (target_arns: ::Array[String]) -> void
@@ -22,6 +74,57 @@ module Knockapi
22
74
  def to_hash: -> { target_arns: ::Array[String] }
23
75
  end
24
76
 
77
+ type awssns_push_channel_data_devices_only =
78
+ {
79
+ devices: ::Array[Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::Device]
80
+ }
81
+
82
+ class AwssnsPushChannelDataDevicesOnly < Knockapi::Internal::Type::BaseModel
83
+ attr_accessor devices: ::Array[Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::Device]
84
+
85
+ def initialize: (
86
+ devices: ::Array[Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::Device]
87
+ ) -> void
88
+
89
+ def to_hash: -> {
90
+ devices: ::Array[Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::Device]
91
+ }
92
+
93
+ type device =
94
+ { target_arn: String, locale: String?, timezone: String? }
95
+
96
+ class Device < Knockapi::Internal::Type::BaseModel
97
+ attr_accessor target_arn: String
98
+
99
+ attr_accessor locale: String?
100
+
101
+ attr_accessor timezone: String?
102
+
103
+ def initialize: (
104
+ target_arn: String,
105
+ ?locale: String?,
106
+ ?timezone: String?
107
+ ) -> void
108
+
109
+ def to_hash: -> {
110
+ target_arn: String,
111
+ locale: String?,
112
+ timezone: String?
113
+ }
114
+ end
115
+ end
116
+
117
+ type one_signal_channel_data_player_ids_only =
118
+ { player_ids: ::Array[String] }
119
+
120
+ class OneSignalChannelDataPlayerIDsOnly < Knockapi::Internal::Type::BaseModel
121
+ attr_accessor player_ids: ::Array[String]
122
+
123
+ def initialize: (player_ids: ::Array[String]) -> void
124
+
125
+ def to_hash: -> { player_ids: ::Array[String] }
126
+ end
127
+
25
128
  def self?.variants: -> ::Array[Knockapi::Models::Recipients::inline_channel_data_request_item]
26
129
  end
27
130
 
@@ -6,6 +6,8 @@ module Knockapi
6
6
  id: String,
7
7
  categories: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::category]?,
8
8
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
9
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::channel]?,
10
+ commercial_subscribed: bool?,
9
11
  workflows: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::workflow]?
10
12
  }
11
13
 
@@ -16,12 +18,18 @@ module Knockapi
16
18
 
17
19
  attr_accessor channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?
18
20
 
21
+ attr_accessor channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::channel]?
22
+
23
+ attr_accessor commercial_subscribed: bool?
24
+
19
25
  attr_accessor workflows: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::workflow]?
20
26
 
21
27
  def initialize: (
22
28
  id: String,
23
29
  ?categories: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::category]?,
24
30
  ?channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
31
+ ?channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::channel]?,
32
+ ?commercial_subscribed: bool?,
25
33
  ?workflows: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::workflow]?
26
34
  ) -> void
27
35
 
@@ -29,6 +37,8 @@ module Knockapi
29
37
  id: String,
30
38
  categories: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::category]?,
31
39
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
40
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::channel]?,
41
+ commercial_subscribed: bool?,
32
42
  workflows: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::workflow]?
33
43
  }
34
44
 
@@ -42,28 +52,77 @@ module Knockapi
42
52
  type preference_set_workflow_category_setting_object =
43
53
  {
44
54
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
55
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::Category::PreferenceSetWorkflowCategorySettingObject::channel]?,
45
56
  conditions: ::Array[Knockapi::Condition]?
46
57
  }
47
58
 
48
59
  class PreferenceSetWorkflowCategorySettingObject < Knockapi::Internal::Type::BaseModel
49
60
  attr_accessor channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?
50
61
 
62
+ attr_accessor channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::Category::PreferenceSetWorkflowCategorySettingObject::channel]?
63
+
51
64
  attr_accessor conditions: ::Array[Knockapi::Condition]?
52
65
 
53
66
  def initialize: (
54
67
  ?channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
68
+ ?channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::Category::PreferenceSetWorkflowCategorySettingObject::channel]?,
55
69
  ?conditions: ::Array[Knockapi::Condition]?
56
70
  ) -> void
57
71
 
58
72
  def to_hash: -> {
59
73
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
74
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::Category::PreferenceSetWorkflowCategorySettingObject::channel]?,
60
75
  conditions: ::Array[Knockapi::Condition]?
61
76
  }
77
+
78
+ type channel =
79
+ bool
80
+ | Knockapi::Recipients::PreferenceSet::Category::PreferenceSetWorkflowCategorySettingObject::Channel::PreferenceSetChannelSetting
81
+
82
+ module Channel
83
+ extend Knockapi::Internal::Type::Union
84
+
85
+ type preference_set_channel_setting =
86
+ { conditions: ::Array[Knockapi::Condition] }
87
+
88
+ class PreferenceSetChannelSetting < Knockapi::Internal::Type::BaseModel
89
+ attr_accessor conditions: ::Array[Knockapi::Condition]
90
+
91
+ def initialize: (
92
+ conditions: ::Array[Knockapi::Condition]
93
+ ) -> void
94
+
95
+ def to_hash: -> { conditions: ::Array[Knockapi::Condition] }
96
+ end
97
+
98
+ def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSet::Category::PreferenceSetWorkflowCategorySettingObject::channel]
99
+ end
62
100
  end
63
101
 
64
102
  def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSet::category]
65
103
  end
66
104
 
105
+ type channel =
106
+ bool
107
+ | Knockapi::Recipients::PreferenceSet::Channel::PreferenceSetChannelSetting
108
+
109
+ module Channel
110
+ extend Knockapi::Internal::Type::Union
111
+
112
+ type preference_set_channel_setting =
113
+ { conditions: ::Array[Knockapi::Condition] }
114
+
115
+ class PreferenceSetChannelSetting < Knockapi::Internal::Type::BaseModel
116
+ attr_accessor conditions: ::Array[Knockapi::Condition]
117
+
118
+ def initialize: (conditions: ::Array[Knockapi::Condition]) -> void
119
+
120
+ def to_hash: -> { conditions: ::Array[Knockapi::Condition] }
121
+ end
122
+
123
+ def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSet::channel]
124
+ end
125
+
67
126
  type workflow =
68
127
  bool
69
128
  | Knockapi::Recipients::PreferenceSet::Workflow::PreferenceSetWorkflowCategorySettingObject
@@ -74,23 +133,51 @@ module Knockapi
74
133
  type preference_set_workflow_category_setting_object =
75
134
  {
76
135
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
136
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]?,
77
137
  conditions: ::Array[Knockapi::Condition]?
78
138
  }
79
139
 
80
140
  class PreferenceSetWorkflowCategorySettingObject < Knockapi::Internal::Type::BaseModel
81
141
  attr_accessor channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?
82
142
 
143
+ attr_accessor channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]?
144
+
83
145
  attr_accessor conditions: ::Array[Knockapi::Condition]?
84
146
 
85
147
  def initialize: (
86
148
  ?channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
149
+ ?channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]?,
87
150
  ?conditions: ::Array[Knockapi::Condition]?
88
151
  ) -> void
89
152
 
90
153
  def to_hash: -> {
91
154
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
155
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSet::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]?,
92
156
  conditions: ::Array[Knockapi::Condition]?
93
157
  }
158
+
159
+ type channel =
160
+ bool
161
+ | Knockapi::Recipients::PreferenceSet::Workflow::PreferenceSetWorkflowCategorySettingObject::Channel::PreferenceSetChannelSetting
162
+
163
+ module Channel
164
+ extend Knockapi::Internal::Type::Union
165
+
166
+ type preference_set_channel_setting =
167
+ { conditions: ::Array[Knockapi::Condition] }
168
+
169
+ class PreferenceSetChannelSetting < Knockapi::Internal::Type::BaseModel
170
+ attr_accessor conditions: ::Array[Knockapi::Condition]
171
+
172
+ def initialize: (
173
+ conditions: ::Array[Knockapi::Condition]
174
+ ) -> void
175
+
176
+ def to_hash: -> { conditions: ::Array[Knockapi::Condition] }
177
+ end
178
+
179
+ def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSet::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]
180
+ end
94
181
  end
95
182
 
96
183
  def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSet::workflow]
@@ -6,6 +6,8 @@ module Knockapi
6
6
  _persistence_strategy: Knockapi::Models::Recipients::PreferenceSetRequest::persistence_strategy,
7
7
  categories: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::category]?,
8
8
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
9
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::channel]?,
10
+ commercial_subscribed: bool?,
9
11
  workflows: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::workflow]?
10
12
  }
11
13
 
@@ -20,12 +22,18 @@ module Knockapi
20
22
 
21
23
  attr_accessor channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?
22
24
 
25
+ attr_accessor channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::channel]?
26
+
27
+ attr_accessor commercial_subscribed: bool?
28
+
23
29
  attr_accessor workflows: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::workflow]?
24
30
 
25
31
  def initialize: (
26
32
  ?_persistence_strategy: Knockapi::Models::Recipients::PreferenceSetRequest::persistence_strategy,
27
33
  ?categories: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::category]?,
28
34
  ?channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
35
+ ?channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::channel]?,
36
+ ?commercial_subscribed: bool?,
29
37
  ?workflows: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::workflow]?
30
38
  ) -> void
31
39
 
@@ -33,6 +41,8 @@ module Knockapi
33
41
  _persistence_strategy: Knockapi::Models::Recipients::PreferenceSetRequest::persistence_strategy,
34
42
  categories: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::category]?,
35
43
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
44
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::channel]?,
45
+ commercial_subscribed: bool?,
36
46
  workflows: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::workflow]?
37
47
  }
38
48
 
@@ -57,28 +67,77 @@ module Knockapi
57
67
  type preference_set_workflow_category_setting_object =
58
68
  {
59
69
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
70
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::Category::PreferenceSetWorkflowCategorySettingObject::channel]?,
60
71
  conditions: ::Array[Knockapi::Condition]?
61
72
  }
62
73
 
63
74
  class PreferenceSetWorkflowCategorySettingObject < Knockapi::Internal::Type::BaseModel
64
75
  attr_accessor channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?
65
76
 
77
+ attr_accessor channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::Category::PreferenceSetWorkflowCategorySettingObject::channel]?
78
+
66
79
  attr_accessor conditions: ::Array[Knockapi::Condition]?
67
80
 
68
81
  def initialize: (
69
82
  ?channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
83
+ ?channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::Category::PreferenceSetWorkflowCategorySettingObject::channel]?,
70
84
  ?conditions: ::Array[Knockapi::Condition]?
71
85
  ) -> void
72
86
 
73
87
  def to_hash: -> {
74
88
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
89
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::Category::PreferenceSetWorkflowCategorySettingObject::channel]?,
75
90
  conditions: ::Array[Knockapi::Condition]?
76
91
  }
92
+
93
+ type channel =
94
+ bool
95
+ | Knockapi::Recipients::PreferenceSetRequest::Category::PreferenceSetWorkflowCategorySettingObject::Channel::PreferenceSetChannelSetting
96
+
97
+ module Channel
98
+ extend Knockapi::Internal::Type::Union
99
+
100
+ type preference_set_channel_setting =
101
+ { conditions: ::Array[Knockapi::Condition] }
102
+
103
+ class PreferenceSetChannelSetting < Knockapi::Internal::Type::BaseModel
104
+ attr_accessor conditions: ::Array[Knockapi::Condition]
105
+
106
+ def initialize: (
107
+ conditions: ::Array[Knockapi::Condition]
108
+ ) -> void
109
+
110
+ def to_hash: -> { conditions: ::Array[Knockapi::Condition] }
111
+ end
112
+
113
+ def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSetRequest::Category::PreferenceSetWorkflowCategorySettingObject::channel]
114
+ end
77
115
  end
78
116
 
79
117
  def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSetRequest::category]
80
118
  end
81
119
 
120
+ type channel =
121
+ bool
122
+ | Knockapi::Recipients::PreferenceSetRequest::Channel::PreferenceSetChannelSetting
123
+
124
+ module Channel
125
+ extend Knockapi::Internal::Type::Union
126
+
127
+ type preference_set_channel_setting =
128
+ { conditions: ::Array[Knockapi::Condition] }
129
+
130
+ class PreferenceSetChannelSetting < Knockapi::Internal::Type::BaseModel
131
+ attr_accessor conditions: ::Array[Knockapi::Condition]
132
+
133
+ def initialize: (conditions: ::Array[Knockapi::Condition]) -> void
134
+
135
+ def to_hash: -> { conditions: ::Array[Knockapi::Condition] }
136
+ end
137
+
138
+ def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSetRequest::channel]
139
+ end
140
+
82
141
  type workflow =
83
142
  bool
84
143
  | Knockapi::Recipients::PreferenceSetRequest::Workflow::PreferenceSetWorkflowCategorySettingObject
@@ -89,23 +148,51 @@ module Knockapi
89
148
  type preference_set_workflow_category_setting_object =
90
149
  {
91
150
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
151
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]?,
92
152
  conditions: ::Array[Knockapi::Condition]?
93
153
  }
94
154
 
95
155
  class PreferenceSetWorkflowCategorySettingObject < Knockapi::Internal::Type::BaseModel
96
156
  attr_accessor channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?
97
157
 
158
+ attr_accessor channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]?
159
+
98
160
  attr_accessor conditions: ::Array[Knockapi::Condition]?
99
161
 
100
162
  def initialize: (
101
163
  ?channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
164
+ ?channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]?,
102
165
  ?conditions: ::Array[Knockapi::Condition]?
103
166
  ) -> void
104
167
 
105
168
  def to_hash: -> {
106
169
  channel_types: Knockapi::Recipients::PreferenceSetChannelTypes?,
170
+ channels: ::Hash[Symbol, Knockapi::Models::Recipients::PreferenceSetRequest::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]?,
107
171
  conditions: ::Array[Knockapi::Condition]?
108
172
  }
173
+
174
+ type channel =
175
+ bool
176
+ | Knockapi::Recipients::PreferenceSetRequest::Workflow::PreferenceSetWorkflowCategorySettingObject::Channel::PreferenceSetChannelSetting
177
+
178
+ module Channel
179
+ extend Knockapi::Internal::Type::Union
180
+
181
+ type preference_set_channel_setting =
182
+ { conditions: ::Array[Knockapi::Condition] }
183
+
184
+ class PreferenceSetChannelSetting < Knockapi::Internal::Type::BaseModel
185
+ attr_accessor conditions: ::Array[Knockapi::Condition]
186
+
187
+ def initialize: (
188
+ conditions: ::Array[Knockapi::Condition]
189
+ ) -> void
190
+
191
+ def to_hash: -> { conditions: ::Array[Knockapi::Condition] }
192
+ end
193
+
194
+ def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSetRequest::Workflow::PreferenceSetWorkflowCategorySettingObject::channel]
195
+ end
109
196
  end
110
197
 
111
198
  def self?.variants: -> ::Array[Knockapi::Models::Recipients::PreferenceSetRequest::workflow]