linq-python 0.37.1__tar.gz → 0.38.0__tar.gz

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 (268) hide show
  1. linq_python-0.38.0/.release-please-manifest.json +3 -0
  2. {linq_python-0.37.1 → linq_python-0.38.0}/CHANGELOG.md +7 -0
  3. {linq_python-0.37.1 → linq_python-0.38.0}/PKG-INFO +1 -1
  4. {linq_python-0.37.1 → linq_python-0.38.0}/pyproject.toml +1 -1
  5. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_version.py +1 -1
  6. linq_python-0.38.0/src/linq/types/schemas_text_part_response.py +76 -0
  7. linq_python-0.38.0/src/linq/types/shared/text_part_response.py +80 -0
  8. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/text_part_param.py +1 -1
  9. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_webhooks.py +2 -2
  10. {linq_python-0.37.1 → linq_python-0.38.0}/uv.lock +1 -1
  11. linq_python-0.37.1/.release-please-manifest.json +0 -3
  12. linq_python-0.37.1/src/linq/types/schemas_text_part_response.py +0 -36
  13. linq_python-0.37.1/src/linq/types/shared/text_part_response.py +0 -40
  14. {linq_python-0.37.1 → linq_python-0.38.0}/.gitignore +0 -0
  15. {linq_python-0.37.1 → linq_python-0.38.0}/CONTRIBUTING.md +0 -0
  16. {linq_python-0.37.1 → linq_python-0.38.0}/LICENSE +0 -0
  17. {linq_python-0.37.1 → linq_python-0.38.0}/README.md +0 -0
  18. {linq_python-0.37.1 → linq_python-0.38.0}/SECURITY.md +0 -0
  19. {linq_python-0.37.1 → linq_python-0.38.0}/api.md +0 -0
  20. {linq_python-0.37.1 → linq_python-0.38.0}/bin/check-release-environment +0 -0
  21. {linq_python-0.37.1 → linq_python-0.38.0}/bin/publish-pypi +0 -0
  22. {linq_python-0.37.1 → linq_python-0.38.0}/examples/.keep +0 -0
  23. {linq_python-0.37.1 → linq_python-0.38.0}/release-please-config.json +0 -0
  24. {linq_python-0.37.1 → linq_python-0.38.0}/requirements-dev.lock +0 -0
  25. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/__init__.py +0 -0
  26. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_base_client.py +0 -0
  27. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_client.py +0 -0
  28. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_compat.py +0 -0
  29. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_constants.py +0 -0
  30. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_exceptions.py +0 -0
  31. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_files.py +0 -0
  32. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_models.py +0 -0
  33. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_qs.py +0 -0
  34. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_resource.py +0 -0
  35. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_response.py +0 -0
  36. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_streaming.py +0 -0
  37. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_types.py +0 -0
  38. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/__init__.py +0 -0
  39. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_compat.py +0 -0
  40. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_datetime_parse.py +0 -0
  41. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_json.py +0 -0
  42. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_logs.py +0 -0
  43. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_path.py +0 -0
  44. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_proxy.py +0 -0
  45. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_reflection.py +0 -0
  46. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_resources_proxy.py +0 -0
  47. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_streams.py +0 -0
  48. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_sync.py +0 -0
  49. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_transform.py +0 -0
  50. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_typing.py +0 -0
  51. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/_utils/_utils.py +0 -0
  52. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/lib/.keep +0 -0
  53. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/pagination.py +0 -0
  54. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/py.typed +0 -0
  55. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/__init__.py +0 -0
  56. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/attachments.py +0 -0
  57. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/available_number.py +0 -0
  58. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/blocked_handles.py +0 -0
  59. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/capability.py +0 -0
  60. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/chats/__init__.py +0 -0
  61. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/chats/background.py +0 -0
  62. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/chats/chats.py +0 -0
  63. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/chats/location.py +0 -0
  64. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/chats/messages.py +0 -0
  65. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/chats/participants.py +0 -0
  66. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/chats/polls.py +0 -0
  67. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/chats/typing.py +0 -0
  68. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/contact_card.py +0 -0
  69. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/experiences.py +0 -0
  70. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/messages/__init__.py +0 -0
  71. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/messages/messages.py +0 -0
  72. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/messages/poll.py +0 -0
  73. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/payment_handles.py +0 -0
  74. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/payment_providers.py +0 -0
  75. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/payment_requests.py +0 -0
  76. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/payments.py +0 -0
  77. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/phone_numbers.py +0 -0
  78. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/phonenumbers.py +0 -0
  79. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/webhook_events.py +0 -0
  80. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/webhook_subscriptions.py +0 -0
  81. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/resources/webhooks.py +0 -0
  82. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/__init__.py +0 -0
  83. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/attachment_create_params.py +0 -0
  84. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/attachment_create_response.py +0 -0
  85. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/attachment_retrieve_response.py +0 -0
  86. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/available_number_retrieve_params.py +0 -0
  87. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/available_number_retrieve_response.py +0 -0
  88. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/blocked_handle_block_params.py +0 -0
  89. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/blocked_handle_block_response.py +0 -0
  90. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/blocked_handle_entry.py +0 -0
  91. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/blocked_handle_list_response.py +0 -0
  92. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/blocked_handle_unblock_params.py +0 -0
  93. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/capability_check_RCS_params.py +0 -0
  94. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/capability_check_i_message_params.py +0 -0
  95. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat.py +0 -0
  96. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_background_update_failed_webhook_event.py +0 -0
  97. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_background_updated_webhook_event.py +0 -0
  98. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_create_params.py +0 -0
  99. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_create_response.py +0 -0
  100. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_created_webhook_event.py +0 -0
  101. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_group_icon_update_failed_webhook_event.py +0 -0
  102. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_group_icon_updated_webhook_event.py +0 -0
  103. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_group_name_update_failed_webhook_event.py +0 -0
  104. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_group_name_updated_webhook_event.py +0 -0
  105. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_leave_chat_response.py +0 -0
  106. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_list_chats_params.py +0 -0
  107. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_send_voicememo_params.py +0 -0
  108. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_send_voicememo_response.py +0 -0
  109. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_typing_indicator_started_webhook_event.py +0 -0
  110. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_typing_indicator_stopped_webhook_event.py +0 -0
  111. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_update_params.py +0 -0
  112. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chat_update_response.py +0 -0
  113. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/__init__.py +0 -0
  114. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/background_set_params.py +0 -0
  115. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/get_chat_location_response.py +0 -0
  116. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/location_request_response.py +0 -0
  117. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/message_list_params.py +0 -0
  118. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/message_send_params.py +0 -0
  119. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/message_send_response.py +0 -0
  120. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/participant_add_params.py +0 -0
  121. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/participant_add_response.py +0 -0
  122. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/participant_remove_params.py +0 -0
  123. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/participant_remove_response.py +0 -0
  124. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/poll.py +0 -0
  125. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/poll_create_params.py +0 -0
  126. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/poll_envelope.py +0 -0
  127. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/chats/sent_message.py +0 -0
  128. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/contact_card_create_params.py +0 -0
  129. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/contact_card_retrieve_params.py +0 -0
  130. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/contact_card_retrieve_response.py +0 -0
  131. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/contact_card_update_params.py +0 -0
  132. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/experience_list_response.py +0 -0
  133. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/experience_retrieve_response.py +0 -0
  134. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/handle_check_response.py +0 -0
  135. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/link_part_param.py +0 -0
  136. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/media_part_param.py +0 -0
  137. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message.py +0 -0
  138. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_add_reaction_params.py +0 -0
  139. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_add_reaction_response.py +0 -0
  140. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_content_param.py +0 -0
  141. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_create_params.py +0 -0
  142. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_create_response.py +0 -0
  143. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_delivered_webhook_event.py +0 -0
  144. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_edited_webhook_event.py +0 -0
  145. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_effect.py +0 -0
  146. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_effect_param.py +0 -0
  147. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_event_v2.py +0 -0
  148. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_failed_webhook_event.py +0 -0
  149. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_list_messages_thread_params.py +0 -0
  150. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_read_webhook_event.py +0 -0
  151. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_received_webhook_event.py +0 -0
  152. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_sent_webhook_event.py +0 -0
  153. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_update_app_card_params.py +0 -0
  154. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_update_app_card_response.py +0 -0
  155. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/message_update_params.py +0 -0
  156. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/messages/__init__.py +0 -0
  157. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/messages/poll_add_options_params.py +0 -0
  158. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/messages/poll_vote_params.py +0 -0
  159. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/participant_added_webhook_event.py +0 -0
  160. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/participant_removed_webhook_event.py +0 -0
  161. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment.py +0 -0
  162. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_create_params.py +0 -0
  163. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_credentials_response.py +0 -0
  164. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_handle_connection.py +0 -0
  165. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_handle_verify_params.py +0 -0
  166. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_provider.py +0 -0
  167. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_provider_connect_params.py +0 -0
  168. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_provider_connect_response.py +0 -0
  169. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_request.py +0 -0
  170. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_request_create_params.py +0 -0
  171. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_request_list_params.py +0 -0
  172. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/payment_request_list_response.py +0 -0
  173. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/phone_number_list_response.py +0 -0
  174. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/phone_number_status_updated_webhook_event.py +0 -0
  175. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/phone_number_update_params.py +0 -0
  176. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/phone_number_update_response.py +0 -0
  177. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/phonenumber_list_response.py +0 -0
  178. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_delivered_webhook_event.py +0 -0
  179. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_failed_webhook_event.py +0 -0
  180. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_reaction_added_webhook_event.py +0 -0
  181. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_read_webhook_event.py +0 -0
  182. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_received_webhook_event.py +0 -0
  183. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_sent_webhook_event.py +0 -0
  184. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_updated_webhook_event.py +0 -0
  185. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_vote_added_webhook_event.py +0 -0
  186. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/poll_vote_removed_webhook_event.py +0 -0
  187. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reaction_added_webhook_event.py +0 -0
  188. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reaction_event_base.py +0 -0
  189. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reaction_removed_webhook_event.py +0 -0
  190. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reply_to.py +0 -0
  191. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reply_to_param.py +0 -0
  192. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_action_item.py +0 -0
  193. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_audit.py +0 -0
  194. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_audit_started.py +0 -0
  195. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_driver.py +0 -0
  196. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_driver_key.py +0 -0
  197. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_evidence.py +0 -0
  198. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_opt_out_chat.py +0 -0
  199. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_report.py +0 -0
  200. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/reputation_unhealthy_chat.py +0 -0
  201. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/schemas_media_part_response.py +0 -0
  202. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/schemas_message_effect.py +0 -0
  203. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/set_contact_card.py +0 -0
  204. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared/__init__.py +0 -0
  205. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared/chat_handle.py +0 -0
  206. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared/link_part_response.py +0 -0
  207. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared/media_part_response.py +0 -0
  208. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared/reaction.py +0 -0
  209. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared/reaction_type.py +0 -0
  210. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared/service_type.py +0 -0
  211. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared/text_decoration.py +0 -0
  212. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared_params/__init__.py +0 -0
  213. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared_params/reaction_type.py +0 -0
  214. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared_params/service_type.py +0 -0
  215. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/shared_params/text_decoration.py +0 -0
  216. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/supported_content_type.py +0 -0
  217. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/unwrap_webhook_event.py +0 -0
  218. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/webhook_event_list_response.py +0 -0
  219. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/webhook_event_type.py +0 -0
  220. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/webhook_subscription.py +0 -0
  221. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/webhook_subscription_create_params.py +0 -0
  222. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/webhook_subscription_create_response.py +0 -0
  223. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/webhook_subscription_list_response.py +0 -0
  224. {linq_python-0.37.1 → linq_python-0.38.0}/src/linq/types/webhook_subscription_update_params.py +0 -0
  225. {linq_python-0.37.1 → linq_python-0.38.0}/tests/__init__.py +0 -0
  226. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/__init__.py +0 -0
  227. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/chats/__init__.py +0 -0
  228. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/chats/test_background.py +0 -0
  229. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/chats/test_location.py +0 -0
  230. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/chats/test_messages.py +0 -0
  231. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/chats/test_participants.py +0 -0
  232. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/chats/test_polls.py +0 -0
  233. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/chats/test_typing.py +0 -0
  234. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/messages/__init__.py +0 -0
  235. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/messages/test_poll.py +0 -0
  236. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_attachments.py +0 -0
  237. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_available_number.py +0 -0
  238. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_blocked_handles.py +0 -0
  239. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_capability.py +0 -0
  240. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_chats.py +0 -0
  241. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_contact_card.py +0 -0
  242. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_experiences.py +0 -0
  243. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_messages.py +0 -0
  244. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_payment_handles.py +0 -0
  245. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_payment_providers.py +0 -0
  246. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_payment_requests.py +0 -0
  247. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_payments.py +0 -0
  248. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_phone_numbers.py +0 -0
  249. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_phonenumbers.py +0 -0
  250. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_webhook_events.py +0 -0
  251. {linq_python-0.37.1 → linq_python-0.38.0}/tests/api_resources/test_webhook_subscriptions.py +0 -0
  252. {linq_python-0.37.1 → linq_python-0.38.0}/tests/conftest.py +0 -0
  253. {linq_python-0.37.1 → linq_python-0.38.0}/tests/sample_file.txt +0 -0
  254. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_client.py +0 -0
  255. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_extract_files.py +0 -0
  256. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_files.py +0 -0
  257. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_models.py +0 -0
  258. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_qs.py +0 -0
  259. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_required_args.py +0 -0
  260. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_response.py +0 -0
  261. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_streaming.py +0 -0
  262. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_transform.py +0 -0
  263. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_utils/test_datetime_parse.py +0 -0
  264. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_utils/test_json.py +0 -0
  265. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_utils/test_path.py +0 -0
  266. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_utils/test_proxy.py +0 -0
  267. {linq_python-0.37.1 → linq_python-0.38.0}/tests/test_utils/test_typing.py +0 -0
  268. {linq_python-0.37.1 → linq_python-0.38.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.38.0"
3
+ }
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.38.0](https://github.com/linq-team/linq-python/compare/v0.37.1...v0.38.0) (2026-09-01)
4
+
5
+
6
+ ### Features
7
+
8
+ * add mentions array to text parts, deprecate singular mention fields ([de49b5c](https://github.com/linq-team/linq-python/commit/de49b5cc2db3cf5be4e6a87c3c938c8cc6237d25))
9
+
3
10
  ## [0.37.1](https://github.com/linq-team/linq-python/compare/v0.37.0...v0.37.1) (2026-08-31)
4
11
 
5
12
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: linq-python
3
- Version: 0.37.1
3
+ Version: 0.38.0
4
4
  Summary: The official Python library for the linq-api-v3 API
5
5
  Project-URL: Homepage, https://github.com/linq-team/linq-python
6
6
  Project-URL: Repository, https://github.com/linq-team/linq-python
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "linq-python"
3
- version = "0.37.1"
3
+ version = "0.38.0"
4
4
  description = "The official Python library for the linq-api-v3 API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "linq"
4
- __version__ = "0.37.1" # x-release-please-version
4
+ __version__ = "0.38.0" # x-release-please-version
@@ -0,0 +1,76 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from typing_extensions import Literal
5
+
6
+ from .._models import BaseModel
7
+ from .shared.text_decoration import TextDecoration
8
+
9
+ __all__ = ["SchemasTextPartResponse", "Mention"]
10
+
11
+
12
+ class Mention(BaseModel):
13
+ """
14
+ One mention on a text part — who was mentioned, and which characters of `value` are
15
+ the mention. A part carries one of these per mention, in the order they appear in the
16
+ text, so a message naming two people has two entries.
17
+ """
18
+
19
+ handle: str
20
+ """
21
+ Address of the mentioned participant, exactly as the device recorded it — an
22
+ E.164 phone number or an email address.
23
+ """
24
+
25
+ is_me: bool
26
+ """Whether the mentioned participant is this line."""
27
+
28
+ range: List[int]
29
+ """
30
+ Character range `[start, end)` in `value` highlighted as this mention.
31
+ _Characters are measured as UTF-16 code units. Most characters count as 1; some
32
+ emoji count as 2._
33
+ """
34
+
35
+
36
+ class SchemasTextPartResponse(BaseModel):
37
+ """A text message part"""
38
+
39
+ type: Literal["text"]
40
+ """Indicates this is a text message part"""
41
+
42
+ value: str
43
+ """The text content"""
44
+
45
+ mention: Optional[str] = None
46
+ """DEPRECATED: Use `mentions` instead.
47
+
48
+ Handle (E.164 phone number or Apple ID email) of the **first** mention on this
49
+ part. A part may carry several mentions; this field shows only the first in
50
+ `value` order, so it cannot be used to determine whether a given participant was
51
+ mentioned. `null` when the part carries no mention.
52
+ """
53
+
54
+ mention_range: Optional[List[int]] = None
55
+ """DEPRECATED: Use `mentions[].range` instead.
56
+
57
+ Character range `[start, end)` in `value` highlighted as the **first** mention
58
+ only. `null` when the range was omitted (the whole `value` is highlighted) or
59
+ the part carries no mention. _Characters are measured as UTF-16 code units. Most
60
+ characters count as 1; some emoji count as 2._
61
+ """
62
+
63
+ mentions: Optional[List[Mention]] = None
64
+ """Every mention on this part, in the order they appear in `value`.
65
+
66
+ `null` when the part carries no mention. A part can carry several mentions of
67
+ different people — check `is_me` to tell whether this line was one of them.
68
+
69
+ Only iMessage carries mentions. On a received message this is populated when the
70
+ sender was on iMessage; SMS and RCS have no way to mark a mention, so a message
71
+ from an SMS or RCS participant arrives as plain text with `mentions` null, even
72
+ in a group where other participants are on iMessage.
73
+ """
74
+
75
+ text_decorations: Optional[List[TextDecoration]] = None
76
+ """Text decorations applied to character ranges in the value"""
@@ -0,0 +1,80 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from typing_extensions import Literal
5
+
6
+ from .reaction import Reaction
7
+ from ..._models import BaseModel
8
+ from .text_decoration import TextDecoration
9
+
10
+ __all__ = ["TextPartResponse", "Mention"]
11
+
12
+
13
+ class Mention(BaseModel):
14
+ """
15
+ One mention on a text part — who was mentioned, and which characters of `value` are
16
+ the mention. A part carries one of these per mention, in the order they appear in the
17
+ text, so a message naming two people has two entries.
18
+ """
19
+
20
+ handle: str
21
+ """
22
+ Address of the mentioned participant, exactly as the device recorded it — an
23
+ E.164 phone number or an email address.
24
+ """
25
+
26
+ is_me: bool
27
+ """Whether the mentioned participant is this line."""
28
+
29
+ range: List[int]
30
+ """
31
+ Character range `[start, end)` in `value` highlighted as this mention.
32
+ _Characters are measured as UTF-16 code units. Most characters count as 1; some
33
+ emoji count as 2._
34
+ """
35
+
36
+
37
+ class TextPartResponse(BaseModel):
38
+ """A text message part"""
39
+
40
+ reactions: Optional[List[Reaction]] = None
41
+ """Reactions on this message part"""
42
+
43
+ type: Literal["text"]
44
+ """Indicates this is a text message part"""
45
+
46
+ value: str
47
+ """The text content"""
48
+
49
+ mention: Optional[str] = None
50
+ """DEPRECATED: Use `mentions` instead.
51
+
52
+ Handle (E.164 phone number or Apple ID email) of the **first** mention on this
53
+ part. A part may carry several mentions; this field shows only the first in
54
+ `value` order, so it cannot be used to determine whether a given participant was
55
+ mentioned. `null` when the part carries no mention.
56
+ """
57
+
58
+ mention_range: Optional[List[int]] = None
59
+ """DEPRECATED: Use `mentions[].range` instead.
60
+
61
+ Character range `[start, end)` in `value` highlighted as the **first** mention
62
+ only. `null` when the range was omitted (the whole `value` is highlighted) or
63
+ the part carries no mention. _Characters are measured as UTF-16 code units. Most
64
+ characters count as 1; some emoji count as 2._
65
+ """
66
+
67
+ mentions: Optional[List[Mention]] = None
68
+ """Every mention on this part, in the order they appear in `value`.
69
+
70
+ `null` when the part carries no mention. A part can carry several mentions of
71
+ different people — check `is_me` to tell whether this line was one of them.
72
+
73
+ Only iMessage carries mentions. On a received message this is populated when the
74
+ sender was on iMessage; SMS and RCS have no way to mark a mention, so a message
75
+ from an SMS or RCS participant arrives as plain text with `mentions` null, even
76
+ in a group where other participants are on iMessage.
77
+ """
78
+
79
+ text_decorations: Optional[List[TextDecoration]] = None
80
+ """Text decorations applied to character ranges in the value"""
@@ -23,7 +23,7 @@ class TextPartParam(TypedDict, total=False):
23
23
  """
24
24
 
25
25
  mention: str
26
- """@mention a chat participant.
26
+ """Mention a chat participant.
27
27
 
28
28
  Group chats only — sending a mention to a direct chat is rejected with `409` /
29
29
  `2023`. The chat's service is not a constraint: a mention is accepted in any
@@ -31,7 +31,7 @@ class TestWebhooks:
31
31
 
32
32
  client = client.with_options(webhook_secret=client_opt)
33
33
 
34
- data = """{"api_version":"v3","created_at":"2025-11-23T17:30:00Z","data":{"id":"550e8400-e29b-41d4-a716-446655440001","chat":{"id":"550e8400-e29b-41d4-a716-446655440000","health_status":{"doc_url":"https://docs.linqapp.com/guides/chats/chat-health#at-risk","status":"AT_RISK","updated_at":"2026-05-01T18:28:25Z"},"is_group":true,"owner_handle":{"id":"550e8400-e29b-41d4-a716-446655440000","handle":"+15551234567","joined_at":"2025-05-21T15:30:00.000-05:00","service":"iMessage","is_me":false,"left_at":"2019-12-27T18:11:19.117Z","status":"active"}},"direction":"outbound","parts":[{"type":"text","value":"Hello!","mention":"+14155551234","mention_range":[4,9],"text_decorations":[{"range":[0,5],"animation":"shake","style":"bold"}]}],"sender_handle":{"id":"550e8400-e29b-41d4-a716-446655440000","handle":"+15551234567","joined_at":"2025-05-21T15:30:00.000-05:00","service":"iMessage","is_me":false,"left_at":"2019-12-27T18:11:19.117Z","status":"active"},"service":"iMessage","delivered_at":"2026-01-30T20:49:20.352Z","effect":{"name":"gentle","type":"bubble"},"idempotency_key":"unique-key","preferred_service":"iMessage","read_at":null,"reconciled_at":"2026-01-30T22:05:00.000Z","reply_to":{"message_id":"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e","part_index":0},"sent_at":"2026-01-30T20:49:19.704Z"},"event_id":"550e8400-e29b-41d4-a716-446655440000","event_type":"message.sent","partner_id":"partner_abc123","trace_id":"abc123def456","webhook_version":"2025-01-01"}"""
34
+ data = """{"api_version":"v3","created_at":"2025-11-23T17:30:00Z","data":{"id":"550e8400-e29b-41d4-a716-446655440001","chat":{"id":"550e8400-e29b-41d4-a716-446655440000","health_status":{"doc_url":"https://docs.linqapp.com/guides/chats/chat-health#at-risk","status":"AT_RISK","updated_at":"2026-05-01T18:28:25Z"},"is_group":true,"owner_handle":{"id":"550e8400-e29b-41d4-a716-446655440000","handle":"+15551234567","joined_at":"2025-05-21T15:30:00.000-05:00","service":"iMessage","is_me":false,"left_at":"2019-12-27T18:11:19.117Z","status":"active"}},"direction":"outbound","parts":[{"type":"text","value":"Hello!","mention":"+14155551234","mention_range":[4,9],"mentions":[{"handle":"+14155550123","is_me":true,"range":[4,9]}],"text_decorations":[{"range":[0,5],"animation":"shake","style":"bold"}]}],"sender_handle":{"id":"550e8400-e29b-41d4-a716-446655440000","handle":"+15551234567","joined_at":"2025-05-21T15:30:00.000-05:00","service":"iMessage","is_me":false,"left_at":"2019-12-27T18:11:19.117Z","status":"active"},"service":"iMessage","delivered_at":"2026-01-30T20:49:20.352Z","effect":{"name":"gentle","type":"bubble"},"idempotency_key":"unique-key","preferred_service":"iMessage","read_at":null,"reconciled_at":"2026-01-30T22:05:00.000Z","reply_to":{"message_id":"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e","part_index":0},"sent_at":"2026-01-30T20:49:19.704Z"},"event_id":"550e8400-e29b-41d4-a716-446655440000","event_type":"message.sent","partner_id":"partner_abc123","trace_id":"abc123def456","webhook_version":"2025-01-01"}"""
35
35
  msg_id = "1"
36
36
  timestamp = datetime.now(tz=timezone.utc)
37
37
  sig = hook.sign(msg_id=msg_id, timestamp=timestamp, data=data)
@@ -78,7 +78,7 @@ class TestAsyncWebhooks:
78
78
 
79
79
  async_client = async_client.with_options(webhook_secret=client_opt)
80
80
 
81
- data = """{"api_version":"v3","created_at":"2025-11-23T17:30:00Z","data":{"id":"550e8400-e29b-41d4-a716-446655440001","chat":{"id":"550e8400-e29b-41d4-a716-446655440000","health_status":{"doc_url":"https://docs.linqapp.com/guides/chats/chat-health#at-risk","status":"AT_RISK","updated_at":"2026-05-01T18:28:25Z"},"is_group":true,"owner_handle":{"id":"550e8400-e29b-41d4-a716-446655440000","handle":"+15551234567","joined_at":"2025-05-21T15:30:00.000-05:00","service":"iMessage","is_me":false,"left_at":"2019-12-27T18:11:19.117Z","status":"active"}},"direction":"outbound","parts":[{"type":"text","value":"Hello!","mention":"+14155551234","mention_range":[4,9],"text_decorations":[{"range":[0,5],"animation":"shake","style":"bold"}]}],"sender_handle":{"id":"550e8400-e29b-41d4-a716-446655440000","handle":"+15551234567","joined_at":"2025-05-21T15:30:00.000-05:00","service":"iMessage","is_me":false,"left_at":"2019-12-27T18:11:19.117Z","status":"active"},"service":"iMessage","delivered_at":"2026-01-30T20:49:20.352Z","effect":{"name":"gentle","type":"bubble"},"idempotency_key":"unique-key","preferred_service":"iMessage","read_at":null,"reconciled_at":"2026-01-30T22:05:00.000Z","reply_to":{"message_id":"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e","part_index":0},"sent_at":"2026-01-30T20:49:19.704Z"},"event_id":"550e8400-e29b-41d4-a716-446655440000","event_type":"message.sent","partner_id":"partner_abc123","trace_id":"abc123def456","webhook_version":"2025-01-01"}"""
81
+ data = """{"api_version":"v3","created_at":"2025-11-23T17:30:00Z","data":{"id":"550e8400-e29b-41d4-a716-446655440001","chat":{"id":"550e8400-e29b-41d4-a716-446655440000","health_status":{"doc_url":"https://docs.linqapp.com/guides/chats/chat-health#at-risk","status":"AT_RISK","updated_at":"2026-05-01T18:28:25Z"},"is_group":true,"owner_handle":{"id":"550e8400-e29b-41d4-a716-446655440000","handle":"+15551234567","joined_at":"2025-05-21T15:30:00.000-05:00","service":"iMessage","is_me":false,"left_at":"2019-12-27T18:11:19.117Z","status":"active"}},"direction":"outbound","parts":[{"type":"text","value":"Hello!","mention":"+14155551234","mention_range":[4,9],"mentions":[{"handle":"+14155550123","is_me":true,"range":[4,9]}],"text_decorations":[{"range":[0,5],"animation":"shake","style":"bold"}]}],"sender_handle":{"id":"550e8400-e29b-41d4-a716-446655440000","handle":"+15551234567","joined_at":"2025-05-21T15:30:00.000-05:00","service":"iMessage","is_me":false,"left_at":"2019-12-27T18:11:19.117Z","status":"active"},"service":"iMessage","delivered_at":"2026-01-30T20:49:20.352Z","effect":{"name":"gentle","type":"bubble"},"idempotency_key":"unique-key","preferred_service":"iMessage","read_at":null,"reconciled_at":"2026-01-30T22:05:00.000Z","reply_to":{"message_id":"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e","part_index":0},"sent_at":"2026-01-30T20:49:19.704Z"},"event_id":"550e8400-e29b-41d4-a716-446655440000","event_type":"message.sent","partner_id":"partner_abc123","trace_id":"abc123def456","webhook_version":"2025-01-01"}"""
82
82
  msg_id = "1"
83
83
  timestamp = datetime.now(tz=timezone.utc)
84
84
  sig = hook.sign(msg_id=msg_id, timestamp=timestamp, data=data)
@@ -530,7 +530,7 @@ wheels = [
530
530
 
531
531
  [[package]]
532
532
  name = "linq-python"
533
- version = "0.37.0"
533
+ version = "0.37.1"
534
534
  source = { editable = "." }
535
535
  dependencies = [
536
536
  { name = "anyio" },
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.37.1"
3
- }
@@ -1,36 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing import List, Optional
4
- from typing_extensions import Literal
5
-
6
- from .._models import BaseModel
7
- from .shared.text_decoration import TextDecoration
8
-
9
- __all__ = ["SchemasTextPartResponse"]
10
-
11
-
12
- class SchemasTextPartResponse(BaseModel):
13
- """A text message part"""
14
-
15
- type: Literal["text"]
16
- """Indicates this is a text message part"""
17
-
18
- value: str
19
- """The text content"""
20
-
21
- mention: Optional[str] = None
22
- """
23
- Handle (E.164 phone number or Apple ID email) of the @mentioned chat
24
- participant, as sent. `null` when the part carries no mention.
25
- """
26
-
27
- mention_range: Optional[List[int]] = None
28
- """
29
- Character range `[start, end)` in `value` highlighted as the mention, as sent.
30
- `null` when the send omitted it (the whole `value` is highlighted) or the part
31
- carries no mention. _Characters are measured as UTF-16 code units. Most
32
- characters count as 1; some emoji count as 2._
33
- """
34
-
35
- text_decorations: Optional[List[TextDecoration]] = None
36
- """Text decorations applied to character ranges in the value"""
@@ -1,40 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing import List, Optional
4
- from typing_extensions import Literal
5
-
6
- from .reaction import Reaction
7
- from ..._models import BaseModel
8
- from .text_decoration import TextDecoration
9
-
10
- __all__ = ["TextPartResponse"]
11
-
12
-
13
- class TextPartResponse(BaseModel):
14
- """A text message part"""
15
-
16
- reactions: Optional[List[Reaction]] = None
17
- """Reactions on this message part"""
18
-
19
- type: Literal["text"]
20
- """Indicates this is a text message part"""
21
-
22
- value: str
23
- """The text content"""
24
-
25
- mention: Optional[str] = None
26
- """
27
- Handle (E.164 phone number or Apple ID email) of the @mentioned chat
28
- participant, as sent. `null` when the part carries no mention.
29
- """
30
-
31
- mention_range: Optional[List[int]] = None
32
- """
33
- Character range `[start, end)` in `value` highlighted as the mention, as sent.
34
- `null` when the send omitted it (the whole `value` is highlighted) or the part
35
- carries no mention. _Characters are measured as UTF-16 code units. Most
36
- characters count as 1; some emoji count as 2._
37
- """
38
-
39
- text_decorations: Optional[List[TextDecoration]] = None
40
- """Text decorations applied to character ranges in the value"""
File without changes
File without changes
File without changes
File without changes
File without changes