moonbase-sdk 0.1.0.pre.alpha.2 → 0.1.0.pre.alpha.4

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 (416) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +52 -0
  3. data/README.md +27 -59
  4. data/lib/moonbase/client.rb +41 -37
  5. data/lib/moonbase/internal/cursor_page.rb +2 -2
  6. data/lib/moonbase/internal/transport/base_client.rb +1 -1
  7. data/lib/moonbase/internal/transport/pooled_net_requester.rb +1 -9
  8. data/lib/moonbase/internal/type/array_of.rb +1 -0
  9. data/lib/moonbase/internal/type/base_model.rb +4 -9
  10. data/lib/moonbase/internal/type/converter.rb +27 -0
  11. data/lib/moonbase/internal/type/hash_of.rb +1 -0
  12. data/lib/moonbase/internal/type/union.rb +25 -23
  13. data/lib/moonbase/internal/util.rb +1 -1
  14. data/lib/moonbase/models/activity.rb +20 -1112
  15. data/lib/moonbase/models/activity_call_occurred.rb +42 -0
  16. data/lib/moonbase/models/activity_form_submitted.rb +46 -0
  17. data/lib/moonbase/models/activity_inbox_message_sent.rb +42 -0
  18. data/lib/moonbase/models/activity_item_created.rb +46 -0
  19. data/lib/moonbase/models/activity_item_mentioned.rb +63 -0
  20. data/lib/moonbase/models/activity_item_merged.rb +64 -0
  21. data/lib/moonbase/models/activity_meeting_held.rb +42 -0
  22. data/lib/moonbase/models/activity_meeting_scheduled.rb +42 -0
  23. data/lib/moonbase/models/activity_note_created.rb +62 -0
  24. data/lib/moonbase/models/activity_program_message_bounced.rb +71 -0
  25. data/lib/moonbase/models/activity_program_message_clicked.rb +71 -0
  26. data/lib/moonbase/models/activity_program_message_complained.rb +55 -0
  27. data/lib/moonbase/models/activity_program_message_failed.rb +63 -0
  28. data/lib/moonbase/models/activity_program_message_opened.rb +54 -0
  29. data/lib/moonbase/models/activity_program_message_sent.rb +62 -0
  30. data/lib/moonbase/models/activity_program_message_shielded.rb +64 -0
  31. data/lib/moonbase/models/activity_program_message_unsubscribed.rb +63 -0
  32. data/lib/moonbase/models/address.rb +22 -52
  33. data/lib/moonbase/models/attendee.rb +19 -45
  34. data/lib/moonbase/models/boolean_field.rb +119 -0
  35. data/lib/moonbase/models/boolean_value.rb +4 -4
  36. data/lib/moonbase/models/call.rb +48 -68
  37. data/lib/moonbase/models/call_create_params.rb +115 -36
  38. data/lib/moonbase/models/call_upsert_params.rb +236 -0
  39. data/lib/moonbase/models/choice_field.rb +128 -0
  40. data/lib/moonbase/models/choice_field_option.rb +38 -0
  41. data/lib/moonbase/models/choice_value.rb +25 -0
  42. data/lib/moonbase/models/choice_value_param.rb +41 -0
  43. data/lib/moonbase/models/collection.rb +21 -41
  44. data/lib/moonbase/models/collection_pointer.rb +35 -0
  45. data/lib/moonbase/models/collection_retrieve_params.rb +2 -7
  46. data/lib/moonbase/models/collections/item_create_params.rb +24 -0
  47. data/lib/moonbase/models/collections/item_delete_params.rb +22 -0
  48. data/lib/moonbase/models/collections/item_list_params.rb +48 -0
  49. data/lib/moonbase/models/collections/item_retrieve_params.rb +22 -0
  50. data/lib/moonbase/models/collections/item_update_params.rb +70 -0
  51. data/lib/moonbase/models/collections/item_upsert_params.rb +73 -0
  52. data/lib/moonbase/models/date_field.rb +119 -0
  53. data/lib/moonbase/models/date_value.rb +4 -4
  54. data/lib/moonbase/models/datetime_field.rb +119 -0
  55. data/lib/moonbase/models/datetime_value.rb +4 -4
  56. data/lib/moonbase/models/domain_field.rb +119 -0
  57. data/lib/moonbase/models/domain_value.rb +6 -4
  58. data/lib/moonbase/models/email_field.rb +119 -0
  59. data/lib/moonbase/models/email_message.rb +81 -162
  60. data/lib/moonbase/models/email_value.rb +6 -4
  61. data/lib/moonbase/models/endpoint.rb +96 -0
  62. data/lib/moonbase/models/error.rb +5 -0
  63. data/lib/moonbase/models/field.rb +44 -277
  64. data/lib/moonbase/models/field_value.rb +5 -5
  65. data/lib/moonbase/models/field_value_param.rb +174 -0
  66. data/lib/moonbase/models/float_field.rb +119 -0
  67. data/lib/moonbase/models/float_value.rb +4 -4
  68. data/lib/moonbase/models/form.rb +18 -45
  69. data/lib/moonbase/models/form_list_params.rb +1 -19
  70. data/lib/moonbase/models/form_retrieve_params.rb +1 -22
  71. data/lib/moonbase/models/formatted_text.rb +19 -0
  72. data/lib/moonbase/models/funnel.rb +34 -0
  73. data/lib/moonbase/models/funnel_step.rb +49 -28
  74. data/lib/moonbase/models/funnel_step_value.rb +25 -0
  75. data/lib/moonbase/models/funnel_step_value_param.rb +41 -0
  76. data/lib/moonbase/models/geo_field.rb +119 -0
  77. data/lib/moonbase/models/geo_value.rb +10 -4
  78. data/lib/moonbase/models/inbox.rb +13 -38
  79. data/lib/moonbase/models/inbox_conversation.rb +77 -100
  80. data/lib/moonbase/models/inbox_conversation_list_params.rb +48 -10
  81. data/lib/moonbase/models/inbox_conversation_retrieve_params.rb +6 -7
  82. data/lib/moonbase/models/inbox_list_params.rb +17 -1
  83. data/lib/moonbase/models/inbox_message_list_params.rb +43 -14
  84. data/lib/moonbase/models/integer_field.rb +120 -0
  85. data/lib/moonbase/models/integer_value.rb +4 -4
  86. data/lib/moonbase/models/item.rb +4 -32
  87. data/lib/moonbase/models/item_pointer.rb +35 -0
  88. data/lib/moonbase/models/meeting.rb +40 -74
  89. data/lib/moonbase/models/monetary_field.rb +119 -0
  90. data/lib/moonbase/models/monetary_value.rb +29 -19
  91. data/lib/moonbase/models/moonbase_file.rb +25 -44
  92. data/lib/moonbase/models/multi_line_text_field.rb +119 -0
  93. data/lib/moonbase/models/multi_line_text_value.rb +10 -4
  94. data/lib/moonbase/models/note.rb +18 -37
  95. data/lib/moonbase/models/organizer.rb +19 -42
  96. data/lib/moonbase/models/percentage_field.rb +119 -0
  97. data/lib/moonbase/models/percentage_value.rb +10 -4
  98. data/lib/moonbase/models/pointer.rb +26 -0
  99. data/lib/moonbase/models/program.rb +56 -77
  100. data/lib/moonbase/models/{program_message_create_response.rb → program_message.rb} +9 -28
  101. data/lib/moonbase/models/{program_message_create_params.rb → program_message_send_params.rb} +5 -5
  102. data/lib/moonbase/models/program_template.rb +16 -41
  103. data/lib/moonbase/models/program_template_retrieve_params.rb +1 -3
  104. data/lib/moonbase/models/relation_field.rb +143 -0
  105. data/lib/moonbase/models/relation_value.rb +6 -10
  106. data/lib/moonbase/models/relation_value_param.rb +41 -0
  107. data/lib/moonbase/models/single_line_text_field.rb +119 -0
  108. data/lib/moonbase/models/single_line_text_value.rb +10 -4
  109. data/lib/moonbase/models/social_linked_in_field.rb +119 -0
  110. data/lib/moonbase/models/social_linked_in_value.rb +26 -15
  111. data/lib/moonbase/models/social_x_field.rb +119 -0
  112. data/lib/moonbase/models/social_x_value.rb +32 -15
  113. data/lib/moonbase/models/stage_field.rb +127 -0
  114. data/lib/moonbase/models/subscription.rb +61 -0
  115. data/lib/moonbase/models/tagset.rb +19 -38
  116. data/lib/moonbase/models/telephone_number.rb +10 -4
  117. data/lib/moonbase/models/telephone_number_field.rb +119 -0
  118. data/lib/moonbase/models/url_field.rb +119 -0
  119. data/lib/moonbase/models/url_value.rb +13 -6
  120. data/lib/moonbase/models/value.rb +5 -5
  121. data/lib/moonbase/models/value_param.rb +170 -0
  122. data/lib/moonbase/models/view.rb +25 -39
  123. data/lib/moonbase/models/webhook_endpoint_create_params.rb +96 -0
  124. data/lib/moonbase/models/{item_delete_params.rb → webhook_endpoint_delete_params.rb} +2 -2
  125. data/lib/moonbase/models/webhook_endpoint_list_params.rb +46 -0
  126. data/lib/moonbase/models/{item_retrieve_params.rb → webhook_endpoint_retrieve_params.rb} +2 -2
  127. data/lib/moonbase/models/webhook_endpoint_update_params.rb +104 -0
  128. data/lib/moonbase/models.rb +115 -11
  129. data/lib/moonbase/resources/activities.rb +2 -2
  130. data/lib/moonbase/resources/calls.rb +51 -5
  131. data/lib/moonbase/resources/collections/fields.rb +1 -1
  132. data/lib/moonbase/resources/collections/items.rb +202 -0
  133. data/lib/moonbase/resources/collections.rb +5 -4
  134. data/lib/moonbase/resources/forms.rb +3 -12
  135. data/lib/moonbase/resources/funnels.rb +14 -0
  136. data/lib/moonbase/resources/inbox_conversations.rb +4 -4
  137. data/lib/moonbase/resources/inbox_messages.rb +2 -4
  138. data/lib/moonbase/resources/inboxes.rb +4 -2
  139. data/lib/moonbase/resources/program_messages.rb +7 -7
  140. data/lib/moonbase/resources/webhook_endpoints.rb +138 -0
  141. data/lib/moonbase/version.rb +1 -1
  142. data/lib/moonbase.rb +68 -9
  143. data/rbi/moonbase/client.rbi +29 -26
  144. data/rbi/moonbase/errors.rbi +2 -2
  145. data/rbi/moonbase/internal/transport/base_client.rbi +1 -1
  146. data/rbi/moonbase/internal/type/converter.rbi +54 -0
  147. data/rbi/moonbase/internal/type/union.rbi +9 -2
  148. data/rbi/moonbase/models/activity.rbi +17 -1950
  149. data/rbi/moonbase/models/activity_call_occurred.rbi +65 -0
  150. data/rbi/moonbase/models/activity_form_submitted.rbi +67 -0
  151. data/rbi/moonbase/models/activity_inbox_message_sent.rbi +65 -0
  152. data/rbi/moonbase/models/activity_item_created.rbi +67 -0
  153. data/rbi/moonbase/models/activity_item_mentioned.rbi +91 -0
  154. data/rbi/moonbase/models/activity_item_merged.rbi +93 -0
  155. data/rbi/moonbase/models/activity_meeting_held.rbi +65 -0
  156. data/rbi/moonbase/models/activity_meeting_scheduled.rbi +65 -0
  157. data/rbi/moonbase/models/activity_note_created.rbi +91 -0
  158. data/rbi/moonbase/models/activity_program_message_bounced.rbi +105 -0
  159. data/rbi/moonbase/models/activity_program_message_clicked.rbi +104 -0
  160. data/rbi/moonbase/models/activity_program_message_complained.rbi +82 -0
  161. data/rbi/moonbase/models/activity_program_message_failed.rbi +93 -0
  162. data/rbi/moonbase/models/activity_program_message_opened.rbi +81 -0
  163. data/rbi/moonbase/models/activity_program_message_sent.rbi +92 -0
  164. data/rbi/moonbase/models/activity_program_message_shielded.rbi +95 -0
  165. data/rbi/moonbase/models/activity_program_message_unsubscribed.rbi +93 -0
  166. data/rbi/moonbase/models/address.rbi +28 -79
  167. data/rbi/moonbase/models/attendee.rbi +23 -63
  168. data/rbi/moonbase/models/boolean_field.rbi +150 -0
  169. data/rbi/moonbase/models/boolean_value.rbi +4 -6
  170. data/rbi/moonbase/models/call.rbi +54 -84
  171. data/rbi/moonbase/models/call_create_params.rbi +176 -47
  172. data/rbi/moonbase/models/call_upsert_params.rbi +392 -0
  173. data/rbi/moonbase/models/choice_field.rbi +160 -0
  174. data/rbi/moonbase/models/choice_field_option.rbi +44 -0
  175. data/rbi/moonbase/models/choice_value.rbi +41 -0
  176. data/rbi/moonbase/models/choice_value_param.rbi +62 -0
  177. data/rbi/moonbase/models/collection.rbi +48 -64
  178. data/rbi/moonbase/models/collection_pointer.rbi +43 -0
  179. data/rbi/moonbase/models/collection_retrieve_params.rbi +2 -9
  180. data/rbi/moonbase/models/collections/item_create_params.rbi +198 -0
  181. data/rbi/moonbase/models/collections/item_delete_params.rbi +40 -0
  182. data/rbi/moonbase/models/collections/item_list_params.rbi +83 -0
  183. data/rbi/moonbase/models/collections/item_retrieve_params.rbi +40 -0
  184. data/rbi/moonbase/models/collections/item_update_params.rbi +323 -0
  185. data/rbi/moonbase/models/collections/item_upsert_params.rbi +477 -0
  186. data/rbi/moonbase/models/date_field.rbi +148 -0
  187. data/rbi/moonbase/models/date_value.rbi +4 -4
  188. data/rbi/moonbase/models/datetime_field.rbi +150 -0
  189. data/rbi/moonbase/models/datetime_value.rbi +4 -4
  190. data/rbi/moonbase/models/domain_field.rbi +150 -0
  191. data/rbi/moonbase/models/domain_value.rbi +9 -4
  192. data/rbi/moonbase/models/email_field.rbi +150 -0
  193. data/rbi/moonbase/models/email_message.rbi +95 -233
  194. data/rbi/moonbase/models/email_value.rbi +9 -4
  195. data/rbi/moonbase/models/endpoint.rbi +121 -0
  196. data/rbi/moonbase/models/error.rbi +4 -0
  197. data/rbi/moonbase/models/field.rbi +28 -460
  198. data/rbi/moonbase/models/field_value.rbi +3 -3
  199. data/rbi/moonbase/models/field_value_param.rbi +237 -0
  200. data/rbi/moonbase/models/float_field.rbi +150 -0
  201. data/rbi/moonbase/models/float_value.rbi +4 -4
  202. data/rbi/moonbase/models/form.rbi +21 -72
  203. data/rbi/moonbase/models/form_list_params.rbi +0 -43
  204. data/rbi/moonbase/models/form_retrieve_params.rbi +4 -55
  205. data/rbi/moonbase/models/formatted_text.rbi +32 -0
  206. data/rbi/moonbase/models/funnel.rbi +48 -0
  207. data/rbi/moonbase/models/funnel_step.rbi +60 -32
  208. data/rbi/moonbase/models/funnel_step_value.rbi +39 -0
  209. data/rbi/moonbase/models/funnel_step_value_param.rbi +57 -0
  210. data/rbi/moonbase/models/geo_field.rbi +148 -0
  211. data/rbi/moonbase/models/geo_value.rbi +11 -4
  212. data/rbi/moonbase/models/inbox.rbi +19 -61
  213. data/rbi/moonbase/models/inbox_conversation.rbi +93 -161
  214. data/rbi/moonbase/models/inbox_conversation_list_params.rbi +135 -15
  215. data/rbi/moonbase/models/inbox_conversation_retrieve_params.rbi +11 -6
  216. data/rbi/moonbase/models/inbox_list_params.rbi +28 -0
  217. data/rbi/moonbase/models/inbox_message_list_params.rbi +116 -20
  218. data/rbi/moonbase/models/integer_field.rbi +152 -0
  219. data/rbi/moonbase/models/integer_value.rbi +4 -4
  220. data/rbi/moonbase/models/item.rbi +52 -57
  221. data/rbi/moonbase/models/item_pointer.rbi +54 -0
  222. data/rbi/moonbase/models/meeting.rbi +52 -113
  223. data/rbi/moonbase/models/monetary_field.rbi +150 -0
  224. data/rbi/moonbase/models/monetary_value.rbi +34 -27
  225. data/rbi/moonbase/models/moonbase_file.rbi +23 -60
  226. data/rbi/moonbase/models/multi_line_text_field.rbi +155 -0
  227. data/rbi/moonbase/models/multi_line_text_value.rbi +11 -4
  228. data/rbi/moonbase/models/note.rbi +23 -60
  229. data/rbi/moonbase/models/organizer.rbi +23 -60
  230. data/rbi/moonbase/models/percentage_field.rbi +151 -0
  231. data/rbi/moonbase/models/percentage_value.rbi +11 -4
  232. data/rbi/moonbase/models/pointer.rbi +32 -0
  233. data/rbi/moonbase/models/program.rbi +70 -137
  234. data/rbi/moonbase/models/{program_message_create_response.rbi → program_message.rbi} +8 -49
  235. data/rbi/moonbase/models/{program_message_create_params.rbi → program_message_send_params.rbi} +7 -12
  236. data/rbi/moonbase/models/program_template.rbi +25 -64
  237. data/rbi/moonbase/models/relation_field.rbi +184 -0
  238. data/rbi/moonbase/models/relation_value.rbi +11 -11
  239. data/rbi/moonbase/models/relation_value_param.rbi +60 -0
  240. data/rbi/moonbase/models/single_line_text_field.rbi +155 -0
  241. data/rbi/moonbase/models/single_line_text_value.rbi +11 -4
  242. data/rbi/moonbase/models/social_linked_in_field.rbi +155 -0
  243. data/rbi/moonbase/models/social_linked_in_value.rbi +30 -23
  244. data/rbi/moonbase/models/social_x_field.rbi +150 -0
  245. data/rbi/moonbase/models/social_x_value.rbi +35 -23
  246. data/rbi/moonbase/models/stage_field.rbi +161 -0
  247. data/rbi/moonbase/models/subscription.rbi +155 -0
  248. data/rbi/moonbase/models/tagset.rbi +22 -62
  249. data/rbi/moonbase/models/telephone_number.rbi +11 -6
  250. data/rbi/moonbase/models/telephone_number_field.rbi +158 -0
  251. data/rbi/moonbase/models/url_field.rbi +148 -0
  252. data/rbi/moonbase/models/url_value.rbi +15 -6
  253. data/rbi/moonbase/models/value.rbi +2 -2
  254. data/rbi/moonbase/models/value_param.rbi +221 -0
  255. data/rbi/moonbase/models/view.rbi +28 -60
  256. data/rbi/moonbase/models/webhook_endpoint_create_params.rbi +269 -0
  257. data/rbi/moonbase/models/{item_retrieve_params.rbi → webhook_endpoint_delete_params.rbi} +5 -2
  258. data/rbi/moonbase/models/webhook_endpoint_list_params.rbi +81 -0
  259. data/rbi/moonbase/models/{item_delete_params.rbi → webhook_endpoint_retrieve_params.rbi} +5 -2
  260. data/rbi/moonbase/models/webhook_endpoint_update_params.rbi +294 -0
  261. data/rbi/moonbase/models.rbi +121 -11
  262. data/rbi/moonbase/resources/calls.rbi +56 -5
  263. data/rbi/moonbase/resources/collections/fields.rbi +1 -1
  264. data/rbi/moonbase/resources/collections/items.rbi +358 -0
  265. data/rbi/moonbase/resources/collections.rbi +4 -2
  266. data/rbi/moonbase/resources/forms.rbi +0 -8
  267. data/rbi/moonbase/resources/funnels.rbi +12 -0
  268. data/rbi/moonbase/resources/inbox_conversations.rbi +4 -5
  269. data/rbi/moonbase/resources/inbox_messages.rbi +2 -6
  270. data/rbi/moonbase/resources/inboxes.rbi +2 -0
  271. data/rbi/moonbase/resources/program_messages.rbi +3 -3
  272. data/rbi/moonbase/resources/webhook_endpoints.rbi +114 -0
  273. data/sig/moonbase/client.rbs +16 -14
  274. data/sig/moonbase/internal/transport/base_client.rbs +1 -1
  275. data/sig/moonbase/internal/type/converter.rbs +17 -0
  276. data/sig/moonbase/internal/type/union.rbs +2 -2
  277. data/sig/moonbase/models/activity.rbs +17 -966
  278. data/sig/moonbase/models/activity_call_occurred.rbs +35 -0
  279. data/sig/moonbase/models/activity_form_submitted.rbs +35 -0
  280. data/sig/moonbase/models/activity_inbox_message_sent.rbs +35 -0
  281. data/sig/moonbase/models/activity_item_created.rbs +35 -0
  282. data/sig/moonbase/models/activity_item_mentioned.rbs +45 -0
  283. data/sig/moonbase/models/activity_item_merged.rbs +45 -0
  284. data/sig/moonbase/models/activity_meeting_held.rbs +35 -0
  285. data/sig/moonbase/models/activity_meeting_scheduled.rbs +35 -0
  286. data/sig/moonbase/models/activity_note_created.rbs +45 -0
  287. data/sig/moonbase/models/activity_program_message_bounced.rbs +54 -0
  288. data/sig/moonbase/models/activity_program_message_clicked.rbs +54 -0
  289. data/sig/moonbase/models/activity_program_message_complained.rbs +40 -0
  290. data/sig/moonbase/models/activity_program_message_failed.rbs +47 -0
  291. data/sig/moonbase/models/activity_program_message_opened.rbs +40 -0
  292. data/sig/moonbase/models/activity_program_message_sent.rbs +47 -0
  293. data/sig/moonbase/models/activity_program_message_shielded.rbs +47 -0
  294. data/sig/moonbase/models/activity_program_message_unsubscribed.rbs +47 -0
  295. data/sig/moonbase/models/address.rbs +16 -43
  296. data/sig/moonbase/models/attendee.rbs +14 -31
  297. data/sig/moonbase/models/boolean_field.rbs +83 -0
  298. data/sig/moonbase/models/boolean_value.rbs +4 -4
  299. data/sig/moonbase/models/call.rbs +31 -70
  300. data/sig/moonbase/models/call_create_params.rbs +85 -38
  301. data/sig/moonbase/models/call_upsert_params.rbs +199 -0
  302. data/sig/moonbase/models/choice_field.rbs +88 -0
  303. data/sig/moonbase/models/choice_field_option.rbs +22 -0
  304. data/sig/moonbase/models/choice_value.rbs +22 -0
  305. data/sig/moonbase/models/choice_value_param.rbs +30 -0
  306. data/sig/moonbase/models/collection.rbs +13 -34
  307. data/sig/moonbase/models/collection_pointer.rbs +17 -0
  308. data/sig/moonbase/models/collection_retrieve_params.rbs +1 -2
  309. data/sig/moonbase/models/collections/item_create_params.rbs +26 -0
  310. data/sig/moonbase/models/collections/item_delete_params.rbs +25 -0
  311. data/sig/moonbase/models/collections/item_list_params.rbs +40 -0
  312. data/sig/moonbase/models/collections/item_retrieve_params.rbs +25 -0
  313. data/sig/moonbase/models/collections/item_update_params.rbs +74 -0
  314. data/sig/moonbase/models/collections/item_upsert_params.rbs +74 -0
  315. data/sig/moonbase/models/date_field.rbs +83 -0
  316. data/sig/moonbase/models/date_value.rbs +4 -4
  317. data/sig/moonbase/models/datetime_field.rbs +83 -0
  318. data/sig/moonbase/models/datetime_value.rbs +4 -4
  319. data/sig/moonbase/models/domain_field.rbs +83 -0
  320. data/sig/moonbase/models/domain_value.rbs +4 -4
  321. data/sig/moonbase/models/email_field.rbs +83 -0
  322. data/sig/moonbase/models/email_message.rbs +49 -131
  323. data/sig/moonbase/models/email_value.rbs +4 -4
  324. data/sig/moonbase/models/endpoint.rbs +68 -0
  325. data/sig/moonbase/models/field.rbs +24 -260
  326. data/sig/moonbase/models/field_value.rbs +2 -2
  327. data/sig/moonbase/models/field_value_param.rbs +109 -0
  328. data/sig/moonbase/models/float_field.rbs +83 -0
  329. data/sig/moonbase/models/float_value.rbs +4 -4
  330. data/sig/moonbase/models/form.rbs +15 -40
  331. data/sig/moonbase/models/form_list_params.rbs +1 -24
  332. data/sig/moonbase/models/form_retrieve_params.rbs +3 -26
  333. data/sig/moonbase/models/formatted_text.rbs +15 -0
  334. data/sig/moonbase/models/funnel.rbs +26 -0
  335. data/sig/moonbase/models/funnel_step.rbs +27 -18
  336. data/sig/moonbase/models/funnel_step_value.rbs +19 -0
  337. data/sig/moonbase/models/funnel_step_value_param.rbs +33 -0
  338. data/sig/moonbase/models/geo_field.rbs +83 -0
  339. data/sig/moonbase/models/geo_value.rbs +4 -4
  340. data/sig/moonbase/models/inbox.rbs +10 -33
  341. data/sig/moonbase/models/inbox_conversation.rbs +48 -82
  342. data/sig/moonbase/models/inbox_conversation_list_params.rbs +65 -8
  343. data/sig/moonbase/models/inbox_conversation_retrieve_params.rbs +4 -3
  344. data/sig/moonbase/models/inbox_list_params.rbs +24 -1
  345. data/sig/moonbase/models/inbox_message_list_params.rbs +61 -12
  346. data/sig/moonbase/models/integer_field.rbs +83 -0
  347. data/sig/moonbase/models/integer_value.rbs +4 -7
  348. data/sig/moonbase/models/item.rbs +4 -31
  349. data/sig/moonbase/models/item_pointer.rbs +26 -0
  350. data/sig/moonbase/models/meeting.rbs +22 -62
  351. data/sig/moonbase/models/monetary_field.rbs +83 -0
  352. data/sig/moonbase/models/monetary_value.rbs +9 -23
  353. data/sig/moonbase/models/moonbase_file.rbs +12 -28
  354. data/sig/moonbase/models/multi_line_text_field.rbs +83 -0
  355. data/sig/moonbase/models/multi_line_text_value.rbs +4 -4
  356. data/sig/moonbase/models/note.rbs +15 -36
  357. data/sig/moonbase/models/organizer.rbs +14 -31
  358. data/sig/moonbase/models/percentage_field.rbs +83 -0
  359. data/sig/moonbase/models/percentage_value.rbs +4 -8
  360. data/sig/moonbase/models/pointer.rbs +15 -0
  361. data/sig/moonbase/models/program.rbs +37 -78
  362. data/sig/moonbase/models/{program_message_create_response.rbs → program_message.rbs} +2 -17
  363. data/sig/moonbase/models/{program_message_create_params.rbs → program_message_send_params.rbs} +6 -6
  364. data/sig/moonbase/models/program_template.rbs +14 -37
  365. data/sig/moonbase/models/relation_field.rbs +99 -0
  366. data/sig/moonbase/models/relation_value.rbs +8 -4
  367. data/sig/moonbase/models/relation_value_param.rbs +33 -0
  368. data/sig/moonbase/models/single_line_text_field.rbs +83 -0
  369. data/sig/moonbase/models/single_line_text_value.rbs +4 -4
  370. data/sig/moonbase/models/social_linked_in_field.rbs +83 -0
  371. data/sig/moonbase/models/social_linked_in_value.rbs +9 -13
  372. data/sig/moonbase/models/social_x_field.rbs +83 -0
  373. data/sig/moonbase/models/social_x_value.rbs +9 -13
  374. data/sig/moonbase/models/stage_field.rbs +88 -0
  375. data/sig/moonbase/models/subscription.rbs +68 -0
  376. data/sig/moonbase/models/tagset.rbs +15 -38
  377. data/sig/moonbase/models/telephone_number.rbs +4 -11
  378. data/sig/moonbase/models/telephone_number_field.rbs +83 -0
  379. data/sig/moonbase/models/url_field.rbs +83 -0
  380. data/sig/moonbase/models/url_value.rbs +5 -5
  381. data/sig/moonbase/models/value.rbs +2 -2
  382. data/sig/moonbase/models/value_param.rbs +106 -0
  383. data/sig/moonbase/models/view.rbs +16 -33
  384. data/sig/moonbase/models/webhook_endpoint_create_params.rbs +111 -0
  385. data/sig/moonbase/models/{item_retrieve_params.rbs → webhook_endpoint_delete_params.rbs} +2 -2
  386. data/sig/moonbase/models/webhook_endpoint_list_params.rbs +38 -0
  387. data/sig/moonbase/models/{item_delete_params.rbs → webhook_endpoint_retrieve_params.rbs} +2 -2
  388. data/sig/moonbase/models/webhook_endpoint_update_params.rbs +124 -0
  389. data/sig/moonbase/models.rbs +116 -12
  390. data/sig/moonbase/resources/calls.rbs +18 -1
  391. data/sig/moonbase/resources/collections/fields.rbs +1 -1
  392. data/sig/moonbase/resources/collections/items.rbs +53 -0
  393. data/sig/moonbase/resources/collections.rbs +2 -0
  394. data/sig/moonbase/resources/forms.rbs +0 -2
  395. data/sig/moonbase/resources/funnels.rbs +7 -0
  396. data/sig/moonbase/resources/inbox_conversations.rbs +1 -1
  397. data/sig/moonbase/resources/inbox_messages.rbs +1 -2
  398. data/sig/moonbase/resources/inboxes.rbs +1 -0
  399. data/sig/moonbase/resources/program_messages.rbs +3 -3
  400. data/sig/moonbase/resources/webhook_endpoints.rbs +36 -0
  401. metadata +206 -29
  402. data/lib/moonbase/models/choice.rb +0 -46
  403. data/lib/moonbase/models/item_create_params.rb +0 -30
  404. data/lib/moonbase/models/item_update_params.rb +0 -61
  405. data/lib/moonbase/models/item_upsert_params.rb +0 -78
  406. data/lib/moonbase/resources/items.rb +0 -142
  407. data/rbi/moonbase/models/choice.rbi +0 -65
  408. data/rbi/moonbase/models/item_create_params.rbi +0 -135
  409. data/rbi/moonbase/models/item_update_params.rbi +0 -236
  410. data/rbi/moonbase/models/item_upsert_params.rbi +0 -338
  411. data/rbi/moonbase/resources/items.rbi +0 -234
  412. data/sig/moonbase/models/choice.rbs +0 -41
  413. data/sig/moonbase/models/item_create_params.rbs +0 -31
  414. data/sig/moonbase/models/item_update_params.rbs +0 -67
  415. data/sig/moonbase/models/item_upsert_params.rbs +0 -77
  416. data/sig/moonbase/resources/items.rbs +0 -40
@@ -0,0 +1,184 @@
1
+ # typed: strong
2
+
3
+ module Moonbase
4
+ module Models
5
+ class RelationField < Moonbase::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Moonbase::RelationField, Moonbase::Internal::AnyHash)
9
+ end
10
+
11
+ # Unique identifier for the object.
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ # Specifies whether the field can hold a single value (`one`) or multiple values
16
+ # (`many`).
17
+ sig { returns(Moonbase::RelationField::Cardinality::TaggedSymbol) }
18
+ attr_accessor :cardinality
19
+
20
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
21
+ sig { returns(Time) }
22
+ attr_accessor :created_at
23
+
24
+ # The human-readable name of the field (e.g., "Account").
25
+ sig { returns(String) }
26
+ attr_accessor :name
27
+
28
+ # If `true`, the value of this field is system-managed and cannot be updated via
29
+ # the API.
30
+ sig { returns(T::Boolean) }
31
+ attr_accessor :readonly
32
+
33
+ # A unique, stable, machine-readable identifier for the field within its
34
+ # collection (e.g., `account`).
35
+ sig { returns(String) }
36
+ attr_accessor :ref
37
+
38
+ # The type of relationship. Can be `one_way` for simple references or `two_way`
39
+ # for bidirectional relationships.
40
+ sig { returns(Moonbase::RelationField::RelationType::TaggedSymbol) }
41
+ attr_accessor :relation_type
42
+
43
+ # If `true`, this field must have a value.
44
+ sig { returns(T::Boolean) }
45
+ attr_accessor :required
46
+
47
+ # The data type of the field. Always `field/relation` for this field.
48
+ sig { returns(Symbol) }
49
+ attr_accessor :type
50
+
51
+ # If `true`, values for this field must be unique across all items in the
52
+ # collection.
53
+ sig { returns(T::Boolean) }
54
+ attr_accessor :unique
55
+
56
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
57
+ sig { returns(Time) }
58
+ attr_accessor :updated_at
59
+
60
+ # An optional, longer-form description of the field's purpose.
61
+ sig { returns(T.nilable(String)) }
62
+ attr_reader :description
63
+
64
+ sig { params(description: String).void }
65
+ attr_writer :description
66
+
67
+ # A field that creates a link between items in different collections, enabling
68
+ # cross-collection relationships.
69
+ sig do
70
+ params(
71
+ id: String,
72
+ cardinality: Moonbase::RelationField::Cardinality::OrSymbol,
73
+ created_at: Time,
74
+ name: String,
75
+ readonly: T::Boolean,
76
+ ref: String,
77
+ relation_type: Moonbase::RelationField::RelationType::OrSymbol,
78
+ required: T::Boolean,
79
+ unique: T::Boolean,
80
+ updated_at: Time,
81
+ description: String,
82
+ type: Symbol
83
+ ).returns(T.attached_class)
84
+ end
85
+ def self.new(
86
+ # Unique identifier for the object.
87
+ id:,
88
+ # Specifies whether the field can hold a single value (`one`) or multiple values
89
+ # (`many`).
90
+ cardinality:,
91
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
92
+ created_at:,
93
+ # The human-readable name of the field (e.g., "Account").
94
+ name:,
95
+ # If `true`, the value of this field is system-managed and cannot be updated via
96
+ # the API.
97
+ readonly:,
98
+ # A unique, stable, machine-readable identifier for the field within its
99
+ # collection (e.g., `account`).
100
+ ref:,
101
+ # The type of relationship. Can be `one_way` for simple references or `two_way`
102
+ # for bidirectional relationships.
103
+ relation_type:,
104
+ # If `true`, this field must have a value.
105
+ required:,
106
+ # If `true`, values for this field must be unique across all items in the
107
+ # collection.
108
+ unique:,
109
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
110
+ updated_at:,
111
+ # An optional, longer-form description of the field's purpose.
112
+ description: nil,
113
+ # The data type of the field. Always `field/relation` for this field.
114
+ type: :"field/relation"
115
+ )
116
+ end
117
+
118
+ sig do
119
+ override.returns(
120
+ {
121
+ id: String,
122
+ cardinality: Moonbase::RelationField::Cardinality::TaggedSymbol,
123
+ created_at: Time,
124
+ name: String,
125
+ readonly: T::Boolean,
126
+ ref: String,
127
+ relation_type: Moonbase::RelationField::RelationType::TaggedSymbol,
128
+ required: T::Boolean,
129
+ type: Symbol,
130
+ unique: T::Boolean,
131
+ updated_at: Time,
132
+ description: String
133
+ }
134
+ )
135
+ end
136
+ def to_hash
137
+ end
138
+
139
+ # Specifies whether the field can hold a single value (`one`) or multiple values
140
+ # (`many`).
141
+ module Cardinality
142
+ extend Moonbase::Internal::Type::Enum
143
+
144
+ TaggedSymbol =
145
+ T.type_alias { T.all(Symbol, Moonbase::RelationField::Cardinality) }
146
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
147
+
148
+ ONE = T.let(:one, Moonbase::RelationField::Cardinality::TaggedSymbol)
149
+ MANY = T.let(:many, Moonbase::RelationField::Cardinality::TaggedSymbol)
150
+
151
+ sig do
152
+ override.returns(
153
+ T::Array[Moonbase::RelationField::Cardinality::TaggedSymbol]
154
+ )
155
+ end
156
+ def self.values
157
+ end
158
+ end
159
+
160
+ # The type of relationship. Can be `one_way` for simple references or `two_way`
161
+ # for bidirectional relationships.
162
+ module RelationType
163
+ extend Moonbase::Internal::Type::Enum
164
+
165
+ TaggedSymbol =
166
+ T.type_alias { T.all(Symbol, Moonbase::RelationField::RelationType) }
167
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
168
+
169
+ ONE_WAY =
170
+ T.let(:one_way, Moonbase::RelationField::RelationType::TaggedSymbol)
171
+ TWO_WAY =
172
+ T.let(:two_way, Moonbase::RelationField::RelationType::TaggedSymbol)
173
+
174
+ sig do
175
+ override.returns(
176
+ T::Array[Moonbase::RelationField::RelationType::TaggedSymbol]
177
+ )
178
+ end
179
+ def self.values
180
+ end
181
+ end
182
+ end
183
+ end
184
+ end
@@ -8,30 +8,30 @@ module Moonbase
8
8
  T.any(Moonbase::RelationValue, Moonbase::Internal::AnyHash)
9
9
  end
10
10
 
11
- # An Item represents a single record or row within a Collection. It holds a set of
12
- # `values` corresponding to the Collection's `fields`.
13
- sig { returns(Moonbase::Item) }
14
- attr_reader :item
11
+ # A reference to another Moonbase item.
12
+ sig { returns(Moonbase::ItemPointer) }
13
+ attr_reader :data
15
14
 
16
- sig { params(item: Moonbase::Item).void }
17
- attr_writer :item
15
+ sig { params(data: Moonbase::ItemPointer::OrHash).void }
16
+ attr_writer :data
18
17
 
19
18
  sig { returns(Symbol) }
20
19
  attr_accessor :type
21
20
 
22
21
  # Related item reference
23
22
  sig do
24
- params(item: Moonbase::Item, type: Symbol).returns(T.attached_class)
23
+ params(data: Moonbase::ItemPointer::OrHash, type: Symbol).returns(
24
+ T.attached_class
25
+ )
25
26
  end
26
27
  def self.new(
27
- # An Item represents a single record or row within a Collection. It holds a set of
28
- # `values` corresponding to the Collection's `fields`.
29
- item:,
28
+ # A reference to another Moonbase item.
29
+ data:,
30
30
  type: :"value/relation"
31
31
  )
32
32
  end
33
33
 
34
- sig { override.returns({ item: Moonbase::Item, type: Symbol }) }
34
+ sig { override.returns({ data: Moonbase::ItemPointer, type: Symbol }) }
35
35
  def to_hash
36
36
  end
37
37
  end
@@ -0,0 +1,60 @@
1
+ # typed: strong
2
+
3
+ module Moonbase
4
+ module Models
5
+ class RelationValueParam < Moonbase::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Moonbase::RelationValueParam, Moonbase::Internal::AnyHash)
9
+ end
10
+
11
+ # A reference to another Moonbase item.
12
+ sig { returns(T.any(Moonbase::ItemPointer, Moonbase::Pointer)) }
13
+ attr_accessor :data
14
+
15
+ sig { returns(Symbol) }
16
+ attr_accessor :type
17
+
18
+ # Related item reference
19
+ sig do
20
+ params(
21
+ data: T.any(Moonbase::ItemPointer::OrHash, Moonbase::Pointer::OrHash),
22
+ type: Symbol
23
+ ).returns(T.attached_class)
24
+ end
25
+ def self.new(
26
+ # A reference to another Moonbase item.
27
+ data:,
28
+ type: :"value/relation"
29
+ )
30
+ end
31
+
32
+ sig do
33
+ override.returns(
34
+ {
35
+ data: T.any(Moonbase::ItemPointer, Moonbase::Pointer),
36
+ type: Symbol
37
+ }
38
+ )
39
+ end
40
+ def to_hash
41
+ end
42
+
43
+ # A reference to another Moonbase item.
44
+ module Data
45
+ extend Moonbase::Internal::Type::Union
46
+
47
+ Variants =
48
+ T.type_alias { T.any(Moonbase::ItemPointer, Moonbase::Pointer) }
49
+
50
+ sig do
51
+ override.returns(
52
+ T::Array[Moonbase::RelationValueParam::Data::Variants]
53
+ )
54
+ end
55
+ def self.variants
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,155 @@
1
+ # typed: strong
2
+
3
+ module Moonbase
4
+ module Models
5
+ class SingleLineTextField < Moonbase::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Moonbase::SingleLineTextField, Moonbase::Internal::AnyHash)
9
+ end
10
+
11
+ # Unique identifier for the object.
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ # Specifies whether the field can hold a single value (`one`) or multiple values
16
+ # (`many`).
17
+ sig { returns(Moonbase::SingleLineTextField::Cardinality::TaggedSymbol) }
18
+ attr_accessor :cardinality
19
+
20
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
21
+ sig { returns(Time) }
22
+ attr_accessor :created_at
23
+
24
+ # The human-readable name of the field (e.g., "Company Name").
25
+ sig { returns(String) }
26
+ attr_accessor :name
27
+
28
+ # If `true`, the value of this field is system-managed and cannot be updated via
29
+ # the API.
30
+ sig { returns(T::Boolean) }
31
+ attr_accessor :readonly
32
+
33
+ # A unique, stable, machine-readable identifier for the field within its
34
+ # collection (e.g., `company_name`).
35
+ sig { returns(String) }
36
+ attr_accessor :ref
37
+
38
+ # If `true`, this field must have a value.
39
+ sig { returns(T::Boolean) }
40
+ attr_accessor :required
41
+
42
+ # The data type of the field. Always `field/text/single_line` for this field.
43
+ sig { returns(Symbol) }
44
+ attr_accessor :type
45
+
46
+ # If `true`, values for this field must be unique across all items in the
47
+ # collection.
48
+ sig { returns(T::Boolean) }
49
+ attr_accessor :unique
50
+
51
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
52
+ sig { returns(Time) }
53
+ attr_accessor :updated_at
54
+
55
+ # An optional, longer-form description of the field's purpose.
56
+ sig { returns(T.nilable(String)) }
57
+ attr_reader :description
58
+
59
+ sig { params(description: String).void }
60
+ attr_writer :description
61
+
62
+ # A field that stores a single line of text without line breaks.
63
+ sig do
64
+ params(
65
+ id: String,
66
+ cardinality: Moonbase::SingleLineTextField::Cardinality::OrSymbol,
67
+ created_at: Time,
68
+ name: String,
69
+ readonly: T::Boolean,
70
+ ref: String,
71
+ required: T::Boolean,
72
+ unique: T::Boolean,
73
+ updated_at: Time,
74
+ description: String,
75
+ type: Symbol
76
+ ).returns(T.attached_class)
77
+ end
78
+ def self.new(
79
+ # Unique identifier for the object.
80
+ id:,
81
+ # Specifies whether the field can hold a single value (`one`) or multiple values
82
+ # (`many`).
83
+ cardinality:,
84
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
85
+ created_at:,
86
+ # The human-readable name of the field (e.g., "Company Name").
87
+ name:,
88
+ # If `true`, the value of this field is system-managed and cannot be updated via
89
+ # the API.
90
+ readonly:,
91
+ # A unique, stable, machine-readable identifier for the field within its
92
+ # collection (e.g., `company_name`).
93
+ ref:,
94
+ # If `true`, this field must have a value.
95
+ required:,
96
+ # If `true`, values for this field must be unique across all items in the
97
+ # collection.
98
+ unique:,
99
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
100
+ updated_at:,
101
+ # An optional, longer-form description of the field's purpose.
102
+ description: nil,
103
+ # The data type of the field. Always `field/text/single_line` for this field.
104
+ type: :"field/text/single_line"
105
+ )
106
+ end
107
+
108
+ sig do
109
+ override.returns(
110
+ {
111
+ id: String,
112
+ cardinality:
113
+ Moonbase::SingleLineTextField::Cardinality::TaggedSymbol,
114
+ created_at: Time,
115
+ name: String,
116
+ readonly: T::Boolean,
117
+ ref: String,
118
+ required: T::Boolean,
119
+ type: Symbol,
120
+ unique: T::Boolean,
121
+ updated_at: Time,
122
+ description: String
123
+ }
124
+ )
125
+ end
126
+ def to_hash
127
+ end
128
+
129
+ # Specifies whether the field can hold a single value (`one`) or multiple values
130
+ # (`many`).
131
+ module Cardinality
132
+ extend Moonbase::Internal::Type::Enum
133
+
134
+ TaggedSymbol =
135
+ T.type_alias do
136
+ T.all(Symbol, Moonbase::SingleLineTextField::Cardinality)
137
+ end
138
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
139
+
140
+ ONE =
141
+ T.let(:one, Moonbase::SingleLineTextField::Cardinality::TaggedSymbol)
142
+ MANY =
143
+ T.let(:many, Moonbase::SingleLineTextField::Cardinality::TaggedSymbol)
144
+
145
+ sig do
146
+ override.returns(
147
+ T::Array[Moonbase::SingleLineTextField::Cardinality::TaggedSymbol]
148
+ )
149
+ end
150
+ def self.values
151
+ end
152
+ end
153
+ end
154
+ end
155
+ end
@@ -8,18 +8,25 @@ module Moonbase
8
8
  T.any(Moonbase::SingleLineTextValue, Moonbase::Internal::AnyHash)
9
9
  end
10
10
 
11
+ # A single line of text, up to 1024 characters long. It should not contain line
12
+ # breaks.
11
13
  sig { returns(String) }
12
- attr_accessor :text
14
+ attr_accessor :data
13
15
 
14
16
  sig { returns(Symbol) }
15
17
  attr_accessor :type
16
18
 
17
19
  # A single line of text
18
- sig { params(text: String, type: Symbol).returns(T.attached_class) }
19
- def self.new(text:, type: :"value/text/single_line")
20
+ sig { params(data: String, type: Symbol).returns(T.attached_class) }
21
+ def self.new(
22
+ # A single line of text, up to 1024 characters long. It should not contain line
23
+ # breaks.
24
+ data:,
25
+ type: :"value/text/single_line"
26
+ )
20
27
  end
21
28
 
22
- sig { override.returns({ text: String, type: Symbol }) }
29
+ sig { override.returns({ data: String, type: Symbol }) }
23
30
  def to_hash
24
31
  end
25
32
  end
@@ -0,0 +1,155 @@
1
+ # typed: strong
2
+
3
+ module Moonbase
4
+ module Models
5
+ class SocialLinkedInField < Moonbase::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Moonbase::SocialLinkedInField, Moonbase::Internal::AnyHash)
9
+ end
10
+
11
+ # Unique identifier for the object.
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ # Specifies whether the field can hold a single value (`one`) or multiple values
16
+ # (`many`).
17
+ sig { returns(Moonbase::SocialLinkedInField::Cardinality::TaggedSymbol) }
18
+ attr_accessor :cardinality
19
+
20
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
21
+ sig { returns(Time) }
22
+ attr_accessor :created_at
23
+
24
+ # The human-readable name of the field (e.g., "LinkedIn Profile").
25
+ sig { returns(String) }
26
+ attr_accessor :name
27
+
28
+ # If `true`, the value of this field is system-managed and cannot be updated via
29
+ # the API.
30
+ sig { returns(T::Boolean) }
31
+ attr_accessor :readonly
32
+
33
+ # A unique, stable, machine-readable identifier for the field within its
34
+ # collection (e.g., `linkedin_profile`).
35
+ sig { returns(String) }
36
+ attr_accessor :ref
37
+
38
+ # If `true`, this field must have a value.
39
+ sig { returns(T::Boolean) }
40
+ attr_accessor :required
41
+
42
+ # The data type of the field. Always `field/uri/social_linked_in` for this field.
43
+ sig { returns(Symbol) }
44
+ attr_accessor :type
45
+
46
+ # If `true`, values for this field must be unique across all items in the
47
+ # collection.
48
+ sig { returns(T::Boolean) }
49
+ attr_accessor :unique
50
+
51
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
52
+ sig { returns(Time) }
53
+ attr_accessor :updated_at
54
+
55
+ # An optional, longer-form description of the field's purpose.
56
+ sig { returns(T.nilable(String)) }
57
+ attr_reader :description
58
+
59
+ sig { params(description: String).void }
60
+ attr_writer :description
61
+
62
+ # A field that stores LinkedIn profile information.
63
+ sig do
64
+ params(
65
+ id: String,
66
+ cardinality: Moonbase::SocialLinkedInField::Cardinality::OrSymbol,
67
+ created_at: Time,
68
+ name: String,
69
+ readonly: T::Boolean,
70
+ ref: String,
71
+ required: T::Boolean,
72
+ unique: T::Boolean,
73
+ updated_at: Time,
74
+ description: String,
75
+ type: Symbol
76
+ ).returns(T.attached_class)
77
+ end
78
+ def self.new(
79
+ # Unique identifier for the object.
80
+ id:,
81
+ # Specifies whether the field can hold a single value (`one`) or multiple values
82
+ # (`many`).
83
+ cardinality:,
84
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
85
+ created_at:,
86
+ # The human-readable name of the field (e.g., "LinkedIn Profile").
87
+ name:,
88
+ # If `true`, the value of this field is system-managed and cannot be updated via
89
+ # the API.
90
+ readonly:,
91
+ # A unique, stable, machine-readable identifier for the field within its
92
+ # collection (e.g., `linkedin_profile`).
93
+ ref:,
94
+ # If `true`, this field must have a value.
95
+ required:,
96
+ # If `true`, values for this field must be unique across all items in the
97
+ # collection.
98
+ unique:,
99
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
100
+ updated_at:,
101
+ # An optional, longer-form description of the field's purpose.
102
+ description: nil,
103
+ # The data type of the field. Always `field/uri/social_linked_in` for this field.
104
+ type: :"field/uri/social_linked_in"
105
+ )
106
+ end
107
+
108
+ sig do
109
+ override.returns(
110
+ {
111
+ id: String,
112
+ cardinality:
113
+ Moonbase::SocialLinkedInField::Cardinality::TaggedSymbol,
114
+ created_at: Time,
115
+ name: String,
116
+ readonly: T::Boolean,
117
+ ref: String,
118
+ required: T::Boolean,
119
+ type: Symbol,
120
+ unique: T::Boolean,
121
+ updated_at: Time,
122
+ description: String
123
+ }
124
+ )
125
+ end
126
+ def to_hash
127
+ end
128
+
129
+ # Specifies whether the field can hold a single value (`one`) or multiple values
130
+ # (`many`).
131
+ module Cardinality
132
+ extend Moonbase::Internal::Type::Enum
133
+
134
+ TaggedSymbol =
135
+ T.type_alias do
136
+ T.all(Symbol, Moonbase::SocialLinkedInField::Cardinality)
137
+ end
138
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
139
+
140
+ ONE =
141
+ T.let(:one, Moonbase::SocialLinkedInField::Cardinality::TaggedSymbol)
142
+ MANY =
143
+ T.let(:many, Moonbase::SocialLinkedInField::Cardinality::TaggedSymbol)
144
+
145
+ sig do
146
+ override.returns(
147
+ T::Array[Moonbase::SocialLinkedInField::Cardinality::TaggedSymbol]
148
+ )
149
+ end
150
+ def self.values
151
+ end
152
+ end
153
+ end
154
+ end
155
+ end