@atproto/pds 0.4.204 → 0.4.205

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 (70) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/LICENSE.txt +1 -1
  3. package/dist/account-manager/helpers/token.d.ts +32 -32
  4. package/dist/actor-store/blob/transactor.d.ts +0 -2
  5. package/dist/actor-store/blob/transactor.d.ts.map +1 -1
  6. package/dist/actor-store/blob/transactor.js +2 -41
  7. package/dist/actor-store/blob/transactor.js.map +1 -1
  8. package/dist/actor-store/db/schema/blob.d.ts +0 -2
  9. package/dist/actor-store/db/schema/blob.d.ts.map +1 -1
  10. package/dist/actor-store/db/schema/blob.js.map +1 -1
  11. package/dist/lexicon/index.d.ts +13 -0
  12. package/dist/lexicon/index.d.ts.map +1 -1
  13. package/dist/lexicon/index.js +37 -1
  14. package/dist/lexicon/index.js.map +1 -1
  15. package/dist/lexicon/lexicons.d.ts +784 -6
  16. package/dist/lexicon/lexicons.d.ts.map +1 -1
  17. package/dist/lexicon/lexicons.js +404 -2
  18. package/dist/lexicon/lexicons.js.map +1 -1
  19. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +19 -1
  20. package/dist/lexicon/types/app/bsky/actor/defs.d.ts.map +1 -1
  21. package/dist/lexicon/types/app/bsky/actor/defs.js +18 -0
  22. package/dist/lexicon/types/app/bsky/actor/defs.js.map +1 -1
  23. package/dist/lexicon/types/app/bsky/draft/createDraft.d.ts +27 -0
  24. package/dist/lexicon/types/app/bsky/draft/createDraft.d.ts.map +1 -0
  25. package/dist/lexicon/types/app/bsky/draft/createDraft.js +7 -0
  26. package/dist/lexicon/types/app/bsky/draft/createDraft.js.map +1 -0
  27. package/dist/lexicon/types/app/bsky/draft/defs.d.ts +106 -0
  28. package/dist/lexicon/types/app/bsky/draft/defs.d.ts.map +1 -0
  29. package/dist/lexicon/types/app/bsky/draft/defs.js +97 -0
  30. package/dist/lexicon/types/app/bsky/draft/defs.js.map +1 -0
  31. package/dist/lexicon/types/app/bsky/draft/deleteDraft.d.ts +14 -0
  32. package/dist/lexicon/types/app/bsky/draft/deleteDraft.d.ts.map +1 -0
  33. package/dist/lexicon/types/app/bsky/draft/deleteDraft.js +7 -0
  34. package/dist/lexicon/types/app/bsky/draft/deleteDraft.js.map +1 -0
  35. package/dist/lexicon/types/app/bsky/draft/getDrafts.d.ts +24 -0
  36. package/dist/lexicon/types/app/bsky/draft/getDrafts.d.ts.map +1 -0
  37. package/dist/lexicon/types/app/bsky/draft/getDrafts.js +7 -0
  38. package/dist/lexicon/types/app/bsky/draft/getDrafts.js.map +1 -0
  39. package/dist/lexicon/types/app/bsky/draft/updateDraft.d.ts +15 -0
  40. package/dist/lexicon/types/app/bsky/draft/updateDraft.d.ts.map +1 -0
  41. package/dist/lexicon/types/app/bsky/draft/updateDraft.js +7 -0
  42. package/dist/lexicon/types/app/bsky/draft/updateDraft.js.map +1 -0
  43. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedUsers.d.ts +1 -1
  44. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedUsers.js.map +1 -1
  45. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedUsersSkeleton.d.ts +1 -1
  46. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedUsersSkeleton.js.map +1 -1
  47. package/dist/sequencer/events.d.ts +6 -6
  48. package/dist/sequencer/events.js +1 -1
  49. package/dist/sequencer/events.js.map +1 -1
  50. package/package.json +11 -12
  51. package/src/actor-store/blob/transactor.ts +2 -10
  52. package/src/actor-store/db/schema/blob.ts +2 -2
  53. package/src/lexicon/index.ts +62 -0
  54. package/src/lexicon/lexicons.ts +414 -2
  55. package/src/lexicon/types/app/bsky/actor/defs.ts +37 -0
  56. package/src/lexicon/types/app/bsky/draft/createDraft.ts +46 -0
  57. package/src/lexicon/types/app/bsky/draft/defs.ts +208 -0
  58. package/src/lexicon/types/app/bsky/draft/deleteDraft.ts +33 -0
  59. package/src/lexicon/types/app/bsky/draft/getDrafts.ts +42 -0
  60. package/src/lexicon/types/app/bsky/draft/updateDraft.ts +34 -0
  61. package/src/lexicon/types/app/bsky/unspecced/getSuggestedUsers.ts +1 -1
  62. package/src/lexicon/types/app/bsky/unspecced/getSuggestedUsersSkeleton.ts +1 -1
  63. package/src/sequencer/events.ts +2 -2
  64. package/tests/file-uploads.test.ts +0 -6
  65. package/tsconfig.build.tsbuildinfo +1 -1
  66. package/dist/image/index.d.ts +0 -16
  67. package/dist/image/index.d.ts.map +0 -1
  68. package/dist/image/index.js +0 -59
  69. package/dist/image/index.js.map +0 -1
  70. package/src/image/index.ts +0 -67
@@ -251,6 +251,10 @@ export const schemaDict = {
251
251
  type: 'ref',
252
252
  ref: 'lex:app.bsky.actor.defs#profileAssociatedActivitySubscription',
253
253
  },
254
+ germ: {
255
+ type: 'ref',
256
+ ref: 'lex:app.bsky.actor.defs#profileAssociatedGerm',
257
+ },
254
258
  },
255
259
  },
256
260
  profileAssociatedChat: {
@@ -263,6 +267,20 @@ export const schemaDict = {
263
267
  },
264
268
  },
265
269
  },
270
+ profileAssociatedGerm: {
271
+ type: 'object',
272
+ required: ['showButtonTo', 'messageMeUrl'],
273
+ properties: {
274
+ messageMeUrl: {
275
+ type: 'string',
276
+ format: 'uri',
277
+ },
278
+ showButtonTo: {
279
+ type: 'string',
280
+ knownValues: ['usersIFollow', 'everyone'],
281
+ },
282
+ },
283
+ },
266
284
  profileAssociatedActivitySubscription: {
267
285
  type: 'object',
268
286
  required: ['allowSubscriptions'],
@@ -411,6 +429,7 @@ export const schemaDict = {
411
429
  'lex:app.bsky.actor.defs#labelersPref',
412
430
  'lex:app.bsky.actor.defs#postInteractionSettingsPref',
413
431
  'lex:app.bsky.actor.defs#verificationPrefs',
432
+ 'lex:app.bsky.actor.defs#liveEventPreferences',
414
433
  ],
415
434
  },
416
435
  },
@@ -775,6 +794,25 @@ export const schemaDict = {
775
794
  },
776
795
  },
777
796
  },
797
+ liveEventPreferences: {
798
+ type: 'object',
799
+ description: 'Preferences for live events.',
800
+ properties: {
801
+ hiddenFeedIds: {
802
+ description:
803
+ 'A list of feed IDs that the user has hidden from live events.',
804
+ type: 'array',
805
+ items: {
806
+ type: 'string',
807
+ },
808
+ },
809
+ hideAllFeeds: {
810
+ description: 'Whether to hide all feeds from live events.',
811
+ type: 'boolean',
812
+ default: false,
813
+ },
814
+ },
815
+ },
778
816
  postInteractionSettingsPref: {
779
817
  type: 'object',
780
818
  description:
@@ -2218,6 +2256,375 @@ export const schemaDict = {
2218
2256
  },
2219
2257
  },
2220
2258
  },
2259
+ AppBskyDraftCreateDraft: {
2260
+ lexicon: 1,
2261
+ id: 'app.bsky.draft.createDraft',
2262
+ defs: {
2263
+ main: {
2264
+ type: 'procedure',
2265
+ description:
2266
+ 'Inserts a draft using private storage (stash). An upper limit of drafts might be enforced. Requires authentication.',
2267
+ input: {
2268
+ encoding: 'application/json',
2269
+ schema: {
2270
+ type: 'object',
2271
+ required: ['draft'],
2272
+ properties: {
2273
+ draft: {
2274
+ type: 'ref',
2275
+ ref: 'lex:app.bsky.draft.defs#draft',
2276
+ },
2277
+ },
2278
+ },
2279
+ },
2280
+ output: {
2281
+ encoding: 'application/json',
2282
+ schema: {
2283
+ type: 'object',
2284
+ required: ['id'],
2285
+ properties: {
2286
+ id: {
2287
+ type: 'string',
2288
+ description: 'The ID of the created draft.',
2289
+ },
2290
+ },
2291
+ },
2292
+ },
2293
+ errors: [
2294
+ {
2295
+ name: 'DraftLimitReached',
2296
+ description:
2297
+ 'Trying to insert a new draft when the limit was already reached.',
2298
+ },
2299
+ ],
2300
+ },
2301
+ },
2302
+ },
2303
+ AppBskyDraftDefs: {
2304
+ lexicon: 1,
2305
+ id: 'app.bsky.draft.defs',
2306
+ defs: {
2307
+ draftWithId: {
2308
+ description:
2309
+ 'A draft with an identifier, used to store drafts in private storage (stash).',
2310
+ type: 'object',
2311
+ required: ['id', 'draft'],
2312
+ properties: {
2313
+ id: {
2314
+ description: 'A TID to be used as a draft identifier.',
2315
+ type: 'string',
2316
+ format: 'tid',
2317
+ },
2318
+ draft: {
2319
+ type: 'ref',
2320
+ ref: 'lex:app.bsky.draft.defs#draft',
2321
+ },
2322
+ },
2323
+ },
2324
+ draft: {
2325
+ description: 'A draft containing an array of draft posts.',
2326
+ type: 'object',
2327
+ required: ['posts'],
2328
+ properties: {
2329
+ posts: {
2330
+ description: 'Array of draft posts that compose this draft.',
2331
+ type: 'array',
2332
+ minLength: 1,
2333
+ maxLength: 100,
2334
+ items: {
2335
+ type: 'ref',
2336
+ ref: 'lex:app.bsky.draft.defs#draftPost',
2337
+ },
2338
+ },
2339
+ langs: {
2340
+ type: 'array',
2341
+ description:
2342
+ 'Indicates human language of posts primary text content.',
2343
+ maxLength: 3,
2344
+ items: {
2345
+ type: 'string',
2346
+ format: 'language',
2347
+ },
2348
+ },
2349
+ postgateEmbeddingRules: {
2350
+ description:
2351
+ 'Embedding rules for the postgates to be created when this draft is published.',
2352
+ type: 'array',
2353
+ maxLength: 5,
2354
+ items: {
2355
+ type: 'union',
2356
+ refs: ['lex:app.bsky.feed.postgate#disableRule'],
2357
+ },
2358
+ },
2359
+ threadgateAllow: {
2360
+ description:
2361
+ 'Allow-rules for the threadgate to be created when this draft is published.',
2362
+ type: 'array',
2363
+ maxLength: 5,
2364
+ items: {
2365
+ type: 'union',
2366
+ refs: [
2367
+ 'lex:app.bsky.feed.threadgate#mentionRule',
2368
+ 'lex:app.bsky.feed.threadgate#followerRule',
2369
+ 'lex:app.bsky.feed.threadgate#followingRule',
2370
+ 'lex:app.bsky.feed.threadgate#listRule',
2371
+ ],
2372
+ },
2373
+ },
2374
+ },
2375
+ },
2376
+ draftPost: {
2377
+ description: 'One of the posts that compose a draft.',
2378
+ type: 'object',
2379
+ required: ['text'],
2380
+ properties: {
2381
+ text: {
2382
+ type: 'string',
2383
+ maxLength: 3000,
2384
+ maxGraphemes: 300,
2385
+ description: 'The primary post content.',
2386
+ },
2387
+ labels: {
2388
+ type: 'union',
2389
+ description:
2390
+ 'Self-label values for this post. Effectively content warnings.',
2391
+ refs: ['lex:com.atproto.label.defs#selfLabels'],
2392
+ },
2393
+ embedImages: {
2394
+ type: 'array',
2395
+ items: {
2396
+ type: 'ref',
2397
+ ref: 'lex:app.bsky.draft.defs#draftEmbedImage',
2398
+ },
2399
+ maxLength: 4,
2400
+ },
2401
+ embedVideos: {
2402
+ type: 'array',
2403
+ items: {
2404
+ type: 'ref',
2405
+ ref: 'lex:app.bsky.draft.defs#draftEmbedVideo',
2406
+ },
2407
+ maxLength: 1,
2408
+ },
2409
+ embedExternals: {
2410
+ type: 'array',
2411
+ items: {
2412
+ type: 'ref',
2413
+ ref: 'lex:app.bsky.draft.defs#draftEmbedExternal',
2414
+ },
2415
+ maxLength: 1,
2416
+ },
2417
+ embedRecords: {
2418
+ type: 'array',
2419
+ items: {
2420
+ type: 'ref',
2421
+ ref: 'lex:app.bsky.draft.defs#draftEmbedRecord',
2422
+ },
2423
+ maxLength: 1,
2424
+ },
2425
+ },
2426
+ },
2427
+ draftView: {
2428
+ description: 'View to present drafts data to users.',
2429
+ type: 'object',
2430
+ required: ['id', 'draft', 'createdAt', 'updatedAt'],
2431
+ properties: {
2432
+ id: {
2433
+ description: 'A TID to be used as a draft identifier.',
2434
+ type: 'string',
2435
+ format: 'tid',
2436
+ },
2437
+ draft: {
2438
+ type: 'ref',
2439
+ ref: 'lex:app.bsky.draft.defs#draft',
2440
+ },
2441
+ createdAt: {
2442
+ description: 'The time the draft was created.',
2443
+ type: 'string',
2444
+ format: 'datetime',
2445
+ },
2446
+ updatedAt: {
2447
+ description: 'The time the draft was last updated.',
2448
+ type: 'string',
2449
+ format: 'datetime',
2450
+ },
2451
+ },
2452
+ },
2453
+ draftEmbedLocalRef: {
2454
+ type: 'object',
2455
+ required: ['path'],
2456
+ properties: {
2457
+ path: {
2458
+ type: 'string',
2459
+ description:
2460
+ 'Local, on-device ref to file to be embedded. Embeds are currently device-bound for drafts.',
2461
+ minLength: 1,
2462
+ maxLength: 1024,
2463
+ },
2464
+ },
2465
+ },
2466
+ draftEmbedCaption: {
2467
+ type: 'object',
2468
+ required: ['lang', 'content'],
2469
+ properties: {
2470
+ lang: {
2471
+ type: 'string',
2472
+ format: 'language',
2473
+ },
2474
+ content: {
2475
+ type: 'string',
2476
+ maxLength: 10000,
2477
+ },
2478
+ },
2479
+ },
2480
+ draftEmbedImage: {
2481
+ type: 'object',
2482
+ required: ['localRef'],
2483
+ properties: {
2484
+ localRef: {
2485
+ type: 'ref',
2486
+ ref: 'lex:app.bsky.draft.defs#draftEmbedLocalRef',
2487
+ },
2488
+ alt: {
2489
+ type: 'string',
2490
+ maxGraphemes: 2000,
2491
+ },
2492
+ },
2493
+ },
2494
+ draftEmbedVideo: {
2495
+ type: 'object',
2496
+ required: ['localRef'],
2497
+ properties: {
2498
+ localRef: {
2499
+ type: 'ref',
2500
+ ref: 'lex:app.bsky.draft.defs#draftEmbedLocalRef',
2501
+ },
2502
+ alt: {
2503
+ type: 'string',
2504
+ maxGraphemes: 2000,
2505
+ },
2506
+ captions: {
2507
+ type: 'array',
2508
+ items: {
2509
+ type: 'ref',
2510
+ ref: 'lex:app.bsky.draft.defs#draftEmbedCaption',
2511
+ },
2512
+ maxLength: 20,
2513
+ },
2514
+ },
2515
+ },
2516
+ draftEmbedExternal: {
2517
+ type: 'object',
2518
+ required: ['uri'],
2519
+ properties: {
2520
+ uri: {
2521
+ type: 'string',
2522
+ format: 'uri',
2523
+ },
2524
+ },
2525
+ },
2526
+ draftEmbedRecord: {
2527
+ type: 'object',
2528
+ required: ['record'],
2529
+ properties: {
2530
+ record: {
2531
+ type: 'ref',
2532
+ ref: 'lex:com.atproto.repo.strongRef',
2533
+ },
2534
+ },
2535
+ },
2536
+ },
2537
+ },
2538
+ AppBskyDraftDeleteDraft: {
2539
+ lexicon: 1,
2540
+ id: 'app.bsky.draft.deleteDraft',
2541
+ defs: {
2542
+ main: {
2543
+ type: 'procedure',
2544
+ description: 'Deletes a draft by ID. Requires authentication.',
2545
+ input: {
2546
+ encoding: 'application/json',
2547
+ schema: {
2548
+ type: 'object',
2549
+ required: ['id'],
2550
+ properties: {
2551
+ id: {
2552
+ type: 'string',
2553
+ format: 'tid',
2554
+ },
2555
+ },
2556
+ },
2557
+ },
2558
+ },
2559
+ },
2560
+ },
2561
+ AppBskyDraftGetDrafts: {
2562
+ lexicon: 1,
2563
+ id: 'app.bsky.draft.getDrafts',
2564
+ defs: {
2565
+ main: {
2566
+ type: 'query',
2567
+ description: 'Gets views of user drafts. Requires authentication.',
2568
+ parameters: {
2569
+ type: 'params',
2570
+ properties: {
2571
+ limit: {
2572
+ type: 'integer',
2573
+ minimum: 1,
2574
+ maximum: 100,
2575
+ default: 50,
2576
+ },
2577
+ cursor: {
2578
+ type: 'string',
2579
+ },
2580
+ },
2581
+ },
2582
+ output: {
2583
+ encoding: 'application/json',
2584
+ schema: {
2585
+ type: 'object',
2586
+ required: ['drafts'],
2587
+ properties: {
2588
+ cursor: {
2589
+ type: 'string',
2590
+ },
2591
+ drafts: {
2592
+ type: 'array',
2593
+ items: {
2594
+ type: 'ref',
2595
+ ref: 'lex:app.bsky.draft.defs#draftView',
2596
+ },
2597
+ },
2598
+ },
2599
+ },
2600
+ },
2601
+ },
2602
+ },
2603
+ },
2604
+ AppBskyDraftUpdateDraft: {
2605
+ lexicon: 1,
2606
+ id: 'app.bsky.draft.updateDraft',
2607
+ defs: {
2608
+ main: {
2609
+ type: 'procedure',
2610
+ description:
2611
+ "Updates a draft using private storage (stash). If the draft ID points to a non-existing ID, the update will be silently ignored. This is done because updates don't enforce draft limit, so it accepts all writes, but will ignore invalid ones. Requires authentication.",
2612
+ input: {
2613
+ encoding: 'application/json',
2614
+ schema: {
2615
+ type: 'object',
2616
+ required: ['draft'],
2617
+ properties: {
2618
+ draft: {
2619
+ type: 'ref',
2620
+ ref: 'lex:app.bsky.draft.defs#draftWithId',
2621
+ },
2622
+ },
2623
+ },
2624
+ },
2625
+ },
2626
+ },
2627
+ },
2221
2628
  AppBskyEmbedDefs: {
2222
2629
  lexicon: 1,
2223
2630
  id: 'app.bsky.embed.defs',
@@ -8031,7 +8438,7 @@ export const schemaDict = {
8031
8438
  },
8032
8439
  },
8033
8440
  recId: {
8034
- type: 'integer',
8441
+ type: 'string',
8035
8442
  description:
8036
8443
  'Snowflake for this recommendation, use when submitting recommendation events.',
8037
8444
  },
@@ -8084,7 +8491,7 @@ export const schemaDict = {
8084
8491
  },
8085
8492
  },
8086
8493
  recId: {
8087
- type: 'integer',
8494
+ type: 'string',
8088
8495
  description:
8089
8496
  'Snowflake for this recommendation, use when submitting recommendation events.',
8090
8497
  },
@@ -20128,6 +20535,11 @@ export const ids = {
20128
20535
  AppBskyContactStartPhoneVerification:
20129
20536
  'app.bsky.contact.startPhoneVerification',
20130
20537
  AppBskyContactVerifyPhone: 'app.bsky.contact.verifyPhone',
20538
+ AppBskyDraftCreateDraft: 'app.bsky.draft.createDraft',
20539
+ AppBskyDraftDefs: 'app.bsky.draft.defs',
20540
+ AppBskyDraftDeleteDraft: 'app.bsky.draft.deleteDraft',
20541
+ AppBskyDraftGetDrafts: 'app.bsky.draft.getDrafts',
20542
+ AppBskyDraftUpdateDraft: 'app.bsky.draft.updateDraft',
20131
20543
  AppBskyEmbedDefs: 'app.bsky.embed.defs',
20132
20544
  AppBskyEmbedExternal: 'app.bsky.embed.external',
20133
20545
  AppBskyEmbedImages: 'app.bsky.embed.images',
@@ -121,6 +121,7 @@ export interface ProfileAssociated {
121
121
  labeler?: boolean
122
122
  chat?: ProfileAssociatedChat
123
123
  activitySubscription?: ProfileAssociatedActivitySubscription
124
+ germ?: ProfileAssociatedGerm
124
125
  }
125
126
 
126
127
  const hashProfileAssociated = 'profileAssociated'
@@ -148,6 +149,22 @@ export function validateProfileAssociatedChat<V>(v: V) {
148
149
  return validate<ProfileAssociatedChat & V>(v, id, hashProfileAssociatedChat)
149
150
  }
150
151
 
152
+ export interface ProfileAssociatedGerm {
153
+ $type?: 'app.bsky.actor.defs#profileAssociatedGerm'
154
+ messageMeUrl: string
155
+ showButtonTo: 'usersIFollow' | 'everyone' | (string & {})
156
+ }
157
+
158
+ const hashProfileAssociatedGerm = 'profileAssociatedGerm'
159
+
160
+ export function isProfileAssociatedGerm<V>(v: V) {
161
+ return is$typed(v, id, hashProfileAssociatedGerm)
162
+ }
163
+
164
+ export function validateProfileAssociatedGerm<V>(v: V) {
165
+ return validate<ProfileAssociatedGerm & V>(v, id, hashProfileAssociatedGerm)
166
+ }
167
+
151
168
  export interface ProfileAssociatedActivitySubscription {
152
169
  $type?: 'app.bsky.actor.defs#profileAssociatedActivitySubscription'
153
170
  allowSubscriptions: 'followers' | 'mutuals' | 'none' | (string & {})
@@ -269,6 +286,7 @@ export type Preferences = (
269
286
  | $Typed<LabelersPref>
270
287
  | $Typed<PostInteractionSettingsPref>
271
288
  | $Typed<VerificationPrefs>
289
+ | $Typed<LiveEventPreferences>
272
290
  | { $type: string }
273
291
  )[]
274
292
 
@@ -618,6 +636,25 @@ export function validateVerificationPrefs<V>(v: V) {
618
636
  return validate<VerificationPrefs & V>(v, id, hashVerificationPrefs)
619
637
  }
620
638
 
639
+ /** Preferences for live events. */
640
+ export interface LiveEventPreferences {
641
+ $type?: 'app.bsky.actor.defs#liveEventPreferences'
642
+ /** A list of feed IDs that the user has hidden from live events. */
643
+ hiddenFeedIds?: string[]
644
+ /** Whether to hide all feeds from live events. */
645
+ hideAllFeeds: boolean
646
+ }
647
+
648
+ const hashLiveEventPreferences = 'liveEventPreferences'
649
+
650
+ export function isLiveEventPreferences<V>(v: V) {
651
+ return is$typed(v, id, hashLiveEventPreferences)
652
+ }
653
+
654
+ export function validateLiveEventPreferences<V>(v: V) {
655
+ return validate<LiveEventPreferences & V>(v, id, hashLiveEventPreferences)
656
+ }
657
+
621
658
  /** Default post interaction settings for the account. These values should be applied as default values when creating new posts. These refs should mirror the threadgate and postgate records exactly. */
622
659
  export interface PostInteractionSettingsPref {
623
660
  $type?: 'app.bsky.actor.defs#postInteractionSettingsPref'
@@ -0,0 +1,46 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import { type ValidationResult, BlobRef } from '@atproto/lexicon'
5
+ import { CID } from 'multiformats/cid'
6
+ import { validate as _validate } from '../../../../lexicons'
7
+ import {
8
+ type $Typed,
9
+ is$typed as _is$typed,
10
+ type OmitKey,
11
+ } from '../../../../util'
12
+ import type * as AppBskyDraftDefs from './defs.js'
13
+
14
+ const is$typed = _is$typed,
15
+ validate = _validate
16
+ const id = 'app.bsky.draft.createDraft'
17
+
18
+ export type QueryParams = {}
19
+
20
+ export interface InputSchema {
21
+ draft: AppBskyDraftDefs.Draft
22
+ }
23
+
24
+ export interface OutputSchema {
25
+ /** The ID of the created draft. */
26
+ id: string
27
+ }
28
+
29
+ export interface HandlerInput {
30
+ encoding: 'application/json'
31
+ body: InputSchema
32
+ }
33
+
34
+ export interface HandlerSuccess {
35
+ encoding: 'application/json'
36
+ body: OutputSchema
37
+ headers?: { [key: string]: string }
38
+ }
39
+
40
+ export interface HandlerError {
41
+ status: number
42
+ message?: string
43
+ error?: 'DraftLimitReached'
44
+ }
45
+
46
+ export type HandlerOutput = HandlerError | HandlerSuccess