sentdm 0.43.0 → 0.45.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 (36) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +1 -1
  4. data/lib/sentdm/internal/calls_page.rb +25 -1
  5. data/lib/sentdm/internal/contacts_page.rb +25 -1
  6. data/lib/sentdm/internal/conversations_page.rb +25 -1
  7. data/lib/sentdm/internal/templates_page.rb +25 -1
  8. data/lib/sentdm/internal/voice_agents_page.rb +25 -1
  9. data/lib/sentdm/internal/webhook_events_page.rb +25 -1
  10. data/lib/sentdm/internal/webhooks_page.rb +25 -1
  11. data/lib/sentdm/models/message_event_payload.rb +3 -2
  12. data/lib/sentdm/models/template_create_params.rb +11 -1
  13. data/lib/sentdm/resources/messages.rb +2 -1
  14. data/lib/sentdm/resources/templates.rb +5 -3
  15. data/lib/sentdm/version.rb +1 -1
  16. data/rbi/sentdm/internal/calls_page.rbi +51 -3
  17. data/rbi/sentdm/internal/contacts_page.rbi +51 -3
  18. data/rbi/sentdm/internal/conversations_page.rbi +51 -3
  19. data/rbi/sentdm/internal/templates_page.rbi +51 -3
  20. data/rbi/sentdm/internal/voice_agents_page.rbi +51 -3
  21. data/rbi/sentdm/internal/webhook_events_page.rbi +51 -3
  22. data/rbi/sentdm/internal/webhooks_page.rbi +51 -3
  23. data/rbi/sentdm/models/message_event_payload.rbi +4 -2
  24. data/rbi/sentdm/models/template_create_params.rbi +12 -0
  25. data/rbi/sentdm/resources/messages.rbi +2 -1
  26. data/rbi/sentdm/resources/templates.rbi +7 -2
  27. data/sig/sentdm/internal/calls_page.rbs +38 -3
  28. data/sig/sentdm/internal/contacts_page.rbs +38 -3
  29. data/sig/sentdm/internal/conversations_page.rbs +38 -3
  30. data/sig/sentdm/internal/templates_page.rbs +38 -3
  31. data/sig/sentdm/internal/voice_agents_page.rbs +38 -3
  32. data/sig/sentdm/internal/webhook_events_page.rbs +38 -3
  33. data/sig/sentdm/internal/webhooks_page.rbs +38 -3
  34. data/sig/sentdm/models/template_create_params.rbs +5 -0
  35. data/sig/sentdm/resources/templates.rbs +1 -0
  36. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a7d3a7f430c5492691ca1a23247fcbed3e2e2ff8e91844ba029537d709d9a963
4
- data.tar.gz: 7d8d1051da8284366c7285bbeecc1f927a645b9cdcb18cf5a68bacbe3e009f73
3
+ metadata.gz: 65f6179b1fe9d72e6c260ccfa40741ffe480c338b8fa973379812cf68483de3f
4
+ data.tar.gz: 9709f45d561064bfd30930460ae57758dbc70cb69c2882e9a454dacc07a3a391
5
5
  SHA512:
6
- metadata.gz: 0756dc34c4532cfb11b7956b378108f455a48ad0c791b04a059db712335c4d91333c27f4d3275d388535dd69f6be360f3f7900aa554b1b5c040d727639702cb4
7
- data.tar.gz: 35bbb4d69ac43c7f8bce02a02a6b87b3c709513ef1615ef597ef29aaf49ef675b0853a43c3c025beb562f53f09cbb2962d023639c657db7332ca5ee54749b6fa
6
+ metadata.gz: 5ccdabf83e3f77e4e8b3f2198d6105ae93cfd5c31c8a3382480ead68f390b563605a3f61ab1bd2b0c949e8b92c6e70b2ff42dc0e8a05becb72aa3b04bcbda717
7
+ data.tar.gz: 6eb2f443166e2a8620bc44cb97d83776d944ce02501e76311244e834d781ea294b5325c5f7b65f95b4d27ac5929ca10a60317e4d8ac1c81bedd44b79c3931050
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.45.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.44.0...v0.45.0) (2026-11-05)
4
+
5
+
6
+ ### Features
7
+
8
+ * **api:** sync OpenAPI spec from production ([850cfec](https://github.com/sentdm/sent-dm-ruby/commit/850cfec93cf24d63cc4be16f61a61b14587fe7cc))
9
+
10
+ ## [0.44.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.43.0...v0.44.0) (2026-11-04)
11
+
12
+
13
+ ### Features
14
+
15
+ * **pagination:** expose page, page_size, total_count and total_pages on every page model ([2403928](https://github.com/sentdm/sent-dm-ruby/commit/24039285c1ed89e4e7b3ec22e71ac984b590dcf3))
16
+
3
17
  ## [0.43.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.42.1...v0.43.0) (2026-11-03)
4
18
 
5
19
 
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "sentdm", "~> 0.43.0"
20
+ gem "sentdm", "~> 0.45.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -106,8 +106,32 @@ module Sentdm
106
106
  # @return [Boolean, nil]
107
107
  optional :has_more, Sentdm::Internal::Type::Boolean
108
108
 
109
- # @!method initialize(has_more: nil)
109
+ # @!attribute page
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :page, Integer
113
+
114
+ # @!attribute page_size
115
+ #
116
+ # @return [Integer, nil]
117
+ optional :page_size, Integer
118
+
119
+ # @!attribute total_count
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :total_count, Integer
123
+
124
+ # @!attribute total_pages
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :total_pages, Integer
128
+
129
+ # @!method initialize(has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
110
130
  # @param has_more [Boolean]
131
+ # @param page [Integer]
132
+ # @param page_size [Integer]
133
+ # @param total_count [Integer]
134
+ # @param total_pages [Integer]
111
135
  end
112
136
  end
113
137
  end
@@ -106,8 +106,32 @@ module Sentdm
106
106
  # @return [Boolean, nil]
107
107
  optional :has_more, Sentdm::Internal::Type::Boolean
108
108
 
109
- # @!method initialize(has_more: nil)
109
+ # @!attribute page
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :page, Integer
113
+
114
+ # @!attribute page_size
115
+ #
116
+ # @return [Integer, nil]
117
+ optional :page_size, Integer
118
+
119
+ # @!attribute total_count
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :total_count, Integer
123
+
124
+ # @!attribute total_pages
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :total_pages, Integer
128
+
129
+ # @!method initialize(has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
110
130
  # @param has_more [Boolean]
131
+ # @param page [Integer]
132
+ # @param page_size [Integer]
133
+ # @param total_count [Integer]
134
+ # @param total_pages [Integer]
111
135
  end
112
136
  end
113
137
  end
@@ -106,8 +106,32 @@ module Sentdm
106
106
  # @return [Boolean, nil]
107
107
  optional :has_more, Sentdm::Internal::Type::Boolean
108
108
 
109
- # @!method initialize(has_more: nil)
109
+ # @!attribute page
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :page, Integer
113
+
114
+ # @!attribute page_size
115
+ #
116
+ # @return [Integer, nil]
117
+ optional :page_size, Integer
118
+
119
+ # @!attribute total_count
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :total_count, Integer
123
+
124
+ # @!attribute total_pages
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :total_pages, Integer
128
+
129
+ # @!method initialize(has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
110
130
  # @param has_more [Boolean]
131
+ # @param page [Integer]
132
+ # @param page_size [Integer]
133
+ # @param total_count [Integer]
134
+ # @param total_pages [Integer]
111
135
  end
112
136
  end
113
137
  end
@@ -106,8 +106,32 @@ module Sentdm
106
106
  # @return [Boolean, nil]
107
107
  optional :has_more, Sentdm::Internal::Type::Boolean
108
108
 
109
- # @!method initialize(has_more: nil)
109
+ # @!attribute page
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :page, Integer
113
+
114
+ # @!attribute page_size
115
+ #
116
+ # @return [Integer, nil]
117
+ optional :page_size, Integer
118
+
119
+ # @!attribute total_count
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :total_count, Integer
123
+
124
+ # @!attribute total_pages
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :total_pages, Integer
128
+
129
+ # @!method initialize(has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
110
130
  # @param has_more [Boolean]
131
+ # @param page [Integer]
132
+ # @param page_size [Integer]
133
+ # @param total_count [Integer]
134
+ # @param total_pages [Integer]
111
135
  end
112
136
  end
113
137
  end
@@ -106,8 +106,32 @@ module Sentdm
106
106
  # @return [Boolean, nil]
107
107
  optional :has_more, Sentdm::Internal::Type::Boolean
108
108
 
109
- # @!method initialize(has_more: nil)
109
+ # @!attribute page
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :page, Integer
113
+
114
+ # @!attribute page_size
115
+ #
116
+ # @return [Integer, nil]
117
+ optional :page_size, Integer
118
+
119
+ # @!attribute total_count
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :total_count, Integer
123
+
124
+ # @!attribute total_pages
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :total_pages, Integer
128
+
129
+ # @!method initialize(has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
110
130
  # @param has_more [Boolean]
131
+ # @param page [Integer]
132
+ # @param page_size [Integer]
133
+ # @param total_count [Integer]
134
+ # @param total_pages [Integer]
111
135
  end
112
136
  end
113
137
  end
@@ -106,8 +106,32 @@ module Sentdm
106
106
  # @return [Boolean, nil]
107
107
  optional :has_more, Sentdm::Internal::Type::Boolean
108
108
 
109
- # @!method initialize(has_more: nil)
109
+ # @!attribute page
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :page, Integer
113
+
114
+ # @!attribute page_size
115
+ #
116
+ # @return [Integer, nil]
117
+ optional :page_size, Integer
118
+
119
+ # @!attribute total_count
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :total_count, Integer
123
+
124
+ # @!attribute total_pages
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :total_pages, Integer
128
+
129
+ # @!method initialize(has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
110
130
  # @param has_more [Boolean]
131
+ # @param page [Integer]
132
+ # @param page_size [Integer]
133
+ # @param total_count [Integer]
134
+ # @param total_pages [Integer]
111
135
  end
112
136
  end
113
137
  end
@@ -106,8 +106,32 @@ module Sentdm
106
106
  # @return [Boolean, nil]
107
107
  optional :has_more, Sentdm::Internal::Type::Boolean
108
108
 
109
- # @!method initialize(has_more: nil)
109
+ # @!attribute page
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :page, Integer
113
+
114
+ # @!attribute page_size
115
+ #
116
+ # @return [Integer, nil]
117
+ optional :page_size, Integer
118
+
119
+ # @!attribute total_count
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :total_count, Integer
123
+
124
+ # @!attribute total_pages
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :total_pages, Integer
128
+
129
+ # @!method initialize(has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
110
130
  # @param has_more [Boolean]
131
+ # @param page [Integer]
132
+ # @param page_size [Integer]
133
+ # @param total_count [Integer]
134
+ # @param total_pages [Integer]
111
135
  end
112
136
  end
113
137
  end
@@ -103,7 +103,8 @@ module Sentdm
103
103
  optional :template_name, String, nil?: true
104
104
 
105
105
  # @!attribute updated_at
106
- # When the message reached MessageStatus, in UTC (yyyy-MM-ddTHH:mm:ssZ).
106
+ # When the message reached the status this event reports, in UTC
107
+ # (yyyy-MM-ddTHH:mm:ssZ).
107
108
  #
108
109
  # @return [String, nil]
109
110
  optional :updated_at, String
@@ -142,7 +143,7 @@ module Sentdm
142
143
  #
143
144
  # @param template_name [String, nil] Name of the template the message was sent from. Omitted when the message wasn't
144
145
  #
145
- # @param updated_at [String] When the message reached MessageStatus, in UTC
146
+ # @param updated_at [String] When the message reached the status this event reports, in UTC
146
147
  end
147
148
  end
148
149
  end
@@ -41,6 +41,14 @@ module Sentdm
41
41
  # @return [String, nil]
42
42
  optional :language, String, nil?: true
43
43
 
44
+ # @!attribute name
45
+ # Template display name (optional). When omitted or blank, a name is generated
46
+ # from the template's content. It can be changed afterwards with PUT
47
+ # /v3/templates/{id}.
48
+ #
49
+ # @return [String, nil]
50
+ optional :name, String, nil?: true
51
+
44
52
  # @!attribute sandbox
45
53
  # Sandbox flag - when true, the operation is simulated without side effects Useful
46
54
  # for testing integrations without actual execution
@@ -64,7 +72,7 @@ module Sentdm
64
72
  # @return [String, nil]
65
73
  optional :x_profile_id, String
66
74
 
67
- # @!method initialize(auto_create_for_sp: nil, category: nil, creation_source: nil, definition: nil, language: nil, sandbox: nil, submit_for_review: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
75
+ # @!method initialize(auto_create_for_sp: nil, category: nil, creation_source: nil, definition: nil, language: nil, name: nil, sandbox: nil, submit_for_review: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
68
76
  # Some parameter documentations has been truncated, see
69
77
  # {Sentdm::Models::TemplateCreateParams} for more details.
70
78
  #
@@ -78,6 +86,8 @@ module Sentdm
78
86
  #
79
87
  # @param language [String, nil] Template language code (e.g., en_US) (optional, auto-detected if not provided)
80
88
  #
89
+ # @param name [String, nil] Template display name (optional). When omitted or blank, a name is generated fro
90
+ #
81
91
  # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
82
92
  #
83
93
  # @param submit_for_review [Boolean] Whether to submit the template for review after creation (default: false)
@@ -185,7 +185,8 @@ module Sentdm
185
185
  # accepted: if the time falls inside a legally protected quiet-hours window for a
186
186
  # recipient, that message is moved to the next allowed time at release and a
187
187
  # second message.scheduled webhook reports the new scheduled_at. An account may
188
- # hold at most 1,000,000 scheduled messages at once (429 LIMIT_001).
188
+ # hold at most 1,000,000 scheduled messages at once: a message scheduled past that
189
+ # is reported as BLOCKED (LIMIT_001) instead of being held.
189
190
  #
190
191
  # @overload send_(channel: nil, channels: nil, media_urls: nil, sandbox: nil, scheduled_at: nil, subject: nil, template: nil, text: nil, to: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
191
192
  #
@@ -15,11 +15,11 @@ module Sentdm
15
15
  #
16
16
  # Creates a new message template with header, body, footer, and buttons. The
17
17
  # template can be submitted for review immediately or saved as draft for later
18
- # submission. There is no `name` field on create — the display name is derived
19
- # from the template's content and can be changed afterwards with
18
+ # submission. `name` is optional: when omitted or blank, a name is generated from
19
+ # the template's content. It can be changed afterwards with
20
20
  # `PUT /v3/templates/{id}`.
21
21
  #
22
- # @overload create(auto_create_for_sp: nil, category: nil, creation_source: nil, definition: nil, language: nil, sandbox: nil, submit_for_review: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
22
+ # @overload create(auto_create_for_sp: nil, category: nil, creation_source: nil, definition: nil, language: nil, name: nil, sandbox: nil, submit_for_review: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
23
23
  #
24
24
  # @param auto_create_for_sp [Boolean] Body param: Create this template automatically on every sender profile of the or
25
25
  #
@@ -31,6 +31,8 @@ module Sentdm
31
31
  #
32
32
  # @param language [String, nil] Body param: Template language code (e.g., en_US) (optional, auto-detected if not
33
33
  #
34
+ # @param name [String, nil] Body param: Template display name (optional). When omitted or blank, a name is g
35
+ #
34
36
  # @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
35
37
  #
36
38
  # @param submit_for_review [Boolean] Body param: Whether to submit the template for review after creation (default: f
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Sentdm
4
- VERSION = "0.43.0"
4
+ VERSION = "0.45.0"
5
5
  end
@@ -57,11 +57,59 @@ module Sentdm
57
57
  sig { params(has_more: T::Boolean).void }
58
58
  attr_writer :has_more
59
59
 
60
- sig { params(has_more: T::Boolean).returns(T.attached_class) }
61
- def self.new(has_more: nil)
60
+ sig { returns(T.nilable(Integer)) }
61
+ attr_reader :page
62
+
63
+ sig { params(page: Integer).void }
64
+ attr_writer :page
65
+
66
+ sig { returns(T.nilable(Integer)) }
67
+ attr_reader :page_size
68
+
69
+ sig { params(page_size: Integer).void }
70
+ attr_writer :page_size
71
+
72
+ sig { returns(T.nilable(Integer)) }
73
+ attr_reader :total_count
74
+
75
+ sig { params(total_count: Integer).void }
76
+ attr_writer :total_count
77
+
78
+ sig { returns(T.nilable(Integer)) }
79
+ attr_reader :total_pages
80
+
81
+ sig { params(total_pages: Integer).void }
82
+ attr_writer :total_pages
83
+
84
+ sig do
85
+ params(
86
+ has_more: T::Boolean,
87
+ page: Integer,
88
+ page_size: Integer,
89
+ total_count: Integer,
90
+ total_pages: Integer
91
+ ).returns(T.attached_class)
92
+ end
93
+ def self.new(
94
+ has_more: nil,
95
+ page: nil,
96
+ page_size: nil,
97
+ total_count: nil,
98
+ total_pages: nil
99
+ )
62
100
  end
63
101
 
64
- sig { override.returns({ has_more: T::Boolean }) }
102
+ sig do
103
+ override.returns(
104
+ {
105
+ has_more: T::Boolean,
106
+ page: Integer,
107
+ page_size: Integer,
108
+ total_count: Integer,
109
+ total_pages: Integer
110
+ }
111
+ )
112
+ end
65
113
  def to_hash
66
114
  end
67
115
  end
@@ -57,11 +57,59 @@ module Sentdm
57
57
  sig { params(has_more: T::Boolean).void }
58
58
  attr_writer :has_more
59
59
 
60
- sig { params(has_more: T::Boolean).returns(T.attached_class) }
61
- def self.new(has_more: nil)
60
+ sig { returns(T.nilable(Integer)) }
61
+ attr_reader :page
62
+
63
+ sig { params(page: Integer).void }
64
+ attr_writer :page
65
+
66
+ sig { returns(T.nilable(Integer)) }
67
+ attr_reader :page_size
68
+
69
+ sig { params(page_size: Integer).void }
70
+ attr_writer :page_size
71
+
72
+ sig { returns(T.nilable(Integer)) }
73
+ attr_reader :total_count
74
+
75
+ sig { params(total_count: Integer).void }
76
+ attr_writer :total_count
77
+
78
+ sig { returns(T.nilable(Integer)) }
79
+ attr_reader :total_pages
80
+
81
+ sig { params(total_pages: Integer).void }
82
+ attr_writer :total_pages
83
+
84
+ sig do
85
+ params(
86
+ has_more: T::Boolean,
87
+ page: Integer,
88
+ page_size: Integer,
89
+ total_count: Integer,
90
+ total_pages: Integer
91
+ ).returns(T.attached_class)
92
+ end
93
+ def self.new(
94
+ has_more: nil,
95
+ page: nil,
96
+ page_size: nil,
97
+ total_count: nil,
98
+ total_pages: nil
99
+ )
62
100
  end
63
101
 
64
- sig { override.returns({ has_more: T::Boolean }) }
102
+ sig do
103
+ override.returns(
104
+ {
105
+ has_more: T::Boolean,
106
+ page: Integer,
107
+ page_size: Integer,
108
+ total_count: Integer,
109
+ total_pages: Integer
110
+ }
111
+ )
112
+ end
65
113
  def to_hash
66
114
  end
67
115
  end
@@ -57,11 +57,59 @@ module Sentdm
57
57
  sig { params(has_more: T::Boolean).void }
58
58
  attr_writer :has_more
59
59
 
60
- sig { params(has_more: T::Boolean).returns(T.attached_class) }
61
- def self.new(has_more: nil)
60
+ sig { returns(T.nilable(Integer)) }
61
+ attr_reader :page
62
+
63
+ sig { params(page: Integer).void }
64
+ attr_writer :page
65
+
66
+ sig { returns(T.nilable(Integer)) }
67
+ attr_reader :page_size
68
+
69
+ sig { params(page_size: Integer).void }
70
+ attr_writer :page_size
71
+
72
+ sig { returns(T.nilable(Integer)) }
73
+ attr_reader :total_count
74
+
75
+ sig { params(total_count: Integer).void }
76
+ attr_writer :total_count
77
+
78
+ sig { returns(T.nilable(Integer)) }
79
+ attr_reader :total_pages
80
+
81
+ sig { params(total_pages: Integer).void }
82
+ attr_writer :total_pages
83
+
84
+ sig do
85
+ params(
86
+ has_more: T::Boolean,
87
+ page: Integer,
88
+ page_size: Integer,
89
+ total_count: Integer,
90
+ total_pages: Integer
91
+ ).returns(T.attached_class)
92
+ end
93
+ def self.new(
94
+ has_more: nil,
95
+ page: nil,
96
+ page_size: nil,
97
+ total_count: nil,
98
+ total_pages: nil
99
+ )
62
100
  end
63
101
 
64
- sig { override.returns({ has_more: T::Boolean }) }
102
+ sig do
103
+ override.returns(
104
+ {
105
+ has_more: T::Boolean,
106
+ page: Integer,
107
+ page_size: Integer,
108
+ total_count: Integer,
109
+ total_pages: Integer
110
+ }
111
+ )
112
+ end
65
113
  def to_hash
66
114
  end
67
115
  end
@@ -57,11 +57,59 @@ module Sentdm
57
57
  sig { params(has_more: T::Boolean).void }
58
58
  attr_writer :has_more
59
59
 
60
- sig { params(has_more: T::Boolean).returns(T.attached_class) }
61
- def self.new(has_more: nil)
60
+ sig { returns(T.nilable(Integer)) }
61
+ attr_reader :page
62
+
63
+ sig { params(page: Integer).void }
64
+ attr_writer :page
65
+
66
+ sig { returns(T.nilable(Integer)) }
67
+ attr_reader :page_size
68
+
69
+ sig { params(page_size: Integer).void }
70
+ attr_writer :page_size
71
+
72
+ sig { returns(T.nilable(Integer)) }
73
+ attr_reader :total_count
74
+
75
+ sig { params(total_count: Integer).void }
76
+ attr_writer :total_count
77
+
78
+ sig { returns(T.nilable(Integer)) }
79
+ attr_reader :total_pages
80
+
81
+ sig { params(total_pages: Integer).void }
82
+ attr_writer :total_pages
83
+
84
+ sig do
85
+ params(
86
+ has_more: T::Boolean,
87
+ page: Integer,
88
+ page_size: Integer,
89
+ total_count: Integer,
90
+ total_pages: Integer
91
+ ).returns(T.attached_class)
92
+ end
93
+ def self.new(
94
+ has_more: nil,
95
+ page: nil,
96
+ page_size: nil,
97
+ total_count: nil,
98
+ total_pages: nil
99
+ )
62
100
  end
63
101
 
64
- sig { override.returns({ has_more: T::Boolean }) }
102
+ sig do
103
+ override.returns(
104
+ {
105
+ has_more: T::Boolean,
106
+ page: Integer,
107
+ page_size: Integer,
108
+ total_count: Integer,
109
+ total_pages: Integer
110
+ }
111
+ )
112
+ end
65
113
  def to_hash
66
114
  end
67
115
  end