@zaflun/lumio-protocol 0.6.0 → 0.10.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.
- package/CHANGELOG.md +94 -0
- package/README.md +1 -1
- package/dist/index.d.ts +1412 -10
- package/dist/index.js +749 -4
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -53,7 +53,6 @@ declare const extensionConfigSchema: z.ZodObject<{
|
|
|
53
53
|
target: z.ZodEnum<{
|
|
54
54
|
editor: "editor";
|
|
55
55
|
layer: "layer";
|
|
56
|
-
interactive: "interactive";
|
|
57
56
|
}>;
|
|
58
57
|
permissions: z.ZodArray<z.ZodString>;
|
|
59
58
|
settings: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -70,7 +69,6 @@ declare const initMessageSchema: z.ZodObject<{
|
|
|
70
69
|
target: z.ZodEnum<{
|
|
71
70
|
editor: "editor";
|
|
72
71
|
layer: "layer";
|
|
73
|
-
interactive: "interactive";
|
|
74
72
|
}>;
|
|
75
73
|
permissions: z.ZodArray<z.ZodString>;
|
|
76
74
|
settings: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -108,7 +106,6 @@ declare const configUpdateMessageSchema: z.ZodObject<{
|
|
|
108
106
|
target: z.ZodOptional<z.ZodEnum<{
|
|
109
107
|
editor: "editor";
|
|
110
108
|
layer: "layer";
|
|
111
|
-
interactive: "interactive";
|
|
112
109
|
}>>;
|
|
113
110
|
permissions: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
114
111
|
settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
@@ -192,7 +189,6 @@ declare const lumioMessageSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
192
189
|
target: z.ZodEnum<{
|
|
193
190
|
editor: "editor";
|
|
194
191
|
layer: "layer";
|
|
195
|
-
interactive: "interactive";
|
|
196
192
|
}>;
|
|
197
193
|
permissions: z.ZodArray<z.ZodString>;
|
|
198
194
|
settings: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -228,7 +224,6 @@ declare const lumioMessageSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
228
224
|
target: z.ZodOptional<z.ZodEnum<{
|
|
229
225
|
editor: "editor";
|
|
230
226
|
layer: "layer";
|
|
231
|
-
interactive: "interactive";
|
|
232
227
|
}>>;
|
|
233
228
|
permissions: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
234
229
|
settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
@@ -288,16 +283,20 @@ declare const lumioMessageSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
288
283
|
}, z.core.$strip>], "type">;
|
|
289
284
|
type LumioMessage = z.infer<typeof lumioMessageSchema>;
|
|
290
285
|
|
|
291
|
-
declare const LUMIO_EVENT_TYPES: readonly ["twitch:follower", "twitch:subscribe", "twitch:
|
|
286
|
+
declare const LUMIO_EVENT_TYPES: readonly ["twitch:follower", "twitch:subscribe", "twitch:gift", "twitch:resub", "twitch:cheer", "twitch:raid", "twitch:reward", "twitch:reward_status", "twitch:reward_add", "twitch:reward_update", "twitch:reward_remove", "twitch:hype_train", "twitch:hype_train_end", "twitch:poll", "twitch:poll_end", "twitch:prediction", "twitch:prediction_lock", "twitch:prediction_end", "twitch:goal", "twitch:goal_end", "twitch:ad_break", "twitch:ban", "twitch:unban", "twitch:stream_online", "twitch:stream_offline", "twitch:stream_update", "youtube:subscribe", "youtube:member", "youtube:superchat", "youtube:supersticker", "youtube:gift_membership", "youtube:gift_membership_received", "youtube:poll", "youtube:stream_online", "youtube:stream_offline", "kick:follower", "kick:subscribe", "kick:resub", "kick:gift", "kick:kicks", "kick:reward", "kick:reward_status", "kick:stream_online", "kick:stream_offline", "kick:stream_update", "spotify:track", "spotify:play", "spotify:pause", "spotify:skip", "spotify:volume", "spotify:queue_add", "spotify:device", "spotify:playlist_add", "spotify:playlist_remove", "spotify:playlist_create", "spotify:playlist_edit", "spotify:playlist_delete", "streamelements:tip", "shopify:order", "shopify:order_paid", "shopify:product", "twitch:chat", "youtube:chat", "kick:chat", "chat:message"];
|
|
292
287
|
type LumioEventType = (typeof LUMIO_EVENT_TYPES)[number];
|
|
293
288
|
declare const lumioEventTypeSchema: z.ZodEnum<{
|
|
294
289
|
"twitch:follower": "twitch:follower";
|
|
295
290
|
"twitch:subscribe": "twitch:subscribe";
|
|
296
|
-
"twitch:
|
|
291
|
+
"twitch:gift": "twitch:gift";
|
|
297
292
|
"twitch:resub": "twitch:resub";
|
|
298
293
|
"twitch:cheer": "twitch:cheer";
|
|
299
294
|
"twitch:raid": "twitch:raid";
|
|
300
295
|
"twitch:reward": "twitch:reward";
|
|
296
|
+
"twitch:reward_status": "twitch:reward_status";
|
|
297
|
+
"twitch:reward_add": "twitch:reward_add";
|
|
298
|
+
"twitch:reward_update": "twitch:reward_update";
|
|
299
|
+
"twitch:reward_remove": "twitch:reward_remove";
|
|
301
300
|
"twitch:hype_train": "twitch:hype_train";
|
|
302
301
|
"twitch:hype_train_end": "twitch:hype_train_end";
|
|
303
302
|
"twitch:poll": "twitch:poll";
|
|
@@ -345,6 +344,9 @@ declare const lumioEventTypeSchema: z.ZodEnum<{
|
|
|
345
344
|
"spotify:playlist_edit": "spotify:playlist_edit";
|
|
346
345
|
"spotify:playlist_delete": "spotify:playlist_delete";
|
|
347
346
|
"streamelements:tip": "streamelements:tip";
|
|
347
|
+
"shopify:order": "shopify:order";
|
|
348
|
+
"shopify:order_paid": "shopify:order_paid";
|
|
349
|
+
"shopify:product": "shopify:product";
|
|
348
350
|
"twitch:chat": "twitch:chat";
|
|
349
351
|
"youtube:chat": "youtube:chat";
|
|
350
352
|
"kick:chat": "kick:chat";
|
|
@@ -395,12 +397,1322 @@ interface SoundStopEvent {
|
|
|
395
397
|
declare const STORAGE_SCOPES: readonly ["instance", "overlay", "account", "global"];
|
|
396
398
|
type StorageScope = (typeof STORAGE_SCOPES)[number];
|
|
397
399
|
declare const storageScopeSchema: z.ZodEnum<{
|
|
398
|
-
overlay: "overlay";
|
|
399
400
|
instance: "instance";
|
|
401
|
+
overlay: "overlay";
|
|
400
402
|
account: "account";
|
|
401
403
|
global: "global";
|
|
402
404
|
}>;
|
|
403
405
|
|
|
406
|
+
/**
|
|
407
|
+
* A `chat:moderation_log` frame (`twitch:ban`, `twitch:unban`). It arrives on
|
|
408
|
+
* the chat channel; forwarding it as an extension event is ZAF-3074.
|
|
409
|
+
*/
|
|
410
|
+
declare const moderationLogEntry: z.ZodObject<{
|
|
411
|
+
action: z.ZodString;
|
|
412
|
+
platform: z.ZodString;
|
|
413
|
+
target_user_id: z.ZodNullable<z.ZodString>;
|
|
414
|
+
target_username: z.ZodNullable<z.ZodString>;
|
|
415
|
+
target_display_name: z.ZodNullable<z.ZodString>;
|
|
416
|
+
moderator_name: z.ZodString;
|
|
417
|
+
moderator_login: z.ZodNullable<z.ZodString>;
|
|
418
|
+
reason: z.ZodNullable<z.ZodString>;
|
|
419
|
+
duration_secs: z.ZodNullable<z.ZodNumber>;
|
|
420
|
+
ends_at: z.ZodNullable<z.ZodString>;
|
|
421
|
+
target_message_id: z.ZodNullable<z.ZodString>;
|
|
422
|
+
created_at: z.ZodString;
|
|
423
|
+
}, z.core.$loose>;
|
|
424
|
+
/** A chat message as the backend broadcasts it (`ChatMessageInput`). */
|
|
425
|
+
declare const chatMessagePayloadSchema: z.ZodObject<{
|
|
426
|
+
account_id: z.ZodString;
|
|
427
|
+
platform: z.ZodString;
|
|
428
|
+
channel_name: z.ZodNullable<z.ZodString>;
|
|
429
|
+
user_id: z.ZodNullable<z.ZodString>;
|
|
430
|
+
username: z.ZodString;
|
|
431
|
+
display_name: z.ZodNullable<z.ZodString>;
|
|
432
|
+
avatar_url: z.ZodNullable<z.ZodString>;
|
|
433
|
+
message: z.ZodString;
|
|
434
|
+
emotes: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
435
|
+
gifs: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
436
|
+
badges: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
437
|
+
color: z.ZodNullable<z.ZodString>;
|
|
438
|
+
is_mod: z.ZodBoolean;
|
|
439
|
+
is_sub: z.ZodBoolean;
|
|
440
|
+
is_vip: z.ZodBoolean;
|
|
441
|
+
sub_tier: z.ZodNullable<z.ZodString>;
|
|
442
|
+
platform_message_id: z.ZodNullable<z.ZodString>;
|
|
443
|
+
lumio_user_id: z.ZodNullable<z.ZodString>;
|
|
444
|
+
reply_parent_msg_id: z.ZodNullable<z.ZodString>;
|
|
445
|
+
reply_parent_username: z.ZodNullable<z.ZodString>;
|
|
446
|
+
reply_parent_login: z.ZodNullable<z.ZodString>;
|
|
447
|
+
reply_parent_message: z.ZodNullable<z.ZodString>;
|
|
448
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
449
|
+
message_type: z.ZodNullable<z.ZodString>;
|
|
450
|
+
user_treatment: z.ZodNullable<z.ZodString>;
|
|
451
|
+
live_chat_id: z.ZodOptional<z.ZodString>;
|
|
452
|
+
is_shared_chat: z.ZodOptional<z.ZodBoolean>;
|
|
453
|
+
source_channel: z.ZodOptional<z.ZodUnknown>;
|
|
454
|
+
announcement_color: z.ZodOptional<z.ZodUnknown>;
|
|
455
|
+
}, z.core.$loose>;
|
|
456
|
+
declare const LUMIO_EVENT_PAYLOAD_SCHEMAS: {
|
|
457
|
+
readonly "twitch:follower": z.ZodObject<{
|
|
458
|
+
followed_at: z.ZodString;
|
|
459
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
460
|
+
user_id: z.ZodString;
|
|
461
|
+
user_login: z.ZodString;
|
|
462
|
+
user_name: z.ZodString;
|
|
463
|
+
broadcaster_user_id: z.ZodString;
|
|
464
|
+
broadcaster_user_login: z.ZodString;
|
|
465
|
+
broadcaster_user_name: z.ZodString;
|
|
466
|
+
}, z.core.$loose>;
|
|
467
|
+
readonly "twitch:subscribe": z.ZodObject<{
|
|
468
|
+
tier: z.ZodString;
|
|
469
|
+
duration_months: z.ZodNumber;
|
|
470
|
+
is_prime: z.ZodOptional<z.ZodBoolean>;
|
|
471
|
+
sub: z.ZodObject<{
|
|
472
|
+
sub_tier: z.ZodString;
|
|
473
|
+
is_prime: z.ZodBoolean;
|
|
474
|
+
duration_months: z.ZodNumber;
|
|
475
|
+
}, z.core.$loose>;
|
|
476
|
+
chatter_user_id: z.ZodString;
|
|
477
|
+
chatter_user_login: z.ZodString;
|
|
478
|
+
chatter_user_name: z.ZodString;
|
|
479
|
+
chatter_is_anonymous: z.ZodBoolean;
|
|
480
|
+
color: z.ZodString;
|
|
481
|
+
badges: z.ZodArray<z.ZodObject<{
|
|
482
|
+
set_id: z.ZodString;
|
|
483
|
+
id: z.ZodString;
|
|
484
|
+
info: z.ZodString;
|
|
485
|
+
}, z.core.$loose>>;
|
|
486
|
+
message: z.ZodObject<{
|
|
487
|
+
text: z.ZodString;
|
|
488
|
+
fragments: z.ZodArray<z.ZodUnknown>;
|
|
489
|
+
}, z.core.$loose>;
|
|
490
|
+
message_id: z.ZodString;
|
|
491
|
+
notice_type: z.ZodString;
|
|
492
|
+
system_message: z.ZodString;
|
|
493
|
+
emotes: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
494
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
495
|
+
user_id: z.ZodString;
|
|
496
|
+
user_login: z.ZodString;
|
|
497
|
+
user_name: z.ZodString;
|
|
498
|
+
broadcaster_user_id: z.ZodString;
|
|
499
|
+
broadcaster_user_login: z.ZodString;
|
|
500
|
+
broadcaster_user_name: z.ZodString;
|
|
501
|
+
}, z.core.$loose>;
|
|
502
|
+
readonly "twitch:gift": z.ZodObject<{
|
|
503
|
+
tier: z.ZodOptional<z.ZodString>;
|
|
504
|
+
duration_months: z.ZodOptional<z.ZodNumber>;
|
|
505
|
+
total: z.ZodOptional<z.ZodNumber>;
|
|
506
|
+
cumulative_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
507
|
+
community_gift_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
508
|
+
recipient_user_id: z.ZodOptional<z.ZodString>;
|
|
509
|
+
recipient_user_login: z.ZodOptional<z.ZodString>;
|
|
510
|
+
recipient_user_name: z.ZodOptional<z.ZodString>;
|
|
511
|
+
chatter_user_id: z.ZodString;
|
|
512
|
+
chatter_user_login: z.ZodString;
|
|
513
|
+
chatter_user_name: z.ZodString;
|
|
514
|
+
chatter_is_anonymous: z.ZodBoolean;
|
|
515
|
+
color: z.ZodString;
|
|
516
|
+
badges: z.ZodArray<z.ZodObject<{
|
|
517
|
+
set_id: z.ZodString;
|
|
518
|
+
id: z.ZodString;
|
|
519
|
+
info: z.ZodString;
|
|
520
|
+
}, z.core.$loose>>;
|
|
521
|
+
message: z.ZodObject<{
|
|
522
|
+
text: z.ZodString;
|
|
523
|
+
fragments: z.ZodArray<z.ZodUnknown>;
|
|
524
|
+
}, z.core.$loose>;
|
|
525
|
+
message_id: z.ZodString;
|
|
526
|
+
notice_type: z.ZodString;
|
|
527
|
+
system_message: z.ZodString;
|
|
528
|
+
emotes: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
529
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
530
|
+
user_id: z.ZodString;
|
|
531
|
+
user_login: z.ZodString;
|
|
532
|
+
user_name: z.ZodString;
|
|
533
|
+
broadcaster_user_id: z.ZodString;
|
|
534
|
+
broadcaster_user_login: z.ZodString;
|
|
535
|
+
broadcaster_user_name: z.ZodString;
|
|
536
|
+
}, z.core.$loose>;
|
|
537
|
+
readonly "twitch:resub": z.ZodObject<{
|
|
538
|
+
cumulative_months: z.ZodNumber;
|
|
539
|
+
duration_months: z.ZodNumber;
|
|
540
|
+
streak_months: z.ZodNullable<z.ZodNumber>;
|
|
541
|
+
is_gift: z.ZodBoolean;
|
|
542
|
+
tier: z.ZodOptional<z.ZodString>;
|
|
543
|
+
is_prime: z.ZodOptional<z.ZodBoolean>;
|
|
544
|
+
gifter_is_anonymous: z.ZodNullable<z.ZodBoolean>;
|
|
545
|
+
gifter_user_login: z.ZodNullable<z.ZodString>;
|
|
546
|
+
gifter_user_name: z.ZodNullable<z.ZodString>;
|
|
547
|
+
resub: z.ZodObject<{
|
|
548
|
+
cumulative_months: z.ZodNumber;
|
|
549
|
+
duration_months: z.ZodNumber;
|
|
550
|
+
streak_months: z.ZodNullable<z.ZodNumber>;
|
|
551
|
+
sub_plan: z.ZodString;
|
|
552
|
+
is_gift: z.ZodBoolean;
|
|
553
|
+
}, z.core.$loose>;
|
|
554
|
+
chatter_user_id: z.ZodString;
|
|
555
|
+
chatter_user_login: z.ZodString;
|
|
556
|
+
chatter_user_name: z.ZodString;
|
|
557
|
+
chatter_is_anonymous: z.ZodBoolean;
|
|
558
|
+
color: z.ZodString;
|
|
559
|
+
badges: z.ZodArray<z.ZodObject<{
|
|
560
|
+
set_id: z.ZodString;
|
|
561
|
+
id: z.ZodString;
|
|
562
|
+
info: z.ZodString;
|
|
563
|
+
}, z.core.$loose>>;
|
|
564
|
+
message: z.ZodObject<{
|
|
565
|
+
text: z.ZodString;
|
|
566
|
+
fragments: z.ZodArray<z.ZodUnknown>;
|
|
567
|
+
}, z.core.$loose>;
|
|
568
|
+
message_id: z.ZodString;
|
|
569
|
+
notice_type: z.ZodString;
|
|
570
|
+
system_message: z.ZodString;
|
|
571
|
+
emotes: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
572
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
573
|
+
user_id: z.ZodString;
|
|
574
|
+
user_login: z.ZodString;
|
|
575
|
+
user_name: z.ZodString;
|
|
576
|
+
broadcaster_user_id: z.ZodString;
|
|
577
|
+
broadcaster_user_login: z.ZodString;
|
|
578
|
+
broadcaster_user_name: z.ZodString;
|
|
579
|
+
}, z.core.$loose>;
|
|
580
|
+
readonly "twitch:cheer": z.ZodObject<{
|
|
581
|
+
user_id: z.ZodNullable<z.ZodString>;
|
|
582
|
+
user_login: z.ZodNullable<z.ZodString>;
|
|
583
|
+
user_name: z.ZodNullable<z.ZodString>;
|
|
584
|
+
is_anonymous: z.ZodBoolean;
|
|
585
|
+
bits: z.ZodNumber;
|
|
586
|
+
message: z.ZodString;
|
|
587
|
+
emotes: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
588
|
+
cheermote: z.ZodOptional<z.ZodUnknown>;
|
|
589
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
590
|
+
broadcaster_user_id: z.ZodString;
|
|
591
|
+
broadcaster_user_login: z.ZodString;
|
|
592
|
+
broadcaster_user_name: z.ZodString;
|
|
593
|
+
}, z.core.$loose>;
|
|
594
|
+
readonly "twitch:raid": z.ZodObject<{
|
|
595
|
+
displayName: z.ZodOptional<z.ZodString>;
|
|
596
|
+
title: z.ZodOptional<z.ZodString>;
|
|
597
|
+
category: z.ZodOptional<z.ZodString>;
|
|
598
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
599
|
+
from_broadcaster_user_id: z.ZodString;
|
|
600
|
+
from_broadcaster_user_login: z.ZodString;
|
|
601
|
+
from_broadcaster_user_name: z.ZodString;
|
|
602
|
+
to_broadcaster_user_id: z.ZodString;
|
|
603
|
+
to_broadcaster_user_login: z.ZodString;
|
|
604
|
+
to_broadcaster_user_name: z.ZodString;
|
|
605
|
+
viewers: z.ZodNumber;
|
|
606
|
+
}, z.core.$loose>;
|
|
607
|
+
readonly "twitch:reward": z.ZodObject<{
|
|
608
|
+
id: z.ZodString;
|
|
609
|
+
user_input: z.ZodString;
|
|
610
|
+
status: z.ZodString;
|
|
611
|
+
redeemed_at: z.ZodString;
|
|
612
|
+
reward: z.ZodObject<{
|
|
613
|
+
id: z.ZodString;
|
|
614
|
+
title: z.ZodString;
|
|
615
|
+
cost: z.ZodNumber;
|
|
616
|
+
prompt: z.ZodString;
|
|
617
|
+
}, z.core.$loose>;
|
|
618
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
619
|
+
user_id: z.ZodString;
|
|
620
|
+
user_login: z.ZodString;
|
|
621
|
+
user_name: z.ZodString;
|
|
622
|
+
broadcaster_user_id: z.ZodString;
|
|
623
|
+
broadcaster_user_login: z.ZodString;
|
|
624
|
+
broadcaster_user_name: z.ZodString;
|
|
625
|
+
}, z.core.$loose>;
|
|
626
|
+
readonly "twitch:reward_status": z.ZodObject<{
|
|
627
|
+
id: z.ZodString;
|
|
628
|
+
user_input: z.ZodString;
|
|
629
|
+
status: z.ZodString;
|
|
630
|
+
redeemed_at: z.ZodString;
|
|
631
|
+
reward: z.ZodObject<{
|
|
632
|
+
id: z.ZodString;
|
|
633
|
+
title: z.ZodString;
|
|
634
|
+
cost: z.ZodNumber;
|
|
635
|
+
prompt: z.ZodString;
|
|
636
|
+
}, z.core.$loose>;
|
|
637
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
638
|
+
user_id: z.ZodString;
|
|
639
|
+
user_login: z.ZodString;
|
|
640
|
+
user_name: z.ZodString;
|
|
641
|
+
broadcaster_user_id: z.ZodString;
|
|
642
|
+
broadcaster_user_login: z.ZodString;
|
|
643
|
+
broadcaster_user_name: z.ZodString;
|
|
644
|
+
}, z.core.$loose>;
|
|
645
|
+
readonly "twitch:reward_add": z.ZodObject<{
|
|
646
|
+
id: z.ZodString;
|
|
647
|
+
title: z.ZodString;
|
|
648
|
+
cost: z.ZodNumber;
|
|
649
|
+
prompt: z.ZodString;
|
|
650
|
+
background_color: z.ZodString;
|
|
651
|
+
is_enabled: z.ZodBoolean;
|
|
652
|
+
is_paused: z.ZodBoolean;
|
|
653
|
+
is_in_stock: z.ZodBoolean;
|
|
654
|
+
is_user_input_required: z.ZodBoolean;
|
|
655
|
+
should_redemptions_skip_request_queue: z.ZodBoolean;
|
|
656
|
+
max_per_stream: z.ZodObject<{
|
|
657
|
+
is_enabled: z.ZodBoolean;
|
|
658
|
+
value: z.ZodNumber;
|
|
659
|
+
}, z.core.$loose>;
|
|
660
|
+
max_per_user_per_stream: z.ZodObject<{
|
|
661
|
+
is_enabled: z.ZodBoolean;
|
|
662
|
+
value: z.ZodNumber;
|
|
663
|
+
}, z.core.$loose>;
|
|
664
|
+
global_cooldown: z.ZodObject<{
|
|
665
|
+
is_enabled: z.ZodBoolean;
|
|
666
|
+
seconds: z.ZodNumber;
|
|
667
|
+
}, z.core.$loose>;
|
|
668
|
+
image: z.ZodNullable<z.ZodObject<{
|
|
669
|
+
url_1x: z.ZodString;
|
|
670
|
+
url_2x: z.ZodString;
|
|
671
|
+
url_4x: z.ZodString;
|
|
672
|
+
}, z.core.$loose>>;
|
|
673
|
+
default_image: z.ZodObject<{
|
|
674
|
+
url_1x: z.ZodString;
|
|
675
|
+
url_2x: z.ZodString;
|
|
676
|
+
url_4x: z.ZodString;
|
|
677
|
+
}, z.core.$loose>;
|
|
678
|
+
cooldown_expires_at: z.ZodNullable<z.ZodString>;
|
|
679
|
+
redemptions_redeemed_current_stream: z.ZodNullable<z.ZodNumber>;
|
|
680
|
+
broadcaster_user_id: z.ZodString;
|
|
681
|
+
broadcaster_user_login: z.ZodString;
|
|
682
|
+
broadcaster_user_name: z.ZodString;
|
|
683
|
+
}, z.core.$loose>;
|
|
684
|
+
readonly "twitch:reward_update": z.ZodObject<{
|
|
685
|
+
id: z.ZodString;
|
|
686
|
+
title: z.ZodString;
|
|
687
|
+
cost: z.ZodNumber;
|
|
688
|
+
prompt: z.ZodString;
|
|
689
|
+
background_color: z.ZodString;
|
|
690
|
+
is_enabled: z.ZodBoolean;
|
|
691
|
+
is_paused: z.ZodBoolean;
|
|
692
|
+
is_in_stock: z.ZodBoolean;
|
|
693
|
+
is_user_input_required: z.ZodBoolean;
|
|
694
|
+
should_redemptions_skip_request_queue: z.ZodBoolean;
|
|
695
|
+
max_per_stream: z.ZodObject<{
|
|
696
|
+
is_enabled: z.ZodBoolean;
|
|
697
|
+
value: z.ZodNumber;
|
|
698
|
+
}, z.core.$loose>;
|
|
699
|
+
max_per_user_per_stream: z.ZodObject<{
|
|
700
|
+
is_enabled: z.ZodBoolean;
|
|
701
|
+
value: z.ZodNumber;
|
|
702
|
+
}, z.core.$loose>;
|
|
703
|
+
global_cooldown: z.ZodObject<{
|
|
704
|
+
is_enabled: z.ZodBoolean;
|
|
705
|
+
seconds: z.ZodNumber;
|
|
706
|
+
}, z.core.$loose>;
|
|
707
|
+
image: z.ZodNullable<z.ZodObject<{
|
|
708
|
+
url_1x: z.ZodString;
|
|
709
|
+
url_2x: z.ZodString;
|
|
710
|
+
url_4x: z.ZodString;
|
|
711
|
+
}, z.core.$loose>>;
|
|
712
|
+
default_image: z.ZodObject<{
|
|
713
|
+
url_1x: z.ZodString;
|
|
714
|
+
url_2x: z.ZodString;
|
|
715
|
+
url_4x: z.ZodString;
|
|
716
|
+
}, z.core.$loose>;
|
|
717
|
+
cooldown_expires_at: z.ZodNullable<z.ZodString>;
|
|
718
|
+
redemptions_redeemed_current_stream: z.ZodNullable<z.ZodNumber>;
|
|
719
|
+
broadcaster_user_id: z.ZodString;
|
|
720
|
+
broadcaster_user_login: z.ZodString;
|
|
721
|
+
broadcaster_user_name: z.ZodString;
|
|
722
|
+
}, z.core.$loose>;
|
|
723
|
+
readonly "twitch:reward_remove": z.ZodObject<{
|
|
724
|
+
id: z.ZodString;
|
|
725
|
+
title: z.ZodString;
|
|
726
|
+
cost: z.ZodNumber;
|
|
727
|
+
prompt: z.ZodString;
|
|
728
|
+
background_color: z.ZodString;
|
|
729
|
+
is_enabled: z.ZodBoolean;
|
|
730
|
+
is_paused: z.ZodBoolean;
|
|
731
|
+
is_in_stock: z.ZodBoolean;
|
|
732
|
+
is_user_input_required: z.ZodBoolean;
|
|
733
|
+
should_redemptions_skip_request_queue: z.ZodBoolean;
|
|
734
|
+
max_per_stream: z.ZodObject<{
|
|
735
|
+
is_enabled: z.ZodBoolean;
|
|
736
|
+
value: z.ZodNumber;
|
|
737
|
+
}, z.core.$loose>;
|
|
738
|
+
max_per_user_per_stream: z.ZodObject<{
|
|
739
|
+
is_enabled: z.ZodBoolean;
|
|
740
|
+
value: z.ZodNumber;
|
|
741
|
+
}, z.core.$loose>;
|
|
742
|
+
global_cooldown: z.ZodObject<{
|
|
743
|
+
is_enabled: z.ZodBoolean;
|
|
744
|
+
seconds: z.ZodNumber;
|
|
745
|
+
}, z.core.$loose>;
|
|
746
|
+
image: z.ZodNullable<z.ZodObject<{
|
|
747
|
+
url_1x: z.ZodString;
|
|
748
|
+
url_2x: z.ZodString;
|
|
749
|
+
url_4x: z.ZodString;
|
|
750
|
+
}, z.core.$loose>>;
|
|
751
|
+
default_image: z.ZodObject<{
|
|
752
|
+
url_1x: z.ZodString;
|
|
753
|
+
url_2x: z.ZodString;
|
|
754
|
+
url_4x: z.ZodString;
|
|
755
|
+
}, z.core.$loose>;
|
|
756
|
+
cooldown_expires_at: z.ZodNullable<z.ZodString>;
|
|
757
|
+
redemptions_redeemed_current_stream: z.ZodNullable<z.ZodNumber>;
|
|
758
|
+
broadcaster_user_id: z.ZodString;
|
|
759
|
+
broadcaster_user_login: z.ZodString;
|
|
760
|
+
broadcaster_user_name: z.ZodString;
|
|
761
|
+
}, z.core.$loose>;
|
|
762
|
+
readonly "twitch:hype_train": z.ZodObject<{
|
|
763
|
+
progress: z.ZodNumber;
|
|
764
|
+
goal: z.ZodNumber;
|
|
765
|
+
expires_at: z.ZodString;
|
|
766
|
+
all_time_high_level: z.ZodOptional<z.ZodNumber>;
|
|
767
|
+
all_time_high_total: z.ZodOptional<z.ZodNumber>;
|
|
768
|
+
id: z.ZodString;
|
|
769
|
+
type: z.ZodString;
|
|
770
|
+
level: z.ZodNumber;
|
|
771
|
+
total: z.ZodNumber;
|
|
772
|
+
top_contributions: z.ZodArray<z.ZodObject<{
|
|
773
|
+
type: z.ZodString;
|
|
774
|
+
total: z.ZodNumber;
|
|
775
|
+
user_id: z.ZodString;
|
|
776
|
+
user_login: z.ZodString;
|
|
777
|
+
user_name: z.ZodString;
|
|
778
|
+
}, z.core.$loose>>;
|
|
779
|
+
started_at: z.ZodString;
|
|
780
|
+
is_shared_train: z.ZodBoolean;
|
|
781
|
+
shared_train_participants: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
782
|
+
broadcaster_user_id: z.ZodString;
|
|
783
|
+
broadcaster_user_login: z.ZodString;
|
|
784
|
+
broadcaster_user_name: z.ZodString;
|
|
785
|
+
}, z.core.$loose>;
|
|
786
|
+
readonly "twitch:hype_train_end": z.ZodObject<{
|
|
787
|
+
ended_at: z.ZodString;
|
|
788
|
+
cooldown_ends_at: z.ZodString;
|
|
789
|
+
id: z.ZodString;
|
|
790
|
+
type: z.ZodString;
|
|
791
|
+
level: z.ZodNumber;
|
|
792
|
+
total: z.ZodNumber;
|
|
793
|
+
top_contributions: z.ZodArray<z.ZodObject<{
|
|
794
|
+
type: z.ZodString;
|
|
795
|
+
total: z.ZodNumber;
|
|
796
|
+
user_id: z.ZodString;
|
|
797
|
+
user_login: z.ZodString;
|
|
798
|
+
user_name: z.ZodString;
|
|
799
|
+
}, z.core.$loose>>;
|
|
800
|
+
started_at: z.ZodString;
|
|
801
|
+
is_shared_train: z.ZodBoolean;
|
|
802
|
+
shared_train_participants: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
803
|
+
broadcaster_user_id: z.ZodString;
|
|
804
|
+
broadcaster_user_login: z.ZodString;
|
|
805
|
+
broadcaster_user_name: z.ZodString;
|
|
806
|
+
}, z.core.$loose>;
|
|
807
|
+
readonly "twitch:poll": z.ZodObject<{
|
|
808
|
+
ends_at: z.ZodString;
|
|
809
|
+
id: z.ZodString;
|
|
810
|
+
title: z.ZodString;
|
|
811
|
+
choices: z.ZodArray<z.ZodObject<{
|
|
812
|
+
id: z.ZodString;
|
|
813
|
+
title: z.ZodString;
|
|
814
|
+
votes: z.ZodOptional<z.ZodNumber>;
|
|
815
|
+
bits_votes: z.ZodOptional<z.ZodNumber>;
|
|
816
|
+
channel_points_votes: z.ZodOptional<z.ZodNumber>;
|
|
817
|
+
}, z.core.$loose>>;
|
|
818
|
+
bits_voting: z.ZodObject<{
|
|
819
|
+
is_enabled: z.ZodBoolean;
|
|
820
|
+
amount_per_vote: z.ZodNumber;
|
|
821
|
+
}, z.core.$loose>;
|
|
822
|
+
channel_points_voting: z.ZodObject<{
|
|
823
|
+
is_enabled: z.ZodBoolean;
|
|
824
|
+
amount_per_vote: z.ZodNumber;
|
|
825
|
+
}, z.core.$loose>;
|
|
826
|
+
started_at: z.ZodString;
|
|
827
|
+
broadcaster_user_id: z.ZodString;
|
|
828
|
+
broadcaster_user_login: z.ZodString;
|
|
829
|
+
broadcaster_user_name: z.ZodString;
|
|
830
|
+
}, z.core.$loose>;
|
|
831
|
+
readonly "twitch:poll_end": z.ZodObject<{
|
|
832
|
+
status: z.ZodString;
|
|
833
|
+
ended_at: z.ZodString;
|
|
834
|
+
id: z.ZodString;
|
|
835
|
+
title: z.ZodString;
|
|
836
|
+
choices: z.ZodArray<z.ZodObject<{
|
|
837
|
+
id: z.ZodString;
|
|
838
|
+
title: z.ZodString;
|
|
839
|
+
votes: z.ZodOptional<z.ZodNumber>;
|
|
840
|
+
bits_votes: z.ZodOptional<z.ZodNumber>;
|
|
841
|
+
channel_points_votes: z.ZodOptional<z.ZodNumber>;
|
|
842
|
+
}, z.core.$loose>>;
|
|
843
|
+
bits_voting: z.ZodObject<{
|
|
844
|
+
is_enabled: z.ZodBoolean;
|
|
845
|
+
amount_per_vote: z.ZodNumber;
|
|
846
|
+
}, z.core.$loose>;
|
|
847
|
+
channel_points_voting: z.ZodObject<{
|
|
848
|
+
is_enabled: z.ZodBoolean;
|
|
849
|
+
amount_per_vote: z.ZodNumber;
|
|
850
|
+
}, z.core.$loose>;
|
|
851
|
+
started_at: z.ZodString;
|
|
852
|
+
broadcaster_user_id: z.ZodString;
|
|
853
|
+
broadcaster_user_login: z.ZodString;
|
|
854
|
+
broadcaster_user_name: z.ZodString;
|
|
855
|
+
}, z.core.$loose>;
|
|
856
|
+
readonly "twitch:prediction": z.ZodObject<{
|
|
857
|
+
locks_at: z.ZodString;
|
|
858
|
+
id: z.ZodString;
|
|
859
|
+
title: z.ZodString;
|
|
860
|
+
outcomes: z.ZodArray<z.ZodObject<{
|
|
861
|
+
id: z.ZodString;
|
|
862
|
+
title: z.ZodString;
|
|
863
|
+
color: z.ZodString;
|
|
864
|
+
users: z.ZodOptional<z.ZodNumber>;
|
|
865
|
+
channel_points: z.ZodOptional<z.ZodNumber>;
|
|
866
|
+
top_predictors: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
867
|
+
channel_points_used: z.ZodNumber;
|
|
868
|
+
channel_points_won: z.ZodNullable<z.ZodNumber>;
|
|
869
|
+
user_id: z.ZodString;
|
|
870
|
+
user_login: z.ZodString;
|
|
871
|
+
user_name: z.ZodString;
|
|
872
|
+
}, z.core.$loose>>>>;
|
|
873
|
+
}, z.core.$loose>>;
|
|
874
|
+
started_at: z.ZodString;
|
|
875
|
+
broadcaster_user_id: z.ZodString;
|
|
876
|
+
broadcaster_user_login: z.ZodString;
|
|
877
|
+
broadcaster_user_name: z.ZodString;
|
|
878
|
+
}, z.core.$loose>;
|
|
879
|
+
readonly "twitch:prediction_lock": z.ZodObject<{
|
|
880
|
+
locked_at: z.ZodString;
|
|
881
|
+
id: z.ZodString;
|
|
882
|
+
title: z.ZodString;
|
|
883
|
+
outcomes: z.ZodArray<z.ZodObject<{
|
|
884
|
+
id: z.ZodString;
|
|
885
|
+
title: z.ZodString;
|
|
886
|
+
color: z.ZodString;
|
|
887
|
+
users: z.ZodOptional<z.ZodNumber>;
|
|
888
|
+
channel_points: z.ZodOptional<z.ZodNumber>;
|
|
889
|
+
top_predictors: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
890
|
+
channel_points_used: z.ZodNumber;
|
|
891
|
+
channel_points_won: z.ZodNullable<z.ZodNumber>;
|
|
892
|
+
user_id: z.ZodString;
|
|
893
|
+
user_login: z.ZodString;
|
|
894
|
+
user_name: z.ZodString;
|
|
895
|
+
}, z.core.$loose>>>>;
|
|
896
|
+
}, z.core.$loose>>;
|
|
897
|
+
started_at: z.ZodString;
|
|
898
|
+
broadcaster_user_id: z.ZodString;
|
|
899
|
+
broadcaster_user_login: z.ZodString;
|
|
900
|
+
broadcaster_user_name: z.ZodString;
|
|
901
|
+
}, z.core.$loose>;
|
|
902
|
+
readonly "twitch:prediction_end": z.ZodObject<{
|
|
903
|
+
status: z.ZodString;
|
|
904
|
+
ended_at: z.ZodString;
|
|
905
|
+
winning_outcome_id: z.ZodNullable<z.ZodString>;
|
|
906
|
+
id: z.ZodString;
|
|
907
|
+
title: z.ZodString;
|
|
908
|
+
outcomes: z.ZodArray<z.ZodObject<{
|
|
909
|
+
id: z.ZodString;
|
|
910
|
+
title: z.ZodString;
|
|
911
|
+
color: z.ZodString;
|
|
912
|
+
users: z.ZodOptional<z.ZodNumber>;
|
|
913
|
+
channel_points: z.ZodOptional<z.ZodNumber>;
|
|
914
|
+
top_predictors: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
915
|
+
channel_points_used: z.ZodNumber;
|
|
916
|
+
channel_points_won: z.ZodNullable<z.ZodNumber>;
|
|
917
|
+
user_id: z.ZodString;
|
|
918
|
+
user_login: z.ZodString;
|
|
919
|
+
user_name: z.ZodString;
|
|
920
|
+
}, z.core.$loose>>>>;
|
|
921
|
+
}, z.core.$loose>>;
|
|
922
|
+
started_at: z.ZodString;
|
|
923
|
+
broadcaster_user_id: z.ZodString;
|
|
924
|
+
broadcaster_user_login: z.ZodString;
|
|
925
|
+
broadcaster_user_name: z.ZodString;
|
|
926
|
+
}, z.core.$loose>;
|
|
927
|
+
readonly "twitch:goal": z.ZodObject<{
|
|
928
|
+
id: z.ZodString;
|
|
929
|
+
type: z.ZodString;
|
|
930
|
+
description: z.ZodString;
|
|
931
|
+
current_amount: z.ZodNumber;
|
|
932
|
+
target_amount: z.ZodNumber;
|
|
933
|
+
started_at: z.ZodString;
|
|
934
|
+
broadcaster_user_id: z.ZodString;
|
|
935
|
+
broadcaster_user_login: z.ZodString;
|
|
936
|
+
broadcaster_user_name: z.ZodString;
|
|
937
|
+
}, z.core.$loose>;
|
|
938
|
+
readonly "twitch:goal_end": z.ZodObject<{
|
|
939
|
+
ended_at: z.ZodString;
|
|
940
|
+
is_achieved: z.ZodBoolean;
|
|
941
|
+
id: z.ZodString;
|
|
942
|
+
type: z.ZodString;
|
|
943
|
+
description: z.ZodString;
|
|
944
|
+
current_amount: z.ZodNumber;
|
|
945
|
+
target_amount: z.ZodNumber;
|
|
946
|
+
started_at: z.ZodString;
|
|
947
|
+
broadcaster_user_id: z.ZodString;
|
|
948
|
+
broadcaster_user_login: z.ZodString;
|
|
949
|
+
broadcaster_user_name: z.ZodString;
|
|
950
|
+
}, z.core.$loose>;
|
|
951
|
+
readonly "twitch:ad_break": z.ZodObject<{
|
|
952
|
+
requester_user_id: z.ZodString;
|
|
953
|
+
requester_user_login: z.ZodString;
|
|
954
|
+
requester_user_name: z.ZodString;
|
|
955
|
+
duration_seconds: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
|
|
956
|
+
is_automatic: z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>;
|
|
957
|
+
started_at: z.ZodString;
|
|
958
|
+
broadcaster_user_id: z.ZodString;
|
|
959
|
+
broadcaster_user_login: z.ZodString;
|
|
960
|
+
broadcaster_user_name: z.ZodString;
|
|
961
|
+
}, z.core.$loose>;
|
|
962
|
+
readonly "twitch:ban": z.ZodObject<{
|
|
963
|
+
action: z.ZodString;
|
|
964
|
+
platform: z.ZodString;
|
|
965
|
+
target_user_id: z.ZodNullable<z.ZodString>;
|
|
966
|
+
target_username: z.ZodNullable<z.ZodString>;
|
|
967
|
+
target_display_name: z.ZodNullable<z.ZodString>;
|
|
968
|
+
moderator_name: z.ZodString;
|
|
969
|
+
moderator_login: z.ZodNullable<z.ZodString>;
|
|
970
|
+
reason: z.ZodNullable<z.ZodString>;
|
|
971
|
+
duration_secs: z.ZodNullable<z.ZodNumber>;
|
|
972
|
+
ends_at: z.ZodNullable<z.ZodString>;
|
|
973
|
+
target_message_id: z.ZodNullable<z.ZodString>;
|
|
974
|
+
created_at: z.ZodString;
|
|
975
|
+
}, z.core.$loose>;
|
|
976
|
+
readonly "twitch:unban": z.ZodObject<{
|
|
977
|
+
action: z.ZodString;
|
|
978
|
+
platform: z.ZodString;
|
|
979
|
+
target_user_id: z.ZodNullable<z.ZodString>;
|
|
980
|
+
target_username: z.ZodNullable<z.ZodString>;
|
|
981
|
+
target_display_name: z.ZodNullable<z.ZodString>;
|
|
982
|
+
moderator_name: z.ZodString;
|
|
983
|
+
moderator_login: z.ZodNullable<z.ZodString>;
|
|
984
|
+
reason: z.ZodNullable<z.ZodString>;
|
|
985
|
+
duration_secs: z.ZodNullable<z.ZodNumber>;
|
|
986
|
+
ends_at: z.ZodNullable<z.ZodString>;
|
|
987
|
+
target_message_id: z.ZodNullable<z.ZodString>;
|
|
988
|
+
created_at: z.ZodString;
|
|
989
|
+
}, z.core.$loose>;
|
|
990
|
+
readonly "twitch:stream_online": z.ZodObject<{
|
|
991
|
+
id: z.ZodString;
|
|
992
|
+
type: z.ZodString;
|
|
993
|
+
started_at: z.ZodString;
|
|
994
|
+
title: z.ZodOptional<z.ZodString>;
|
|
995
|
+
category: z.ZodOptional<z.ZodString>;
|
|
996
|
+
broadcaster_user_id: z.ZodString;
|
|
997
|
+
broadcaster_user_login: z.ZodString;
|
|
998
|
+
broadcaster_user_name: z.ZodString;
|
|
999
|
+
}, z.core.$loose>;
|
|
1000
|
+
readonly "twitch:stream_offline": z.ZodObject<{
|
|
1001
|
+
started_at: z.ZodOptional<z.ZodString>;
|
|
1002
|
+
duration_seconds: z.ZodOptional<z.ZodNumber>;
|
|
1003
|
+
broadcaster_user_id: z.ZodString;
|
|
1004
|
+
broadcaster_user_login: z.ZodString;
|
|
1005
|
+
broadcaster_user_name: z.ZodString;
|
|
1006
|
+
}, z.core.$loose>;
|
|
1007
|
+
readonly "twitch:stream_update": z.ZodObject<{
|
|
1008
|
+
title: z.ZodString;
|
|
1009
|
+
language: z.ZodString;
|
|
1010
|
+
category_id: z.ZodString;
|
|
1011
|
+
category_name: z.ZodString;
|
|
1012
|
+
content_classification_labels: z.ZodArray<z.ZodString>;
|
|
1013
|
+
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1014
|
+
title_changed: z.ZodOptional<z.ZodBoolean>;
|
|
1015
|
+
category_changed: z.ZodOptional<z.ZodBoolean>;
|
|
1016
|
+
language_changed: z.ZodOptional<z.ZodBoolean>;
|
|
1017
|
+
tags_changed: z.ZodOptional<z.ZodBoolean>;
|
|
1018
|
+
old_title: z.ZodOptional<z.ZodString>;
|
|
1019
|
+
old_category_name: z.ZodOptional<z.ZodString>;
|
|
1020
|
+
old_tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1021
|
+
broadcaster_user_id: z.ZodString;
|
|
1022
|
+
broadcaster_user_login: z.ZodString;
|
|
1023
|
+
broadcaster_user_name: z.ZodString;
|
|
1024
|
+
}, z.core.$loose>;
|
|
1025
|
+
readonly "youtube:subscribe": z.ZodObject<{
|
|
1026
|
+
channel_id: z.ZodString;
|
|
1027
|
+
video_id: z.ZodString;
|
|
1028
|
+
title: z.ZodString;
|
|
1029
|
+
published: z.ZodString;
|
|
1030
|
+
updated: z.ZodString;
|
|
1031
|
+
}, z.core.$loose>;
|
|
1032
|
+
readonly "youtube:member": z.ZodObject<{
|
|
1033
|
+
membership_event_type: z.ZodString;
|
|
1034
|
+
memberLevelName: z.ZodNullable<z.ZodString>;
|
|
1035
|
+
memberMonth: z.ZodNullable<z.ZodNumber>;
|
|
1036
|
+
isUpgrade: z.ZodBoolean;
|
|
1037
|
+
display_message: z.ZodString;
|
|
1038
|
+
userComment: z.ZodString;
|
|
1039
|
+
user_id: z.ZodString;
|
|
1040
|
+
user_login: z.ZodString;
|
|
1041
|
+
displayName: z.ZodString;
|
|
1042
|
+
avatarUrl: z.ZodString;
|
|
1043
|
+
}, z.core.$loose>;
|
|
1044
|
+
readonly "youtube:superchat": z.ZodObject<{
|
|
1045
|
+
amountMicros: z.ZodNumber;
|
|
1046
|
+
amountDisplayString: z.ZodString;
|
|
1047
|
+
currency: z.ZodString;
|
|
1048
|
+
tier: z.ZodNumber;
|
|
1049
|
+
userComment: z.ZodString;
|
|
1050
|
+
headerBackgroundColor: z.ZodNumber;
|
|
1051
|
+
bodyBackgroundColor: z.ZodNumber;
|
|
1052
|
+
user_id: z.ZodString;
|
|
1053
|
+
user_login: z.ZodString;
|
|
1054
|
+
displayName: z.ZodString;
|
|
1055
|
+
avatarUrl: z.ZodString;
|
|
1056
|
+
}, z.core.$loose>;
|
|
1057
|
+
readonly "youtube:supersticker": z.ZodObject<{
|
|
1058
|
+
amountMicros: z.ZodNumber;
|
|
1059
|
+
amountDisplayString: z.ZodString;
|
|
1060
|
+
currency: z.ZodString;
|
|
1061
|
+
stickerName: z.ZodString;
|
|
1062
|
+
stickerUrl: z.ZodString;
|
|
1063
|
+
user_id: z.ZodString;
|
|
1064
|
+
user_login: z.ZodString;
|
|
1065
|
+
displayName: z.ZodString;
|
|
1066
|
+
avatarUrl: z.ZodString;
|
|
1067
|
+
}, z.core.$loose>;
|
|
1068
|
+
readonly "youtube:gift_membership": z.ZodObject<{
|
|
1069
|
+
giftCount: z.ZodNumber;
|
|
1070
|
+
isGift: z.ZodBoolean;
|
|
1071
|
+
gift_memberships_level_name: z.ZodNullable<z.ZodString>;
|
|
1072
|
+
user_id: z.ZodString;
|
|
1073
|
+
user_login: z.ZodString;
|
|
1074
|
+
displayName: z.ZodString;
|
|
1075
|
+
avatarUrl: z.ZodString;
|
|
1076
|
+
}, z.core.$loose>;
|
|
1077
|
+
/** Stored in the event history only; never broadcast live (no fixture). */
|
|
1078
|
+
readonly "youtube:gift_membership_received": z.ZodObject<{
|
|
1079
|
+
user_id: z.ZodNullable<z.ZodString>;
|
|
1080
|
+
user_login: z.ZodNullable<z.ZodString>;
|
|
1081
|
+
displayName: z.ZodString;
|
|
1082
|
+
avatarUrl: z.ZodNullable<z.ZodString>;
|
|
1083
|
+
gifter_channel_id: z.ZodNullable<z.ZodString>;
|
|
1084
|
+
gifter_display_name: z.ZodNullable<z.ZodString>;
|
|
1085
|
+
gift_memberships_level_name: z.ZodNullable<z.ZodString>;
|
|
1086
|
+
}, z.core.$loose>;
|
|
1087
|
+
readonly "youtube:poll": z.ZodObject<{
|
|
1088
|
+
poll_id: z.ZodString;
|
|
1089
|
+
question: z.ZodString;
|
|
1090
|
+
status: z.ZodString;
|
|
1091
|
+
options: z.ZodArray<z.ZodObject<{
|
|
1092
|
+
option_text: z.ZodString;
|
|
1093
|
+
tally: z.ZodNullable<z.ZodString>;
|
|
1094
|
+
vote_ratio: z.ZodNullable<z.ZodNumber>;
|
|
1095
|
+
}, z.core.$loose>>;
|
|
1096
|
+
}, z.core.$loose>;
|
|
1097
|
+
readonly "youtube:stream_online": z.ZodObject<{
|
|
1098
|
+
broadcast_id: z.ZodString;
|
|
1099
|
+
started_at: z.ZodString;
|
|
1100
|
+
title: z.ZodOptional<z.ZodString>;
|
|
1101
|
+
category: z.ZodOptional<z.ZodString>;
|
|
1102
|
+
}, z.core.$loose>;
|
|
1103
|
+
readonly "youtube:stream_offline": z.ZodObject<{
|
|
1104
|
+
broadcast_id: z.ZodString;
|
|
1105
|
+
started_at: z.ZodOptional<z.ZodString>;
|
|
1106
|
+
duration_seconds: z.ZodOptional<z.ZodNumber>;
|
|
1107
|
+
}, z.core.$loose>;
|
|
1108
|
+
readonly "kick:follower": z.ZodObject<{
|
|
1109
|
+
broadcaster: z.ZodObject<{
|
|
1110
|
+
user_id: z.ZodNumber;
|
|
1111
|
+
username: z.ZodString;
|
|
1112
|
+
channel_slug: z.ZodString;
|
|
1113
|
+
is_verified: z.ZodBoolean;
|
|
1114
|
+
profile_picture: z.ZodString;
|
|
1115
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1116
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1117
|
+
}, z.core.$loose>;
|
|
1118
|
+
follower: z.ZodObject<{
|
|
1119
|
+
user_id: z.ZodNumber;
|
|
1120
|
+
username: z.ZodString;
|
|
1121
|
+
channel_slug: z.ZodString;
|
|
1122
|
+
is_verified: z.ZodBoolean;
|
|
1123
|
+
profile_picture: z.ZodString;
|
|
1124
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1125
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1126
|
+
}, z.core.$loose>;
|
|
1127
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
1128
|
+
user_id: z.ZodString;
|
|
1129
|
+
user_login: z.ZodString;
|
|
1130
|
+
user_name: z.ZodString;
|
|
1131
|
+
is_anonymous: z.ZodBoolean;
|
|
1132
|
+
}, z.core.$loose>;
|
|
1133
|
+
readonly "kick:subscribe": z.ZodObject<{
|
|
1134
|
+
broadcaster: z.ZodObject<{
|
|
1135
|
+
user_id: z.ZodNumber;
|
|
1136
|
+
username: z.ZodString;
|
|
1137
|
+
channel_slug: z.ZodString;
|
|
1138
|
+
is_verified: z.ZodBoolean;
|
|
1139
|
+
profile_picture: z.ZodString;
|
|
1140
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1141
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1142
|
+
}, z.core.$loose>;
|
|
1143
|
+
subscriber: z.ZodObject<{
|
|
1144
|
+
user_id: z.ZodNumber;
|
|
1145
|
+
username: z.ZodString;
|
|
1146
|
+
channel_slug: z.ZodString;
|
|
1147
|
+
is_verified: z.ZodBoolean;
|
|
1148
|
+
profile_picture: z.ZodString;
|
|
1149
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1150
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1151
|
+
}, z.core.$loose>;
|
|
1152
|
+
duration: z.ZodNumber;
|
|
1153
|
+
cumulative_months: z.ZodNumber;
|
|
1154
|
+
created_at: z.ZodString;
|
|
1155
|
+
expires_at: z.ZodString;
|
|
1156
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
1157
|
+
user_id: z.ZodString;
|
|
1158
|
+
user_login: z.ZodString;
|
|
1159
|
+
user_name: z.ZodString;
|
|
1160
|
+
is_anonymous: z.ZodBoolean;
|
|
1161
|
+
}, z.core.$loose>;
|
|
1162
|
+
readonly "kick:resub": z.ZodObject<{
|
|
1163
|
+
broadcaster: z.ZodObject<{
|
|
1164
|
+
user_id: z.ZodNumber;
|
|
1165
|
+
username: z.ZodString;
|
|
1166
|
+
channel_slug: z.ZodString;
|
|
1167
|
+
is_verified: z.ZodBoolean;
|
|
1168
|
+
profile_picture: z.ZodString;
|
|
1169
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1170
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1171
|
+
}, z.core.$loose>;
|
|
1172
|
+
subscriber: z.ZodObject<{
|
|
1173
|
+
user_id: z.ZodNumber;
|
|
1174
|
+
username: z.ZodString;
|
|
1175
|
+
channel_slug: z.ZodString;
|
|
1176
|
+
is_verified: z.ZodBoolean;
|
|
1177
|
+
profile_picture: z.ZodString;
|
|
1178
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1179
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1180
|
+
}, z.core.$loose>;
|
|
1181
|
+
duration: z.ZodNumber;
|
|
1182
|
+
cumulative_months: z.ZodNumber;
|
|
1183
|
+
created_at: z.ZodString;
|
|
1184
|
+
expires_at: z.ZodString;
|
|
1185
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
1186
|
+
user_id: z.ZodString;
|
|
1187
|
+
user_login: z.ZodString;
|
|
1188
|
+
user_name: z.ZodString;
|
|
1189
|
+
is_anonymous: z.ZodBoolean;
|
|
1190
|
+
}, z.core.$loose>;
|
|
1191
|
+
readonly "kick:gift": z.ZodObject<{
|
|
1192
|
+
broadcaster: z.ZodObject<{
|
|
1193
|
+
user_id: z.ZodNumber;
|
|
1194
|
+
username: z.ZodString;
|
|
1195
|
+
channel_slug: z.ZodString;
|
|
1196
|
+
is_verified: z.ZodBoolean;
|
|
1197
|
+
profile_picture: z.ZodString;
|
|
1198
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1199
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1200
|
+
}, z.core.$loose>;
|
|
1201
|
+
gifter: z.ZodObject<{
|
|
1202
|
+
user_id: z.ZodNumber;
|
|
1203
|
+
username: z.ZodString;
|
|
1204
|
+
channel_slug: z.ZodString;
|
|
1205
|
+
is_verified: z.ZodBoolean;
|
|
1206
|
+
profile_picture: z.ZodString;
|
|
1207
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1208
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1209
|
+
}, z.core.$loose>;
|
|
1210
|
+
giftees: z.ZodArray<z.ZodObject<{
|
|
1211
|
+
user_id: z.ZodNumber;
|
|
1212
|
+
username: z.ZodString;
|
|
1213
|
+
channel_slug: z.ZodString;
|
|
1214
|
+
is_verified: z.ZodBoolean;
|
|
1215
|
+
profile_picture: z.ZodString;
|
|
1216
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1217
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1218
|
+
}, z.core.$loose>>;
|
|
1219
|
+
giftRecipients: z.ZodArray<z.ZodString>;
|
|
1220
|
+
giftCount: z.ZodNumber;
|
|
1221
|
+
total: z.ZodNumber;
|
|
1222
|
+
isGift: z.ZodBoolean;
|
|
1223
|
+
is_gift: z.ZodBoolean;
|
|
1224
|
+
recipient_user_id: z.ZodOptional<z.ZodString>;
|
|
1225
|
+
recipient_user_login: z.ZodOptional<z.ZodString>;
|
|
1226
|
+
recipient_user_name: z.ZodOptional<z.ZodString>;
|
|
1227
|
+
created_at: z.ZodString;
|
|
1228
|
+
expires_at: z.ZodString;
|
|
1229
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
1230
|
+
user_id: z.ZodString;
|
|
1231
|
+
user_login: z.ZodString;
|
|
1232
|
+
user_name: z.ZodString;
|
|
1233
|
+
is_anonymous: z.ZodBoolean;
|
|
1234
|
+
}, z.core.$loose>;
|
|
1235
|
+
readonly "kick:kicks": z.ZodObject<{
|
|
1236
|
+
broadcaster: z.ZodObject<{
|
|
1237
|
+
user_id: z.ZodNumber;
|
|
1238
|
+
username: z.ZodString;
|
|
1239
|
+
channel_slug: z.ZodString;
|
|
1240
|
+
is_verified: z.ZodBoolean;
|
|
1241
|
+
profile_picture: z.ZodString;
|
|
1242
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1243
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1244
|
+
}, z.core.$loose>;
|
|
1245
|
+
sender: z.ZodObject<{
|
|
1246
|
+
user_id: z.ZodNumber;
|
|
1247
|
+
username: z.ZodString;
|
|
1248
|
+
channel_slug: z.ZodString;
|
|
1249
|
+
is_verified: z.ZodBoolean;
|
|
1250
|
+
profile_picture: z.ZodString;
|
|
1251
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1252
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1253
|
+
}, z.core.$loose>;
|
|
1254
|
+
gift: z.ZodObject<{
|
|
1255
|
+
amount: z.ZodNumber;
|
|
1256
|
+
name: z.ZodString;
|
|
1257
|
+
type: z.ZodString;
|
|
1258
|
+
tier: z.ZodString;
|
|
1259
|
+
message: z.ZodString;
|
|
1260
|
+
pinned_time_seconds: z.ZodNumber;
|
|
1261
|
+
}, z.core.$loose>;
|
|
1262
|
+
kicks: z.ZodNumber;
|
|
1263
|
+
message: z.ZodString;
|
|
1264
|
+
kick_gift_id: z.ZodString;
|
|
1265
|
+
kick_gift_name: z.ZodString;
|
|
1266
|
+
kick_gift_type: z.ZodString;
|
|
1267
|
+
kick_gift_tier: z.ZodString;
|
|
1268
|
+
kick_gift_color: z.ZodString;
|
|
1269
|
+
kick_gift_image: z.ZodObject<{
|
|
1270
|
+
static: z.ZodString;
|
|
1271
|
+
animated: z.ZodString;
|
|
1272
|
+
}, z.core.$loose>;
|
|
1273
|
+
kick_pinned_time_seconds: z.ZodNumber;
|
|
1274
|
+
created_at: z.ZodString;
|
|
1275
|
+
avatarUrl: z.ZodOptional<z.ZodString>;
|
|
1276
|
+
user_id: z.ZodString;
|
|
1277
|
+
user_login: z.ZodString;
|
|
1278
|
+
user_name: z.ZodString;
|
|
1279
|
+
is_anonymous: z.ZodBoolean;
|
|
1280
|
+
}, z.core.$loose>;
|
|
1281
|
+
readonly "kick:reward": z.ZodObject<{
|
|
1282
|
+
broadcaster: z.ZodObject<{
|
|
1283
|
+
user_id: z.ZodNumber;
|
|
1284
|
+
username: z.ZodString;
|
|
1285
|
+
channel_slug: z.ZodString;
|
|
1286
|
+
is_verified: z.ZodBoolean;
|
|
1287
|
+
profile_picture: z.ZodString;
|
|
1288
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1289
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1290
|
+
}, z.core.$loose>;
|
|
1291
|
+
redeemer: z.ZodObject<{
|
|
1292
|
+
user_id: z.ZodNumber;
|
|
1293
|
+
username: z.ZodString;
|
|
1294
|
+
channel_slug: z.ZodString;
|
|
1295
|
+
is_verified: z.ZodBoolean;
|
|
1296
|
+
profile_picture: z.ZodString;
|
|
1297
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1298
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1299
|
+
}, z.core.$loose>;
|
|
1300
|
+
id: z.ZodString;
|
|
1301
|
+
user_input: z.ZodString;
|
|
1302
|
+
status: z.ZodString;
|
|
1303
|
+
redeemed_at: z.ZodString;
|
|
1304
|
+
reward: z.ZodObject<{
|
|
1305
|
+
id: z.ZodString;
|
|
1306
|
+
title: z.ZodString;
|
|
1307
|
+
cost: z.ZodNumber;
|
|
1308
|
+
}, z.core.$loose>;
|
|
1309
|
+
user_id: z.ZodString;
|
|
1310
|
+
user_login: z.ZodString;
|
|
1311
|
+
user_name: z.ZodString;
|
|
1312
|
+
is_anonymous: z.ZodBoolean;
|
|
1313
|
+
}, z.core.$loose>;
|
|
1314
|
+
readonly "kick:reward_status": z.ZodObject<{
|
|
1315
|
+
broadcaster: z.ZodObject<{
|
|
1316
|
+
user_id: z.ZodNumber;
|
|
1317
|
+
username: z.ZodString;
|
|
1318
|
+
channel_slug: z.ZodString;
|
|
1319
|
+
is_verified: z.ZodBoolean;
|
|
1320
|
+
profile_picture: z.ZodString;
|
|
1321
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1322
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1323
|
+
}, z.core.$loose>;
|
|
1324
|
+
redeemer: z.ZodObject<{
|
|
1325
|
+
user_id: z.ZodNumber;
|
|
1326
|
+
username: z.ZodString;
|
|
1327
|
+
channel_slug: z.ZodString;
|
|
1328
|
+
is_verified: z.ZodBoolean;
|
|
1329
|
+
profile_picture: z.ZodString;
|
|
1330
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1331
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1332
|
+
}, z.core.$loose>;
|
|
1333
|
+
id: z.ZodString;
|
|
1334
|
+
user_input: z.ZodString;
|
|
1335
|
+
status: z.ZodString;
|
|
1336
|
+
redeemed_at: z.ZodString;
|
|
1337
|
+
reward: z.ZodObject<{
|
|
1338
|
+
id: z.ZodString;
|
|
1339
|
+
title: z.ZodString;
|
|
1340
|
+
cost: z.ZodNumber;
|
|
1341
|
+
}, z.core.$loose>;
|
|
1342
|
+
user_id: z.ZodString;
|
|
1343
|
+
user_login: z.ZodString;
|
|
1344
|
+
user_name: z.ZodString;
|
|
1345
|
+
is_anonymous: z.ZodBoolean;
|
|
1346
|
+
}, z.core.$loose>;
|
|
1347
|
+
readonly "kick:stream_online": z.ZodObject<{
|
|
1348
|
+
broadcaster: z.ZodObject<{
|
|
1349
|
+
user_id: z.ZodNumber;
|
|
1350
|
+
username: z.ZodString;
|
|
1351
|
+
channel_slug: z.ZodString;
|
|
1352
|
+
is_verified: z.ZodBoolean;
|
|
1353
|
+
profile_picture: z.ZodString;
|
|
1354
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1355
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1356
|
+
}, z.core.$loose>;
|
|
1357
|
+
is_live: z.ZodBoolean;
|
|
1358
|
+
title: z.ZodString;
|
|
1359
|
+
started_at: z.ZodString;
|
|
1360
|
+
ended_at: z.ZodNullable<z.ZodString>;
|
|
1361
|
+
}, z.core.$loose>;
|
|
1362
|
+
readonly "kick:stream_offline": z.ZodObject<{
|
|
1363
|
+
broadcaster: z.ZodObject<{
|
|
1364
|
+
user_id: z.ZodNumber;
|
|
1365
|
+
username: z.ZodString;
|
|
1366
|
+
channel_slug: z.ZodString;
|
|
1367
|
+
is_verified: z.ZodBoolean;
|
|
1368
|
+
profile_picture: z.ZodString;
|
|
1369
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1370
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1371
|
+
}, z.core.$loose>;
|
|
1372
|
+
is_live: z.ZodBoolean;
|
|
1373
|
+
title: z.ZodString;
|
|
1374
|
+
started_at: z.ZodString;
|
|
1375
|
+
ended_at: z.ZodString;
|
|
1376
|
+
duration_seconds: z.ZodOptional<z.ZodNumber>;
|
|
1377
|
+
}, z.core.$loose>;
|
|
1378
|
+
readonly "kick:stream_update": z.ZodObject<{
|
|
1379
|
+
broadcaster: z.ZodObject<{
|
|
1380
|
+
user_id: z.ZodNumber;
|
|
1381
|
+
username: z.ZodString;
|
|
1382
|
+
channel_slug: z.ZodString;
|
|
1383
|
+
is_verified: z.ZodBoolean;
|
|
1384
|
+
profile_picture: z.ZodString;
|
|
1385
|
+
is_anonymous: z.ZodOptional<z.ZodBoolean>;
|
|
1386
|
+
identity: z.ZodOptional<z.ZodUnknown>;
|
|
1387
|
+
}, z.core.$loose>;
|
|
1388
|
+
metadata: z.ZodObject<{
|
|
1389
|
+
title: z.ZodString;
|
|
1390
|
+
language: z.ZodString;
|
|
1391
|
+
has_mature_content: z.ZodBoolean;
|
|
1392
|
+
category: z.ZodObject<{
|
|
1393
|
+
id: z.ZodNumber;
|
|
1394
|
+
name: z.ZodString;
|
|
1395
|
+
thumbnail: z.ZodString;
|
|
1396
|
+
}, z.core.$loose>;
|
|
1397
|
+
}, z.core.$loose>;
|
|
1398
|
+
title: z.ZodString;
|
|
1399
|
+
language: z.ZodString;
|
|
1400
|
+
has_mature_content: z.ZodBoolean;
|
|
1401
|
+
category_id: z.ZodString;
|
|
1402
|
+
category_name: z.ZodString;
|
|
1403
|
+
title_changed: z.ZodOptional<z.ZodBoolean>;
|
|
1404
|
+
category_changed: z.ZodOptional<z.ZodBoolean>;
|
|
1405
|
+
language_changed: z.ZodOptional<z.ZodBoolean>;
|
|
1406
|
+
old_title: z.ZodOptional<z.ZodString>;
|
|
1407
|
+
}, z.core.$loose>;
|
|
1408
|
+
readonly "spotify:track": z.ZodObject<{
|
|
1409
|
+
is_playing: z.ZodBoolean;
|
|
1410
|
+
progress_ms: z.ZodNumber;
|
|
1411
|
+
timestamp: z.ZodNumber;
|
|
1412
|
+
shuffle: z.ZodString;
|
|
1413
|
+
repeat: z.ZodString;
|
|
1414
|
+
track: z.ZodObject<{
|
|
1415
|
+
id: z.ZodString;
|
|
1416
|
+
uri: z.ZodString;
|
|
1417
|
+
name: z.ZodString;
|
|
1418
|
+
artist: z.ZodString;
|
|
1419
|
+
album: z.ZodString;
|
|
1420
|
+
album_art: z.ZodString;
|
|
1421
|
+
duration_ms: z.ZodNumber;
|
|
1422
|
+
}, z.core.$loose>;
|
|
1423
|
+
device: z.ZodNullable<z.ZodObject<{
|
|
1424
|
+
id: z.ZodString;
|
|
1425
|
+
name: z.ZodString;
|
|
1426
|
+
device_type: z.ZodString;
|
|
1427
|
+
is_active: z.ZodBoolean;
|
|
1428
|
+
volume_percent: z.ZodNullable<z.ZodNumber>;
|
|
1429
|
+
}, z.core.$loose>>;
|
|
1430
|
+
context: z.ZodNullable<z.ZodObject<{
|
|
1431
|
+
context_type: z.ZodString;
|
|
1432
|
+
id: z.ZodString;
|
|
1433
|
+
name: z.ZodNullable<z.ZodString>;
|
|
1434
|
+
uri: z.ZodString;
|
|
1435
|
+
}, z.core.$loose>>;
|
|
1436
|
+
triggered_by: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1437
|
+
}, z.core.$loose>;
|
|
1438
|
+
readonly "spotify:play": z.ZodObject<{
|
|
1439
|
+
track_uri: z.ZodString;
|
|
1440
|
+
source: z.ZodOptional<z.ZodString>;
|
|
1441
|
+
extension_id: z.ZodOptional<z.ZodString>;
|
|
1442
|
+
install_id: z.ZodOptional<z.ZodString>;
|
|
1443
|
+
action: z.ZodString;
|
|
1444
|
+
track_id: z.ZodString;
|
|
1445
|
+
track_name: z.ZodString;
|
|
1446
|
+
artist: z.ZodString;
|
|
1447
|
+
album: z.ZodString;
|
|
1448
|
+
album_art: z.ZodString;
|
|
1449
|
+
song_url: z.ZodString;
|
|
1450
|
+
}, z.core.$loose>;
|
|
1451
|
+
readonly "spotify:pause": z.ZodObject<{
|
|
1452
|
+
source: z.ZodOptional<z.ZodString>;
|
|
1453
|
+
extension_id: z.ZodOptional<z.ZodString>;
|
|
1454
|
+
install_id: z.ZodOptional<z.ZodString>;
|
|
1455
|
+
action: z.ZodString;
|
|
1456
|
+
track_id: z.ZodString;
|
|
1457
|
+
track_name: z.ZodString;
|
|
1458
|
+
artist: z.ZodString;
|
|
1459
|
+
album: z.ZodString;
|
|
1460
|
+
album_art: z.ZodString;
|
|
1461
|
+
song_url: z.ZodString;
|
|
1462
|
+
}, z.core.$loose>;
|
|
1463
|
+
readonly "spotify:skip": z.ZodObject<{
|
|
1464
|
+
source: z.ZodOptional<z.ZodString>;
|
|
1465
|
+
extension_id: z.ZodOptional<z.ZodString>;
|
|
1466
|
+
install_id: z.ZodOptional<z.ZodString>;
|
|
1467
|
+
action: z.ZodString;
|
|
1468
|
+
}, z.core.$loose>;
|
|
1469
|
+
readonly "spotify:volume": z.ZodObject<{
|
|
1470
|
+
oldVolume: z.ZodNumber;
|
|
1471
|
+
newVolume: z.ZodNumber;
|
|
1472
|
+
volume_percent: z.ZodNumber;
|
|
1473
|
+
source: z.ZodOptional<z.ZodString>;
|
|
1474
|
+
extension_id: z.ZodOptional<z.ZodString>;
|
|
1475
|
+
install_id: z.ZodOptional<z.ZodString>;
|
|
1476
|
+
action: z.ZodString;
|
|
1477
|
+
track_id: z.ZodString;
|
|
1478
|
+
track_name: z.ZodString;
|
|
1479
|
+
artist: z.ZodString;
|
|
1480
|
+
album: z.ZodString;
|
|
1481
|
+
album_art: z.ZodString;
|
|
1482
|
+
song_url: z.ZodString;
|
|
1483
|
+
}, z.core.$loose>;
|
|
1484
|
+
readonly "spotify:queue_add": z.ZodObject<{
|
|
1485
|
+
source: z.ZodOptional<z.ZodString>;
|
|
1486
|
+
extension_id: z.ZodOptional<z.ZodString>;
|
|
1487
|
+
install_id: z.ZodOptional<z.ZodString>;
|
|
1488
|
+
uri: z.ZodString;
|
|
1489
|
+
}, z.core.$loose>;
|
|
1490
|
+
readonly "spotify:device": z.ZodObject<{
|
|
1491
|
+
fromDevice: z.ZodString;
|
|
1492
|
+
fromDeviceType: z.ZodString;
|
|
1493
|
+
toDevice: z.ZodString;
|
|
1494
|
+
toDeviceType: z.ZodString;
|
|
1495
|
+
}, z.core.$loose>;
|
|
1496
|
+
readonly "spotify:playlist_add": z.ZodObject<{
|
|
1497
|
+
playlistId: z.ZodString;
|
|
1498
|
+
}, z.core.$loose>;
|
|
1499
|
+
readonly "spotify:playlist_remove": z.ZodObject<{
|
|
1500
|
+
playlistId: z.ZodString;
|
|
1501
|
+
trackUri: z.ZodString;
|
|
1502
|
+
}, z.core.$loose>;
|
|
1503
|
+
readonly "spotify:playlist_create": z.ZodObject<{
|
|
1504
|
+
playlistName: z.ZodString;
|
|
1505
|
+
}, z.core.$loose>;
|
|
1506
|
+
readonly "spotify:playlist_edit": z.ZodObject<{
|
|
1507
|
+
playlistName: z.ZodString;
|
|
1508
|
+
}, z.core.$loose>;
|
|
1509
|
+
readonly "spotify:playlist_delete": z.ZodObject<{
|
|
1510
|
+
playlistId: z.ZodString;
|
|
1511
|
+
}, z.core.$loose>;
|
|
1512
|
+
readonly "streamelements:tip": z.ZodObject<{
|
|
1513
|
+
_id: z.ZodString;
|
|
1514
|
+
channel: z.ZodString;
|
|
1515
|
+
provider: z.ZodString;
|
|
1516
|
+
type: z.ZodString;
|
|
1517
|
+
flagged: z.ZodBoolean;
|
|
1518
|
+
createdAt: z.ZodString;
|
|
1519
|
+
updatedAt: z.ZodString;
|
|
1520
|
+
data: z.ZodObject<{
|
|
1521
|
+
tipId: z.ZodString;
|
|
1522
|
+
username: z.ZodString;
|
|
1523
|
+
displayName: z.ZodString;
|
|
1524
|
+
providerId: z.ZodOptional<z.ZodString>;
|
|
1525
|
+
amount: z.ZodNumber;
|
|
1526
|
+
currency: z.ZodString;
|
|
1527
|
+
message: z.ZodString;
|
|
1528
|
+
avatar: z.ZodOptional<z.ZodString>;
|
|
1529
|
+
}, z.core.$loose>;
|
|
1530
|
+
}, z.core.$loose>;
|
|
1531
|
+
readonly "shopify:order": z.ZodObject<{
|
|
1532
|
+
shop: z.ZodOptional<z.ZodObject<{
|
|
1533
|
+
domain: z.ZodString;
|
|
1534
|
+
label: z.ZodString;
|
|
1535
|
+
}, z.core.$loose>>;
|
|
1536
|
+
order_number: z.ZodNullable<z.ZodNumber>;
|
|
1537
|
+
name: z.ZodNullable<z.ZodString>;
|
|
1538
|
+
financial_status: z.ZodNullable<z.ZodString>;
|
|
1539
|
+
total_price: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1540
|
+
currency: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1541
|
+
line_items: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
1542
|
+
title: z.ZodNullable<z.ZodString>;
|
|
1543
|
+
quantity: z.ZodNullable<z.ZodNumber>;
|
|
1544
|
+
price: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1545
|
+
}, z.core.$loose>>>>;
|
|
1546
|
+
customer_display: z.ZodOptional<z.ZodString>;
|
|
1547
|
+
}, z.core.$loose>;
|
|
1548
|
+
readonly "shopify:order_paid": z.ZodObject<{
|
|
1549
|
+
shop: z.ZodOptional<z.ZodObject<{
|
|
1550
|
+
domain: z.ZodString;
|
|
1551
|
+
label: z.ZodString;
|
|
1552
|
+
}, z.core.$loose>>;
|
|
1553
|
+
order_number: z.ZodNullable<z.ZodNumber>;
|
|
1554
|
+
name: z.ZodNullable<z.ZodString>;
|
|
1555
|
+
financial_status: z.ZodNullable<z.ZodString>;
|
|
1556
|
+
total_price: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1557
|
+
currency: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1558
|
+
line_items: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
1559
|
+
title: z.ZodNullable<z.ZodString>;
|
|
1560
|
+
quantity: z.ZodNullable<z.ZodNumber>;
|
|
1561
|
+
price: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1562
|
+
}, z.core.$loose>>>>;
|
|
1563
|
+
customer_display: z.ZodOptional<z.ZodString>;
|
|
1564
|
+
}, z.core.$loose>;
|
|
1565
|
+
readonly "shopify:product": z.ZodObject<{
|
|
1566
|
+
shop: z.ZodOptional<z.ZodObject<{
|
|
1567
|
+
domain: z.ZodString;
|
|
1568
|
+
label: z.ZodString;
|
|
1569
|
+
}, z.core.$loose>>;
|
|
1570
|
+
title: z.ZodNullable<z.ZodString>;
|
|
1571
|
+
vendor: z.ZodNullable<z.ZodString>;
|
|
1572
|
+
product_type: z.ZodNullable<z.ZodString>;
|
|
1573
|
+
handle: z.ZodNullable<z.ZodString>;
|
|
1574
|
+
image_url: z.ZodNullable<z.ZodString>;
|
|
1575
|
+
}, z.core.$loose>;
|
|
1576
|
+
readonly "twitch:chat": z.ZodObject<{
|
|
1577
|
+
account_id: z.ZodString;
|
|
1578
|
+
platform: z.ZodString;
|
|
1579
|
+
channel_name: z.ZodNullable<z.ZodString>;
|
|
1580
|
+
user_id: z.ZodNullable<z.ZodString>;
|
|
1581
|
+
username: z.ZodString;
|
|
1582
|
+
display_name: z.ZodNullable<z.ZodString>;
|
|
1583
|
+
avatar_url: z.ZodNullable<z.ZodString>;
|
|
1584
|
+
message: z.ZodString;
|
|
1585
|
+
emotes: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
1586
|
+
gifs: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
1587
|
+
badges: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
1588
|
+
color: z.ZodNullable<z.ZodString>;
|
|
1589
|
+
is_mod: z.ZodBoolean;
|
|
1590
|
+
is_sub: z.ZodBoolean;
|
|
1591
|
+
is_vip: z.ZodBoolean;
|
|
1592
|
+
sub_tier: z.ZodNullable<z.ZodString>;
|
|
1593
|
+
platform_message_id: z.ZodNullable<z.ZodString>;
|
|
1594
|
+
lumio_user_id: z.ZodNullable<z.ZodString>;
|
|
1595
|
+
reply_parent_msg_id: z.ZodNullable<z.ZodString>;
|
|
1596
|
+
reply_parent_username: z.ZodNullable<z.ZodString>;
|
|
1597
|
+
reply_parent_login: z.ZodNullable<z.ZodString>;
|
|
1598
|
+
reply_parent_message: z.ZodNullable<z.ZodString>;
|
|
1599
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
1600
|
+
message_type: z.ZodNullable<z.ZodString>;
|
|
1601
|
+
user_treatment: z.ZodNullable<z.ZodString>;
|
|
1602
|
+
live_chat_id: z.ZodOptional<z.ZodString>;
|
|
1603
|
+
is_shared_chat: z.ZodOptional<z.ZodBoolean>;
|
|
1604
|
+
source_channel: z.ZodOptional<z.ZodUnknown>;
|
|
1605
|
+
announcement_color: z.ZodOptional<z.ZodUnknown>;
|
|
1606
|
+
}, z.core.$loose>;
|
|
1607
|
+
readonly "youtube:chat": z.ZodObject<{
|
|
1608
|
+
account_id: z.ZodString;
|
|
1609
|
+
platform: z.ZodString;
|
|
1610
|
+
channel_name: z.ZodNullable<z.ZodString>;
|
|
1611
|
+
user_id: z.ZodNullable<z.ZodString>;
|
|
1612
|
+
username: z.ZodString;
|
|
1613
|
+
display_name: z.ZodNullable<z.ZodString>;
|
|
1614
|
+
avatar_url: z.ZodNullable<z.ZodString>;
|
|
1615
|
+
message: z.ZodString;
|
|
1616
|
+
emotes: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
1617
|
+
gifs: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
1618
|
+
badges: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
1619
|
+
color: z.ZodNullable<z.ZodString>;
|
|
1620
|
+
is_mod: z.ZodBoolean;
|
|
1621
|
+
is_sub: z.ZodBoolean;
|
|
1622
|
+
is_vip: z.ZodBoolean;
|
|
1623
|
+
sub_tier: z.ZodNullable<z.ZodString>;
|
|
1624
|
+
platform_message_id: z.ZodNullable<z.ZodString>;
|
|
1625
|
+
lumio_user_id: z.ZodNullable<z.ZodString>;
|
|
1626
|
+
reply_parent_msg_id: z.ZodNullable<z.ZodString>;
|
|
1627
|
+
reply_parent_username: z.ZodNullable<z.ZodString>;
|
|
1628
|
+
reply_parent_login: z.ZodNullable<z.ZodString>;
|
|
1629
|
+
reply_parent_message: z.ZodNullable<z.ZodString>;
|
|
1630
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
1631
|
+
message_type: z.ZodNullable<z.ZodString>;
|
|
1632
|
+
user_treatment: z.ZodNullable<z.ZodString>;
|
|
1633
|
+
live_chat_id: z.ZodOptional<z.ZodString>;
|
|
1634
|
+
is_shared_chat: z.ZodOptional<z.ZodBoolean>;
|
|
1635
|
+
source_channel: z.ZodOptional<z.ZodUnknown>;
|
|
1636
|
+
announcement_color: z.ZodOptional<z.ZodUnknown>;
|
|
1637
|
+
}, z.core.$loose>;
|
|
1638
|
+
readonly "kick:chat": z.ZodObject<{
|
|
1639
|
+
account_id: z.ZodString;
|
|
1640
|
+
platform: z.ZodString;
|
|
1641
|
+
channel_name: z.ZodNullable<z.ZodString>;
|
|
1642
|
+
user_id: z.ZodNullable<z.ZodString>;
|
|
1643
|
+
username: z.ZodString;
|
|
1644
|
+
display_name: z.ZodNullable<z.ZodString>;
|
|
1645
|
+
avatar_url: z.ZodNullable<z.ZodString>;
|
|
1646
|
+
message: z.ZodString;
|
|
1647
|
+
emotes: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
1648
|
+
gifs: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
1649
|
+
badges: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
1650
|
+
color: z.ZodNullable<z.ZodString>;
|
|
1651
|
+
is_mod: z.ZodBoolean;
|
|
1652
|
+
is_sub: z.ZodBoolean;
|
|
1653
|
+
is_vip: z.ZodBoolean;
|
|
1654
|
+
sub_tier: z.ZodNullable<z.ZodString>;
|
|
1655
|
+
platform_message_id: z.ZodNullable<z.ZodString>;
|
|
1656
|
+
lumio_user_id: z.ZodNullable<z.ZodString>;
|
|
1657
|
+
reply_parent_msg_id: z.ZodNullable<z.ZodString>;
|
|
1658
|
+
reply_parent_username: z.ZodNullable<z.ZodString>;
|
|
1659
|
+
reply_parent_login: z.ZodNullable<z.ZodString>;
|
|
1660
|
+
reply_parent_message: z.ZodNullable<z.ZodString>;
|
|
1661
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
1662
|
+
message_type: z.ZodNullable<z.ZodString>;
|
|
1663
|
+
user_treatment: z.ZodNullable<z.ZodString>;
|
|
1664
|
+
live_chat_id: z.ZodOptional<z.ZodString>;
|
|
1665
|
+
is_shared_chat: z.ZodOptional<z.ZodBoolean>;
|
|
1666
|
+
source_channel: z.ZodOptional<z.ZodUnknown>;
|
|
1667
|
+
announcement_color: z.ZodOptional<z.ZodUnknown>;
|
|
1668
|
+
}, z.core.$loose>;
|
|
1669
|
+
readonly "chat:message": z.ZodObject<{
|
|
1670
|
+
account_id: z.ZodString;
|
|
1671
|
+
platform: z.ZodString;
|
|
1672
|
+
channel_name: z.ZodNullable<z.ZodString>;
|
|
1673
|
+
user_id: z.ZodNullable<z.ZodString>;
|
|
1674
|
+
username: z.ZodString;
|
|
1675
|
+
display_name: z.ZodNullable<z.ZodString>;
|
|
1676
|
+
avatar_url: z.ZodNullable<z.ZodString>;
|
|
1677
|
+
message: z.ZodString;
|
|
1678
|
+
emotes: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
1679
|
+
gifs: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
1680
|
+
badges: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
|
|
1681
|
+
color: z.ZodNullable<z.ZodString>;
|
|
1682
|
+
is_mod: z.ZodBoolean;
|
|
1683
|
+
is_sub: z.ZodBoolean;
|
|
1684
|
+
is_vip: z.ZodBoolean;
|
|
1685
|
+
sub_tier: z.ZodNullable<z.ZodString>;
|
|
1686
|
+
platform_message_id: z.ZodNullable<z.ZodString>;
|
|
1687
|
+
lumio_user_id: z.ZodNullable<z.ZodString>;
|
|
1688
|
+
reply_parent_msg_id: z.ZodNullable<z.ZodString>;
|
|
1689
|
+
reply_parent_username: z.ZodNullable<z.ZodString>;
|
|
1690
|
+
reply_parent_login: z.ZodNullable<z.ZodString>;
|
|
1691
|
+
reply_parent_message: z.ZodNullable<z.ZodString>;
|
|
1692
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
1693
|
+
message_type: z.ZodNullable<z.ZodString>;
|
|
1694
|
+
user_treatment: z.ZodNullable<z.ZodString>;
|
|
1695
|
+
live_chat_id: z.ZodOptional<z.ZodString>;
|
|
1696
|
+
is_shared_chat: z.ZodOptional<z.ZodBoolean>;
|
|
1697
|
+
source_channel: z.ZodOptional<z.ZodUnknown>;
|
|
1698
|
+
announcement_color: z.ZodOptional<z.ZodUnknown>;
|
|
1699
|
+
}, z.core.$loose>;
|
|
1700
|
+
};
|
|
1701
|
+
/** The payload type of every event type, inferred from its schema. */
|
|
1702
|
+
type LumioEventPayloadMap = {
|
|
1703
|
+
[K in LumioEventType]: z.infer<(typeof LUMIO_EVENT_PAYLOAD_SCHEMAS)[K]>;
|
|
1704
|
+
};
|
|
1705
|
+
/** The payload of one event type, e.g. `LumioEventPayload<"twitch:follower">`. */
|
|
1706
|
+
type LumioEventPayload<K extends LumioEventType> = LumioEventPayloadMap[K];
|
|
1707
|
+
/** A chat message (`twitch:chat`, `youtube:chat`, `kick:chat`, `chat:message`). */
|
|
1708
|
+
type ChatMessagePayload = z.infer<typeof chatMessagePayloadSchema>;
|
|
1709
|
+
/** A `twitch:ban` / `twitch:unban` moderation-log entry. */
|
|
1710
|
+
type ModerationLogPayload = z.infer<typeof moderationLogEntry>;
|
|
1711
|
+
/** The zod schema for one event type's payload. */
|
|
1712
|
+
declare function lumioEventPayloadSchema<K extends LumioEventType>(type: K): (typeof LUMIO_EVENT_PAYLOAD_SCHEMAS)[K];
|
|
1713
|
+
/** Validates `data` as the payload of `type`, e.g. before a mock host emits it. */
|
|
1714
|
+
declare function parseLumioEventPayload<K extends LumioEventType>(type: K, data: unknown): z.ZodSafeParseResult<LumioEventPayloadMap[K]>;
|
|
1715
|
+
|
|
404
1716
|
declare const LUMIO_COMPONENT_TYPES: readonly ["Box", "VStack", "HStack", "CompactView", "List", "Text", "Image", "Button", "Toggle", "TextField", "TextArea", "NumberField", "Dropdown", "Slider", "IconPicker", "IconDisplay", "EditorInput", "EditorTextarea", "EditorSelect", "EditorCheckbox", "EditorSlider", "EditorColorPicker", "EditorGroup", "EditorLabel", "EditorDivider", "EditorInfo", "EditorFontRow", "EditorButton", "EditorFontPicker", "EditorChannelRow"];
|
|
405
1717
|
type LumioComponentType = (typeof LUMIO_COMPONENT_TYPES)[number];
|
|
406
1718
|
interface LumioComponentNode {
|
|
@@ -446,10 +1758,16 @@ interface StorageSetParams {
|
|
|
446
1758
|
interface StorageGetParams {
|
|
447
1759
|
key: string;
|
|
448
1760
|
}
|
|
1761
|
+
/** `server.query` — run a `queryRows` export of `server/functions.ts` by name. Resolves with its rows. */
|
|
449
1762
|
interface ServerQueryParams {
|
|
450
1763
|
fn: string;
|
|
451
1764
|
params: Record<string, unknown>;
|
|
452
1765
|
}
|
|
1766
|
+
/**
|
|
1767
|
+
* `server.mutation` — run an `insertRow` / `patchRow` / `deleteRow` export by
|
|
1768
|
+
* name. Resolves with the written row (the deleted row's `{ _id }` for
|
|
1769
|
+
* `deleteRow`), or `null` when no row matched.
|
|
1770
|
+
*/
|
|
453
1771
|
interface ServerMutationParams {
|
|
454
1772
|
fn: string;
|
|
455
1773
|
params: Record<string, unknown>;
|
|
@@ -463,6 +1781,57 @@ interface SoundStopParams {
|
|
|
463
1781
|
}
|
|
464
1782
|
interface SoundGetListParams {
|
|
465
1783
|
}
|
|
1784
|
+
/** `action.execute` — run a Lumio service action on behalf of the extension install. */
|
|
1785
|
+
interface ActionExecuteParams {
|
|
1786
|
+
action: LumioActionType;
|
|
1787
|
+
params: Record<string, unknown>;
|
|
1788
|
+
}
|
|
1789
|
+
/** Successful `action.execute` response: the action's return data (`null` when it has none). */
|
|
1790
|
+
interface ActionExecuteResult {
|
|
1791
|
+
data: unknown;
|
|
1792
|
+
}
|
|
1793
|
+
/**
|
|
1794
|
+
* JSON-RPC error codes a host answers a failed `action.execute` with. The host
|
|
1795
|
+
* never decides whether an action is allowed — the API does, with the extension
|
|
1796
|
+
* identity it derives from the install, not from the worker's claim.
|
|
1797
|
+
*/
|
|
1798
|
+
declare const ACTION_EXECUTE_ERRORS: {
|
|
1799
|
+
/** Malformed request: `action` is not a string or `params` is not an object. */
|
|
1800
|
+
readonly INVALID_REQUEST: -32602;
|
|
1801
|
+
/** This host cannot run actions (no install, or a credential that may not run them). */
|
|
1802
|
+
readonly UNAVAILABLE: -32001;
|
|
1803
|
+
/** The extension does not declare the action's permission, or the caller may not use it. */
|
|
1804
|
+
readonly DENIED: -32002;
|
|
1805
|
+
/** The API does not dispatch this action. */
|
|
1806
|
+
readonly UNKNOWN_ACTION: -32003;
|
|
1807
|
+
/** The API rejected the action's params. */
|
|
1808
|
+
readonly INVALID_PARAMS: -32004;
|
|
1809
|
+
/** The action ran and failed (e.g. its target service is not connected). */
|
|
1810
|
+
readonly FAILED: -32005;
|
|
1811
|
+
};
|
|
1812
|
+
type ActionExecuteErrorCode = (typeof ACTION_EXECUTE_ERRORS)[keyof typeof ACTION_EXECUTE_ERRORS];
|
|
1813
|
+
/**
|
|
1814
|
+
* JSON-RPC error codes a host answers a failed `server.query` /
|
|
1815
|
+
* `server.mutation` with. The API resolves the function by name from the
|
|
1816
|
+
* install's published functions manifest and decides from the host's
|
|
1817
|
+
* credential whether an `editorOnly` function may run — the worker cannot
|
|
1818
|
+
* claim the editor.
|
|
1819
|
+
*/
|
|
1820
|
+
declare const SERVER_FUNCTION_ERRORS: {
|
|
1821
|
+
/** Malformed request: `fn` is not a function name or `params` is not an object. */
|
|
1822
|
+
readonly INVALID_REQUEST: -32602;
|
|
1823
|
+
/** This host cannot call server functions (no install, or a credential that may not call them). */
|
|
1824
|
+
readonly UNAVAILABLE: -32001;
|
|
1825
|
+
/** The caller may not run the function (an `editorOnly` function outside the editor, or missing permission). */
|
|
1826
|
+
readonly DENIED: -32002;
|
|
1827
|
+
/** The install's published version has no server function with this name, or not of this kind. */
|
|
1828
|
+
readonly UNKNOWN_FUNCTION: -32003;
|
|
1829
|
+
/** The API rejected the params (missing or mistyped `arg()` value, invalid row id or column value). */
|
|
1830
|
+
readonly INVALID_PARAMS: -32004;
|
|
1831
|
+
/** The function ran and failed (rate limit, no data schema, storage quota, timeout). */
|
|
1832
|
+
readonly FAILED: -32005;
|
|
1833
|
+
};
|
|
1834
|
+
type ServerFunctionErrorCode = (typeof SERVER_FUNCTION_ERRORS)[keyof typeof SERVER_FUNCTION_ERRORS];
|
|
466
1835
|
interface Sound {
|
|
467
1836
|
id: string;
|
|
468
1837
|
name: string;
|
|
@@ -475,7 +1844,7 @@ interface LifecycleInitParams {
|
|
|
475
1844
|
extensionId: string;
|
|
476
1845
|
installId: string;
|
|
477
1846
|
accountId: string;
|
|
478
|
-
target: "editor" | "layer"
|
|
1847
|
+
target: "editor" | "layer";
|
|
479
1848
|
storage: Record<string, unknown>;
|
|
480
1849
|
theme: Theme;
|
|
481
1850
|
}
|
|
@@ -493,6 +1862,16 @@ interface StorageUpdateParams {
|
|
|
493
1862
|
key: string;
|
|
494
1863
|
value: unknown;
|
|
495
1864
|
}
|
|
1865
|
+
/**
|
|
1866
|
+
* `server.realtime` — a message a handler of this install pushed with
|
|
1867
|
+
* `ctx.realtime.push(topic, payload)`. The host relays it to every rendered
|
|
1868
|
+
* surface of the install (editor, layer); the SDK hands it to
|
|
1869
|
+
* `useRealtime(topic, cb)`.
|
|
1870
|
+
*/
|
|
1871
|
+
interface ServerRealtimeParams {
|
|
1872
|
+
topic: string;
|
|
1873
|
+
payload: unknown;
|
|
1874
|
+
}
|
|
496
1875
|
interface ThemeChangeParams {
|
|
497
1876
|
theme: Theme;
|
|
498
1877
|
}
|
|
@@ -509,6 +1888,7 @@ declare const WORKER_METHODS: {
|
|
|
509
1888
|
readonly SOUND_PLAY: "sound.play";
|
|
510
1889
|
readonly SOUND_STOP: "sound.stop";
|
|
511
1890
|
readonly SOUND_LIST: "sound.list";
|
|
1891
|
+
readonly ACTION_EXECUTE: "action.execute";
|
|
512
1892
|
};
|
|
513
1893
|
declare const HOST_METHODS: {
|
|
514
1894
|
readonly LIFECYCLE_INIT: "lifecycle.init";
|
|
@@ -518,6 +1898,28 @@ declare const HOST_METHODS: {
|
|
|
518
1898
|
readonly STORAGE_UPDATE: "storage.update";
|
|
519
1899
|
readonly THEME_CHANGE: "theme.change";
|
|
520
1900
|
readonly CONFIG_UPDATE: "config.update";
|
|
1901
|
+
readonly SERVER_REALTIME: "server.realtime";
|
|
1902
|
+
};
|
|
1903
|
+
/**
|
|
1904
|
+
* Rules of `ctx.realtime.push(topic, payload)`. The API and the Bot Module
|
|
1905
|
+
* Worker enforce them (`lo_extensions_runtime::realtime`); a push that breaks
|
|
1906
|
+
* one throws in the handler.
|
|
1907
|
+
*/
|
|
1908
|
+
declare const REALTIME_LIMITS: {
|
|
1909
|
+
/** 1–64 characters of `A-Z a-z 0-9 _ . : -`, starting with a letter or digit. */
|
|
1910
|
+
readonly TOPIC_PATTERN: RegExp;
|
|
1911
|
+
/** Largest serialized payload of one push, in bytes. */
|
|
1912
|
+
readonly MAX_PAYLOAD_BYTES: number;
|
|
1913
|
+
/** Most pushes one handler run may make. */
|
|
1914
|
+
readonly MAX_PUSHES_PER_INVOCATION: 32;
|
|
1915
|
+
/** Pushes per install and minute; pushes over the cap are dropped. */
|
|
1916
|
+
readonly MAX_PUSHES_PER_MINUTE: 300;
|
|
1917
|
+
/**
|
|
1918
|
+
* Published bytes (serialized `{ topic, payload }`) per install and minute;
|
|
1919
|
+
* pushes over the cap are dropped.
|
|
1920
|
+
*/
|
|
1921
|
+
readonly MAX_BYTES_PER_MINUTE: number;
|
|
521
1922
|
};
|
|
522
1923
|
|
|
523
|
-
export {
|
|
1924
|
+
export { ACTION_EXECUTE_ERRORS, ACTION_TYPES, HOST_METHODS, LUMIO_COMPONENT_TYPES, LUMIO_EVENT_PAYLOAD_SCHEMAS, LUMIO_EVENT_TYPES, MESSAGE_TYPES, REALTIME_LIMITS, SERVER_FUNCTION_ERRORS, STORAGE_SCOPES, WORKER_METHODS, actionMessageSchema, chatMessagePayloadSchema, configUpdateMessageSchema, errorMessageSchema, eventMessageSchema, extensionConfigSchema, initMessageSchema, lumioActionTypeSchema, lumioEventPayloadSchema, lumioEventTypeSchema, lumioMessageSchema, nodeConfigRequestMessageSchema, nodeConfigUpdateMessageSchema, parseLumioEventPayload, readyMessageSchema, storageScopeSchema, storageUpdateMessageSchema, themeBorderRadiusSchema, themeChangeMessageSchema, themeColorsSchema, themeFontsSchema, themeSchema };
|
|
1925
|
+
export type { ActionExecuteErrorCode, ActionExecuteParams, ActionExecuteResult, ActionMessage, ChatMessagePayload, ConfigUpdateMessage, ErrorMessage, EventCallbackParams, EventMessage, EventPlatformParams, ExtensionConfig, InitMessage, JsonRpcMessage, JsonRpcNotification, JsonRpcRequest, JsonRpcResponse, LifecycleDestroyParams, LifecycleInitParams, LumioActionType, LumioComponentNode, LumioComponentType, LumioEventPayload, LumioEventPayloadMap, LumioEventType, LumioMessage, MessageType, ModerationLogPayload, NodeConfigRequestMessage, NodeConfigUpdateMessage, ReadyMessage, ServerFunctionErrorCode, ServerMutationParams, ServerQueryParams, ServerRealtimeParams, Sound, SoundGetListParams, SoundPlayEvent, SoundPlayParams, SoundStopEvent, SoundStopParams, StorageGetParams, StorageScope, StorageSetParams, StorageUpdateMessage, StorageUpdateParams, Theme, ThemeBorderRadius, ThemeChangeMessage, ThemeChangeParams, ThemeColors, ThemeFonts, UiKeyframesParams, UiReadyParams, UiRenderParams };
|