@atproto/ozone 0.0.2

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 (444) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/LICENSE.txt +7 -0
  3. package/README.md +15 -0
  4. package/babel.config.js +3 -0
  5. package/bin/migration-create.ts +38 -0
  6. package/build.js +18 -0
  7. package/dist/api/admin/emitModerationEvent.d.ts +3 -0
  8. package/dist/api/admin/getModerationEvent.d.ts +3 -0
  9. package/dist/api/admin/getRecord.d.ts +3 -0
  10. package/dist/api/admin/getRepo.d.ts +3 -0
  11. package/dist/api/admin/queryModerationEvents.d.ts +3 -0
  12. package/dist/api/admin/queryModerationStatuses.d.ts +3 -0
  13. package/dist/api/admin/searchRepos.d.ts +3 -0
  14. package/dist/api/admin/util.d.ts +5 -0
  15. package/dist/api/com/atproto/admin/emitModerationEvent.d.ts +3 -0
  16. package/dist/api/com/atproto/admin/getModerationEvent.d.ts +3 -0
  17. package/dist/api/com/atproto/admin/getRecord.d.ts +3 -0
  18. package/dist/api/com/atproto/admin/getRepo.d.ts +3 -0
  19. package/dist/api/com/atproto/admin/queryModerationEvents.d.ts +3 -0
  20. package/dist/api/com/atproto/admin/queryModerationStatuses.d.ts +3 -0
  21. package/dist/api/com/atproto/admin/searchRepos.d.ts +3 -0
  22. package/dist/api/com/atproto/admin/util.d.ts +5 -0
  23. package/dist/api/com/atproto/moderation/createReport.d.ts +3 -0
  24. package/dist/api/com/atproto/moderation/util.d.ts +4 -0
  25. package/dist/api/com/atproto/temp/fetchLabels.d.ts +3 -0
  26. package/dist/api/health.d.ts +3 -0
  27. package/dist/api/index.d.ts +5 -0
  28. package/dist/api/label/queryLabels.d.ts +3 -0
  29. package/dist/api/label/subscribeLabels.d.ts +3 -0
  30. package/dist/api/moderation/createReport.d.ts +3 -0
  31. package/dist/api/moderation/util.d.ts +4 -0
  32. package/dist/api/temp/fetchLabels.d.ts +3 -0
  33. package/dist/api/util.d.ts +2 -0
  34. package/dist/api/well-known.d.ts +3 -0
  35. package/dist/auth-verifier.d.ts +47 -0
  36. package/dist/auth.d.ts +81 -0
  37. package/dist/background.d.ts +13 -0
  38. package/dist/config/config.d.ts +30 -0
  39. package/dist/config/env.d.ts +19 -0
  40. package/dist/config/index.d.ts +3 -0
  41. package/dist/config/secrets.d.ts +8 -0
  42. package/dist/config.d.ts +42 -0
  43. package/dist/context.d.ts +140 -0
  44. package/dist/daemon/config.d.ts +23 -0
  45. package/dist/daemon/context.d.ts +25 -0
  46. package/dist/daemon/event-pusher.d.ts +48 -0
  47. package/dist/daemon/event-reverser.d.ts +16 -0
  48. package/dist/daemon/index.d.ts +13 -0
  49. package/dist/db/index.d.ts +32 -0
  50. package/dist/db/index.js +33707 -0
  51. package/dist/db/index.js.map +7 -0
  52. package/dist/db/migrations/20231219T205730722Z-init.d.ts +3 -0
  53. package/dist/db/migrations/index.d.ts +1 -0
  54. package/dist/db/migrations/provider.d.ts +11 -0
  55. package/dist/db/pagination.d.ts +66 -0
  56. package/dist/db/schema/blob_push_event.d.ts +17 -0
  57. package/dist/db/schema/index.d.ts +10 -0
  58. package/dist/db/schema/label.d.ts +12 -0
  59. package/dist/db/schema/moderation_event.d.ts +22 -0
  60. package/dist/db/schema/moderation_subject_status.d.ts +25 -0
  61. package/dist/db/schema/record_push_event.d.ts +17 -0
  62. package/dist/db/schema/repo_push_event.d.ts +15 -0
  63. package/dist/db/types.d.ts +12 -0
  64. package/dist/error.d.ts +2 -0
  65. package/dist/index.d.ts +27 -0
  66. package/dist/index.js +131818 -0
  67. package/dist/index.js.map +7 -0
  68. package/dist/lexicon/index.d.ts +372 -0
  69. package/dist/lexicon/lexicons.d.ts +7553 -0
  70. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +104 -0
  71. package/dist/lexicon/types/app/bsky/actor/getPreferences.d.ts +31 -0
  72. package/dist/lexicon/types/app/bsky/actor/getProfile.d.ts +29 -0
  73. package/dist/lexicon/types/app/bsky/actor/getProfiles.d.ts +32 -0
  74. package/dist/lexicon/types/app/bsky/actor/getSuggestions.d.ts +34 -0
  75. package/dist/lexicon/types/app/bsky/actor/profile.d.ts +15 -0
  76. package/dist/lexicon/types/app/bsky/actor/putPreferences.d.ts +26 -0
  77. package/dist/lexicon/types/app/bsky/actor/searchActors.d.ts +36 -0
  78. package/dist/lexicon/types/app/bsky/actor/searchActorsTypeahead.d.ts +34 -0
  79. package/dist/lexicon/types/app/bsky/embed/external.d.ts +31 -0
  80. package/dist/lexicon/types/app/bsky/embed/images.d.ts +37 -0
  81. package/dist/lexicon/types/app/bsky/embed/record.d.ts +54 -0
  82. package/dist/lexicon/types/app/bsky/embed/recordWithMedia.d.ts +24 -0
  83. package/dist/lexicon/types/app/bsky/feed/defs.d.ts +151 -0
  84. package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.d.ts +46 -0
  85. package/dist/lexicon/types/app/bsky/feed/generator.d.ts +18 -0
  86. package/dist/lexicon/types/app/bsky/feed/getActorFeeds.d.ts +35 -0
  87. package/dist/lexicon/types/app/bsky/feed/getActorLikes.d.ts +36 -0
  88. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts +37 -0
  89. package/dist/lexicon/types/app/bsky/feed/getFeed.d.ts +36 -0
  90. package/dist/lexicon/types/app/bsky/feed/getFeedGenerator.d.ts +34 -0
  91. package/dist/lexicon/types/app/bsky/feed/getFeedGenerators.d.ts +32 -0
  92. package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.d.ts +36 -0
  93. package/dist/lexicon/types/app/bsky/feed/getLikes.d.ts +47 -0
  94. package/dist/lexicon/types/app/bsky/feed/getListFeed.d.ts +36 -0
  95. package/dist/lexicon/types/app/bsky/feed/getPostThread.d.ts +38 -0
  96. package/dist/lexicon/types/app/bsky/feed/getPosts.d.ts +32 -0
  97. package/dist/lexicon/types/app/bsky/feed/getRepostedBy.d.ts +38 -0
  98. package/dist/lexicon/types/app/bsky/feed/getSuggestedFeeds.d.ts +34 -0
  99. package/dist/lexicon/types/app/bsky/feed/getTimeline.d.ts +35 -0
  100. package/dist/lexicon/types/app/bsky/feed/like.d.ts +9 -0
  101. package/dist/lexicon/types/app/bsky/feed/post.d.ts +50 -0
  102. package/dist/lexicon/types/app/bsky/feed/repost.d.ts +9 -0
  103. package/dist/lexicon/types/app/bsky/feed/searchPosts.d.ts +37 -0
  104. package/dist/lexicon/types/app/bsky/feed/threadgate.d.ts +28 -0
  105. package/dist/lexicon/types/app/bsky/graph/block.d.ts +8 -0
  106. package/dist/lexicon/types/app/bsky/graph/defs.d.ts +47 -0
  107. package/dist/lexicon/types/app/bsky/graph/follow.d.ts +8 -0
  108. package/dist/lexicon/types/app/bsky/graph/getBlocks.d.ts +34 -0
  109. package/dist/lexicon/types/app/bsky/graph/getFollowers.d.ts +36 -0
  110. package/dist/lexicon/types/app/bsky/graph/getFollows.d.ts +36 -0
  111. package/dist/lexicon/types/app/bsky/graph/getList.d.ts +36 -0
  112. package/dist/lexicon/types/app/bsky/graph/getListBlocks.d.ts +34 -0
  113. package/dist/lexicon/types/app/bsky/graph/getListMutes.d.ts +34 -0
  114. package/dist/lexicon/types/app/bsky/graph/getLists.d.ts +35 -0
  115. package/dist/lexicon/types/app/bsky/graph/getMutes.d.ts +34 -0
  116. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts +32 -0
  117. package/dist/lexicon/types/app/bsky/graph/list.d.ts +19 -0
  118. package/dist/lexicon/types/app/bsky/graph/listblock.d.ts +8 -0
  119. package/dist/lexicon/types/app/bsky/graph/listitem.d.ts +9 -0
  120. package/dist/lexicon/types/app/bsky/graph/muteActor.d.ts +25 -0
  121. package/dist/lexicon/types/app/bsky/graph/muteActorList.d.ts +25 -0
  122. package/dist/lexicon/types/app/bsky/graph/unmuteActor.d.ts +25 -0
  123. package/dist/lexicon/types/app/bsky/graph/unmuteActorList.d.ts +25 -0
  124. package/dist/lexicon/types/app/bsky/moderation/defs.d.ts +49 -0
  125. package/dist/lexicon/types/app/bsky/moderation/getService.d.ts +29 -0
  126. package/dist/lexicon/types/app/bsky/moderation/getServices.d.ts +32 -0
  127. package/dist/lexicon/types/app/bsky/moderation/service.d.ts +17 -0
  128. package/dist/lexicon/types/app/bsky/notification/getUnreadCount.d.ts +31 -0
  129. package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts +52 -0
  130. package/dist/lexicon/types/app/bsky/notification/registerPush.d.ts +28 -0
  131. package/dist/lexicon/types/app/bsky/notification/updateSeen.d.ts +25 -0
  132. package/dist/lexicon/types/app/bsky/richtext/facet.d.ts +36 -0
  133. package/dist/lexicon/types/app/bsky/unspecced/defs.d.ts +13 -0
  134. package/dist/lexicon/types/app/bsky/unspecced/getPopular.d.ts +35 -0
  135. package/dist/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.d.ts +35 -0
  136. package/dist/lexicon/types/app/bsky/unspecced/getTimelineSkeleton.d.ts +35 -0
  137. package/dist/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.d.ts +38 -0
  138. package/dist/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.d.ts +37 -0
  139. package/dist/lexicon/types/com/atproto/admin/defs.d.ts +319 -0
  140. package/dist/lexicon/types/com/atproto/admin/deleteAccount.d.ts +25 -0
  141. package/dist/lexicon/types/com/atproto/admin/disableAccountInvites.d.ts +26 -0
  142. package/dist/lexicon/types/com/atproto/admin/disableInviteCodes.d.ts +26 -0
  143. package/dist/lexicon/types/com/atproto/admin/emitModerationEvent.d.ts +45 -0
  144. package/dist/lexicon/types/com/atproto/admin/enableAccountInvites.d.ts +26 -0
  145. package/dist/lexicon/types/com/atproto/admin/getAccountInfo.d.ts +29 -0
  146. package/dist/lexicon/types/com/atproto/admin/getAccountInfos.d.ts +32 -0
  147. package/dist/lexicon/types/com/atproto/admin/getInviteCodes.d.ts +35 -0
  148. package/dist/lexicon/types/com/atproto/admin/getModerationEvent.d.ts +29 -0
  149. package/dist/lexicon/types/com/atproto/admin/getRecord.d.ts +31 -0
  150. package/dist/lexicon/types/com/atproto/admin/getRepo.d.ts +30 -0
  151. package/dist/lexicon/types/com/atproto/admin/getSubjectStatus.d.ts +39 -0
  152. package/dist/lexicon/types/com/atproto/admin/queryModerationEvents.d.ts +39 -0
  153. package/dist/lexicon/types/com/atproto/admin/queryModerationStatuses.d.ts +48 -0
  154. package/dist/lexicon/types/com/atproto/admin/searchRepos.d.ts +36 -0
  155. package/dist/lexicon/types/com/atproto/admin/sendEmail.d.ts +40 -0
  156. package/dist/lexicon/types/com/atproto/admin/updateAccountEmail.d.ts +26 -0
  157. package/dist/lexicon/types/com/atproto/admin/updateAccountHandle.d.ts +26 -0
  158. package/dist/lexicon/types/com/atproto/admin/updateSubjectStatus.d.ts +46 -0
  159. package/dist/lexicon/types/com/atproto/identity/resolveHandle.d.ts +31 -0
  160. package/dist/lexicon/types/com/atproto/identity/updateHandle.d.ts +25 -0
  161. package/dist/lexicon/types/com/atproto/label/defs.d.ts +24 -0
  162. package/dist/lexicon/types/com/atproto/label/queryLabels.d.ts +36 -0
  163. package/dist/lexicon/types/com/atproto/label/subscribeLabels.d.ts +36 -0
  164. package/dist/lexicon/types/com/atproto/moderation/createReport.d.ts +52 -0
  165. package/dist/lexicon/types/com/atproto/moderation/defs.d.ts +8 -0
  166. package/dist/lexicon/types/com/atproto/repo/applyWrites.d.ts +53 -0
  167. package/dist/lexicon/types/com/atproto/repo/createRecord.d.ts +43 -0
  168. package/dist/lexicon/types/com/atproto/repo/deleteRecord.d.ts +30 -0
  169. package/dist/lexicon/types/com/atproto/repo/describeRepo.d.ts +35 -0
  170. package/dist/lexicon/types/com/atproto/repo/getRecord.d.ts +36 -0
  171. package/dist/lexicon/types/com/atproto/repo/listRecords.d.ts +47 -0
  172. package/dist/lexicon/types/com/atproto/repo/putRecord.d.ts +44 -0
  173. package/dist/lexicon/types/com/atproto/repo/strongRef.d.ts +8 -0
  174. package/dist/lexicon/types/com/atproto/repo/uploadBlob.d.ts +36 -0
  175. package/dist/lexicon/types/com/atproto/server/confirmEmail.d.ts +27 -0
  176. package/dist/lexicon/types/com/atproto/server/createAccount.d.ts +49 -0
  177. package/dist/lexicon/types/com/atproto/server/createAppPassword.d.ts +43 -0
  178. package/dist/lexicon/types/com/atproto/server/createInviteCode.d.ts +37 -0
  179. package/dist/lexicon/types/com/atproto/server/createInviteCodes.d.ts +46 -0
  180. package/dist/lexicon/types/com/atproto/server/createSession.d.ts +44 -0
  181. package/dist/lexicon/types/com/atproto/server/defs.d.ts +20 -0
  182. package/dist/lexicon/types/com/atproto/server/deleteAccount.d.ts +28 -0
  183. package/dist/lexicon/types/com/atproto/server/deleteSession.d.ts +19 -0
  184. package/dist/lexicon/types/com/atproto/server/describeServer.d.ts +41 -0
  185. package/dist/lexicon/types/com/atproto/server/getAccountInviteCodes.d.ts +34 -0
  186. package/dist/lexicon/types/com/atproto/server/getSession.d.ts +34 -0
  187. package/dist/lexicon/types/com/atproto/server/listAppPasswords.d.ts +39 -0
  188. package/dist/lexicon/types/com/atproto/server/refreshSession.d.ts +35 -0
  189. package/dist/lexicon/types/com/atproto/server/requestAccountDelete.d.ts +19 -0
  190. package/dist/lexicon/types/com/atproto/server/requestEmailConfirmation.d.ts +19 -0
  191. package/dist/lexicon/types/com/atproto/server/requestEmailUpdate.d.ts +30 -0
  192. package/dist/lexicon/types/com/atproto/server/requestPasswordReset.d.ts +25 -0
  193. package/dist/lexicon/types/com/atproto/server/reserveSigningKey.d.ts +36 -0
  194. package/dist/lexicon/types/com/atproto/server/resetPassword.d.ts +27 -0
  195. package/dist/lexicon/types/com/atproto/server/revokeAppPassword.d.ts +25 -0
  196. package/dist/lexicon/types/com/atproto/server/updateEmail.d.ts +27 -0
  197. package/dist/lexicon/types/com/atproto/sync/getBlob.d.ts +30 -0
  198. package/dist/lexicon/types/com/atproto/sync/getBlocks.d.ts +30 -0
  199. package/dist/lexicon/types/com/atproto/sync/getCheckout.d.ts +29 -0
  200. package/dist/lexicon/types/com/atproto/sync/getHead.d.ts +32 -0
  201. package/dist/lexicon/types/com/atproto/sync/getLatestCommit.d.ts +33 -0
  202. package/dist/lexicon/types/com/atproto/sync/getRecord.d.ts +32 -0
  203. package/dist/lexicon/types/com/atproto/sync/getRepo.d.ts +30 -0
  204. package/dist/lexicon/types/com/atproto/sync/listBlobs.d.ts +35 -0
  205. package/dist/lexicon/types/com/atproto/sync/listRepos.d.ts +42 -0
  206. package/dist/lexicon/types/com/atproto/sync/notifyOfUpdate.d.ts +25 -0
  207. package/dist/lexicon/types/com/atproto/sync/requestCrawl.d.ts +25 -0
  208. package/dist/lexicon/types/com/atproto/sync/subscribeRepos.d.ts +80 -0
  209. package/dist/lexicon/types/com/atproto/temp/fetchLabels.d.ts +33 -0
  210. package/dist/lexicon/types/com/atproto/temp/importRepo.d.ts +32 -0
  211. package/dist/lexicon/types/com/atproto/temp/pushBlob.d.ts +25 -0
  212. package/dist/lexicon/types/com/atproto/temp/requestPhoneVerification.d.ts +25 -0
  213. package/dist/lexicon/types/com/atproto/temp/transferAccount.d.ts +42 -0
  214. package/dist/lexicon/util.d.ts +2 -0
  215. package/dist/logger.d.ts +4 -0
  216. package/dist/mod-service/index.d.ts +155 -0
  217. package/dist/mod-service/status.d.ts +12 -0
  218. package/dist/mod-service/subject.d.ts +59 -0
  219. package/dist/mod-service/types.d.ts +19 -0
  220. package/dist/mod-service/views.d.ts +49 -0
  221. package/dist/sequencer/index.d.ts +2 -0
  222. package/dist/sequencer/outbox.d.ts +16 -0
  223. package/dist/sequencer/sequencer.d.ts +35 -0
  224. package/dist/services/index.d.ts +7 -0
  225. package/dist/services/moderation/index.d.ts +144 -0
  226. package/dist/services/moderation/status.d.ts +12 -0
  227. package/dist/services/moderation/subject.d.ts +60 -0
  228. package/dist/services/moderation/types.d.ts +19 -0
  229. package/dist/services/moderation/views.d.ts +42 -0
  230. package/dist/services/types.d.ts +2 -0
  231. package/dist/util/date.d.ts +1 -0
  232. package/dist/util/debug.d.ts +1 -0
  233. package/dist/util/retry.d.ts +3 -0
  234. package/dist/util.d.ts +3 -0
  235. package/jest.config.js +6 -0
  236. package/package.json +67 -0
  237. package/src/api/admin/emitModerationEvent.ts +130 -0
  238. package/src/api/admin/getModerationEvent.ts +19 -0
  239. package/src/api/admin/getRecord.ts +34 -0
  240. package/src/api/admin/getRepo.ts +31 -0
  241. package/src/api/admin/queryModerationEvents.ts +40 -0
  242. package/src/api/admin/queryModerationStatuses.ts +57 -0
  243. package/src/api/admin/searchRepos.ts +42 -0
  244. package/src/api/admin/util.ts +54 -0
  245. package/src/api/health.ts +20 -0
  246. package/src/api/index.ts +28 -0
  247. package/src/api/moderation/createReport.ts +41 -0
  248. package/src/api/moderation/util.ts +65 -0
  249. package/src/api/temp/fetchLabels.ts +29 -0
  250. package/src/api/well-known.ts +35 -0
  251. package/src/auth.ts +147 -0
  252. package/src/background.ts +35 -0
  253. package/src/config/config.ts +84 -0
  254. package/src/config/env.ts +41 -0
  255. package/src/config/index.ts +3 -0
  256. package/src/config/secrets.ts +23 -0
  257. package/src/context.ts +180 -0
  258. package/src/daemon/context.ts +90 -0
  259. package/src/daemon/event-pusher.ts +296 -0
  260. package/src/daemon/event-reverser.ts +74 -0
  261. package/src/daemon/index.ts +33 -0
  262. package/src/db/index.ts +197 -0
  263. package/src/db/migrations/20231219T205730722Z-init.ts +164 -0
  264. package/src/db/migrations/index.ts +5 -0
  265. package/src/db/migrations/provider.ts +25 -0
  266. package/src/db/pagination.ts +216 -0
  267. package/src/db/schema/blob_push_event.ts +21 -0
  268. package/src/db/schema/index.ts +18 -0
  269. package/src/db/schema/label.ts +12 -0
  270. package/src/db/schema/moderation_event.ts +35 -0
  271. package/src/db/schema/moderation_subject_status.ts +32 -0
  272. package/src/db/schema/record_push_event.ts +21 -0
  273. package/src/db/schema/repo_push_event.ts +19 -0
  274. package/src/db/types.ts +15 -0
  275. package/src/error.ts +12 -0
  276. package/src/index.ts +102 -0
  277. package/src/lexicon/index.ts +1626 -0
  278. package/src/lexicon/lexicons.ts +8050 -0
  279. package/src/lexicon/types/app/bsky/actor/defs.ts +235 -0
  280. package/src/lexicon/types/app/bsky/actor/getPreferences.ts +44 -0
  281. package/src/lexicon/types/app/bsky/actor/getProfile.ts +41 -0
  282. package/src/lexicon/types/app/bsky/actor/getProfiles.ts +46 -0
  283. package/src/lexicon/types/app/bsky/actor/getSuggestions.ts +48 -0
  284. package/src/lexicon/types/app/bsky/actor/profile.ts +32 -0
  285. package/src/lexicon/types/app/bsky/actor/putPreferences.ts +39 -0
  286. package/src/lexicon/types/app/bsky/actor/searchActors.ts +52 -0
  287. package/src/lexicon/types/app/bsky/actor/searchActorsTypeahead.ts +50 -0
  288. package/src/lexicon/types/app/bsky/embed/external.ts +82 -0
  289. package/src/lexicon/types/app/bsky/embed/images.ts +96 -0
  290. package/src/lexicon/types/app/bsky/embed/record.ts +120 -0
  291. package/src/lexicon/types/app/bsky/embed/recordWithMedia.ts +53 -0
  292. package/src/lexicon/types/app/bsky/feed/defs.ts +308 -0
  293. package/src/lexicon/types/app/bsky/feed/describeFeedGenerator.ts +80 -0
  294. package/src/lexicon/types/app/bsky/feed/generator.ts +35 -0
  295. package/src/lexicon/types/app/bsky/feed/getActorFeeds.ts +49 -0
  296. package/src/lexicon/types/app/bsky/feed/getActorLikes.ts +50 -0
  297. package/src/lexicon/types/app/bsky/feed/getAuthorFeed.ts +56 -0
  298. package/src/lexicon/types/app/bsky/feed/getFeed.ts +50 -0
  299. package/src/lexicon/types/app/bsky/feed/getFeedGenerator.ts +48 -0
  300. package/src/lexicon/types/app/bsky/feed/getFeedGenerators.ts +46 -0
  301. package/src/lexicon/types/app/bsky/feed/getFeedSkeleton.ts +50 -0
  302. package/src/lexicon/types/app/bsky/feed/getLikes.ts +69 -0
  303. package/src/lexicon/types/app/bsky/feed/getListFeed.ts +50 -0
  304. package/src/lexicon/types/app/bsky/feed/getPostThread.ts +53 -0
  305. package/src/lexicon/types/app/bsky/feed/getPosts.ts +46 -0
  306. package/src/lexicon/types/app/bsky/feed/getRepostedBy.ts +52 -0
  307. package/src/lexicon/types/app/bsky/feed/getSuggestedFeeds.ts +48 -0
  308. package/src/lexicon/types/app/bsky/feed/getTimeline.ts +49 -0
  309. package/src/lexicon/types/app/bsky/feed/like.ts +26 -0
  310. package/src/lexicon/types/app/bsky/feed/post.ts +102 -0
  311. package/src/lexicon/types/app/bsky/feed/repost.ts +27 -0
  312. package/src/lexicon/types/app/bsky/feed/searchPosts.ts +54 -0
  313. package/src/lexicon/types/app/bsky/feed/threadgate.ts +84 -0
  314. package/src/lexicon/types/app/bsky/graph/block.ts +26 -0
  315. package/src/lexicon/types/app/bsky/graph/defs.ts +104 -0
  316. package/src/lexicon/types/app/bsky/graph/follow.ts +26 -0
  317. package/src/lexicon/types/app/bsky/graph/getBlocks.ts +48 -0
  318. package/src/lexicon/types/app/bsky/graph/getFollowers.ts +50 -0
  319. package/src/lexicon/types/app/bsky/graph/getFollows.ts +50 -0
  320. package/src/lexicon/types/app/bsky/graph/getList.ts +50 -0
  321. package/src/lexicon/types/app/bsky/graph/getListBlocks.ts +48 -0
  322. package/src/lexicon/types/app/bsky/graph/getListMutes.ts +48 -0
  323. package/src/lexicon/types/app/bsky/graph/getLists.ts +49 -0
  324. package/src/lexicon/types/app/bsky/graph/getMutes.ts +48 -0
  325. package/src/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.ts +46 -0
  326. package/src/lexicon/types/app/bsky/graph/list.ts +36 -0
  327. package/src/lexicon/types/app/bsky/graph/listblock.ts +26 -0
  328. package/src/lexicon/types/app/bsky/graph/listitem.ts +27 -0
  329. package/src/lexicon/types/app/bsky/graph/muteActor.ts +38 -0
  330. package/src/lexicon/types/app/bsky/graph/muteActorList.ts +38 -0
  331. package/src/lexicon/types/app/bsky/graph/unmuteActor.ts +38 -0
  332. package/src/lexicon/types/app/bsky/graph/unmuteActorList.ts +38 -0
  333. package/src/lexicon/types/app/bsky/notification/getUnreadCount.ts +45 -0
  334. package/src/lexicon/types/app/bsky/notification/listNotifications.ts +87 -0
  335. package/src/lexicon/types/app/bsky/notification/registerPush.ts +41 -0
  336. package/src/lexicon/types/app/bsky/notification/updateSeen.ts +38 -0
  337. package/src/lexicon/types/app/bsky/richtext/facet.ts +97 -0
  338. package/src/lexicon/types/app/bsky/unspecced/defs.ts +41 -0
  339. package/src/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.ts +49 -0
  340. package/src/lexicon/types/app/bsky/unspecced/getTimelineSkeleton.ts +49 -0
  341. package/src/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.ts +56 -0
  342. package/src/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.ts +54 -0
  343. package/src/lexicon/types/com/atproto/admin/defs.ts +719 -0
  344. package/src/lexicon/types/com/atproto/admin/deleteAccount.ts +38 -0
  345. package/src/lexicon/types/com/atproto/admin/disableAccountInvites.ts +40 -0
  346. package/src/lexicon/types/com/atproto/admin/disableInviteCodes.ts +39 -0
  347. package/src/lexicon/types/com/atproto/admin/emitModerationEvent.ts +66 -0
  348. package/src/lexicon/types/com/atproto/admin/enableAccountInvites.ts +40 -0
  349. package/src/lexicon/types/com/atproto/admin/getAccountInfo.ts +41 -0
  350. package/src/lexicon/types/com/atproto/admin/getAccountInfos.ts +46 -0
  351. package/src/lexicon/types/com/atproto/admin/getInviteCodes.ts +49 -0
  352. package/src/lexicon/types/com/atproto/admin/getModerationEvent.ts +41 -0
  353. package/src/lexicon/types/com/atproto/admin/getRecord.ts +43 -0
  354. package/src/lexicon/types/com/atproto/admin/getRepo.ts +42 -0
  355. package/src/lexicon/types/com/atproto/admin/getSubjectStatus.ts +54 -0
  356. package/src/lexicon/types/com/atproto/admin/queryModerationEvents.ts +56 -0
  357. package/src/lexicon/types/com/atproto/admin/queryModerationStatuses.ts +72 -0
  358. package/src/lexicon/types/com/atproto/admin/searchRepos.ts +51 -0
  359. package/src/lexicon/types/com/atproto/admin/sendEmail.ts +54 -0
  360. package/src/lexicon/types/com/atproto/admin/updateAccountEmail.ts +40 -0
  361. package/src/lexicon/types/com/atproto/admin/updateAccountHandle.ts +39 -0
  362. package/src/lexicon/types/com/atproto/admin/updateSubjectStatus.ts +61 -0
  363. package/src/lexicon/types/com/atproto/identity/resolveHandle.ts +46 -0
  364. package/src/lexicon/types/com/atproto/identity/updateHandle.ts +38 -0
  365. package/src/lexicon/types/com/atproto/label/defs.ts +73 -0
  366. package/src/lexicon/types/com/atproto/label/queryLabels.ts +52 -0
  367. package/src/lexicon/types/com/atproto/label/subscribeLabels.ts +67 -0
  368. package/src/lexicon/types/com/atproto/moderation/createReport.ts +65 -0
  369. package/src/lexicon/types/com/atproto/moderation/defs.ts +32 -0
  370. package/src/lexicon/types/com/atproto/repo/applyWrites.ts +103 -0
  371. package/src/lexicon/types/com/atproto/repo/createRecord.ts +62 -0
  372. package/src/lexicon/types/com/atproto/repo/deleteRecord.ts +48 -0
  373. package/src/lexicon/types/com/atproto/repo/describeRepo.ts +50 -0
  374. package/src/lexicon/types/com/atproto/repo/getRecord.ts +54 -0
  375. package/src/lexicon/types/com/atproto/repo/listRecords.ts +77 -0
  376. package/src/lexicon/types/com/atproto/repo/putRecord.ts +64 -0
  377. package/src/lexicon/types/com/atproto/repo/strongRef.ts +26 -0
  378. package/src/lexicon/types/com/atproto/repo/uploadBlob.ts +47 -0
  379. package/src/lexicon/types/com/atproto/server/confirmEmail.ts +40 -0
  380. package/src/lexicon/types/com/atproto/server/createAccount.ts +69 -0
  381. package/src/lexicon/types/com/atproto/server/createAppPassword.ts +69 -0
  382. package/src/lexicon/types/com/atproto/server/createInviteCode.ts +50 -0
  383. package/src/lexicon/types/com/atproto/server/createInviteCodes.ts +72 -0
  384. package/src/lexicon/types/com/atproto/server/createSession.ts +58 -0
  385. package/src/lexicon/types/com/atproto/server/defs.ts +48 -0
  386. package/src/lexicon/types/com/atproto/server/deleteAccount.ts +41 -0
  387. package/src/lexicon/types/com/atproto/server/deleteSession.ts +31 -0
  388. package/src/lexicon/types/com/atproto/server/describeServer.ts +64 -0
  389. package/src/lexicon/types/com/atproto/server/getAccountInviteCodes.ts +48 -0
  390. package/src/lexicon/types/com/atproto/server/getSession.ts +47 -0
  391. package/src/lexicon/types/com/atproto/server/listAppPasswords.ts +62 -0
  392. package/src/lexicon/types/com/atproto/server/refreshSession.ts +48 -0
  393. package/src/lexicon/types/com/atproto/server/requestAccountDelete.ts +31 -0
  394. package/src/lexicon/types/com/atproto/server/requestEmailConfirmation.ts +31 -0
  395. package/src/lexicon/types/com/atproto/server/requestEmailUpdate.ts +43 -0
  396. package/src/lexicon/types/com/atproto/server/requestPasswordReset.ts +38 -0
  397. package/src/lexicon/types/com/atproto/server/reserveSigningKey.ts +51 -0
  398. package/src/lexicon/types/com/atproto/server/resetPassword.ts +40 -0
  399. package/src/lexicon/types/com/atproto/server/revokeAppPassword.ts +38 -0
  400. package/src/lexicon/types/com/atproto/server/updateEmail.ts +41 -0
  401. package/src/lexicon/types/com/atproto/sync/getBlob.ts +43 -0
  402. package/src/lexicon/types/com/atproto/sync/getBlocks.ts +42 -0
  403. package/src/lexicon/types/com/atproto/sync/getCheckout.ts +41 -0
  404. package/src/lexicon/types/com/atproto/sync/getHead.ts +47 -0
  405. package/src/lexicon/types/com/atproto/sync/getLatestCommit.ts +48 -0
  406. package/src/lexicon/types/com/atproto/sync/getRecord.ts +45 -0
  407. package/src/lexicon/types/com/atproto/sync/getRepo.ts +43 -0
  408. package/src/lexicon/types/com/atproto/sync/listBlobs.ts +51 -0
  409. package/src/lexicon/types/com/atproto/sync/listRepos.ts +66 -0
  410. package/src/lexicon/types/com/atproto/sync/notifyOfUpdate.ts +39 -0
  411. package/src/lexicon/types/com/atproto/sync/requestCrawl.ts +39 -0
  412. package/src/lexicon/types/com/atproto/sync/subscribeRepos.ts +161 -0
  413. package/src/lexicon/types/com/atproto/temp/fetchLabels.ts +47 -0
  414. package/src/lexicon/types/com/atproto/temp/importRepo.ts +45 -0
  415. package/src/lexicon/types/com/atproto/temp/pushBlob.ts +39 -0
  416. package/src/lexicon/types/com/atproto/temp/requestPhoneVerification.ts +38 -0
  417. package/src/lexicon/types/com/atproto/temp/transferAccount.ts +62 -0
  418. package/src/lexicon/util.ts +13 -0
  419. package/src/logger.ts +19 -0
  420. package/src/mod-service/index.ts +758 -0
  421. package/src/mod-service/status.ts +264 -0
  422. package/src/mod-service/subject.ts +136 -0
  423. package/src/mod-service/types.ts +32 -0
  424. package/src/mod-service/views.ts +531 -0
  425. package/src/util.ts +26 -0
  426. package/test.env +2 -0
  427. package/test.log +0 -0
  428. package/tests/__snapshots__/get-record.test.ts.snap +173 -0
  429. package/tests/__snapshots__/get-repo.test.ts.snap +57 -0
  430. package/tests/__snapshots__/moderation-events.test.ts.snap +168 -0
  431. package/tests/__snapshots__/moderation-statuses.test.ts.snap +64 -0
  432. package/tests/__snapshots__/moderation.test.ts.snap +55 -0
  433. package/tests/_util.ts +192 -0
  434. package/tests/db.test.ts +184 -0
  435. package/tests/get-record.test.ts +110 -0
  436. package/tests/get-repo.test.ts +131 -0
  437. package/tests/moderation-appeals.test.ts +269 -0
  438. package/tests/moderation-events.test.ts +220 -0
  439. package/tests/moderation-statuses.test.ts +144 -0
  440. package/tests/moderation.test.ts +961 -0
  441. package/tests/repo-search.test.ts +123 -0
  442. package/tests/server.test.ts +76 -0
  443. package/tsconfig.build.json +4 -0
  444. package/tsconfig.json +21 -0
@@ -0,0 +1,96 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
5
+ import { lexicons } from '../../../../lexicons'
6
+ import { isObj, hasProp } from '../../../../util'
7
+ import { CID } from 'multiformats/cid'
8
+
9
+ export interface Main {
10
+ images: Image[]
11
+ [k: string]: unknown
12
+ }
13
+
14
+ export function isMain(v: unknown): v is Main {
15
+ return (
16
+ isObj(v) &&
17
+ hasProp(v, '$type') &&
18
+ (v.$type === 'app.bsky.embed.images#main' ||
19
+ v.$type === 'app.bsky.embed.images')
20
+ )
21
+ }
22
+
23
+ export function validateMain(v: unknown): ValidationResult {
24
+ return lexicons.validate('app.bsky.embed.images#main', v)
25
+ }
26
+
27
+ export interface Image {
28
+ image: BlobRef
29
+ alt: string
30
+ aspectRatio?: AspectRatio
31
+ [k: string]: unknown
32
+ }
33
+
34
+ export function isImage(v: unknown): v is Image {
35
+ return (
36
+ isObj(v) && hasProp(v, '$type') && v.$type === 'app.bsky.embed.images#image'
37
+ )
38
+ }
39
+
40
+ export function validateImage(v: unknown): ValidationResult {
41
+ return lexicons.validate('app.bsky.embed.images#image', v)
42
+ }
43
+
44
+ /** width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit. */
45
+ export interface AspectRatio {
46
+ width: number
47
+ height: number
48
+ [k: string]: unknown
49
+ }
50
+
51
+ export function isAspectRatio(v: unknown): v is AspectRatio {
52
+ return (
53
+ isObj(v) &&
54
+ hasProp(v, '$type') &&
55
+ v.$type === 'app.bsky.embed.images#aspectRatio'
56
+ )
57
+ }
58
+
59
+ export function validateAspectRatio(v: unknown): ValidationResult {
60
+ return lexicons.validate('app.bsky.embed.images#aspectRatio', v)
61
+ }
62
+
63
+ export interface View {
64
+ images: ViewImage[]
65
+ [k: string]: unknown
66
+ }
67
+
68
+ export function isView(v: unknown): v is View {
69
+ return (
70
+ isObj(v) && hasProp(v, '$type') && v.$type === 'app.bsky.embed.images#view'
71
+ )
72
+ }
73
+
74
+ export function validateView(v: unknown): ValidationResult {
75
+ return lexicons.validate('app.bsky.embed.images#view', v)
76
+ }
77
+
78
+ export interface ViewImage {
79
+ thumb: string
80
+ fullsize: string
81
+ alt: string
82
+ aspectRatio?: AspectRatio
83
+ [k: string]: unknown
84
+ }
85
+
86
+ export function isViewImage(v: unknown): v is ViewImage {
87
+ return (
88
+ isObj(v) &&
89
+ hasProp(v, '$type') &&
90
+ v.$type === 'app.bsky.embed.images#viewImage'
91
+ )
92
+ }
93
+
94
+ export function validateViewImage(v: unknown): ValidationResult {
95
+ return lexicons.validate('app.bsky.embed.images#viewImage', v)
96
+ }
@@ -0,0 +1,120 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
5
+ import { lexicons } from '../../../../lexicons'
6
+ import { isObj, hasProp } from '../../../../util'
7
+ import { CID } from 'multiformats/cid'
8
+ import * as ComAtprotoRepoStrongRef from '../../../com/atproto/repo/strongRef'
9
+ import * as AppBskyFeedDefs from '../feed/defs'
10
+ import * as AppBskyGraphDefs from '../graph/defs'
11
+ import * as AppBskyActorDefs from '../actor/defs'
12
+ import * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs'
13
+ import * as AppBskyEmbedImages from './images'
14
+ import * as AppBskyEmbedExternal from './external'
15
+ import * as AppBskyEmbedRecordWithMedia from './recordWithMedia'
16
+
17
+ export interface Main {
18
+ record: ComAtprotoRepoStrongRef.Main
19
+ [k: string]: unknown
20
+ }
21
+
22
+ export function isMain(v: unknown): v is Main {
23
+ return (
24
+ isObj(v) &&
25
+ hasProp(v, '$type') &&
26
+ (v.$type === 'app.bsky.embed.record#main' ||
27
+ v.$type === 'app.bsky.embed.record')
28
+ )
29
+ }
30
+
31
+ export function validateMain(v: unknown): ValidationResult {
32
+ return lexicons.validate('app.bsky.embed.record#main', v)
33
+ }
34
+
35
+ export interface View {
36
+ record:
37
+ | ViewRecord
38
+ | ViewNotFound
39
+ | ViewBlocked
40
+ | AppBskyFeedDefs.GeneratorView
41
+ | AppBskyGraphDefs.ListView
42
+ | { $type: string; [k: string]: unknown }
43
+ [k: string]: unknown
44
+ }
45
+
46
+ export function isView(v: unknown): v is View {
47
+ return (
48
+ isObj(v) && hasProp(v, '$type') && v.$type === 'app.bsky.embed.record#view'
49
+ )
50
+ }
51
+
52
+ export function validateView(v: unknown): ValidationResult {
53
+ return lexicons.validate('app.bsky.embed.record#view', v)
54
+ }
55
+
56
+ export interface ViewRecord {
57
+ uri: string
58
+ cid: string
59
+ author: AppBskyActorDefs.ProfileViewBasic
60
+ value: {}
61
+ labels?: ComAtprotoLabelDefs.Label[]
62
+ embeds?: (
63
+ | AppBskyEmbedImages.View
64
+ | AppBskyEmbedExternal.View
65
+ | View
66
+ | AppBskyEmbedRecordWithMedia.View
67
+ | { $type: string; [k: string]: unknown }
68
+ )[]
69
+ indexedAt: string
70
+ [k: string]: unknown
71
+ }
72
+
73
+ export function isViewRecord(v: unknown): v is ViewRecord {
74
+ return (
75
+ isObj(v) &&
76
+ hasProp(v, '$type') &&
77
+ v.$type === 'app.bsky.embed.record#viewRecord'
78
+ )
79
+ }
80
+
81
+ export function validateViewRecord(v: unknown): ValidationResult {
82
+ return lexicons.validate('app.bsky.embed.record#viewRecord', v)
83
+ }
84
+
85
+ export interface ViewNotFound {
86
+ uri: string
87
+ notFound: true
88
+ [k: string]: unknown
89
+ }
90
+
91
+ export function isViewNotFound(v: unknown): v is ViewNotFound {
92
+ return (
93
+ isObj(v) &&
94
+ hasProp(v, '$type') &&
95
+ v.$type === 'app.bsky.embed.record#viewNotFound'
96
+ )
97
+ }
98
+
99
+ export function validateViewNotFound(v: unknown): ValidationResult {
100
+ return lexicons.validate('app.bsky.embed.record#viewNotFound', v)
101
+ }
102
+
103
+ export interface ViewBlocked {
104
+ uri: string
105
+ blocked: true
106
+ author: AppBskyFeedDefs.BlockedAuthor
107
+ [k: string]: unknown
108
+ }
109
+
110
+ export function isViewBlocked(v: unknown): v is ViewBlocked {
111
+ return (
112
+ isObj(v) &&
113
+ hasProp(v, '$type') &&
114
+ v.$type === 'app.bsky.embed.record#viewBlocked'
115
+ )
116
+ }
117
+
118
+ export function validateViewBlocked(v: unknown): ValidationResult {
119
+ return lexicons.validate('app.bsky.embed.record#viewBlocked', v)
120
+ }
@@ -0,0 +1,53 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
5
+ import { lexicons } from '../../../../lexicons'
6
+ import { isObj, hasProp } from '../../../../util'
7
+ import { CID } from 'multiformats/cid'
8
+ import * as AppBskyEmbedRecord from './record'
9
+ import * as AppBskyEmbedImages from './images'
10
+ import * as AppBskyEmbedExternal from './external'
11
+
12
+ export interface Main {
13
+ record: AppBskyEmbedRecord.Main
14
+ media:
15
+ | AppBskyEmbedImages.Main
16
+ | AppBskyEmbedExternal.Main
17
+ | { $type: string; [k: string]: unknown }
18
+ [k: string]: unknown
19
+ }
20
+
21
+ export function isMain(v: unknown): v is Main {
22
+ return (
23
+ isObj(v) &&
24
+ hasProp(v, '$type') &&
25
+ (v.$type === 'app.bsky.embed.recordWithMedia#main' ||
26
+ v.$type === 'app.bsky.embed.recordWithMedia')
27
+ )
28
+ }
29
+
30
+ export function validateMain(v: unknown): ValidationResult {
31
+ return lexicons.validate('app.bsky.embed.recordWithMedia#main', v)
32
+ }
33
+
34
+ export interface View {
35
+ record: AppBskyEmbedRecord.View
36
+ media:
37
+ | AppBskyEmbedImages.View
38
+ | AppBskyEmbedExternal.View
39
+ | { $type: string; [k: string]: unknown }
40
+ [k: string]: unknown
41
+ }
42
+
43
+ export function isView(v: unknown): v is View {
44
+ return (
45
+ isObj(v) &&
46
+ hasProp(v, '$type') &&
47
+ v.$type === 'app.bsky.embed.recordWithMedia#view'
48
+ )
49
+ }
50
+
51
+ export function validateView(v: unknown): ValidationResult {
52
+ return lexicons.validate('app.bsky.embed.recordWithMedia#view', v)
53
+ }
@@ -0,0 +1,308 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
5
+ import { lexicons } from '../../../../lexicons'
6
+ import { isObj, hasProp } from '../../../../util'
7
+ import { CID } from 'multiformats/cid'
8
+ import * as AppBskyActorDefs from '../actor/defs'
9
+ import * as AppBskyEmbedImages from '../embed/images'
10
+ import * as AppBskyEmbedExternal from '../embed/external'
11
+ import * as AppBskyEmbedRecord from '../embed/record'
12
+ import * as AppBskyEmbedRecordWithMedia from '../embed/recordWithMedia'
13
+ import * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs'
14
+ import * as AppBskyRichtextFacet from '../richtext/facet'
15
+ import * as AppBskyGraphDefs from '../graph/defs'
16
+
17
+ export interface PostView {
18
+ uri: string
19
+ cid: string
20
+ author: AppBskyActorDefs.ProfileViewBasic
21
+ record: {}
22
+ embed?:
23
+ | AppBskyEmbedImages.View
24
+ | AppBskyEmbedExternal.View
25
+ | AppBskyEmbedRecord.View
26
+ | AppBskyEmbedRecordWithMedia.View
27
+ | { $type: string; [k: string]: unknown }
28
+ replyCount?: number
29
+ repostCount?: number
30
+ likeCount?: number
31
+ indexedAt: string
32
+ viewer?: ViewerState
33
+ labels?: ComAtprotoLabelDefs.Label[]
34
+ threadgate?: ThreadgateView
35
+ [k: string]: unknown
36
+ }
37
+
38
+ export function isPostView(v: unknown): v is PostView {
39
+ return (
40
+ isObj(v) && hasProp(v, '$type') && v.$type === 'app.bsky.feed.defs#postView'
41
+ )
42
+ }
43
+
44
+ export function validatePostView(v: unknown): ValidationResult {
45
+ return lexicons.validate('app.bsky.feed.defs#postView', v)
46
+ }
47
+
48
+ export interface ViewerState {
49
+ repost?: string
50
+ like?: string
51
+ replyDisabled?: boolean
52
+ [k: string]: unknown
53
+ }
54
+
55
+ export function isViewerState(v: unknown): v is ViewerState {
56
+ return (
57
+ isObj(v) &&
58
+ hasProp(v, '$type') &&
59
+ v.$type === 'app.bsky.feed.defs#viewerState'
60
+ )
61
+ }
62
+
63
+ export function validateViewerState(v: unknown): ValidationResult {
64
+ return lexicons.validate('app.bsky.feed.defs#viewerState', v)
65
+ }
66
+
67
+ export interface FeedViewPost {
68
+ post: PostView
69
+ reply?: ReplyRef
70
+ reason?: ReasonRepost | { $type: string; [k: string]: unknown }
71
+ [k: string]: unknown
72
+ }
73
+
74
+ export function isFeedViewPost(v: unknown): v is FeedViewPost {
75
+ return (
76
+ isObj(v) &&
77
+ hasProp(v, '$type') &&
78
+ v.$type === 'app.bsky.feed.defs#feedViewPost'
79
+ )
80
+ }
81
+
82
+ export function validateFeedViewPost(v: unknown): ValidationResult {
83
+ return lexicons.validate('app.bsky.feed.defs#feedViewPost', v)
84
+ }
85
+
86
+ export interface ReplyRef {
87
+ root:
88
+ | PostView
89
+ | NotFoundPost
90
+ | BlockedPost
91
+ | { $type: string; [k: string]: unknown }
92
+ parent:
93
+ | PostView
94
+ | NotFoundPost
95
+ | BlockedPost
96
+ | { $type: string; [k: string]: unknown }
97
+ [k: string]: unknown
98
+ }
99
+
100
+ export function isReplyRef(v: unknown): v is ReplyRef {
101
+ return (
102
+ isObj(v) && hasProp(v, '$type') && v.$type === 'app.bsky.feed.defs#replyRef'
103
+ )
104
+ }
105
+
106
+ export function validateReplyRef(v: unknown): ValidationResult {
107
+ return lexicons.validate('app.bsky.feed.defs#replyRef', v)
108
+ }
109
+
110
+ export interface ReasonRepost {
111
+ by: AppBskyActorDefs.ProfileViewBasic
112
+ indexedAt: string
113
+ [k: string]: unknown
114
+ }
115
+
116
+ export function isReasonRepost(v: unknown): v is ReasonRepost {
117
+ return (
118
+ isObj(v) &&
119
+ hasProp(v, '$type') &&
120
+ v.$type === 'app.bsky.feed.defs#reasonRepost'
121
+ )
122
+ }
123
+
124
+ export function validateReasonRepost(v: unknown): ValidationResult {
125
+ return lexicons.validate('app.bsky.feed.defs#reasonRepost', v)
126
+ }
127
+
128
+ export interface ThreadViewPost {
129
+ post: PostView
130
+ parent?:
131
+ | ThreadViewPost
132
+ | NotFoundPost
133
+ | BlockedPost
134
+ | { $type: string; [k: string]: unknown }
135
+ replies?: (
136
+ | ThreadViewPost
137
+ | NotFoundPost
138
+ | BlockedPost
139
+ | { $type: string; [k: string]: unknown }
140
+ )[]
141
+ [k: string]: unknown
142
+ }
143
+
144
+ export function isThreadViewPost(v: unknown): v is ThreadViewPost {
145
+ return (
146
+ isObj(v) &&
147
+ hasProp(v, '$type') &&
148
+ v.$type === 'app.bsky.feed.defs#threadViewPost'
149
+ )
150
+ }
151
+
152
+ export function validateThreadViewPost(v: unknown): ValidationResult {
153
+ return lexicons.validate('app.bsky.feed.defs#threadViewPost', v)
154
+ }
155
+
156
+ export interface NotFoundPost {
157
+ uri: string
158
+ notFound: true
159
+ [k: string]: unknown
160
+ }
161
+
162
+ export function isNotFoundPost(v: unknown): v is NotFoundPost {
163
+ return (
164
+ isObj(v) &&
165
+ hasProp(v, '$type') &&
166
+ v.$type === 'app.bsky.feed.defs#notFoundPost'
167
+ )
168
+ }
169
+
170
+ export function validateNotFoundPost(v: unknown): ValidationResult {
171
+ return lexicons.validate('app.bsky.feed.defs#notFoundPost', v)
172
+ }
173
+
174
+ export interface BlockedPost {
175
+ uri: string
176
+ blocked: true
177
+ author: BlockedAuthor
178
+ [k: string]: unknown
179
+ }
180
+
181
+ export function isBlockedPost(v: unknown): v is BlockedPost {
182
+ return (
183
+ isObj(v) &&
184
+ hasProp(v, '$type') &&
185
+ v.$type === 'app.bsky.feed.defs#blockedPost'
186
+ )
187
+ }
188
+
189
+ export function validateBlockedPost(v: unknown): ValidationResult {
190
+ return lexicons.validate('app.bsky.feed.defs#blockedPost', v)
191
+ }
192
+
193
+ export interface BlockedAuthor {
194
+ did: string
195
+ viewer?: AppBskyActorDefs.ViewerState
196
+ [k: string]: unknown
197
+ }
198
+
199
+ export function isBlockedAuthor(v: unknown): v is BlockedAuthor {
200
+ return (
201
+ isObj(v) &&
202
+ hasProp(v, '$type') &&
203
+ v.$type === 'app.bsky.feed.defs#blockedAuthor'
204
+ )
205
+ }
206
+
207
+ export function validateBlockedAuthor(v: unknown): ValidationResult {
208
+ return lexicons.validate('app.bsky.feed.defs#blockedAuthor', v)
209
+ }
210
+
211
+ export interface GeneratorView {
212
+ uri: string
213
+ cid: string
214
+ did: string
215
+ creator: AppBskyActorDefs.ProfileView
216
+ displayName: string
217
+ description?: string
218
+ descriptionFacets?: AppBskyRichtextFacet.Main[]
219
+ avatar?: string
220
+ likeCount?: number
221
+ viewer?: GeneratorViewerState
222
+ indexedAt: string
223
+ [k: string]: unknown
224
+ }
225
+
226
+ export function isGeneratorView(v: unknown): v is GeneratorView {
227
+ return (
228
+ isObj(v) &&
229
+ hasProp(v, '$type') &&
230
+ v.$type === 'app.bsky.feed.defs#generatorView'
231
+ )
232
+ }
233
+
234
+ export function validateGeneratorView(v: unknown): ValidationResult {
235
+ return lexicons.validate('app.bsky.feed.defs#generatorView', v)
236
+ }
237
+
238
+ export interface GeneratorViewerState {
239
+ like?: string
240
+ [k: string]: unknown
241
+ }
242
+
243
+ export function isGeneratorViewerState(v: unknown): v is GeneratorViewerState {
244
+ return (
245
+ isObj(v) &&
246
+ hasProp(v, '$type') &&
247
+ v.$type === 'app.bsky.feed.defs#generatorViewerState'
248
+ )
249
+ }
250
+
251
+ export function validateGeneratorViewerState(v: unknown): ValidationResult {
252
+ return lexicons.validate('app.bsky.feed.defs#generatorViewerState', v)
253
+ }
254
+
255
+ export interface SkeletonFeedPost {
256
+ post: string
257
+ reason?: SkeletonReasonRepost | { $type: string; [k: string]: unknown }
258
+ [k: string]: unknown
259
+ }
260
+
261
+ export function isSkeletonFeedPost(v: unknown): v is SkeletonFeedPost {
262
+ return (
263
+ isObj(v) &&
264
+ hasProp(v, '$type') &&
265
+ v.$type === 'app.bsky.feed.defs#skeletonFeedPost'
266
+ )
267
+ }
268
+
269
+ export function validateSkeletonFeedPost(v: unknown): ValidationResult {
270
+ return lexicons.validate('app.bsky.feed.defs#skeletonFeedPost', v)
271
+ }
272
+
273
+ export interface SkeletonReasonRepost {
274
+ repost: string
275
+ [k: string]: unknown
276
+ }
277
+
278
+ export function isSkeletonReasonRepost(v: unknown): v is SkeletonReasonRepost {
279
+ return (
280
+ isObj(v) &&
281
+ hasProp(v, '$type') &&
282
+ v.$type === 'app.bsky.feed.defs#skeletonReasonRepost'
283
+ )
284
+ }
285
+
286
+ export function validateSkeletonReasonRepost(v: unknown): ValidationResult {
287
+ return lexicons.validate('app.bsky.feed.defs#skeletonReasonRepost', v)
288
+ }
289
+
290
+ export interface ThreadgateView {
291
+ uri?: string
292
+ cid?: string
293
+ record?: {}
294
+ lists?: AppBskyGraphDefs.ListViewBasic[]
295
+ [k: string]: unknown
296
+ }
297
+
298
+ export function isThreadgateView(v: unknown): v is ThreadgateView {
299
+ return (
300
+ isObj(v) &&
301
+ hasProp(v, '$type') &&
302
+ v.$type === 'app.bsky.feed.defs#threadgateView'
303
+ )
304
+ }
305
+
306
+ export function validateThreadgateView(v: unknown): ValidationResult {
307
+ return lexicons.validate('app.bsky.feed.defs#threadgateView', v)
308
+ }
@@ -0,0 +1,80 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import express from 'express'
5
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
6
+ import { lexicons } from '../../../../lexicons'
7
+ import { isObj, hasProp } from '../../../../util'
8
+ import { CID } from 'multiformats/cid'
9
+ import { HandlerAuth } from '@atproto/xrpc-server'
10
+
11
+ export interface QueryParams {}
12
+
13
+ export type InputSchema = undefined
14
+
15
+ export interface OutputSchema {
16
+ did: string
17
+ feeds: Feed[]
18
+ links?: Links
19
+ [k: string]: unknown
20
+ }
21
+
22
+ export type HandlerInput = undefined
23
+
24
+ export interface HandlerSuccess {
25
+ encoding: 'application/json'
26
+ body: OutputSchema
27
+ headers?: { [key: string]: string }
28
+ }
29
+
30
+ export interface HandlerError {
31
+ status: number
32
+ message?: string
33
+ }
34
+
35
+ export type HandlerOutput = HandlerError | HandlerSuccess
36
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
37
+ auth: HA
38
+ params: QueryParams
39
+ input: HandlerInput
40
+ req: express.Request
41
+ res: express.Response
42
+ }
43
+ export type Handler<HA extends HandlerAuth = never> = (
44
+ ctx: HandlerReqCtx<HA>,
45
+ ) => Promise<HandlerOutput> | HandlerOutput
46
+
47
+ export interface Feed {
48
+ uri: string
49
+ [k: string]: unknown
50
+ }
51
+
52
+ export function isFeed(v: unknown): v is Feed {
53
+ return (
54
+ isObj(v) &&
55
+ hasProp(v, '$type') &&
56
+ v.$type === 'app.bsky.feed.describeFeedGenerator#feed'
57
+ )
58
+ }
59
+
60
+ export function validateFeed(v: unknown): ValidationResult {
61
+ return lexicons.validate('app.bsky.feed.describeFeedGenerator#feed', v)
62
+ }
63
+
64
+ export interface Links {
65
+ privacyPolicy?: string
66
+ termsOfService?: string
67
+ [k: string]: unknown
68
+ }
69
+
70
+ export function isLinks(v: unknown): v is Links {
71
+ return (
72
+ isObj(v) &&
73
+ hasProp(v, '$type') &&
74
+ v.$type === 'app.bsky.feed.describeFeedGenerator#links'
75
+ )
76
+ }
77
+
78
+ export function validateLinks(v: unknown): ValidationResult {
79
+ return lexicons.validate('app.bsky.feed.describeFeedGenerator#links', v)
80
+ }
@@ -0,0 +1,35 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
5
+ import { lexicons } from '../../../../lexicons'
6
+ import { isObj, hasProp } from '../../../../util'
7
+ import { CID } from 'multiformats/cid'
8
+ import * as AppBskyRichtextFacet from '../richtext/facet'
9
+ import * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs'
10
+
11
+ export interface Record {
12
+ did: string
13
+ displayName: string
14
+ description?: string
15
+ descriptionFacets?: AppBskyRichtextFacet.Main[]
16
+ avatar?: BlobRef
17
+ labels?:
18
+ | ComAtprotoLabelDefs.SelfLabels
19
+ | { $type: string; [k: string]: unknown }
20
+ createdAt: string
21
+ [k: string]: unknown
22
+ }
23
+
24
+ export function isRecord(v: unknown): v is Record {
25
+ return (
26
+ isObj(v) &&
27
+ hasProp(v, '$type') &&
28
+ (v.$type === 'app.bsky.feed.generator#main' ||
29
+ v.$type === 'app.bsky.feed.generator')
30
+ )
31
+ }
32
+
33
+ export function validateRecord(v: unknown): ValidationResult {
34
+ return lexicons.validate('app.bsky.feed.generator#main', v)
35
+ }