@viceme-ai/sdk 0.1.6 → 0.3.0

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 (54) hide show
  1. package/README.md +29 -5
  2. package/dist/bootstrap.min.js +1 -1
  3. package/dist/bootstrap.min.js.map +1 -1
  4. package/dist/chunks/client-DKsaEtwq.js +941 -0
  5. package/dist/chunks/client-DKsaEtwq.js.map +1 -0
  6. package/dist/chunks/version-C3KVoLNb.js +51 -0
  7. package/dist/chunks/version-C3KVoLNb.js.map +1 -0
  8. package/dist/core/build-endpoints.d.ts +9 -0
  9. package/dist/core/build-endpoints.d.ts.map +1 -0
  10. package/dist/core/capabilities.d.ts +79 -0
  11. package/dist/core/capabilities.d.ts.map +1 -0
  12. package/dist/core/client.d.ts +14 -2
  13. package/dist/core/client.d.ts.map +1 -1
  14. package/dist/core/config.d.ts.map +1 -1
  15. package/dist/core/errors.d.ts +1 -1
  16. package/dist/core/errors.d.ts.map +1 -1
  17. package/dist/core/presentation.d.ts +24 -0
  18. package/dist/core/presentation.d.ts.map +1 -0
  19. package/dist/danmaku/anchor.d.ts +14 -0
  20. package/dist/danmaku/anchor.d.ts.map +1 -0
  21. package/dist/danmaku/index.d.ts +12 -0
  22. package/dist/danmaku/index.d.ts.map +1 -0
  23. package/dist/danmaku/mount.d.ts +5 -0
  24. package/dist/danmaku/mount.d.ts.map +1 -0
  25. package/dist/danmaku.js +198 -0
  26. package/dist/danmaku.js.map +1 -0
  27. package/dist/generated/public-contract.d.ts +630 -14
  28. package/dist/generated/public-contract.d.ts.map +1 -1
  29. package/dist/index.d.ts +5 -4
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +52 -50
  32. package/dist/index.js.map +1 -1
  33. package/dist/loader/attributes.d.ts +1 -1
  34. package/dist/loader/attributes.d.ts.map +1 -1
  35. package/dist/loader/auto-loader.d.ts +6 -6
  36. package/dist/loader/auto-loader.d.ts.map +1 -1
  37. package/dist/loader/mount-handle.d.ts +2 -2
  38. package/dist/loader/mount-handle.d.ts.map +1 -1
  39. package/dist/loader/registry.d.ts +2 -2
  40. package/dist/manifest.json +37 -23
  41. package/dist/session/session.d.ts +15 -2
  42. package/dist/session/session.d.ts.map +1 -1
  43. package/dist/testing/test-adapter.d.ts +3 -1
  44. package/dist/testing/test-adapter.d.ts.map +1 -1
  45. package/dist/testing.js +14 -8
  46. package/dist/testing.js.map +1 -1
  47. package/dist/transport/transport.d.ts +4 -2
  48. package/dist/transport/transport.d.ts.map +1 -1
  49. package/dist/version.d.ts +1 -1
  50. package/dist/viceme.min.js +232 -1
  51. package/dist/viceme.min.js.map +1 -1
  52. package/package.json +8 -5
  53. package/dist/chunks/client-BAlcnQI_.js +0 -275
  54. package/dist/chunks/client-BAlcnQI_.js.map +0 -1
@@ -2,7 +2,7 @@
2
2
  * GENERATED FILE — DO NOT EDIT.
3
3
  *
4
4
  * Generated from contracts/public-capabilities.openapi.json
5
- * (contractVersion 0.1.0, sha256 a9c5d56d90eb2654…)
5
+ * (contractVersion 0.4.0, sha256 959598f82f106ea3…)
6
6
  * by scripts/generate-contracts.mjs. Regenerate with `pnpm contracts:generate`.
7
7
  */
8
8
  /**
@@ -10,7 +10,7 @@
10
10
  * Do not make direct changes to the file.
11
11
  */
12
12
  export interface paths {
13
- "/public/v1/work-sessions": {
13
+ "/v1/public/v1/work-sessions": {
14
14
  parameters: {
15
15
  query?: never;
16
16
  header?: never;
@@ -21,7 +21,7 @@ export interface paths {
21
21
  put?: never;
22
22
  /**
23
23
  * Establish a public visitor session for a Work
24
- * @description Binds a short-lived capability token to the Work, the caller Origin, the enabled capability set, and an expiry. The workKey locates the Work; it is never an authorization credential. CORS: exact registered origins only, credentials disabled.
24
+ * @description Binds a short-lived capability token to the Work, the caller Origin, the enabled capability set, and an expiry. The workKey locates the Work; it is never an authorization credential. CORS accepts any browser Origin with credentials disabled; no creator-managed Origin allowlist is required.
25
25
  */
26
26
  post: operations["createWorkSession"];
27
27
  delete?: never;
@@ -30,6 +30,172 @@ export interface paths {
30
30
  patch?: never;
31
31
  trace?: never;
32
32
  };
33
+ "/v1/public/v1/auth/wechat/authorize": {
34
+ parameters: {
35
+ query?: never;
36
+ header?: never;
37
+ path?: never;
38
+ cookie?: never;
39
+ };
40
+ get?: never;
41
+ put?: never;
42
+ post: operations["authorizeWechat"];
43
+ delete?: never;
44
+ options?: never;
45
+ head?: never;
46
+ patch?: never;
47
+ trace?: never;
48
+ };
49
+ "/v1/public/v1/auth/exchange": {
50
+ parameters: {
51
+ query?: never;
52
+ header?: never;
53
+ path?: never;
54
+ cookie?: never;
55
+ };
56
+ get?: never;
57
+ put?: never;
58
+ post: operations["exchangeWechatCode"];
59
+ delete?: never;
60
+ options?: never;
61
+ head?: never;
62
+ patch?: never;
63
+ trace?: never;
64
+ };
65
+ "/v1/public/v1/auth/resume-codes": {
66
+ parameters: {
67
+ query?: never;
68
+ header?: never;
69
+ path?: never;
70
+ cookie?: never;
71
+ };
72
+ get?: never;
73
+ put?: never;
74
+ post: operations["createAuthResumeCode"];
75
+ delete?: never;
76
+ options?: never;
77
+ head?: never;
78
+ patch?: never;
79
+ trace?: never;
80
+ };
81
+ "/v1/public/v1/auth/resume": {
82
+ parameters: {
83
+ query?: never;
84
+ header?: never;
85
+ path?: never;
86
+ cookie?: never;
87
+ };
88
+ get?: never;
89
+ put?: never;
90
+ post: operations["resumeAuthenticatedSession"];
91
+ delete?: never;
92
+ options?: never;
93
+ head?: never;
94
+ patch?: never;
95
+ trace?: never;
96
+ };
97
+ "/v1/public/v1/follow": {
98
+ parameters: {
99
+ query?: never;
100
+ header?: never;
101
+ path?: never;
102
+ cookie?: never;
103
+ };
104
+ get: operations["getFollowState"];
105
+ put: operations["followWorkOwner"];
106
+ post?: never;
107
+ delete: operations["unfollowWorkOwner"];
108
+ options?: never;
109
+ head?: never;
110
+ patch?: never;
111
+ trace?: never;
112
+ };
113
+ "/v1/public/v1/access/check": {
114
+ parameters: {
115
+ query?: never;
116
+ header?: never;
117
+ path?: never;
118
+ cookie?: never;
119
+ };
120
+ get?: never;
121
+ put?: never;
122
+ post: operations["checkFeatureAccess"];
123
+ delete?: never;
124
+ options?: never;
125
+ head?: never;
126
+ patch?: never;
127
+ trace?: never;
128
+ };
129
+ "/v1/public/v1/access/features": {
130
+ parameters: {
131
+ query?: never;
132
+ header?: never;
133
+ path?: never;
134
+ cookie?: never;
135
+ };
136
+ /**
137
+ * List active feature presentation
138
+ * @description Returns server-authoritative titles and current prices for host-native access entry points. It does not alter access, checkout, or payment state.
139
+ */
140
+ get: operations["listAccessFeatures"];
141
+ put?: never;
142
+ post?: never;
143
+ delete?: never;
144
+ options?: never;
145
+ head?: never;
146
+ patch?: never;
147
+ trace?: never;
148
+ };
149
+ "/v1/public/v1/checkout/sessions": {
150
+ parameters: {
151
+ query?: never;
152
+ header?: never;
153
+ path?: never;
154
+ cookie?: never;
155
+ };
156
+ get?: never;
157
+ put?: never;
158
+ post: operations["createCheckoutSession"];
159
+ delete?: never;
160
+ options?: never;
161
+ head?: never;
162
+ patch?: never;
163
+ trace?: never;
164
+ };
165
+ "/v1/public/v1/checkout/bootstrap": {
166
+ parameters: {
167
+ query?: never;
168
+ header?: never;
169
+ path?: never;
170
+ cookie?: never;
171
+ };
172
+ get?: never;
173
+ put?: never;
174
+ post: operations["bootstrapEmbeddedCheckout"];
175
+ delete?: never;
176
+ options?: never;
177
+ head?: never;
178
+ patch?: never;
179
+ trace?: never;
180
+ };
181
+ "/v1/danmaku/messages": {
182
+ parameters: {
183
+ query?: never;
184
+ header?: never;
185
+ path?: never;
186
+ cookie?: never;
187
+ };
188
+ /** List public danmaku messages for one page-position anchor */
189
+ get: operations["listDanmakuMessages"];
190
+ put?: never;
191
+ /** Create a public danmaku message */
192
+ post: operations["createDanmakuMessage"];
193
+ delete?: never;
194
+ options?: never;
195
+ head?: never;
196
+ patch?: never;
197
+ trace?: never;
198
+ };
33
199
  }
34
200
  export type webhooks = Record<string, never>;
35
201
  export interface components {
@@ -57,19 +223,147 @@ export interface components {
57
223
  } & {
58
224
  [key: string]: unknown;
59
225
  };
60
- ErrorBody: {
61
- error: {
226
+ WorkUser: {
227
+ subject: string;
228
+ nickname: string | null;
229
+ /** Format: uri */
230
+ avatarUrl: string | null;
231
+ };
232
+ AuthAuthorizeRequest: {
233
+ channel: string;
234
+ /** @enum {string} */
235
+ clientType?: "h5" | "pc";
236
+ /** @enum {string} */
237
+ locale: "zh-CN" | "en-US";
238
+ };
239
+ AuthAuthorizeResponse: {
240
+ /** Format: uri */
241
+ authorizationUrl: string;
242
+ /** Format: uri */
243
+ completionOrigin: string;
244
+ };
245
+ AuthExchangeRequest: {
246
+ code: string;
247
+ codeVerifier: string;
248
+ };
249
+ AuthExchangeResponse: {
250
+ token: string;
251
+ expiresAt: number;
252
+ user: components["schemas"]["WorkUser"];
253
+ };
254
+ AuthResumeCodeResponse: {
255
+ code: string;
256
+ expiresAt: number;
257
+ };
258
+ AuthResumeRequest: {
259
+ code: string;
260
+ };
261
+ FollowState: {
262
+ following: boolean;
263
+ /** Format: date-time */
264
+ followedAt: string | null;
265
+ target: components["schemas"]["FollowTarget"];
266
+ };
267
+ FollowTarget: {
268
+ /** @enum {string} */
269
+ kind: "CREATOR" | "USER";
270
+ displayName: string;
271
+ /** Format: uri */
272
+ avatarUrl: string | null;
273
+ description: string | null;
274
+ workCount: number;
275
+ coverUrls: string[];
276
+ };
277
+ AccessCheckRequest: {
278
+ featureKeys: string[];
279
+ };
280
+ AccessDecision: {
281
+ allowed: boolean;
282
+ /** @enum {string} */
283
+ reason: "OWNER" | "FOLLOWING" | "PURCHASED" | "ENTITLED" | "AUTH_REQUIRED" | "FOLLOW_REQUIRED" | "PURCHASE_REQUIRED" | "FEATURE_NOT_FOUND" | "FEATURE_DISABLED" | "POLICY_UNSUPPORTED";
284
+ /** @enum {string|null} */
285
+ nextAction: "SIGN_IN" | "FOLLOW" | "CHECKOUT" | null;
286
+ };
287
+ AccessCheckResponse: {
288
+ decisions: {
289
+ [key: string]: components["schemas"]["AccessDecision"];
290
+ };
291
+ };
292
+ AccessFeaturePrice: {
293
+ amountCents: number;
294
+ /** @enum {string} */
295
+ currency: "CNY";
296
+ };
297
+ AccessFeaturePresentation: {
298
+ featureKey: string;
299
+ title: string;
300
+ policy: {
62
301
  /** @enum {string} */
63
- code: "CONFIG_INVALID" | "WORK_NOT_FOUND" | "ORIGIN_NOT_ALLOWED" | "CAPABILITY_DISABLED" | "SESSION_EXPIRED" | "RATE_LIMITED" | "NETWORK_TIMEOUT" | "CHECKOUT_UNAVAILABLE" | "INTERNAL_ERROR";
64
- message?: string;
65
- retryable?: boolean;
66
- requestId?: string;
302
+ type: "PUBLIC" | "FOLLOW_OWNER" | "WORK_ENTITLEMENT";
67
303
  };
304
+ price: components["schemas"]["AccessFeaturePrice"] | null;
305
+ };
306
+ AccessFeaturesResponse: {
307
+ features: components["schemas"]["AccessFeaturePresentation"][];
308
+ };
309
+ CheckoutRequest: {
310
+ featureKey: string;
311
+ /**
312
+ * @default zh-CN
313
+ * @enum {string}
314
+ */
315
+ locale: "zh-CN" | "en-US";
316
+ channel: string;
317
+ };
318
+ CheckoutResponse: {
319
+ /** Format: uri */
320
+ checkoutUrl: string;
321
+ alreadyOwned: boolean;
322
+ /** Format: uri */
323
+ completionOrigin: string;
324
+ };
325
+ CheckoutBootstrapRequest: {
326
+ code: string;
327
+ };
328
+ CheckoutBootstrapResponse: {
329
+ token: string;
330
+ /** Format: date-time */
331
+ expiresAt: string;
332
+ resumeCode: string;
333
+ };
334
+ ErrorBody: {
335
+ statusCode: number;
336
+ /** @enum {string} */
337
+ code: "CONFIG_INVALID" | "WORK_NOT_FOUND" | "CAPABILITY_DISABLED" | "SESSION_EXPIRED" | "AUTH_REQUIRED" | "SDK_AUTH_CODE_INVALID" | "RETURN_URL_NOT_ALLOWED" | "RATE_LIMITED" | "NETWORK_TIMEOUT" | "CHECKOUT_UNAVAILABLE" | "INTERNAL_ERROR";
338
+ message: string;
339
+ requestId: string;
340
+ };
341
+ /** @description Opaque page-position anchor derived by the external SDK. */
342
+ DanmakuAnchorKey: string;
343
+ DanmakuCursor: string;
344
+ DanmakuMessage: {
345
+ /** Format: uuid */
346
+ id: string;
347
+ workKey: components["schemas"]["WorkKey"];
348
+ content: string;
349
+ anchorKey: components["schemas"]["DanmakuAnchorKey"] | null;
350
+ /** Format: date-time */
351
+ createdAt: string;
352
+ };
353
+ DanmakuMessagesResponse: {
354
+ items: components["schemas"]["DanmakuMessage"][];
355
+ nextCursor: components["schemas"]["DanmakuCursor"] | null;
356
+ total: number;
357
+ };
358
+ CreateDanmakuMessageRequest: {
359
+ workKey: components["schemas"]["WorkKey"];
360
+ content: string;
361
+ anchorKey?: components["schemas"]["DanmakuAnchorKey"];
68
362
  };
69
363
  };
70
364
  responses: {
71
- /** @description Invalid configuration. */
72
- ValidationError: {
365
+ /** @description Public request rejected. */
366
+ PublicError: {
73
367
  headers: {
74
368
  [name: string]: unknown;
75
369
  };
@@ -77,8 +371,8 @@ export interface components {
77
371
  "application/json": components["schemas"]["ErrorBody"];
78
372
  };
79
373
  };
80
- /** @description Origin not registered for this work (fail closed). */
81
- OriginNotAllowed: {
374
+ /** @description Invalid configuration. */
375
+ ValidationError: {
82
376
  headers: {
83
377
  [name: string]: unknown;
84
378
  };
@@ -113,6 +407,15 @@ export interface components {
113
407
  "application/json": components["schemas"]["ErrorBody"];
114
408
  };
115
409
  };
410
+ /** @description Invalid query or body. */
411
+ BadRequest: {
412
+ headers: {
413
+ [name: string]: unknown;
414
+ };
415
+ content: {
416
+ "application/json": components["schemas"]["ErrorBody"];
417
+ };
418
+ };
116
419
  };
117
420
  parameters: never;
118
421
  requestBodies: never;
@@ -146,11 +449,324 @@ export interface operations {
146
449
  };
147
450
  };
148
451
  400: components["responses"]["ValidationError"];
149
- 403: components["responses"]["OriginNotAllowed"];
150
452
  404: components["responses"]["WorkNotFound"];
151
453
  429: components["responses"]["RateLimited"];
152
454
  "5xx": components["responses"]["InternalError"];
153
455
  };
154
456
  };
457
+ authorizeWechat: {
458
+ parameters: {
459
+ query?: never;
460
+ header?: never;
461
+ path?: never;
462
+ cookie?: never;
463
+ };
464
+ requestBody: {
465
+ content: {
466
+ "application/json": components["schemas"]["AuthAuthorizeRequest"];
467
+ };
468
+ };
469
+ responses: {
470
+ /** @description Hosted WeChat authorization URL. */
471
+ 200: {
472
+ headers: {
473
+ [name: string]: unknown;
474
+ };
475
+ content: {
476
+ "application/json": components["schemas"]["AuthAuthorizeResponse"];
477
+ };
478
+ };
479
+ "4xx": components["responses"]["PublicError"];
480
+ "5xx": components["responses"]["InternalError"];
481
+ };
482
+ };
483
+ exchangeWechatCode: {
484
+ parameters: {
485
+ query?: never;
486
+ header?: never;
487
+ path?: never;
488
+ cookie?: never;
489
+ };
490
+ requestBody: {
491
+ content: {
492
+ "application/json": components["schemas"]["AuthExchangeRequest"];
493
+ };
494
+ };
495
+ responses: {
496
+ /** @description Authenticated work session. */
497
+ 200: {
498
+ headers: {
499
+ [name: string]: unknown;
500
+ };
501
+ content: {
502
+ "application/json": components["schemas"]["AuthExchangeResponse"];
503
+ };
504
+ };
505
+ "4xx": components["responses"]["PublicError"];
506
+ "5xx": components["responses"]["InternalError"];
507
+ };
508
+ };
509
+ createAuthResumeCode: {
510
+ parameters: {
511
+ query?: never;
512
+ header?: never;
513
+ path?: never;
514
+ cookie?: never;
515
+ };
516
+ requestBody?: never;
517
+ responses: {
518
+ /** @description Compatibility endpoint for restoring an authenticated work session. */
519
+ 200: {
520
+ headers: {
521
+ [name: string]: unknown;
522
+ };
523
+ content: {
524
+ "application/json": components["schemas"]["AuthResumeCodeResponse"];
525
+ };
526
+ };
527
+ "4xx": components["responses"]["PublicError"];
528
+ };
529
+ };
530
+ resumeAuthenticatedSession: {
531
+ parameters: {
532
+ query?: never;
533
+ header?: never;
534
+ path?: never;
535
+ cookie?: never;
536
+ };
537
+ requestBody: {
538
+ content: {
539
+ "application/json": components["schemas"]["AuthResumeRequest"];
540
+ };
541
+ };
542
+ responses: {
543
+ /** @description Restored authenticated work session. */
544
+ 200: {
545
+ headers: {
546
+ [name: string]: unknown;
547
+ };
548
+ content: {
549
+ "application/json": components["schemas"]["AuthExchangeResponse"];
550
+ };
551
+ };
552
+ "4xx": components["responses"]["PublicError"];
553
+ };
554
+ };
555
+ getFollowState: {
556
+ parameters: {
557
+ query?: never;
558
+ header?: never;
559
+ path?: never;
560
+ cookie?: never;
561
+ };
562
+ requestBody?: never;
563
+ responses: {
564
+ /** @description Current follow state. */
565
+ 200: {
566
+ headers: {
567
+ [name: string]: unknown;
568
+ };
569
+ content: {
570
+ "application/json": components["schemas"]["FollowState"];
571
+ };
572
+ };
573
+ "4xx": components["responses"]["PublicError"];
574
+ };
575
+ };
576
+ followWorkOwner: {
577
+ parameters: {
578
+ query?: never;
579
+ header?: never;
580
+ path?: never;
581
+ cookie?: never;
582
+ };
583
+ requestBody?: never;
584
+ responses: {
585
+ /** @description Followed. */
586
+ 200: {
587
+ headers: {
588
+ [name: string]: unknown;
589
+ };
590
+ content: {
591
+ "application/json": components["schemas"]["FollowState"];
592
+ };
593
+ };
594
+ "4xx": components["responses"]["PublicError"];
595
+ };
596
+ };
597
+ unfollowWorkOwner: {
598
+ parameters: {
599
+ query?: never;
600
+ header?: never;
601
+ path?: never;
602
+ cookie?: never;
603
+ };
604
+ requestBody?: never;
605
+ responses: {
606
+ /** @description Unfollowed. */
607
+ 200: {
608
+ headers: {
609
+ [name: string]: unknown;
610
+ };
611
+ content: {
612
+ "application/json": components["schemas"]["FollowState"];
613
+ };
614
+ };
615
+ "4xx": components["responses"]["PublicError"];
616
+ };
617
+ };
618
+ checkFeatureAccess: {
619
+ parameters: {
620
+ query?: never;
621
+ header?: never;
622
+ path?: never;
623
+ cookie?: never;
624
+ };
625
+ requestBody: {
626
+ content: {
627
+ "application/json": components["schemas"]["AccessCheckRequest"];
628
+ };
629
+ };
630
+ responses: {
631
+ /** @description Access decisions. */
632
+ 200: {
633
+ headers: {
634
+ [name: string]: unknown;
635
+ };
636
+ content: {
637
+ "application/json": components["schemas"]["AccessCheckResponse"];
638
+ };
639
+ };
640
+ "4xx": components["responses"]["PublicError"];
641
+ };
642
+ };
643
+ listAccessFeatures: {
644
+ parameters: {
645
+ query?: never;
646
+ header?: never;
647
+ path?: never;
648
+ cookie?: never;
649
+ };
650
+ requestBody?: never;
651
+ responses: {
652
+ /** @description Active feature presentation. */
653
+ 200: {
654
+ headers: {
655
+ [name: string]: unknown;
656
+ };
657
+ content: {
658
+ "application/json": components["schemas"]["AccessFeaturesResponse"];
659
+ };
660
+ };
661
+ "4xx": components["responses"]["PublicError"];
662
+ };
663
+ };
664
+ createCheckoutSession: {
665
+ parameters: {
666
+ query?: never;
667
+ header?: never;
668
+ path?: never;
669
+ cookie?: never;
670
+ };
671
+ requestBody: {
672
+ content: {
673
+ "application/json": components["schemas"]["CheckoutRequest"];
674
+ };
675
+ };
676
+ responses: {
677
+ /** @description Embedded checkout URL resolved from the bound product. */
678
+ 200: {
679
+ headers: {
680
+ [name: string]: unknown;
681
+ };
682
+ content: {
683
+ "application/json": components["schemas"]["CheckoutResponse"];
684
+ };
685
+ };
686
+ "4xx": components["responses"]["PublicError"];
687
+ "5xx": components["responses"]["InternalError"];
688
+ };
689
+ };
690
+ bootstrapEmbeddedCheckout: {
691
+ parameters: {
692
+ query?: never;
693
+ header?: never;
694
+ path?: never;
695
+ cookie?: never;
696
+ };
697
+ requestBody: {
698
+ content: {
699
+ "application/json": components["schemas"]["CheckoutBootstrapRequest"];
700
+ };
701
+ };
702
+ responses: {
703
+ /** @description Memory-only bearer session for the embedded checkout. */
704
+ 200: {
705
+ headers: {
706
+ [name: string]: unknown;
707
+ };
708
+ content: {
709
+ "application/json": components["schemas"]["CheckoutBootstrapResponse"];
710
+ };
711
+ };
712
+ "4xx": components["responses"]["PublicError"];
713
+ };
714
+ };
715
+ listDanmakuMessages: {
716
+ parameters: {
717
+ query: {
718
+ workKey: components["schemas"]["WorkKey"];
719
+ anchorKey?: components["schemas"]["DanmakuAnchorKey"];
720
+ cursor?: components["schemas"]["DanmakuCursor"];
721
+ limit?: number;
722
+ };
723
+ header?: never;
724
+ path?: never;
725
+ cookie?: never;
726
+ };
727
+ requestBody?: never;
728
+ responses: {
729
+ /** @description Messages for the requested public work and anchor. */
730
+ 200: {
731
+ headers: {
732
+ [name: string]: unknown;
733
+ };
734
+ content: {
735
+ "application/json": components["schemas"]["DanmakuMessagesResponse"];
736
+ };
737
+ };
738
+ 400: components["responses"]["BadRequest"];
739
+ 404: components["responses"]["WorkNotFound"];
740
+ 500: components["responses"]["InternalError"];
741
+ };
742
+ };
743
+ createDanmakuMessage: {
744
+ parameters: {
745
+ query?: never;
746
+ header?: never;
747
+ path?: never;
748
+ cookie?: never;
749
+ };
750
+ requestBody: {
751
+ content: {
752
+ "application/json": components["schemas"]["CreateDanmakuMessageRequest"];
753
+ };
754
+ };
755
+ responses: {
756
+ /** @description Message created. */
757
+ 201: {
758
+ headers: {
759
+ [name: string]: unknown;
760
+ };
761
+ content: {
762
+ "application/json": components["schemas"]["DanmakuMessage"];
763
+ };
764
+ };
765
+ 400: components["responses"]["BadRequest"];
766
+ 404: components["responses"]["WorkNotFound"];
767
+ 429: components["responses"]["RateLimited"];
768
+ 500: components["responses"]["InternalError"];
769
+ };
770
+ };
155
771
  }
156
772
  //# sourceMappingURL=public-contract.d.ts.map