clerk-sdk-ruby 8.0.0 → 8.0.1

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 (243) hide show
  1. checksums.yaml +4 -4
  2. data/lib/clerk/actortokens.rb +1 -1
  3. data/lib/clerk/billing.rb +336 -0
  4. data/lib/clerk/directories.rb +1534 -0
  5. data/lib/clerk/domains.rb +7 -4
  6. data/lib/clerk/models/components/amount_off.rb +44 -0
  7. data/lib/clerk/models/components/amount_off.rbi +19 -0
  8. data/lib/clerk/models/components/applycommercediscountrequest.rb +32 -0
  9. data/lib/clerk/models/components/applycommercediscountrequest.rbi +13 -0
  10. data/lib/clerk/models/components/automation_disposition.rb +21 -0
  11. data/lib/clerk/models/components/automation_disposition.rbi +11 -0
  12. data/lib/clerk/models/components/billingstatement.rb +1 -1
  13. data/lib/clerk/models/components/{group.rb → billingstatement_group.rb} +1 -1
  14. data/lib/clerk/models/components/{group.rbi → billingstatement_group.rbi} +2 -2
  15. data/lib/clerk/models/components/biometriccredential.rb +72 -0
  16. data/lib/clerk/models/components/biometriccredential.rbi +33 -0
  17. data/lib/clerk/models/components/biometriccredential_algorithm.rb +19 -0
  18. data/lib/clerk/models/components/biometriccredential_algorithm.rbi +11 -0
  19. data/lib/clerk/models/components/biometriccredential_list.rb +36 -0
  20. data/lib/clerk/models/components/biometriccredential_list.rbi +15 -0
  21. data/lib/clerk/models/components/biometriccredential_object.rb +19 -0
  22. data/lib/clerk/models/components/biometriccredential_object.rbi +11 -0
  23. data/lib/clerk/models/components/biometriccredential_platform.rb +20 -0
  24. data/lib/clerk/models/components/biometriccredential_platform.rbi +11 -0
  25. data/lib/clerk/models/components/biometriccredential_status.rb +20 -0
  26. data/lib/clerk/models/components/biometriccredential_status.rbi +11 -0
  27. data/lib/clerk/models/components/commercediscountredemptionresponse.rb +93 -0
  28. data/lib/clerk/models/components/commercediscountredemptionresponse.rbi +43 -0
  29. data/lib/clerk/models/components/commercediscountredemptionresponse_amount.rb +45 -0
  30. data/lib/clerk/models/components/commercediscountredemptionresponse_amount.rbi +19 -0
  31. data/lib/clerk/models/components/commercediscountredemptionresponse_object.rb +19 -0
  32. data/lib/clerk/models/components/commercediscountredemptionresponse_object.rbi +11 -0
  33. data/lib/clerk/models/components/commercediscountredemptionresponse_status.rb +21 -0
  34. data/lib/clerk/models/components/commercediscountredemptionresponse_status.rbi +11 -0
  35. data/lib/clerk/models/components/createbillingpricerequest.rb +2 -2
  36. data/lib/clerk/models/components/directory.rb +80 -0
  37. data/lib/clerk/models/components/directory.rbi +37 -0
  38. data/lib/clerk/models/components/directory_custom_attribute.rb +52 -0
  39. data/lib/clerk/models/components/directory_custom_attribute.rbi +23 -0
  40. data/lib/clerk/models/components/directory_group.rb +36 -0
  41. data/lib/clerk/models/components/directory_group.rbi +15 -0
  42. data/lib/clerk/models/components/directory_list.rb +36 -0
  43. data/lib/clerk/models/components/directory_list.rbi +15 -0
  44. data/lib/clerk/models/components/directory_object.rb +19 -0
  45. data/lib/clerk/models/components/directory_object.rbi +11 -0
  46. data/lib/clerk/models/components/directorygrouprolemapping.rb +76 -0
  47. data/lib/clerk/models/components/directorygrouprolemapping.rbi +35 -0
  48. data/lib/clerk/models/components/directorygrouprolemapping_deleted.rb +43 -0
  49. data/lib/clerk/models/components/directorygrouprolemapping_deleted.rbi +17 -0
  50. data/lib/clerk/models/components/directorygrouprolemapping_deleted_object.rb +19 -0
  51. data/lib/clerk/models/components/directorygrouprolemapping_deleted_object.rbi +11 -0
  52. data/lib/clerk/models/components/directorygrouprolemapping_list.rb +36 -0
  53. data/lib/clerk/models/components/directorygrouprolemapping_list.rbi +15 -0
  54. data/lib/clerk/models/components/directorygrouprolemapping_object.rb +19 -0
  55. data/lib/clerk/models/components/directorygrouprolemapping_object.rbi +11 -0
  56. data/lib/clerk/models/components/dnstarget.rb +49 -0
  57. data/lib/clerk/models/components/dnstarget.rbi +21 -0
  58. data/lib/clerk/models/components/domain.rb +7 -2
  59. data/lib/clerk/models/components/domain.rbi +2 -0
  60. data/lib/clerk/models/components/effect.rb +20 -0
  61. data/lib/clerk/models/components/{platform.rbi → effect.rbi} +2 -2
  62. data/lib/clerk/models/components/enterpriseconnection_custom_attribute.rb +5 -1
  63. data/lib/clerk/models/components/enterpriseconnection_custom_attribute.rbi +2 -0
  64. data/lib/clerk/models/components/instance.rb +13 -1
  65. data/lib/clerk/models/components/instance.rbi +6 -0
  66. data/lib/clerk/models/components/instanceprotect.rb +10 -2
  67. data/lib/clerk/models/components/instanceprotect.rbi +4 -0
  68. data/lib/clerk/models/components/instancesettings.rb +1 -1
  69. data/lib/clerk/models/components/level.rb +21 -0
  70. data/lib/clerk/models/components/{algorithm.rbi → level.rbi} +2 -2
  71. data/lib/clerk/models/components/oauthapplication.rb +7 -2
  72. data/lib/clerk/models/components/oauthapplication.rbi +2 -0
  73. data/lib/clerk/models/components/oauthapplicationsettings.rb +11 -2
  74. data/lib/clerk/models/components/oauthapplicationsettings.rbi +4 -0
  75. data/lib/clerk/models/components/oauthapplicationwithsecret.rb +7 -2
  76. data/lib/clerk/models/components/oauthapplicationwithsecret.rbi +2 -0
  77. data/lib/clerk/models/components/organization.rb +6 -1
  78. data/lib/clerk/models/components/organization.rbi +2 -0
  79. data/lib/clerk/models/components/organizationmembership_organization.rb +6 -1
  80. data/lib/clerk/models/components/organizationmembership_organization.rbi +2 -0
  81. data/lib/clerk/models/components/organizationwithlogo.rb +6 -1
  82. data/lib/clerk/models/components/organizationwithlogo.rbi +2 -0
  83. data/lib/clerk/models/components/record_type.rb +20 -0
  84. data/lib/clerk/models/components/record_type.rbi +11 -0
  85. data/lib/clerk/models/components/reverification.rb +74 -0
  86. data/lib/clerk/models/components/reverification.rbi +31 -0
  87. data/lib/clerk/models/components/reverification_object.rb +20 -0
  88. data/lib/clerk/models/components/reverification_object.rbi +11 -0
  89. data/lib/clerk/models/components/reverification_status.rb +21 -0
  90. data/lib/clerk/models/components/reverification_status.rbi +11 -0
  91. data/lib/clerk/models/components/scim_group.rb +36 -0
  92. data/lib/clerk/models/components/scim_group.rbi +15 -0
  93. data/lib/clerk/models/components/scimdirectory.rb +8 -8
  94. data/lib/clerk/models/components/scimdirectory_custom_attribute.rb +5 -1
  95. data/lib/clerk/models/components/scimdirectory_custom_attribute.rbi +2 -0
  96. data/lib/clerk/models/components/scimdirectory_list.rb +2 -2
  97. data/lib/clerk/models/components/scimgrouprolemapping.rb +14 -2
  98. data/lib/clerk/models/components/scimgrouprolemapping.rbi +6 -0
  99. data/lib/clerk/models/components/scimusermetadata.rb +64 -0
  100. data/lib/clerk/models/components/scimusermetadata.rbi +27 -0
  101. data/lib/clerk/models/components/scimusermetadata_group.rb +36 -0
  102. data/lib/clerk/models/components/scimusermetadata_group.rbi +15 -0
  103. data/lib/clerk/models/components/source.rb +21 -0
  104. data/lib/clerk/models/components/source.rbi +11 -0
  105. data/lib/clerk/models/components/trusteddevice.rb +2 -2
  106. data/lib/clerk/models/components/{algorithm.rb → trusteddevice_algorithm.rb} +1 -1
  107. data/lib/clerk/models/components/trusteddevice_algorithm.rbi +11 -0
  108. data/lib/clerk/models/components/{platform.rb → trusteddevice_platform.rb} +1 -1
  109. data/lib/clerk/models/components/trusteddevice_platform.rbi +11 -0
  110. data/lib/clerk/models/components/user.rb +16 -3
  111. data/lib/clerk/models/components/user.rbi +4 -0
  112. data/lib/clerk/models/components/user_directory.rb +65 -0
  113. data/lib/clerk/models/components/user_directory.rbi +27 -0
  114. data/lib/clerk/models/components/user_scim.rb +27 -6
  115. data/lib/clerk/models/components/user_scim.rbi +10 -0
  116. data/lib/clerk/models/components.rb +38 -3
  117. data/lib/clerk/models/operations/adddomain_request.rb +3 -6
  118. data/lib/clerk/models/operations/applybillingsubscriptionitemdiscount_request.rb +36 -0
  119. data/lib/clerk/models/operations/applybillingsubscriptionitemdiscount_request.rbi +15 -0
  120. data/lib/clerk/models/operations/applybillingsubscriptionitemdiscount_response.rb +44 -0
  121. data/lib/clerk/models/operations/applybillingsubscriptionitemdiscount_response.rbi +19 -0
  122. data/lib/clerk/models/operations/clerkidpoauthaccesstoken.rb +5 -1
  123. data/lib/clerk/models/operations/clerkidpoauthaccesstoken.rbi +2 -0
  124. data/lib/clerk/models/operations/createdirectory_group_role_mapping.rb +52 -0
  125. data/lib/clerk/models/operations/createdirectory_group_role_mapping.rbi +23 -0
  126. data/lib/clerk/models/operations/createdirectory_request.rb +44 -0
  127. data/lib/clerk/models/operations/createdirectory_request.rbi +19 -0
  128. data/lib/clerk/models/operations/createdirectory_response.rb +44 -0
  129. data/lib/clerk/models/operations/createdirectory_response.rbi +19 -0
  130. data/lib/clerk/models/operations/createdirectorygrouprolemapping_request.rb +36 -0
  131. data/lib/clerk/models/operations/createdirectorygrouprolemapping_request.rbi +15 -0
  132. data/lib/clerk/models/operations/createdirectorygrouprolemapping_requestbody.rb +46 -0
  133. data/lib/clerk/models/operations/createdirectorygrouprolemapping_requestbody.rbi +19 -0
  134. data/lib/clerk/models/operations/createdirectorygrouprolemapping_response.rb +44 -0
  135. data/lib/clerk/models/operations/createdirectorygrouprolemapping_response.rbi +19 -0
  136. data/lib/clerk/models/operations/createenterpriseconnection_custom_attribute.rb +5 -1
  137. data/lib/clerk/models/operations/createenterpriseconnection_custom_attribute.rbi +2 -0
  138. data/lib/clerk/models/operations/createoauthapplication_request.rb +6 -2
  139. data/lib/clerk/models/operations/createoauthapplication_request.rbi +2 -0
  140. data/lib/clerk/models/operations/{group_role_mapping.rb → createscimdirectory_group_role_mapping.rb} +1 -1
  141. data/lib/clerk/models/operations/{group_role_mapping.rbi → createscimdirectory_group_role_mapping.rbi} +2 -2
  142. data/lib/clerk/models/operations/createscimdirectory_request.rb +4 -4
  143. data/lib/clerk/models/operations/createscimdirectory_response.rb +1 -1
  144. data/lib/clerk/models/operations/createscimgrouprolemapping_request.rb +1 -1
  145. data/lib/clerk/models/operations/createuser_request.rb +8 -2
  146. data/lib/clerk/models/operations/createuser_request.rbi +2 -0
  147. data/lib/clerk/models/operations/deletedirectory_request.rb +32 -0
  148. data/lib/clerk/models/operations/deletedirectory_request.rbi +13 -0
  149. data/lib/clerk/models/operations/deletedirectory_response.rb +44 -0
  150. data/lib/clerk/models/operations/deletedirectory_response.rbi +19 -0
  151. data/lib/clerk/models/operations/deletedirectorygrouprolemapping_request.rb +36 -0
  152. data/lib/clerk/models/operations/deletedirectorygrouprolemapping_request.rbi +15 -0
  153. data/lib/clerk/models/operations/deletedirectorygrouprolemapping_response.rb +44 -0
  154. data/lib/clerk/models/operations/deletedirectorygrouprolemapping_response.rbi +19 -0
  155. data/lib/clerk/models/operations/deletedomain_request.rb +1 -1
  156. data/lib/clerk/models/operations/deletescimdirectory_request.rb +1 -1
  157. data/lib/clerk/models/operations/deletescimgrouprolemapping_request.rb +1 -1
  158. data/lib/clerk/models/operations/getdirectory_request.rb +32 -0
  159. data/lib/clerk/models/operations/getdirectory_request.rbi +13 -0
  160. data/lib/clerk/models/operations/getdirectory_response.rb +44 -0
  161. data/lib/clerk/models/operations/getdirectory_response.rbi +19 -0
  162. data/lib/clerk/models/operations/getreverification_request.rb +36 -0
  163. data/lib/clerk/models/operations/getreverification_request.rbi +15 -0
  164. data/lib/clerk/models/operations/getreverification_response.rb +44 -0
  165. data/lib/clerk/models/operations/getreverification_response.rbi +19 -0
  166. data/lib/clerk/models/operations/getscimdirectory_request.rb +1 -1
  167. data/lib/clerk/models/operations/getscimdirectory_response.rb +1 -1
  168. data/lib/clerk/models/operations/getuserlist_request.rb +13 -1
  169. data/lib/clerk/models/operations/getuserlist_request.rbi +2 -0
  170. data/lib/clerk/models/operations/listdirectories_request.rb +39 -0
  171. data/lib/clerk/models/operations/listdirectories_request.rbi +15 -0
  172. data/lib/clerk/models/operations/listdirectories_response.rb +44 -0
  173. data/lib/clerk/models/operations/listdirectories_response.rbi +19 -0
  174. data/lib/clerk/models/operations/listdirectorygrouprolemappings_request.rb +32 -0
  175. data/lib/clerk/models/operations/listdirectorygrouprolemappings_request.rbi +13 -0
  176. data/lib/clerk/models/operations/listdirectorygrouprolemappings_response.rb +44 -0
  177. data/lib/clerk/models/operations/listdirectorygrouprolemappings_response.rbi +19 -0
  178. data/lib/clerk/models/operations/listoauthapplications_request.rb +2 -0
  179. data/lib/clerk/models/operations/listscimdirectories_response.rb +1 -1
  180. data/lib/clerk/models/operations/listscimgrouprolemappings_request.rb +1 -1
  181. data/lib/clerk/models/operations/listuserbiometriccredentials_request.rb +32 -0
  182. data/lib/clerk/models/operations/listuserbiometriccredentials_request.rbi +13 -0
  183. data/lib/clerk/models/operations/listuserbiometriccredentials_response.rb +44 -0
  184. data/lib/clerk/models/operations/listuserbiometriccredentials_response.rbi +19 -0
  185. data/lib/clerk/models/operations/removebillingsubscriptionitemdiscount_request.rb +36 -0
  186. data/lib/clerk/models/operations/removebillingsubscriptionitemdiscount_request.rbi +15 -0
  187. data/lib/clerk/models/operations/removebillingsubscriptionitemdiscount_response.rb +44 -0
  188. data/lib/clerk/models/operations/removebillingsubscriptionitemdiscount_response.rbi +19 -0
  189. data/lib/clerk/models/operations/replacedirectorygrouprolemappings_mapping.rb +40 -0
  190. data/lib/clerk/models/operations/replacedirectorygrouprolemappings_mapping.rbi +17 -0
  191. data/lib/clerk/models/operations/replacedirectorygrouprolemappings_request.rb +36 -0
  192. data/lib/clerk/models/operations/replacedirectorygrouprolemappings_request.rbi +15 -0
  193. data/lib/clerk/models/operations/replacedirectorygrouprolemappings_requestbody.rb +32 -0
  194. data/lib/clerk/models/operations/replacedirectorygrouprolemappings_requestbody.rbi +13 -0
  195. data/lib/clerk/models/operations/replacedirectorygrouprolemappings_response.rb +44 -0
  196. data/lib/clerk/models/operations/replacedirectorygrouprolemappings_response.rbi +19 -0
  197. data/lib/clerk/models/operations/{mapping.rb → replacescimgrouprolemappings_mapping.rb} +1 -1
  198. data/lib/clerk/models/operations/{mapping.rbi → replacescimgrouprolemappings_mapping.rbi} +2 -2
  199. data/lib/clerk/models/operations/replacescimgrouprolemappings_request.rb +1 -1
  200. data/lib/clerk/models/operations/replacescimgrouprolemappings_requestbody.rb +1 -1
  201. data/lib/clerk/models/operations/revokeuserbiometriccredential_request.rb +36 -0
  202. data/lib/clerk/models/operations/revokeuserbiometriccredential_request.rbi +15 -0
  203. data/lib/clerk/models/operations/revokeuserbiometriccredential_response.rb +44 -0
  204. data/lib/clerk/models/operations/revokeuserbiometriccredential_response.rbi +19 -0
  205. data/lib/clerk/models/operations/rotatedirectoryapikey_request.rb +32 -0
  206. data/lib/clerk/models/operations/rotatedirectoryapikey_request.rbi +13 -0
  207. data/lib/clerk/models/operations/rotatedirectoryapikey_response.rb +44 -0
  208. data/lib/clerk/models/operations/rotatedirectoryapikey_response.rbi +19 -0
  209. data/lib/clerk/models/operations/rotatescimdirectoryapikey_request.rb +1 -1
  210. data/lib/clerk/models/operations/rotatescimdirectoryapikey_response.rb +1 -1
  211. data/lib/clerk/models/operations/updatedirectory_request.rb +36 -0
  212. data/lib/clerk/models/operations/updatedirectory_request.rbi +15 -0
  213. data/lib/clerk/models/operations/updatedirectory_requestbody.rb +49 -0
  214. data/lib/clerk/models/operations/updatedirectory_requestbody.rbi +21 -0
  215. data/lib/clerk/models/operations/updatedirectory_response.rb +44 -0
  216. data/lib/clerk/models/operations/updatedirectory_response.rbi +19 -0
  217. data/lib/clerk/models/operations/updateenterpriseconnection_custom_attribute.rb +5 -1
  218. data/lib/clerk/models/operations/updateenterpriseconnection_custom_attribute.rbi +2 -0
  219. data/lib/clerk/models/operations/updateinstance_request.rb +15 -5
  220. data/lib/clerk/models/operations/updateinstance_request.rbi +6 -2
  221. data/lib/clerk/models/operations/updateinstanceoauthapplicationsettings_request.rb +11 -2
  222. data/lib/clerk/models/operations/updateinstanceoauthapplicationsettings_request.rbi +4 -0
  223. data/lib/clerk/models/operations/updateinstanceprotect_request.rb +1 -1
  224. data/lib/clerk/models/operations/updateoauthapplication_requestbody.rb +9 -5
  225. data/lib/clerk/models/operations/updateoauthapplication_requestbody.rbi +4 -2
  226. data/lib/clerk/models/operations/updateorganization_requestbody.rb +6 -1
  227. data/lib/clerk/models/operations/updateorganization_requestbody.rbi +2 -0
  228. data/lib/clerk/models/operations/updatescimdirectory_request.rb +1 -1
  229. data/lib/clerk/models/operations/updatescimdirectory_requestbody.rb +4 -4
  230. data/lib/clerk/models/operations/updatescimdirectory_response.rb +1 -1
  231. data/lib/clerk/models/operations/updateuser_requestbody.rb +1 -1
  232. data/lib/clerk/models/operations.rb +37 -2
  233. data/lib/clerk/openapiclient.rb +2 -1
  234. data/lib/clerk/phonenumbers.rb +10 -2
  235. data/lib/clerk/scimdirectories.rb +23 -20
  236. data/lib/clerk/sdk.rb +21 -1
  237. data/lib/clerk/sdkconfiguration.rb +3 -3
  238. data/lib/clerk/sessions.rb +146 -0
  239. data/lib/clerk/users.rb +329 -1
  240. data/lib/clerk/utils/utils.rb +6 -2
  241. data/lib/clerk_sdk_ruby.rb +1 -0
  242. data/test/clerk/org_permissions_v2_test.rb +130 -0
  243. metadata +154 -12
@@ -0,0 +1,45 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+ # How much this discount takes off the subscription item's next renewal charge.
11
+ # Present for either effect when next-payment data is available.
12
+ class CommerceDiscountRedemptionResponseAmount
13
+
14
+ include Crystalline::MetadataFields
15
+
16
+ # The amount in cents.
17
+ field :amount, ::Integer, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('amount'), required: true } }
18
+ # The formatted amount as a string (e.g., "$49.99").
19
+ field :amount_formatted, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('amount_formatted'), required: true } }
20
+ # The currency code (e.g., "USD").
21
+ field :currency, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('currency'), required: true } }
22
+ # The currency symbol (e.g., "$").
23
+ field :currency_symbol, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('currency_symbol'), required: true } }
24
+
25
+
26
+ def initialize(amount:, amount_formatted:, currency:, currency_symbol:)
27
+ @amount = amount
28
+ @amount_formatted = amount_formatted
29
+ @currency = currency
30
+ @currency_symbol = currency_symbol
31
+ end
32
+
33
+
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @amount == other.amount
37
+ return false unless @amount_formatted == other.amount_formatted
38
+ return false unless @currency == other.currency
39
+ return false unless @currency_symbol == other.currency_symbol
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,19 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::CommerceDiscountRedemptionResponseAmount
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::CommerceDiscountRedemptionResponseAmount
11
+ def amount(); end
12
+ def amount=(str_); end
13
+ def amount_formatted(); end
14
+ def amount_formatted=(str_); end
15
+ def currency(); end
16
+ def currency=(str_); end
17
+ def currency_symbol(); end
18
+ def currency_symbol=(str_); end
19
+ end
@@ -0,0 +1,19 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+ # CommerceDiscountRedemptionResponseObject - String representing the object's type. Objects of the same type share the same value.
11
+ class CommerceDiscountRedemptionResponseObject
12
+ include ::Crystalline::Enum
13
+ enums do
14
+ COMMERCE_DISCOUNT_REDEMPTION = new('commerce_discount_redemption')
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,11 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::CommerceDiscountRedemptionResponseObject
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::CommerceDiscountRedemptionResponseObject
11
+ end
@@ -0,0 +1,21 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+ # CommerceDiscountRedemptionResponseStatus - Current status of the discount redemption.
11
+ class CommerceDiscountRedemptionResponseStatus
12
+ include ::Crystalline::Enum
13
+ enums do
14
+ ACTIVE = new('active')
15
+ EXHAUSTED = new('exhausted')
16
+ REMOVED = new('removed')
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,11 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::CommerceDiscountRedemptionResponseStatus
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::CommerceDiscountRedemptionResponseStatus
11
+ end
@@ -14,7 +14,7 @@ module Clerk
14
14
 
15
15
  # The ID of the plan this price belongs to.
16
16
  field :plan_id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('plan_id'), required: true } }
17
- # The monthly amount in cents. Must be at least $1 (100 cents) if not null.
17
+ # The monthly amount in cents. Use `0` for a complimentary price. Positive amounts must be at least $1 (100 cents).
18
18
  field :amount, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('amount'), required: true } }
19
19
  # An optional description for this custom price.
20
20
  field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('description') } }
@@ -22,7 +22,7 @@ module Clerk
22
22
  field :supported_billing_periods, Crystalline::Nilable.new(Models::Components::CreateBillingPriceRequestSupportedBillingPeriods), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('supported_billing_periods'), 'decoder': ::Clerk::Utils.enum_from_string(Models::Components::CreateBillingPriceRequestSupportedBillingPeriods, true) } }
23
23
  # The currency code (e.g., "USD"). Defaults to USD.
24
24
  field :currency, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('currency') } }
25
- # The monthly amount in cents when billed annually. Must be at least $1 (100 cents) if not null.
25
+ # The monthly amount in cents when billed annually. Use `0` for a complimentary price. Positive amounts must be at least $1 (100 cents).
26
26
  field :annual_monthly_amount, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('annual_monthly_amount') } }
27
27
 
28
28
 
@@ -0,0 +1,80 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+ # A directory configuration for provisioning users from an identity provider.
11
+ class Directory
12
+
13
+ include Crystalline::MetadataFields
14
+
15
+ # String representing the object's type. Always "directory".
16
+ field :object, Models::Components::DirectoryObject, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('object'), required: true, 'decoder': ::Clerk::Utils.enum_from_string(Models::Components::DirectoryObject, false) } }
17
+ # Unique identifier for the directory.
18
+ field :id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('id'), required: true } }
19
+ # A human-friendly name for the directory.
20
+ field :name, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('name'), required: true } }
21
+ # The provisioning endpoint URL for this directory.
22
+ field :endpoint_url, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('endpoint_url'), required: true } }
23
+ # The identity provider for this directory.
24
+ field :provider, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('provider'), required: true } }
25
+ # Whether the directory is enabled.
26
+ field :enabled, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('enabled'), required: true } }
27
+ # Whether group-to-role mapping is enabled for this directory.
28
+ field :group_role_mapping_enabled, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('group_role_mapping_enabled'), required: true } }
29
+ # Mapping of user attributes to the directory attribute paths they are extracted from.
30
+ field :attribute_mapping, Crystalline::Hash.new(Symbol, ::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('attribute_mapping'), required: true } }
31
+ # Unix timestamp when the directory was created.
32
+ field :created_at, ::Integer, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('created_at'), required: true } }
33
+ # Unix timestamp when the directory was last updated.
34
+ field :updated_at, ::Integer, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('updated_at'), required: true } }
35
+ # Custom attributes to map from the IdP to the user's profile via directory sync. Requires the custom attributes feature to be enabled for the instance.
36
+ field :custom_attributes, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::DirectoryCustomAttribute)), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('custom_attributes') } }
37
+ # The ID of the associated enterprise connection.
38
+ field :enterprise_connection_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('enterprise_connection_id') } }
39
+ # The API key for authenticating provisioning requests. Only returned when the directory is created or the key is rotated.
40
+ field :api_key, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('api_key') } }
41
+
42
+
43
+ def initialize(object:, id:, name:, endpoint_url:, provider:, enabled:, group_role_mapping_enabled:, attribute_mapping:, created_at:, updated_at:, custom_attributes: nil, enterprise_connection_id: nil, api_key: nil)
44
+ @object = object
45
+ @id = id
46
+ @name = name
47
+ @endpoint_url = endpoint_url
48
+ @provider = provider
49
+ @enabled = enabled
50
+ @group_role_mapping_enabled = group_role_mapping_enabled
51
+ @attribute_mapping = attribute_mapping
52
+ @created_at = created_at
53
+ @updated_at = updated_at
54
+ @custom_attributes = custom_attributes
55
+ @enterprise_connection_id = enterprise_connection_id
56
+ @api_key = api_key
57
+ end
58
+
59
+
60
+ def ==(other)
61
+ return false unless other.is_a? self.class
62
+ return false unless @object == other.object
63
+ return false unless @id == other.id
64
+ return false unless @name == other.name
65
+ return false unless @endpoint_url == other.endpoint_url
66
+ return false unless @provider == other.provider
67
+ return false unless @enabled == other.enabled
68
+ return false unless @group_role_mapping_enabled == other.group_role_mapping_enabled
69
+ return false unless @attribute_mapping == other.attribute_mapping
70
+ return false unless @created_at == other.created_at
71
+ return false unless @updated_at == other.updated_at
72
+ return false unless @custom_attributes == other.custom_attributes
73
+ return false unless @enterprise_connection_id == other.enterprise_connection_id
74
+ return false unless @api_key == other.api_key
75
+ true
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,37 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::Directory
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::Directory
11
+ def object(); end
12
+ def object=(str_); end
13
+ def id(); end
14
+ def id=(str_); end
15
+ def name(); end
16
+ def name=(str_); end
17
+ def endpoint_url(); end
18
+ def endpoint_url=(str_); end
19
+ def provider(); end
20
+ def provider=(str_); end
21
+ def enabled(); end
22
+ def enabled=(str_); end
23
+ def group_role_mapping_enabled(); end
24
+ def group_role_mapping_enabled=(str_); end
25
+ def attribute_mapping(); end
26
+ def attribute_mapping=(str_); end
27
+ def created_at(); end
28
+ def created_at=(str_); end
29
+ def updated_at(); end
30
+ def updated_at=(str_); end
31
+ def custom_attributes(); end
32
+ def custom_attributes=(str_); end
33
+ def enterprise_connection_id(); end
34
+ def enterprise_connection_id=(str_); end
35
+ def api_key(); end
36
+ def api_key=(str_); end
37
+ end
@@ -0,0 +1,52 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+
11
+ class DirectoryCustomAttribute
12
+
13
+ include Crystalline::MetadataFields
14
+
15
+ # Display name for the custom attribute
16
+ field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('name') } }
17
+ # Key used to store the attribute in the user's public/private/unsafe metadata
18
+ field :key, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('key') } }
19
+ # Path to extract the attribute value from SSO claims (SAML assertions or OIDC claims)
20
+ field :sso_path, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('sso_path') } }
21
+ # The legacy name for `directory_path`. Carries the same value.
22
+ field :scim_path, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('scim_path') } }
23
+ # GJSON path to extract the attribute value from directory sync user resources
24
+ field :directory_path, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('directory_path') } }
25
+ # When true, the attribute supports multiple values; values from the IdP are written to public_metadata as an array. Defaults to false.
26
+ field :multi_valued, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('multi_valued') } }
27
+
28
+
29
+ def initialize(name: nil, key: nil, sso_path: nil, scim_path: nil, directory_path: nil, multi_valued: nil)
30
+ @name = name
31
+ @key = key
32
+ @sso_path = sso_path
33
+ @scim_path = scim_path
34
+ @directory_path = directory_path
35
+ @multi_valued = multi_valued
36
+ end
37
+
38
+
39
+ def ==(other)
40
+ return false unless other.is_a? self.class
41
+ return false unless @name == other.name
42
+ return false unless @key == other.key
43
+ return false unless @sso_path == other.sso_path
44
+ return false unless @scim_path == other.scim_path
45
+ return false unless @directory_path == other.directory_path
46
+ return false unless @multi_valued == other.multi_valued
47
+ true
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,23 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::DirectoryCustomAttribute
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::DirectoryCustomAttribute
11
+ def name(); end
12
+ def name=(str_); end
13
+ def key(); end
14
+ def key=(str_); end
15
+ def sso_path(); end
16
+ def sso_path=(str_); end
17
+ def scim_path(); end
18
+ def scim_path=(str_); end
19
+ def directory_path(); end
20
+ def directory_path=(str_); end
21
+ def multi_valued(); end
22
+ def multi_valued=(str_); end
23
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+
11
+ class DirectoryGroup
12
+
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('id'), required: true } }
17
+
18
+ field :display_name, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('display_name'), required: true } }
19
+
20
+
21
+ def initialize(id:, display_name:)
22
+ @id = id
23
+ @display_name = display_name
24
+ end
25
+
26
+
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @id == other.id
30
+ return false unless @display_name == other.display_name
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::DirectoryGroup
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::DirectoryGroup
11
+ def id(); end
12
+ def id=(str_); end
13
+ def display_name(); end
14
+ def display_name=(str_); end
15
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+ # A list of directories
11
+ class DirectoryList
12
+
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :data, Crystalline::Array.new(Models::Components::Directory), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('data'), required: true } }
17
+ # Total number of directories.
18
+ field :total_count, ::Integer, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('total_count'), required: true } }
19
+
20
+
21
+ def initialize(data:, total_count:)
22
+ @data = data
23
+ @total_count = total_count
24
+ end
25
+
26
+
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @data == other.data
30
+ return false unless @total_count == other.total_count
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::DirectoryList
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::DirectoryList
11
+ def data(); end
12
+ def data=(str_); end
13
+ def total_count(); end
14
+ def total_count=(str_); end
15
+ end
@@ -0,0 +1,19 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+ # DirectoryObject - String representing the object's type. Always "directory".
11
+ class DirectoryObject
12
+ include ::Crystalline::Enum
13
+ enums do
14
+ DIRECTORY = new('directory')
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,11 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::DirectoryObject
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::DirectoryObject
11
+ end
@@ -0,0 +1,76 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+ # A mapping from a directory group to an organization role. Members of the group are assigned the role; the lowest-precedence match wins when a user belongs to multiple mapped groups.
11
+ class DirectoryGroupRoleMapping
12
+
13
+ include Crystalline::MetadataFields
14
+
15
+ # String representing the object's type. Always "directory_group_role_mapping".
16
+ field :object, Models::Components::DirectoryGroupRoleMappingObject, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('object'), required: true, 'decoder': ::Clerk::Utils.enum_from_string(Models::Components::DirectoryGroupRoleMappingObject, false) } }
17
+ # Unique identifier for the directory group role mapping.
18
+ field :id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('id'), required: true } }
19
+ # The ID of the directory this mapping belongs to.
20
+ field :directory_id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('directory_id'), required: true } }
21
+ # The legacy name for `directory_id`. Carries the same value.
22
+ field :scim_directory_id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('scim_directory_id'), required: true } }
23
+ # The group ID from the identity provider.
24
+ field :directory_group_id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('directory_group_id'), required: true } }
25
+ # The legacy name for `directory_group_id`. Carries the same value.
26
+ field :scim_group_id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('scim_group_id'), required: true } }
27
+ # The display name of the group, as reported by the identity provider.
28
+ field :directory_group_display_name, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('directory_group_display_name'), required: true } }
29
+ # The legacy name for `directory_group_display_name`. Carries the same value.
30
+ field :scim_group_display_name, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('scim_group_display_name'), required: true } }
31
+ # Mapping precedence, starting at 1. Lower values take priority when a user belongs to multiple mapped groups.
32
+ field :precedence, ::Integer, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('precedence'), required: true } }
33
+ # Unix timestamp (milliseconds) of when the mapping was created.
34
+ field :created_at, ::Integer, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('created_at'), required: true } }
35
+ # Unix timestamp (milliseconds) of when the mapping was last updated.
36
+ field :updated_at, ::Integer, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('updated_at'), required: true } }
37
+
38
+ field :role, Crystalline::Nilable.new(Models::Components::Role), { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('role') } }
39
+
40
+
41
+ def initialize(object:, id:, directory_id:, scim_directory_id:, directory_group_id:, scim_group_id:, directory_group_display_name:, scim_group_display_name:, precedence:, created_at:, updated_at:, role: nil)
42
+ @object = object
43
+ @id = id
44
+ @directory_id = directory_id
45
+ @scim_directory_id = scim_directory_id
46
+ @directory_group_id = directory_group_id
47
+ @scim_group_id = scim_group_id
48
+ @directory_group_display_name = directory_group_display_name
49
+ @scim_group_display_name = scim_group_display_name
50
+ @precedence = precedence
51
+ @created_at = created_at
52
+ @updated_at = updated_at
53
+ @role = role
54
+ end
55
+
56
+
57
+ def ==(other)
58
+ return false unless other.is_a? self.class
59
+ return false unless @object == other.object
60
+ return false unless @id == other.id
61
+ return false unless @directory_id == other.directory_id
62
+ return false unless @scim_directory_id == other.scim_directory_id
63
+ return false unless @directory_group_id == other.directory_group_id
64
+ return false unless @scim_group_id == other.scim_group_id
65
+ return false unless @directory_group_display_name == other.directory_group_display_name
66
+ return false unless @scim_group_display_name == other.scim_group_display_name
67
+ return false unless @precedence == other.precedence
68
+ return false unless @created_at == other.created_at
69
+ return false unless @updated_at == other.updated_at
70
+ return false unless @role == other.role
71
+ true
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,35 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::DirectoryGroupRoleMapping
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::DirectoryGroupRoleMapping
11
+ def object(); end
12
+ def object=(str_); end
13
+ def id(); end
14
+ def id=(str_); end
15
+ def directory_id(); end
16
+ def directory_id=(str_); end
17
+ def scim_directory_id(); end
18
+ def scim_directory_id=(str_); end
19
+ def directory_group_id(); end
20
+ def directory_group_id=(str_); end
21
+ def scim_group_id(); end
22
+ def scim_group_id=(str_); end
23
+ def directory_group_display_name(); end
24
+ def directory_group_display_name=(str_); end
25
+ def scim_group_display_name(); end
26
+ def scim_group_display_name=(str_); end
27
+ def precedence(); end
28
+ def precedence=(str_); end
29
+ def created_at(); end
30
+ def created_at=(str_); end
31
+ def updated_at(); end
32
+ def updated_at=(str_); end
33
+ def role(); end
34
+ def role=(str_); end
35
+ end
@@ -0,0 +1,43 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: false
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Clerk
8
+ module Models
9
+ module Components
10
+ # A directory group role mapping was deleted.
11
+ class DirectoryGroupRoleMappingDeleted
12
+
13
+ include Crystalline::MetadataFields
14
+
15
+ # String representing the object's type.
16
+ field :object, Models::Components::DirectoryGroupRoleMappingDeletedObject, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('object'), required: true, 'decoder': ::Clerk::Utils.enum_from_string(Models::Components::DirectoryGroupRoleMappingDeletedObject, false) } }
17
+ # The ID of the deleted directory group role mapping.
18
+ field :id, ::String, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('id'), required: true } }
19
+ # Whether the directory group role mapping was successfully deleted.
20
+ field :deleted, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::Clerk::Utils.field_name('deleted'), required: true } }
21
+
22
+
23
+ def initialize(object:, id:, deleted: true)
24
+ @object = object
25
+ @id = id
26
+ unless deleted == true
27
+ raise ArgumentError, 'Invalid value for deleted'
28
+ end
29
+ @deleted = true
30
+ end
31
+
32
+
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @object == other.object
36
+ return false unless @id == other.id
37
+ return false unless @deleted == other.deleted
38
+ true
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,17 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Clerk::Models::Components::DirectoryGroupRoleMappingDeleted
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Clerk::Models::Components::DirectoryGroupRoleMappingDeleted
11
+ def object(); end
12
+ def object=(str_); end
13
+ def id(); end
14
+ def id=(str_); end
15
+ def deleted(); end
16
+ def deleted=(str_); end
17
+ end