terminal-shop 3.6.2 → 3.7.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 (124) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/README.md +1 -1
  4. data/lib/terminal_shop/errors.rb +1 -1
  5. data/lib/terminal_shop/internal/transport/base_client.rb +77 -5
  6. data/lib/terminal_shop/internal/transport/pooled_net_requester.rb +14 -0
  7. data/lib/terminal_shop/internal/type/array_of.rb +1 -1
  8. data/lib/terminal_shop/internal/type/base_model.rb +62 -30
  9. data/lib/terminal_shop/internal/type/converter.rb +18 -0
  10. data/lib/terminal_shop/internal/type/enum.rb +1 -0
  11. data/lib/terminal_shop/internal/type/hash_of.rb +1 -1
  12. data/lib/terminal_shop/internal/type/union.rb +1 -0
  13. data/lib/terminal_shop/internal/util.rb +56 -0
  14. data/lib/terminal_shop/internal.rb +6 -0
  15. data/lib/terminal_shop/models/subscription.rb +9 -0
  16. data/lib/terminal_shop/models/subscription_update_params.rb +9 -0
  17. data/lib/terminal_shop/models.rb +27 -0
  18. data/lib/terminal_shop/request_options.rb +4 -0
  19. data/lib/terminal_shop/version.rb +1 -1
  20. data/lib/terminal_shop.rb +2 -0
  21. data/rbi/terminal_shop/internal/transport/base_client.rbi +31 -8
  22. data/rbi/terminal_shop/internal/transport/pooled_net_requester.rbi +5 -3
  23. data/rbi/terminal_shop/internal/type/base_model.rbi +33 -15
  24. data/rbi/terminal_shop/internal/type/base_page.rbi +1 -1
  25. data/rbi/terminal_shop/internal/type/converter.rbi +2 -0
  26. data/rbi/terminal_shop/internal/type/enum.rbi +1 -0
  27. data/rbi/terminal_shop/internal/type/union.rbi +1 -0
  28. data/rbi/terminal_shop/internal/util.rbi +28 -5
  29. data/rbi/terminal_shop/internal.rbi +2 -0
  30. data/rbi/terminal_shop/models/address.rbi +3 -1
  31. data/rbi/terminal_shop/models/address_create_params.rbi +6 -1
  32. data/rbi/terminal_shop/models/address_create_response.rbi +6 -1
  33. data/rbi/terminal_shop/models/address_delete_params.rbi +6 -1
  34. data/rbi/terminal_shop/models/address_delete_response.rbi +6 -1
  35. data/rbi/terminal_shop/models/address_get_params.rbi +3 -1
  36. data/rbi/terminal_shop/models/address_get_response.rbi +6 -1
  37. data/rbi/terminal_shop/models/address_list_params.rbi +6 -1
  38. data/rbi/terminal_shop/models/address_list_response.rbi +6 -1
  39. data/rbi/terminal_shop/models/app.rbi +3 -1
  40. data/rbi/terminal_shop/models/app_create_params.rbi +3 -1
  41. data/rbi/terminal_shop/models/app_create_response.rbi +12 -2
  42. data/rbi/terminal_shop/models/app_delete_params.rbi +3 -1
  43. data/rbi/terminal_shop/models/app_delete_response.rbi +6 -1
  44. data/rbi/terminal_shop/models/app_get_params.rbi +3 -1
  45. data/rbi/terminal_shop/models/app_get_response.rbi +6 -1
  46. data/rbi/terminal_shop/models/app_list_params.rbi +3 -1
  47. data/rbi/terminal_shop/models/app_list_response.rbi +6 -1
  48. data/rbi/terminal_shop/models/card.rbi +9 -2
  49. data/rbi/terminal_shop/models/card_collect_params.rbi +6 -1
  50. data/rbi/terminal_shop/models/card_collect_response.rbi +12 -2
  51. data/rbi/terminal_shop/models/card_create_params.rbi +3 -1
  52. data/rbi/terminal_shop/models/card_create_response.rbi +6 -1
  53. data/rbi/terminal_shop/models/card_delete_params.rbi +3 -1
  54. data/rbi/terminal_shop/models/card_delete_response.rbi +6 -1
  55. data/rbi/terminal_shop/models/card_get_params.rbi +3 -1
  56. data/rbi/terminal_shop/models/card_get_response.rbi +6 -1
  57. data/rbi/terminal_shop/models/card_list_params.rbi +3 -1
  58. data/rbi/terminal_shop/models/card_list_response.rbi +6 -1
  59. data/rbi/terminal_shop/models/cart.rbi +18 -4
  60. data/rbi/terminal_shop/models/cart_clear_params.rbi +3 -1
  61. data/rbi/terminal_shop/models/cart_clear_response.rbi +6 -1
  62. data/rbi/terminal_shop/models/cart_convert_params.rbi +6 -1
  63. data/rbi/terminal_shop/models/cart_convert_response.rbi +6 -1
  64. data/rbi/terminal_shop/models/cart_get_params.rbi +3 -1
  65. data/rbi/terminal_shop/models/cart_get_response.rbi +6 -1
  66. data/rbi/terminal_shop/models/cart_set_address_params.rbi +6 -1
  67. data/rbi/terminal_shop/models/cart_set_address_response.rbi +6 -1
  68. data/rbi/terminal_shop/models/cart_set_card_params.rbi +6 -1
  69. data/rbi/terminal_shop/models/cart_set_card_response.rbi +6 -1
  70. data/rbi/terminal_shop/models/cart_set_item_params.rbi +6 -1
  71. data/rbi/terminal_shop/models/cart_set_item_response.rbi +6 -1
  72. data/rbi/terminal_shop/models/email_create_params.rbi +6 -1
  73. data/rbi/terminal_shop/models/email_create_response.rbi +6 -1
  74. data/rbi/terminal_shop/models/order.rbi +24 -5
  75. data/rbi/terminal_shop/models/order_create_params.rbi +6 -1
  76. data/rbi/terminal_shop/models/order_create_response.rbi +6 -1
  77. data/rbi/terminal_shop/models/order_get_params.rbi +3 -1
  78. data/rbi/terminal_shop/models/order_get_response.rbi +6 -1
  79. data/rbi/terminal_shop/models/order_list_params.rbi +3 -1
  80. data/rbi/terminal_shop/models/order_list_response.rbi +6 -1
  81. data/rbi/terminal_shop/models/product.rbi +9 -2
  82. data/rbi/terminal_shop/models/product_get_params.rbi +3 -1
  83. data/rbi/terminal_shop/models/product_get_response.rbi +6 -1
  84. data/rbi/terminal_shop/models/product_list_params.rbi +6 -1
  85. data/rbi/terminal_shop/models/product_list_response.rbi +6 -1
  86. data/rbi/terminal_shop/models/product_variant.rbi +9 -2
  87. data/rbi/terminal_shop/models/profile.rbi +9 -2
  88. data/rbi/terminal_shop/models/profile_me_params.rbi +3 -1
  89. data/rbi/terminal_shop/models/profile_me_response.rbi +6 -1
  90. data/rbi/terminal_shop/models/profile_update_params.rbi +6 -1
  91. data/rbi/terminal_shop/models/profile_update_response.rbi +6 -1
  92. data/rbi/terminal_shop/models/subscription.rbi +15 -3
  93. data/rbi/terminal_shop/models/subscription_create_params.rbi +6 -1
  94. data/rbi/terminal_shop/models/subscription_create_response.rbi +6 -1
  95. data/rbi/terminal_shop/models/subscription_delete_params.rbi +6 -1
  96. data/rbi/terminal_shop/models/subscription_delete_response.rbi +6 -1
  97. data/rbi/terminal_shop/models/subscription_get_params.rbi +6 -1
  98. data/rbi/terminal_shop/models/subscription_get_response.rbi +6 -1
  99. data/rbi/terminal_shop/models/subscription_list_params.rbi +6 -1
  100. data/rbi/terminal_shop/models/subscription_list_response.rbi +6 -1
  101. data/rbi/terminal_shop/models/subscription_update_params.rbi +18 -3
  102. data/rbi/terminal_shop/models/subscription_update_response.rbi +6 -1
  103. data/rbi/terminal_shop/models/token.rbi +3 -1
  104. data/rbi/terminal_shop/models/token_create_params.rbi +6 -1
  105. data/rbi/terminal_shop/models/token_create_response.rbi +12 -2
  106. data/rbi/terminal_shop/models/token_delete_params.rbi +6 -1
  107. data/rbi/terminal_shop/models/token_delete_response.rbi +6 -1
  108. data/rbi/terminal_shop/models/token_get_params.rbi +3 -1
  109. data/rbi/terminal_shop/models/token_get_response.rbi +6 -1
  110. data/rbi/terminal_shop/models/token_list_params.rbi +3 -1
  111. data/rbi/terminal_shop/models/token_list_response.rbi +6 -1
  112. data/rbi/terminal_shop/models/view_init_params.rbi +3 -1
  113. data/rbi/terminal_shop/models/view_init_response.rbi +12 -2
  114. data/rbi/terminal_shop/request_options.rbi +3 -1
  115. data/sig/terminal_shop/internal/transport/base_client.rbs +16 -1
  116. data/sig/terminal_shop/internal/transport/pooled_net_requester.rbs +2 -0
  117. data/sig/terminal_shop/internal/type/base_model.rbs +11 -5
  118. data/sig/terminal_shop/internal/type/base_page.rbs +1 -1
  119. data/sig/terminal_shop/internal/type/converter.rbs +2 -0
  120. data/sig/terminal_shop/internal/type/enum.rbs +1 -0
  121. data/sig/terminal_shop/internal/type/union.rbs +1 -0
  122. data/sig/terminal_shop/internal/util.rbs +13 -0
  123. data/sig/terminal_shop/internal.rbs +2 -0
  124. metadata +2 -2
@@ -4,7 +4,9 @@ module TerminalShop
4
4
  module Models
5
5
  class ProfileAPI < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(TerminalShop::ProfileAPI, TerminalShop::Internal::AnyHash)
9
+ end
8
10
 
9
11
  # A Terminal shop user. (We have users, btw.)
10
12
  sig { returns(TerminalShop::ProfileAPI::User) }
@@ -31,7 +33,12 @@ module TerminalShop
31
33
 
32
34
  class User < TerminalShop::Internal::Type::BaseModel
33
35
  OrHash =
34
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
36
+ T.type_alias do
37
+ T.any(
38
+ TerminalShop::ProfileAPI::User,
39
+ TerminalShop::Internal::AnyHash
40
+ )
41
+ end
35
42
 
36
43
  # Unique object identifier. The format and length of IDs may change over time.
37
44
  sig { returns(String) }
@@ -7,7 +7,9 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(TerminalShop::ProfileMeParams, TerminalShop::Internal::AnyHash)
12
+ end
11
13
 
12
14
  sig do
13
15
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class ProfileMeResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::ProfileMeResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  # A Terminal shop user's profile. (We have users, btw.)
10
15
  sig { returns(TerminalShop::ProfileAPI) }
@@ -7,7 +7,12 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::ProfileUpdateParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
11
16
 
12
17
  sig { returns(String) }
13
18
  attr_accessor :email
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class ProfileUpdateResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::ProfileUpdateResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  # A Terminal shop user's profile. (We have users, btw.)
10
15
  sig { returns(TerminalShop::ProfileAPI) }
@@ -4,7 +4,9 @@ module TerminalShop
4
4
  module Models
5
5
  class SubscriptionAPI < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(TerminalShop::SubscriptionAPI, TerminalShop::Internal::AnyHash)
9
+ end
8
10
 
9
11
  # Unique object identifier. The format and length of IDs may change over time.
10
12
  sig { returns(String) }
@@ -141,7 +143,12 @@ module TerminalShop
141
143
 
142
144
  class Fixed < TerminalShop::Internal::Type::BaseModel
143
145
  OrHash =
144
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
146
+ T.type_alias do
147
+ T.any(
148
+ TerminalShop::SubscriptionAPI::Schedule::Fixed,
149
+ TerminalShop::Internal::AnyHash
150
+ )
151
+ end
145
152
 
146
153
  sig { returns(Symbol) }
147
154
  attr_accessor :type
@@ -157,7 +164,12 @@ module TerminalShop
157
164
 
158
165
  class Weekly < TerminalShop::Internal::Type::BaseModel
159
166
  OrHash =
160
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
167
+ T.type_alias do
168
+ T.any(
169
+ TerminalShop::SubscriptionAPI::Schedule::Weekly,
170
+ TerminalShop::Internal::AnyHash
171
+ )
172
+ end
161
173
 
162
174
  sig { returns(Integer) }
163
175
  attr_accessor :interval
@@ -7,7 +7,12 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::SubscriptionCreateParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
11
16
 
12
17
  sig do
13
18
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class SubscriptionCreateResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::SubscriptionCreateResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  sig { returns(Symbol) }
10
15
  attr_accessor :data
@@ -7,7 +7,12 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::SubscriptionDeleteParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
11
16
 
12
17
  sig do
13
18
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class SubscriptionDeleteResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::SubscriptionDeleteResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  sig { returns(Symbol) }
10
15
  attr_accessor :data
@@ -7,7 +7,12 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::SubscriptionGetParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
11
16
 
12
17
  sig do
13
18
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class SubscriptionGetResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::SubscriptionGetResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  # Subscription to a Terminal shop product.
10
15
  sig { returns(TerminalShop::SubscriptionAPI) }
@@ -7,7 +7,12 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::SubscriptionListParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
11
16
 
12
17
  sig do
13
18
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class SubscriptionListResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::SubscriptionListResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  # List of subscriptions.
10
15
  sig { returns(T::Array[TerminalShop::SubscriptionAPI]) }
@@ -7,7 +7,12 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::SubscriptionUpdateParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
11
16
 
12
17
  # New shipping address ID for the subscription.
13
18
  sig { returns(T.nilable(String)) }
@@ -101,7 +106,12 @@ module TerminalShop
101
106
 
102
107
  class Fixed < TerminalShop::Internal::Type::BaseModel
103
108
  OrHash =
104
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
109
+ T.type_alias do
110
+ T.any(
111
+ TerminalShop::SubscriptionUpdateParams::Schedule::Fixed,
112
+ TerminalShop::Internal::AnyHash
113
+ )
114
+ end
105
115
 
106
116
  sig { returns(Symbol) }
107
117
  attr_accessor :type
@@ -117,7 +127,12 @@ module TerminalShop
117
127
 
118
128
  class Weekly < TerminalShop::Internal::Type::BaseModel
119
129
  OrHash =
120
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
130
+ T.type_alias do
131
+ T.any(
132
+ TerminalShop::SubscriptionUpdateParams::Schedule::Weekly,
133
+ TerminalShop::Internal::AnyHash
134
+ )
135
+ end
121
136
 
122
137
  sig { returns(Integer) }
123
138
  attr_accessor :interval
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class SubscriptionUpdateResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::SubscriptionUpdateResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  # Subscription to a Terminal shop product.
10
15
  sig { returns(TerminalShop::SubscriptionAPI) }
@@ -4,7 +4,9 @@ module TerminalShop
4
4
  module Models
5
5
  class TokenAPI < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(TerminalShop::TokenAPI, TerminalShop::Internal::AnyHash)
9
+ end
8
10
 
9
11
  # Unique object identifier. The format and length of IDs may change over time.
10
12
  sig { returns(String) }
@@ -7,7 +7,12 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::TokenCreateParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
11
16
 
12
17
  sig do
13
18
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class TokenCreateResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::TokenCreateResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  sig { returns(TerminalShop::Models::TokenCreateResponse::Data) }
10
15
  attr_reader :data
@@ -34,7 +39,12 @@ module TerminalShop
34
39
 
35
40
  class Data < TerminalShop::Internal::Type::BaseModel
36
41
  OrHash =
37
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
42
+ T.type_alias do
43
+ T.any(
44
+ TerminalShop::Models::TokenCreateResponse::Data,
45
+ TerminalShop::Internal::AnyHash
46
+ )
47
+ end
38
48
 
39
49
  # Personal token ID.
40
50
  sig { returns(String) }
@@ -7,7 +7,12 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::TokenDeleteParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
11
16
 
12
17
  sig do
13
18
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class TokenDeleteResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::TokenDeleteResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  sig { returns(Symbol) }
10
15
  attr_accessor :data
@@ -7,7 +7,9 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(TerminalShop::TokenGetParams, TerminalShop::Internal::AnyHash)
12
+ end
11
13
 
12
14
  sig do
13
15
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class TokenGetResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::TokenGetResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  # A personal access token used to access the Terminal API. If you leak this,
10
15
  # expect large sums of coffee to be ordered on your credit card.
@@ -7,7 +7,9 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(TerminalShop::TokenListParams, TerminalShop::Internal::AnyHash)
12
+ end
11
13
 
12
14
  sig do
13
15
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class TokenListResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::TokenListResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  # List of personal access tokens.
10
15
  sig { returns(T::Array[TerminalShop::TokenAPI]) }
@@ -7,7 +7,9 @@ module TerminalShop
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
10
+ T.type_alias do
11
+ T.any(TerminalShop::ViewInitParams, TerminalShop::Internal::AnyHash)
12
+ end
11
13
 
12
14
  sig do
13
15
  params(request_options: TerminalShop::RequestOptions::OrHash).returns(
@@ -4,7 +4,12 @@ module TerminalShop
4
4
  module Models
5
5
  class ViewInitResponse < TerminalShop::Internal::Type::BaseModel
6
6
  OrHash =
7
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::ViewInitResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
8
13
 
9
14
  # Initial app data.
10
15
  sig { returns(TerminalShop::Models::ViewInitResponse::Data) }
@@ -34,7 +39,12 @@ module TerminalShop
34
39
 
35
40
  class Data < TerminalShop::Internal::Type::BaseModel
36
41
  OrHash =
37
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
42
+ T.type_alias do
43
+ T.any(
44
+ TerminalShop::Models::ViewInitResponse::Data,
45
+ TerminalShop::Internal::AnyHash
46
+ )
47
+ end
38
48
 
39
49
  sig { returns(T::Array[TerminalShop::AddressAPI]) }
40
50
  attr_accessor :addresses
@@ -8,7 +8,9 @@ module TerminalShop
8
8
  # simply pass a Hash with symbol keys matching the attributes on this class.
9
9
  class RequestOptions < TerminalShop::Internal::Type::BaseModel
10
10
  OrHash =
11
- T.type_alias { T.any(T.self_type, TerminalShop::Internal::AnyHash) }
11
+ T.type_alias do
12
+ T.any(TerminalShop::RequestOptions, TerminalShop::Internal::AnyHash)
13
+ end
12
14
 
13
15
  # @api private
14
16
  sig { params(opts: TerminalShop::RequestOptions::OrHash).void }
@@ -2,6 +2,8 @@ module TerminalShop
2
2
  module Internal
3
3
  module Transport
4
4
  class BaseClient
5
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
+
5
7
  type request_components =
6
8
  {
7
9
  method: Symbol,
@@ -20,7 +22,6 @@ module TerminalShop
20
22
  model: TerminalShop::Internal::Type::Converter::input?,
21
23
  options: TerminalShop::request_opts?
22
24
  }
23
-
24
25
  type request_input =
25
26
  {
26
27
  method: Symbol,
@@ -55,6 +56,20 @@ module TerminalShop
55
56
  stream: Enumerable[String]?
56
57
  ) -> void
57
58
 
59
+ attr_reader base_url: URI::Generic
60
+
61
+ attr_reader timeout: Float
62
+
63
+ attr_reader max_retries: Integer
64
+
65
+ attr_reader initial_retry_delay: Float
66
+
67
+ attr_reader max_retry_delay: Float
68
+
69
+ attr_reader headers: ::Hash[String, String]
70
+
71
+ attr_reader idempotency_header: String?
72
+
58
73
  # @api private
59
74
  attr_reader requester: TerminalShop::Internal::Transport::PooledNetRequester
60
75
 
@@ -2,6 +2,8 @@ module TerminalShop
2
2
  module Internal
3
3
  module Transport
4
4
  class PooledNetRequester
5
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
+
5
7
  type request =
6
8
  {
7
9
  method: Symbol,
@@ -3,10 +3,13 @@ module TerminalShop
3
3
  module Type
4
4
  class BaseModel
5
5
  extend TerminalShop::Internal::Type::Converter
6
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  type known_field =
8
9
  { mode: (:coerce | :dump)?, required: bool, nilable: bool }
9
10
 
11
+ def self.inherited: (self child) -> void
12
+
10
13
  def self.known_fields: -> ::Hash[Symbol, (TerminalShop::Internal::Type::BaseModel::known_field
11
14
  & { type_fn: (^-> TerminalShop::Internal::Type::Converter::input) })]
12
15
 
@@ -67,23 +70,26 @@ module TerminalShop
67
70
  state: TerminalShop::Internal::Type::Converter::dump_state
68
71
  ) -> (::Hash[top, top] | top)
69
72
 
73
+ def self.recursively_to_h: (
74
+ TerminalShop::Internal::Type::BaseModel model,
75
+ convert: bool
76
+ ) -> ::Hash[Symbol, top]
77
+
70
78
  def []: (Symbol key) -> top?
71
79
 
72
80
  def to_h: -> ::Hash[Symbol, top]
73
81
 
74
82
  alias to_hash to_h
75
83
 
76
- def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top]
84
+ def deep_to_h: -> ::Hash[Symbol, top]
77
85
 
78
- def self.walk: (
79
- TerminalShop::Internal::Type::BaseModel model
80
- ) -> ::Hash[Symbol, top]
86
+ def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top]
81
87
 
82
88
  def to_json: (*top a) -> String
83
89
 
84
90
  def to_yaml: (*top a) -> String
85
91
 
86
- def initialize: (?::Hash[Symbol, top] | self data) -> void
92
+ def initialize: (?::Hash[Symbol, top] | instance data) -> void
87
93
 
88
94
  def self.inspect: (?depth: Integer) -> String
89
95
 
@@ -4,7 +4,7 @@ module TerminalShop
4
4
  module BasePage[Elem]
5
5
  def next_page?: -> bool
6
6
 
7
- def next_page: -> self
7
+ def next_page: -> instance
8
8
 
9
9
  def auto_paging_each: { (Elem arg0) -> void } -> void
10
10
 
@@ -2,6 +2,8 @@ module TerminalShop
2
2
  module Internal
3
3
  module Type
4
4
  module Converter
5
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
+
5
7
  type input = TerminalShop::Internal::Type::Converter | Class
6
8
 
7
9
  type coerce_state =
@@ -3,6 +3,7 @@ module TerminalShop
3
3
  module Type
4
4
  module Enum
5
5
  include TerminalShop::Internal::Type::Converter
6
+ include TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  def self.values: -> ::Array[(nil | bool | Integer | Float | Symbol)]
8
9
 
@@ -3,6 +3,7 @@ module TerminalShop
3
3
  module Type
4
4
  module Union
5
5
  include TerminalShop::Internal::Type::Converter
6
+ include TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  private def self.known_variants: -> ::Array[[Symbol?, (^-> TerminalShop::Internal::Type::Converter::input)]]
8
9
 
@@ -1,6 +1,8 @@
1
1
  module TerminalShop
2
2
  module Internal
3
3
  module Util
4
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
5
+
4
6
  def self?.monotonic_secs: -> Float
5
7
 
6
8
  def self?.arch: -> String
@@ -155,6 +157,17 @@ module TerminalShop
155
157
  def self?.decode_sse: (
156
158
  Enumerable[String] lines
157
159
  ) -> Enumerable[TerminalShop::Internal::Util::server_sent_event]
160
+
161
+ module SorbetRuntimeSupport
162
+ class MissingSorbetRuntimeError < ::RuntimeError
163
+ end
164
+
165
+ private def sorbet_runtime_constants: -> ::Hash[Symbol, top]
166
+
167
+ def const_missing: (Symbol name) -> void
168
+
169
+ def define_sorbet_constant!: (Symbol name) { -> top } -> void
170
+ end
158
171
  end
159
172
  end
160
173
  end
@@ -1,5 +1,7 @@
1
1
  module TerminalShop
2
2
  module Internal
3
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
4
+
3
5
  OMIT: Object
4
6
  end
5
7
  end