@atproto/bsky 0.0.51 → 0.0.52

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 (188) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/api/app/bsky/feed/getLikes.d.ts.map +1 -1
  3. package/dist/api/app/bsky/feed/getLikes.js +10 -1
  4. package/dist/api/app/bsky/feed/getLikes.js.map +1 -1
  5. package/dist/data-plane/server/indexing/index.d.ts +2 -0
  6. package/dist/data-plane/server/indexing/index.d.ts.map +1 -1
  7. package/dist/data-plane/server/indexing/index.js +2 -0
  8. package/dist/data-plane/server/indexing/index.js.map +1 -1
  9. package/dist/data-plane/server/indexing/plugins/chat-declaration.d.ts +7 -0
  10. package/dist/data-plane/server/indexing/plugins/chat-declaration.d.ts.map +1 -0
  11. package/dist/data-plane/server/indexing/plugins/chat-declaration.js +68 -0
  12. package/dist/data-plane/server/indexing/plugins/chat-declaration.js.map +1 -0
  13. package/dist/data-plane/server/routes/follows.d.ts.map +1 -1
  14. package/dist/data-plane/server/routes/follows.js +3 -0
  15. package/dist/data-plane/server/routes/follows.js.map +1 -1
  16. package/dist/data-plane/server/routes/labels.d.ts.map +1 -1
  17. package/dist/data-plane/server/routes/labels.js +3 -0
  18. package/dist/data-plane/server/routes/labels.js.map +1 -1
  19. package/dist/data-plane/server/routes/likes.d.ts.map +1 -1
  20. package/dist/data-plane/server/routes/likes.js +11 -2
  21. package/dist/data-plane/server/routes/likes.js.map +1 -1
  22. package/dist/data-plane/server/routes/profile.d.ts.map +1 -1
  23. package/dist/data-plane/server/routes/profile.js +8 -1
  24. package/dist/data-plane/server/routes/profile.js.map +1 -1
  25. package/dist/data-plane/server/routes/records.d.ts.map +1 -1
  26. package/dist/data-plane/server/routes/records.js +1 -0
  27. package/dist/data-plane/server/routes/records.js.map +1 -1
  28. package/dist/hydration/actor.d.ts +6 -1
  29. package/dist/hydration/actor.d.ts.map +1 -1
  30. package/dist/hydration/actor.js +10 -0
  31. package/dist/hydration/actor.js.map +1 -1
  32. package/dist/hydration/hydrator.d.ts.map +1 -1
  33. package/dist/hydration/hydrator.js +5 -0
  34. package/dist/hydration/hydrator.js.map +1 -1
  35. package/dist/lexicon/index.d.ts +59 -0
  36. package/dist/lexicon/index.d.ts.map +1 -1
  37. package/dist/lexicon/index.js +164 -1
  38. package/dist/lexicon/index.js.map +1 -1
  39. package/dist/lexicon/lexicons.d.ts +907 -0
  40. package/dist/lexicon/lexicons.d.ts.map +1 -1
  41. package/dist/lexicon/lexicons.js +932 -0
  42. package/dist/lexicon/lexicons.js.map +1 -1
  43. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +7 -0
  44. package/dist/lexicon/types/app/bsky/actor/defs.d.ts.map +1 -1
  45. package/dist/lexicon/types/app/bsky/actor/defs.js +11 -1
  46. package/dist/lexicon/types/app/bsky/actor/defs.js.map +1 -1
  47. package/dist/lexicon/types/chat/bsky/actor/declaration.d.ts +11 -0
  48. package/dist/lexicon/types/chat/bsky/actor/declaration.d.ts.map +1 -0
  49. package/dist/lexicon/types/chat/bsky/actor/declaration.js +17 -0
  50. package/dist/lexicon/types/chat/bsky/actor/declaration.js.map +1 -0
  51. package/dist/lexicon/types/chat/bsky/actor/defs.d.ts +21 -0
  52. package/dist/lexicon/types/chat/bsky/actor/defs.d.ts.map +1 -0
  53. package/dist/lexicon/types/chat/bsky/actor/defs.js +16 -0
  54. package/dist/lexicon/types/chat/bsky/actor/defs.js.map +1 -0
  55. package/dist/lexicon/types/chat/bsky/actor/deleteAccount.d.ts +33 -0
  56. package/dist/lexicon/types/chat/bsky/actor/deleteAccount.d.ts.map +1 -0
  57. package/dist/lexicon/types/chat/bsky/actor/deleteAccount.js +3 -0
  58. package/dist/lexicon/types/chat/bsky/actor/deleteAccount.js.map +1 -0
  59. package/dist/lexicon/types/chat/bsky/actor/exportAccountData.d.ts +32 -0
  60. package/dist/lexicon/types/chat/bsky/actor/exportAccountData.d.ts.map +1 -0
  61. package/dist/lexicon/types/chat/bsky/actor/exportAccountData.js +3 -0
  62. package/dist/lexicon/types/chat/bsky/actor/exportAccountData.js.map +1 -0
  63. package/dist/lexicon/types/chat/bsky/convo/defs.d.ts +109 -0
  64. package/dist/lexicon/types/chat/bsky/convo/defs.d.ts.map +1 -0
  65. package/dist/lexicon/types/chat/bsky/convo/defs.js +106 -0
  66. package/dist/lexicon/types/chat/bsky/convo/defs.js.map +1 -0
  67. package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.d.ts +39 -0
  68. package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.d.ts.map +1 -0
  69. package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.js +3 -0
  70. package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.js.map +1 -0
  71. package/dist/lexicon/types/chat/bsky/convo/getConvo.d.ts +36 -0
  72. package/dist/lexicon/types/chat/bsky/convo/getConvo.d.ts.map +1 -0
  73. package/dist/lexicon/types/chat/bsky/convo/getConvo.js +3 -0
  74. package/dist/lexicon/types/chat/bsky/convo/getConvo.js.map +1 -0
  75. package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.d.ts +36 -0
  76. package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.d.ts.map +1 -0
  77. package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.js +3 -0
  78. package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.js.map +1 -0
  79. package/dist/lexicon/types/chat/bsky/convo/getLog.d.ts +40 -0
  80. package/dist/lexicon/types/chat/bsky/convo/getLog.d.ts.map +1 -0
  81. package/dist/lexicon/types/chat/bsky/convo/getLog.js +3 -0
  82. package/dist/lexicon/types/chat/bsky/convo/getLog.js.map +1 -0
  83. package/dist/lexicon/types/chat/bsky/convo/getMessages.d.ts +42 -0
  84. package/dist/lexicon/types/chat/bsky/convo/getMessages.d.ts.map +1 -0
  85. package/dist/lexicon/types/chat/bsky/convo/getMessages.js +3 -0
  86. package/dist/lexicon/types/chat/bsky/convo/getMessages.js.map +1 -0
  87. package/dist/lexicon/types/chat/bsky/convo/leaveConvo.d.ts +41 -0
  88. package/dist/lexicon/types/chat/bsky/convo/leaveConvo.d.ts.map +1 -0
  89. package/dist/lexicon/types/chat/bsky/convo/leaveConvo.js +3 -0
  90. package/dist/lexicon/types/chat/bsky/convo/leaveConvo.js.map +1 -0
  91. package/dist/lexicon/types/chat/bsky/convo/listConvos.d.ts +38 -0
  92. package/dist/lexicon/types/chat/bsky/convo/listConvos.d.ts.map +1 -0
  93. package/dist/lexicon/types/chat/bsky/convo/listConvos.js +3 -0
  94. package/dist/lexicon/types/chat/bsky/convo/listConvos.js.map +1 -0
  95. package/dist/lexicon/types/chat/bsky/convo/muteConvo.d.ts +41 -0
  96. package/dist/lexicon/types/chat/bsky/convo/muteConvo.d.ts.map +1 -0
  97. package/dist/lexicon/types/chat/bsky/convo/muteConvo.js +3 -0
  98. package/dist/lexicon/types/chat/bsky/convo/muteConvo.js.map +1 -0
  99. package/dist/lexicon/types/chat/bsky/convo/sendMessage.d.ts +39 -0
  100. package/dist/lexicon/types/chat/bsky/convo/sendMessage.d.ts.map +1 -0
  101. package/dist/lexicon/types/chat/bsky/convo/sendMessage.js +3 -0
  102. package/dist/lexicon/types/chat/bsky/convo/sendMessage.js.map +1 -0
  103. package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.d.ts +49 -0
  104. package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.d.ts.map +1 -0
  105. package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.js +16 -0
  106. package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.js.map +1 -0
  107. package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.d.ts +41 -0
  108. package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.d.ts.map +1 -0
  109. package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.js +3 -0
  110. package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.js.map +1 -0
  111. package/dist/lexicon/types/chat/bsky/convo/updateRead.d.ts +42 -0
  112. package/dist/lexicon/types/chat/bsky/convo/updateRead.d.ts.map +1 -0
  113. package/dist/lexicon/types/chat/bsky/convo/updateRead.js +3 -0
  114. package/dist/lexicon/types/chat/bsky/convo/updateRead.js.map +1 -0
  115. package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.d.ts +47 -0
  116. package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.d.ts.map +1 -0
  117. package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.js +16 -0
  118. package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.js.map +1 -0
  119. package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.d.ts +41 -0
  120. package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.d.ts.map +1 -0
  121. package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.js +3 -0
  122. package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.js.map +1 -0
  123. package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.d.ts +31 -0
  124. package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.d.ts.map +1 -0
  125. package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.js +3 -0
  126. package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.js.map +1 -0
  127. package/dist/proto/bsky_connect.d.ts +39 -1
  128. package/dist/proto/bsky_connect.d.ts.map +1 -1
  129. package/dist/proto/bsky_connect.js +38 -0
  130. package/dist/proto/bsky_connect.js.map +1 -1
  131. package/dist/proto/bsky_pb.d.ts +191 -0
  132. package/dist/proto/bsky_pb.d.ts.map +1 -1
  133. package/dist/proto/bsky_pb.js +599 -4
  134. package/dist/proto/bsky_pb.js.map +1 -1
  135. package/dist/views/index.d.ts.map +1 -1
  136. package/dist/views/index.js +14 -2
  137. package/dist/views/index.js.map +1 -1
  138. package/package.json +5 -5
  139. package/proto/bsky.proto +56 -0
  140. package/src/api/app/bsky/feed/getLikes.ts +13 -1
  141. package/src/data-plane/server/indexing/index.ts +3 -0
  142. package/src/data-plane/server/indexing/plugins/chat-declaration.ts +63 -0
  143. package/src/data-plane/server/routes/follows.ts +3 -0
  144. package/src/data-plane/server/routes/labels.ts +4 -0
  145. package/src/data-plane/server/routes/likes.ts +9 -2
  146. package/src/data-plane/server/routes/profile.ts +13 -1
  147. package/src/data-plane/server/routes/records.ts +1 -0
  148. package/src/hydration/actor.ts +24 -0
  149. package/src/hydration/hydrator.ts +7 -0
  150. package/src/lexicon/index.ts +254 -0
  151. package/src/lexicon/lexicons.ts +933 -0
  152. package/src/lexicon/types/app/bsky/actor/defs.ts +20 -0
  153. package/src/lexicon/types/chat/bsky/actor/declaration.ts +25 -0
  154. package/src/lexicon/types/chat/bsky/actor/defs.ts +34 -0
  155. package/src/lexicon/types/chat/bsky/actor/deleteAccount.ts +42 -0
  156. package/src/lexicon/types/chat/bsky/actor/exportAccountData.ts +38 -0
  157. package/src/lexicon/types/chat/bsky/convo/defs.ts +215 -0
  158. package/src/lexicon/types/chat/bsky/convo/deleteMessageForSelf.ts +48 -0
  159. package/src/lexicon/types/chat/bsky/convo/getConvo.ts +46 -0
  160. package/src/lexicon/types/chat/bsky/convo/getConvoForMembers.ts +46 -0
  161. package/src/lexicon/types/chat/bsky/convo/getLog.ts +53 -0
  162. package/src/lexicon/types/chat/bsky/convo/getMessages.ts +53 -0
  163. package/src/lexicon/types/chat/bsky/convo/leaveConvo.ts +50 -0
  164. package/src/lexicon/types/chat/bsky/convo/listConvos.ts +48 -0
  165. package/src/lexicon/types/chat/bsky/convo/muteConvo.ts +50 -0
  166. package/src/lexicon/types/chat/bsky/convo/sendMessage.ts +48 -0
  167. package/src/lexicon/types/chat/bsky/convo/sendMessageBatch.ts +68 -0
  168. package/src/lexicon/types/chat/bsky/convo/unmuteConvo.ts +50 -0
  169. package/src/lexicon/types/chat/bsky/convo/updateRead.ts +51 -0
  170. package/src/lexicon/types/chat/bsky/moderation/getActorMetadata.ts +67 -0
  171. package/src/lexicon/types/chat/bsky/moderation/getMessageContext.ts +52 -0
  172. package/src/lexicon/types/chat/bsky/moderation/updateActorAccess.ts +40 -0
  173. package/src/proto/bsky_connect.ts +46 -0
  174. package/src/proto/bsky_pb.ts +607 -0
  175. package/src/views/index.ts +15 -2
  176. package/tests/__snapshots__/feed-generation.test.ts.snap +5 -0
  177. package/tests/data-plane/__snapshots__/indexing.test.ts.snap +19 -0
  178. package/tests/views/__snapshots__/author-feed.test.ts.snap +35 -0
  179. package/tests/views/__snapshots__/block-lists.test.ts.snap +10 -0
  180. package/tests/views/__snapshots__/blocks.test.ts.snap +5 -0
  181. package/tests/views/__snapshots__/likes.test.ts.snap +5 -0
  182. package/tests/views/__snapshots__/list-feed.test.ts.snap +5 -0
  183. package/tests/views/__snapshots__/mute-lists.test.ts.snap +5 -0
  184. package/tests/views/__snapshots__/notifications.test.ts.snap +35 -0
  185. package/tests/views/__snapshots__/posts.test.ts.snap +5 -0
  186. package/tests/views/__snapshots__/profile.test.ts.snap +6 -0
  187. package/tests/views/__snapshots__/reposts.test.ts.snap +10 -0
  188. package/tests/views/__snapshots__/timeline.test.ts.snap +110 -0
@@ -89,6 +89,7 @@ export interface ProfileAssociated {
89
89
  lists?: number
90
90
  feedgens?: number
91
91
  labeler?: boolean
92
+ chat?: ProfileAssociatedChat
92
93
  [k: string]: unknown
93
94
  }
94
95
 
@@ -104,6 +105,25 @@ export function validateProfileAssociated(v: unknown): ValidationResult {
104
105
  return lexicons.validate('app.bsky.actor.defs#profileAssociated', v)
105
106
  }
106
107
 
108
+ export interface ProfileAssociatedChat {
109
+ allowIncoming: 'all' | 'none' | 'following' | (string & {})
110
+ [k: string]: unknown
111
+ }
112
+
113
+ export function isProfileAssociatedChat(
114
+ v: unknown,
115
+ ): v is ProfileAssociatedChat {
116
+ return (
117
+ isObj(v) &&
118
+ hasProp(v, '$type') &&
119
+ v.$type === 'app.bsky.actor.defs#profileAssociatedChat'
120
+ )
121
+ }
122
+
123
+ export function validateProfileAssociatedChat(v: unknown): ValidationResult {
124
+ return lexicons.validate('app.bsky.actor.defs#profileAssociatedChat', v)
125
+ }
126
+
107
127
  /** Metadata about the requesting account's relationship with the subject account. Only has meaningful content for authed requests. */
108
128
  export interface ViewerState {
109
129
  muted?: boolean
@@ -0,0 +1,25 @@
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 Record {
10
+ allowIncoming: 'all' | 'none' | 'following' | (string & {})
11
+ [k: string]: unknown
12
+ }
13
+
14
+ export function isRecord(v: unknown): v is Record {
15
+ return (
16
+ isObj(v) &&
17
+ hasProp(v, '$type') &&
18
+ (v.$type === 'chat.bsky.actor.declaration#main' ||
19
+ v.$type === 'chat.bsky.actor.declaration')
20
+ )
21
+ }
22
+
23
+ export function validateRecord(v: unknown): ValidationResult {
24
+ return lexicons.validate('chat.bsky.actor.declaration#main', v)
25
+ }
@@ -0,0 +1,34 @@
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 '../../../app/bsky/actor/defs'
9
+ import * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs'
10
+
11
+ export interface ProfileViewBasic {
12
+ did: string
13
+ handle: string
14
+ displayName?: string
15
+ avatar?: string
16
+ associated?: AppBskyActorDefs.ProfileAssociated
17
+ viewer?: AppBskyActorDefs.ViewerState
18
+ labels?: ComAtprotoLabelDefs.Label[]
19
+ /** Set to true when the actor cannot actively participate in converations */
20
+ chatDisabled?: boolean
21
+ [k: string]: unknown
22
+ }
23
+
24
+ export function isProfileViewBasic(v: unknown): v is ProfileViewBasic {
25
+ return (
26
+ isObj(v) &&
27
+ hasProp(v, '$type') &&
28
+ v.$type === 'chat.bsky.actor.defs#profileViewBasic'
29
+ )
30
+ }
31
+
32
+ export function validateProfileViewBasic(v: unknown): ValidationResult {
33
+ return lexicons.validate('chat.bsky.actor.defs#profileViewBasic', v)
34
+ }
@@ -0,0 +1,42 @@
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, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+
11
+ export interface QueryParams {}
12
+
13
+ export type InputSchema = undefined
14
+
15
+ export interface OutputSchema {
16
+ [k: string]: unknown
17
+ }
18
+
19
+ export type HandlerInput = undefined
20
+
21
+ export interface HandlerSuccess {
22
+ encoding: 'application/json'
23
+ body: OutputSchema
24
+ headers?: { [key: string]: string }
25
+ }
26
+
27
+ export interface HandlerError {
28
+ status: number
29
+ message?: string
30
+ }
31
+
32
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
33
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
34
+ auth: HA
35
+ params: QueryParams
36
+ input: HandlerInput
37
+ req: express.Request
38
+ res: express.Response
39
+ }
40
+ export type Handler<HA extends HandlerAuth = never> = (
41
+ ctx: HandlerReqCtx<HA>,
42
+ ) => Promise<HandlerOutput> | HandlerOutput
@@ -0,0 +1,38 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import express from 'express'
5
+ import stream from 'stream'
6
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
7
+ import { lexicons } from '../../../../lexicons'
8
+ import { isObj, hasProp } from '../../../../util'
9
+ import { CID } from 'multiformats/cid'
10
+ import { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server'
11
+
12
+ export interface QueryParams {}
13
+
14
+ export type InputSchema = undefined
15
+ export type HandlerInput = undefined
16
+
17
+ export interface HandlerSuccess {
18
+ encoding: 'application/jsonl'
19
+ body: Uint8Array | stream.Readable
20
+ headers?: { [key: string]: string }
21
+ }
22
+
23
+ export interface HandlerError {
24
+ status: number
25
+ message?: string
26
+ }
27
+
28
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
29
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
30
+ auth: HA
31
+ params: QueryParams
32
+ input: HandlerInput
33
+ req: express.Request
34
+ res: express.Response
35
+ }
36
+ export type Handler<HA extends HandlerAuth = never> = (
37
+ ctx: HandlerReqCtx<HA>,
38
+ ) => Promise<HandlerOutput> | HandlerOutput
@@ -0,0 +1,215 @@
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 '../../../app/bsky/richtext/facet'
9
+ import * as AppBskyEmbedRecord from '../../../app/bsky/embed/record'
10
+ import * as ChatBskyActorDefs from '../actor/defs'
11
+
12
+ export interface MessageRef {
13
+ did: string
14
+ messageId: string
15
+ [k: string]: unknown
16
+ }
17
+
18
+ export function isMessageRef(v: unknown): v is MessageRef {
19
+ return (
20
+ isObj(v) &&
21
+ hasProp(v, '$type') &&
22
+ v.$type === 'chat.bsky.convo.defs#messageRef'
23
+ )
24
+ }
25
+
26
+ export function validateMessageRef(v: unknown): ValidationResult {
27
+ return lexicons.validate('chat.bsky.convo.defs#messageRef', v)
28
+ }
29
+
30
+ export interface Message {
31
+ id?: string
32
+ text: string
33
+ /** Annotations of text (mentions, URLs, hashtags, etc) */
34
+ facets?: AppBskyRichtextFacet.Main[]
35
+ embed?: AppBskyEmbedRecord.Main | { $type: string; [k: string]: unknown }
36
+ [k: string]: unknown
37
+ }
38
+
39
+ export function isMessage(v: unknown): v is Message {
40
+ return (
41
+ isObj(v) &&
42
+ hasProp(v, '$type') &&
43
+ v.$type === 'chat.bsky.convo.defs#message'
44
+ )
45
+ }
46
+
47
+ export function validateMessage(v: unknown): ValidationResult {
48
+ return lexicons.validate('chat.bsky.convo.defs#message', v)
49
+ }
50
+
51
+ export interface MessageView {
52
+ id: string
53
+ rev: string
54
+ text: string
55
+ /** Annotations of text (mentions, URLs, hashtags, etc) */
56
+ facets?: AppBskyRichtextFacet.Main[]
57
+ embed?: AppBskyEmbedRecord.Main | { $type: string; [k: string]: unknown }
58
+ sender: MessageViewSender
59
+ sentAt: string
60
+ [k: string]: unknown
61
+ }
62
+
63
+ export function isMessageView(v: unknown): v is MessageView {
64
+ return (
65
+ isObj(v) &&
66
+ hasProp(v, '$type') &&
67
+ v.$type === 'chat.bsky.convo.defs#messageView'
68
+ )
69
+ }
70
+
71
+ export function validateMessageView(v: unknown): ValidationResult {
72
+ return lexicons.validate('chat.bsky.convo.defs#messageView', v)
73
+ }
74
+
75
+ export interface DeletedMessageView {
76
+ id: string
77
+ rev: string
78
+ sender: MessageViewSender
79
+ sentAt: string
80
+ [k: string]: unknown
81
+ }
82
+
83
+ export function isDeletedMessageView(v: unknown): v is DeletedMessageView {
84
+ return (
85
+ isObj(v) &&
86
+ hasProp(v, '$type') &&
87
+ v.$type === 'chat.bsky.convo.defs#deletedMessageView'
88
+ )
89
+ }
90
+
91
+ export function validateDeletedMessageView(v: unknown): ValidationResult {
92
+ return lexicons.validate('chat.bsky.convo.defs#deletedMessageView', v)
93
+ }
94
+
95
+ export interface MessageViewSender {
96
+ did: string
97
+ [k: string]: unknown
98
+ }
99
+
100
+ export function isMessageViewSender(v: unknown): v is MessageViewSender {
101
+ return (
102
+ isObj(v) &&
103
+ hasProp(v, '$type') &&
104
+ v.$type === 'chat.bsky.convo.defs#messageViewSender'
105
+ )
106
+ }
107
+
108
+ export function validateMessageViewSender(v: unknown): ValidationResult {
109
+ return lexicons.validate('chat.bsky.convo.defs#messageViewSender', v)
110
+ }
111
+
112
+ export interface ConvoView {
113
+ id: string
114
+ rev: string
115
+ members: ChatBskyActorDefs.ProfileViewBasic[]
116
+ lastMessage?:
117
+ | MessageView
118
+ | DeletedMessageView
119
+ | { $type: string; [k: string]: unknown }
120
+ muted: boolean
121
+ unreadCount: number
122
+ [k: string]: unknown
123
+ }
124
+
125
+ export function isConvoView(v: unknown): v is ConvoView {
126
+ return (
127
+ isObj(v) &&
128
+ hasProp(v, '$type') &&
129
+ v.$type === 'chat.bsky.convo.defs#convoView'
130
+ )
131
+ }
132
+
133
+ export function validateConvoView(v: unknown): ValidationResult {
134
+ return lexicons.validate('chat.bsky.convo.defs#convoView', v)
135
+ }
136
+
137
+ export interface LogBeginConvo {
138
+ rev: string
139
+ convoId: string
140
+ [k: string]: unknown
141
+ }
142
+
143
+ export function isLogBeginConvo(v: unknown): v is LogBeginConvo {
144
+ return (
145
+ isObj(v) &&
146
+ hasProp(v, '$type') &&
147
+ v.$type === 'chat.bsky.convo.defs#logBeginConvo'
148
+ )
149
+ }
150
+
151
+ export function validateLogBeginConvo(v: unknown): ValidationResult {
152
+ return lexicons.validate('chat.bsky.convo.defs#logBeginConvo', v)
153
+ }
154
+
155
+ export interface LogLeaveConvo {
156
+ rev: string
157
+ convoId: string
158
+ [k: string]: unknown
159
+ }
160
+
161
+ export function isLogLeaveConvo(v: unknown): v is LogLeaveConvo {
162
+ return (
163
+ isObj(v) &&
164
+ hasProp(v, '$type') &&
165
+ v.$type === 'chat.bsky.convo.defs#logLeaveConvo'
166
+ )
167
+ }
168
+
169
+ export function validateLogLeaveConvo(v: unknown): ValidationResult {
170
+ return lexicons.validate('chat.bsky.convo.defs#logLeaveConvo', v)
171
+ }
172
+
173
+ export interface LogCreateMessage {
174
+ rev: string
175
+ convoId: string
176
+ message:
177
+ | MessageView
178
+ | DeletedMessageView
179
+ | { $type: string; [k: string]: unknown }
180
+ [k: string]: unknown
181
+ }
182
+
183
+ export function isLogCreateMessage(v: unknown): v is LogCreateMessage {
184
+ return (
185
+ isObj(v) &&
186
+ hasProp(v, '$type') &&
187
+ v.$type === 'chat.bsky.convo.defs#logCreateMessage'
188
+ )
189
+ }
190
+
191
+ export function validateLogCreateMessage(v: unknown): ValidationResult {
192
+ return lexicons.validate('chat.bsky.convo.defs#logCreateMessage', v)
193
+ }
194
+
195
+ export interface LogDeleteMessage {
196
+ rev: string
197
+ convoId: string
198
+ message:
199
+ | MessageView
200
+ | DeletedMessageView
201
+ | { $type: string; [k: string]: unknown }
202
+ [k: string]: unknown
203
+ }
204
+
205
+ export function isLogDeleteMessage(v: unknown): v is LogDeleteMessage {
206
+ return (
207
+ isObj(v) &&
208
+ hasProp(v, '$type') &&
209
+ v.$type === 'chat.bsky.convo.defs#logDeleteMessage'
210
+ )
211
+ }
212
+
213
+ export function validateLogDeleteMessage(v: unknown): ValidationResult {
214
+ return lexicons.validate('chat.bsky.convo.defs#logDeleteMessage', v)
215
+ }
@@ -0,0 +1,48 @@
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, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+ import * as ChatBskyConvoDefs from './defs'
11
+
12
+ export interface QueryParams {}
13
+
14
+ export interface InputSchema {
15
+ convoId: string
16
+ messageId: string
17
+ [k: string]: unknown
18
+ }
19
+
20
+ export type OutputSchema = ChatBskyConvoDefs.DeletedMessageView
21
+
22
+ export interface HandlerInput {
23
+ encoding: 'application/json'
24
+ body: InputSchema
25
+ }
26
+
27
+ export interface HandlerSuccess {
28
+ encoding: 'application/json'
29
+ body: OutputSchema
30
+ headers?: { [key: string]: string }
31
+ }
32
+
33
+ export interface HandlerError {
34
+ status: number
35
+ message?: string
36
+ }
37
+
38
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
39
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
40
+ auth: HA
41
+ params: QueryParams
42
+ input: HandlerInput
43
+ req: express.Request
44
+ res: express.Response
45
+ }
46
+ export type Handler<HA extends HandlerAuth = never> = (
47
+ ctx: HandlerReqCtx<HA>,
48
+ ) => Promise<HandlerOutput> | HandlerOutput
@@ -0,0 +1,46 @@
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, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+ import * as ChatBskyConvoDefs from './defs'
11
+
12
+ export interface QueryParams {
13
+ convoId: string
14
+ }
15
+
16
+ export type InputSchema = undefined
17
+
18
+ export interface OutputSchema {
19
+ convo: ChatBskyConvoDefs.ConvoView
20
+ [k: string]: unknown
21
+ }
22
+
23
+ export type HandlerInput = undefined
24
+
25
+ export interface HandlerSuccess {
26
+ encoding: 'application/json'
27
+ body: OutputSchema
28
+ headers?: { [key: string]: string }
29
+ }
30
+
31
+ export interface HandlerError {
32
+ status: number
33
+ message?: string
34
+ }
35
+
36
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
37
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
38
+ auth: HA
39
+ params: QueryParams
40
+ input: HandlerInput
41
+ req: express.Request
42
+ res: express.Response
43
+ }
44
+ export type Handler<HA extends HandlerAuth = never> = (
45
+ ctx: HandlerReqCtx<HA>,
46
+ ) => Promise<HandlerOutput> | HandlerOutput
@@ -0,0 +1,46 @@
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, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+ import * as ChatBskyConvoDefs from './defs'
11
+
12
+ export interface QueryParams {
13
+ members: string[]
14
+ }
15
+
16
+ export type InputSchema = undefined
17
+
18
+ export interface OutputSchema {
19
+ convo: ChatBskyConvoDefs.ConvoView
20
+ [k: string]: unknown
21
+ }
22
+
23
+ export type HandlerInput = undefined
24
+
25
+ export interface HandlerSuccess {
26
+ encoding: 'application/json'
27
+ body: OutputSchema
28
+ headers?: { [key: string]: string }
29
+ }
30
+
31
+ export interface HandlerError {
32
+ status: number
33
+ message?: string
34
+ }
35
+
36
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
37
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
38
+ auth: HA
39
+ params: QueryParams
40
+ input: HandlerInput
41
+ req: express.Request
42
+ res: express.Response
43
+ }
44
+ export type Handler<HA extends HandlerAuth = never> = (
45
+ ctx: HandlerReqCtx<HA>,
46
+ ) => Promise<HandlerOutput> | HandlerOutput
@@ -0,0 +1,53 @@
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, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+ import * as ChatBskyConvoDefs from './defs'
11
+
12
+ export interface QueryParams {
13
+ cursor?: string
14
+ }
15
+
16
+ export type InputSchema = undefined
17
+
18
+ export interface OutputSchema {
19
+ cursor?: string
20
+ logs: (
21
+ | ChatBskyConvoDefs.LogBeginConvo
22
+ | ChatBskyConvoDefs.LogLeaveConvo
23
+ | ChatBskyConvoDefs.LogCreateMessage
24
+ | ChatBskyConvoDefs.LogDeleteMessage
25
+ | { $type: string; [k: string]: unknown }
26
+ )[]
27
+ [k: string]: unknown
28
+ }
29
+
30
+ export type HandlerInput = undefined
31
+
32
+ export interface HandlerSuccess {
33
+ encoding: 'application/json'
34
+ body: OutputSchema
35
+ headers?: { [key: string]: string }
36
+ }
37
+
38
+ export interface HandlerError {
39
+ status: number
40
+ message?: string
41
+ }
42
+
43
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
44
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
45
+ auth: HA
46
+ params: QueryParams
47
+ input: HandlerInput
48
+ req: express.Request
49
+ res: express.Response
50
+ }
51
+ export type Handler<HA extends HandlerAuth = never> = (
52
+ ctx: HandlerReqCtx<HA>,
53
+ ) => Promise<HandlerOutput> | HandlerOutput
@@ -0,0 +1,53 @@
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, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+ import * as ChatBskyConvoDefs from './defs'
11
+
12
+ export interface QueryParams {
13
+ convoId: string
14
+ limit: number
15
+ cursor?: string
16
+ }
17
+
18
+ export type InputSchema = undefined
19
+
20
+ export interface OutputSchema {
21
+ cursor?: string
22
+ messages: (
23
+ | ChatBskyConvoDefs.MessageView
24
+ | ChatBskyConvoDefs.DeletedMessageView
25
+ | { $type: string; [k: string]: unknown }
26
+ )[]
27
+ [k: string]: unknown
28
+ }
29
+
30
+ export type HandlerInput = undefined
31
+
32
+ export interface HandlerSuccess {
33
+ encoding: 'application/json'
34
+ body: OutputSchema
35
+ headers?: { [key: string]: string }
36
+ }
37
+
38
+ export interface HandlerError {
39
+ status: number
40
+ message?: string
41
+ }
42
+
43
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
44
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
45
+ auth: HA
46
+ params: QueryParams
47
+ input: HandlerInput
48
+ req: express.Request
49
+ res: express.Response
50
+ }
51
+ export type Handler<HA extends HandlerAuth = never> = (
52
+ ctx: HandlerReqCtx<HA>,
53
+ ) => Promise<HandlerOutput> | HandlerOutput
@@ -0,0 +1,50 @@
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, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+
11
+ export interface QueryParams {}
12
+
13
+ export interface InputSchema {
14
+ convoId: string
15
+ [k: string]: unknown
16
+ }
17
+
18
+ export interface OutputSchema {
19
+ convoId: string
20
+ rev: string
21
+ [k: string]: unknown
22
+ }
23
+
24
+ export interface HandlerInput {
25
+ encoding: 'application/json'
26
+ body: InputSchema
27
+ }
28
+
29
+ export interface HandlerSuccess {
30
+ encoding: 'application/json'
31
+ body: OutputSchema
32
+ headers?: { [key: string]: string }
33
+ }
34
+
35
+ export interface HandlerError {
36
+ status: number
37
+ message?: string
38
+ }
39
+
40
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
41
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
42
+ auth: HA
43
+ params: QueryParams
44
+ input: HandlerInput
45
+ req: express.Request
46
+ res: express.Response
47
+ }
48
+ export type Handler<HA extends HandlerAuth = never> = (
49
+ ctx: HandlerReqCtx<HA>,
50
+ ) => Promise<HandlerOutput> | HandlerOutput