@towns-labs/proto 2.0.1

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.
@@ -0,0 +1,2315 @@
1
+ import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
2
+ import type { Empty } from "@bufbuild/protobuf/wkt";
3
+ import type { Envelope, InviteSignedPayload, UserMetadataPayload_EncryptionDevice } from "./protocol_pb";
4
+ import type { Message } from "@bufbuild/protobuf";
5
+ /**
6
+ * Describes the file apps.proto.
7
+ */
8
+ export declare const file_apps: GenFile;
9
+ /**
10
+ * @generated from message river.AppSettings
11
+ */
12
+ export type AppSettings = Message<"river.AppSettings"> & {
13
+ /**
14
+ * @generated from field: river.ForwardSettingValue forward_setting = 1;
15
+ */
16
+ forwardSetting: ForwardSettingValue;
17
+ /**
18
+ * tradable indicates this app supports positions (returns PositionsResponse).
19
+ * When true, the app can be queried for user positions via GetAppPositions.
20
+ *
21
+ * @generated from field: bool tradable = 2;
22
+ */
23
+ tradable: boolean;
24
+ };
25
+ /**
26
+ * Describes the message river.AppSettings.
27
+ * Use `create(AppSettingsSchema)` to create a new message.
28
+ */
29
+ export declare const AppSettingsSchema: GenMessage<AppSettings>;
30
+ /**
31
+ * @generated from message river.RegisterRequest
32
+ */
33
+ export type RegisterRequest = Message<"river.RegisterRequest"> & {
34
+ /**
35
+ * public key of the app
36
+ *
37
+ * @generated from field: bytes app_id = 1;
38
+ */
39
+ appId: Uint8Array;
40
+ /**
41
+ * public key of the app owner
42
+ *
43
+ * @generated from field: bytes app_owner_id = 2;
44
+ */
45
+ appOwnerId: Uint8Array;
46
+ /**
47
+ * @generated from field: river.AppSettings settings = 3;
48
+ */
49
+ settings?: AppSettings;
50
+ /**
51
+ * @generated from field: river.AppMetadata metadata = 4;
52
+ */
53
+ metadata?: AppMetadata;
54
+ };
55
+ /**
56
+ * Describes the message river.RegisterRequest.
57
+ * Use `create(RegisterRequestSchema)` to create a new message.
58
+ */
59
+ export declare const RegisterRequestSchema: GenMessage<RegisterRequest>;
60
+ /**
61
+ * @generated from message river.RegisterResponse
62
+ */
63
+ export type RegisterResponse = Message<"river.RegisterResponse"> & {
64
+ /**
65
+ * The shared secret used to sign the jwt the app registry will use to authenticate to the
66
+ * app service. This secret will be exactly 32 bytes.
67
+ *
68
+ * @generated from field: bytes hs256_shared_secret = 1;
69
+ */
70
+ hs256SharedSecret: Uint8Array;
71
+ };
72
+ /**
73
+ * Describes the message river.RegisterResponse.
74
+ * Use `create(RegisterResponseSchema)` to create a new message.
75
+ */
76
+ export declare const RegisterResponseSchema: GenMessage<RegisterResponse>;
77
+ /**
78
+ * @generated from message river.RegisterWebhookRequest
79
+ */
80
+ export type RegisterWebhookRequest = Message<"river.RegisterWebhookRequest"> & {
81
+ /**
82
+ * public key of the app
83
+ *
84
+ * @generated from field: bytes app_id = 1;
85
+ */
86
+ appId: Uint8Array;
87
+ /**
88
+ * Webhook for sending requests to the app service
89
+ *
90
+ * @generated from field: string webhook_url = 2;
91
+ */
92
+ webhookUrl: string;
93
+ };
94
+ /**
95
+ * Describes the message river.RegisterWebhookRequest.
96
+ * Use `create(RegisterWebhookRequestSchema)` to create a new message.
97
+ */
98
+ export declare const RegisterWebhookRequestSchema: GenMessage<RegisterWebhookRequest>;
99
+ /**
100
+ * @generated from message river.RegisterWebhookResponse
101
+ */
102
+ export type RegisterWebhookResponse = Message<"river.RegisterWebhookResponse"> & {};
103
+ /**
104
+ * Describes the message river.RegisterWebhookResponse.
105
+ * Use `create(RegisterWebhookResponseSchema)` to create a new message.
106
+ */
107
+ export declare const RegisterWebhookResponseSchema: GenMessage<RegisterWebhookResponse>;
108
+ /**
109
+ * @generated from message river.SetAppSettingsRequest
110
+ */
111
+ export type SetAppSettingsRequest = Message<"river.SetAppSettingsRequest"> & {
112
+ /**
113
+ * public key of the app
114
+ *
115
+ * @generated from field: bytes app_id = 1;
116
+ */
117
+ appId: Uint8Array;
118
+ /**
119
+ * @generated from field: river.AppSettings settings = 2;
120
+ */
121
+ settings?: AppSettings;
122
+ };
123
+ /**
124
+ * Describes the message river.SetAppSettingsRequest.
125
+ * Use `create(SetAppSettingsRequestSchema)` to create a new message.
126
+ */
127
+ export declare const SetAppSettingsRequestSchema: GenMessage<SetAppSettingsRequest>;
128
+ /**
129
+ * @generated from message river.SetAppSettingsResponse
130
+ */
131
+ export type SetAppSettingsResponse = Message<"river.SetAppSettingsResponse"> & {};
132
+ /**
133
+ * Describes the message river.SetAppSettingsResponse.
134
+ * Use `create(SetAppSettingsResponseSchema)` to create a new message.
135
+ */
136
+ export declare const SetAppSettingsResponseSchema: GenMessage<SetAppSettingsResponse>;
137
+ /**
138
+ * @generated from message river.GetAppSettingsRequest
139
+ */
140
+ export type GetAppSettingsRequest = Message<"river.GetAppSettingsRequest"> & {
141
+ /**
142
+ * public key of the app
143
+ *
144
+ * @generated from field: bytes app_id = 1;
145
+ */
146
+ appId: Uint8Array;
147
+ };
148
+ /**
149
+ * Describes the message river.GetAppSettingsRequest.
150
+ * Use `create(GetAppSettingsRequestSchema)` to create a new message.
151
+ */
152
+ export declare const GetAppSettingsRequestSchema: GenMessage<GetAppSettingsRequest>;
153
+ /**
154
+ * @generated from message river.GetAppSettingsResponse
155
+ */
156
+ export type GetAppSettingsResponse = Message<"river.GetAppSettingsResponse"> & {
157
+ /**
158
+ * @generated from field: river.AppSettings settings = 1;
159
+ */
160
+ settings?: AppSettings;
161
+ /**
162
+ * @generated from field: optional string webhook_url = 2;
163
+ */
164
+ webhookUrl?: string;
165
+ };
166
+ /**
167
+ * Describes the message river.GetAppSettingsResponse.
168
+ * Use `create(GetAppSettingsResponseSchema)` to create a new message.
169
+ */
170
+ export declare const GetAppSettingsResponseSchema: GenMessage<GetAppSettingsResponse>;
171
+ /**
172
+ * @generated from message river.RotateSecretRequest
173
+ */
174
+ export type RotateSecretRequest = Message<"river.RotateSecretRequest"> & {
175
+ /**
176
+ * public key of the app
177
+ *
178
+ * @generated from field: bytes app_id = 1;
179
+ */
180
+ appId: Uint8Array;
181
+ };
182
+ /**
183
+ * Describes the message river.RotateSecretRequest.
184
+ * Use `create(RotateSecretRequestSchema)` to create a new message.
185
+ */
186
+ export declare const RotateSecretRequestSchema: GenMessage<RotateSecretRequest>;
187
+ /**
188
+ * @generated from message river.RotateSecretResponse
189
+ */
190
+ export type RotateSecretResponse = Message<"river.RotateSecretResponse"> & {
191
+ /**
192
+ * the updated shared secret used to sign the jwt the app registry will use to authenticate
193
+ * to the app service. This secret should be exactly 32 bytes.
194
+ *
195
+ * @generated from field: bytes hs256_shared_secret = 1;
196
+ */
197
+ hs256SharedSecret: Uint8Array;
198
+ };
199
+ /**
200
+ * Describes the message river.RotateSecretResponse.
201
+ * Use `create(RotateSecretResponseSchema)` to create a new message.
202
+ */
203
+ export declare const RotateSecretResponseSchema: GenMessage<RotateSecretResponse>;
204
+ /**
205
+ * @generated from message river.GetStatusRequest
206
+ */
207
+ export type GetStatusRequest = Message<"river.GetStatusRequest"> & {
208
+ /**
209
+ * public key of the app
210
+ *
211
+ * @generated from field: bytes app_id = 1;
212
+ */
213
+ appId: Uint8Array;
214
+ };
215
+ /**
216
+ * Describes the message river.GetStatusRequest.
217
+ * Use `create(GetStatusRequestSchema)` to create a new message.
218
+ */
219
+ export declare const GetStatusRequestSchema: GenMessage<GetStatusRequest>;
220
+ /**
221
+ * @generated from message river.GetStatusResponse
222
+ */
223
+ export type GetStatusResponse = Message<"river.GetStatusResponse"> & {
224
+ /**
225
+ * is_registered describes if the app is registered with a webhook
226
+ *
227
+ * @generated from field: bool is_registered = 1;
228
+ */
229
+ isRegistered: boolean;
230
+ /**
231
+ * valid_response is set to true if calling the webhook results in a 200 with version
232
+ * info included in the response body.
233
+ *
234
+ * @generated from field: bool valid_response = 2;
235
+ */
236
+ validResponse: boolean;
237
+ /**
238
+ * Forward the status returned by the bot service.
239
+ *
240
+ * @generated from field: river.AppServiceResponse.StatusResponse status = 3;
241
+ */
242
+ status?: AppServiceResponse_StatusResponse;
243
+ /**
244
+ * active indicates whether the app is currently active and receiving messages
245
+ *
246
+ * @generated from field: bool active = 4;
247
+ */
248
+ active: boolean;
249
+ };
250
+ /**
251
+ * Describes the message river.GetStatusResponse.
252
+ * Use `create(GetStatusResponseSchema)` to create a new message.
253
+ */
254
+ export declare const GetStatusResponseSchema: GenMessage<GetStatusResponse>;
255
+ /**
256
+ * @generated from message river.GetSessionRequest
257
+ */
258
+ export type GetSessionRequest = Message<"river.GetSessionRequest"> & {
259
+ /**
260
+ * public key of the app
261
+ *
262
+ * @generated from field: bytes app_id = 1;
263
+ */
264
+ appId: Uint8Array;
265
+ /**
266
+ * @generated from oneof river.GetSessionRequest.identifier
267
+ */
268
+ identifier: {
269
+ /**
270
+ * session_id retrieves a specific session by its ID.
271
+ * Use this when you have stored the session ID from a previous interaction.
272
+ *
273
+ * @generated from field: string session_id = 2;
274
+ */
275
+ value: string;
276
+ case: "sessionId";
277
+ } | {
278
+ /**
279
+ * stream_id retrieves the session key for a specific stream.
280
+ * Use this when you want to reuse an existing session for a stream
281
+ * without storing session IDs (useful for stateless bots).
282
+ *
283
+ * @generated from field: bytes stream_id = 3;
284
+ */
285
+ value: Uint8Array;
286
+ case: "streamId";
287
+ } | {
288
+ case: undefined;
289
+ value?: undefined;
290
+ };
291
+ };
292
+ /**
293
+ * Describes the message river.GetSessionRequest.
294
+ * Use `create(GetSessionRequestSchema)` to create a new message.
295
+ */
296
+ export declare const GetSessionRequestSchema: GenMessage<GetSessionRequest>;
297
+ /**
298
+ * @generated from message river.GetSessionResponse
299
+ */
300
+ export type GetSessionResponse = Message<"river.GetSessionResponse"> & {
301
+ /**
302
+ * This will be
303
+ *
304
+ * @generated from field: river.Envelope group_encryption_sessions = 1;
305
+ */
306
+ groupEncryptionSessions?: Envelope;
307
+ };
308
+ /**
309
+ * Describes the message river.GetSessionResponse.
310
+ * Use `create(GetSessionResponseSchema)` to create a new message.
311
+ */
312
+ export declare const GetSessionResponseSchema: GenMessage<GetSessionResponse>;
313
+ /**
314
+ * As a performance optimization, we may wish to bundle together many key solicitation requests
315
+ * and channel messages for the bot to respond to in a single webhook call. Thus, an isolated
316
+ * group of channel messages and encryption keys, or a request for a key solicitation, is
317
+ * represented here. For webhook calls regarding channel content, the payload may contain one or
318
+ * more of these events.
319
+ *
320
+ * @generated from message river.EventPayload
321
+ */
322
+ export type EventPayload = Message<"river.EventPayload"> & {
323
+ /**
324
+ * @generated from oneof river.EventPayload.payload
325
+ */
326
+ payload: {
327
+ /**
328
+ * @generated from field: river.EventPayload.Messages messages = 1;
329
+ */
330
+ value: EventPayload_Messages;
331
+ case: "messages";
332
+ } | {
333
+ /**
334
+ * @generated from field: river.EventPayload.SolicitKeys solicitation = 2;
335
+ */
336
+ value: EventPayload_SolicitKeys;
337
+ case: "solicitation";
338
+ } | {
339
+ case: undefined;
340
+ value?: undefined;
341
+ };
342
+ };
343
+ /**
344
+ * Describes the message river.EventPayload.
345
+ * Use `create(EventPayloadSchema)` to create a new message.
346
+ */
347
+ export declare const EventPayloadSchema: GenMessage<EventPayload>;
348
+ /**
349
+ * A Messages payload represents a group of user messages in a channel that qualifies for the app
350
+ * to be notified. The included set of group encryption sessions in this message should have
351
+ * all the needed ciphertexts to decrypt the set of messages sent in the same payload.
352
+ *
353
+ * @generated from message river.EventPayload.Messages
354
+ */
355
+ export type EventPayload_Messages = Message<"river.EventPayload.Messages"> & {
356
+ /**
357
+ * @generated from field: bytes stream_id = 1;
358
+ */
359
+ streamId: Uint8Array;
360
+ /**
361
+ * @generated from field: repeated river.Envelope messages = 2;
362
+ */
363
+ messages: Envelope[];
364
+ /**
365
+ * @generated from field: repeated river.Envelope group_encryption_sessions_messages = 3;
366
+ */
367
+ groupEncryptionSessionsMessages: Envelope[];
368
+ };
369
+ /**
370
+ * Describes the message river.EventPayload.Messages.
371
+ * Use `create(EventPayload_MessagesSchema)` to create a new message.
372
+ */
373
+ export declare const EventPayload_MessagesSchema: GenMessage<EventPayload_Messages>;
374
+ /**
375
+ * A SolicitKeys request is sent when one or more messages in the same channel cannot be forwarded
376
+ * to the app because the app does not have keys available to decrypt it in it's user inbox stream.
377
+ * In this case, the app must be prompted to send a message to the stream to solicit the missing
378
+ * session keys so that all queued messages can be forwarded.
379
+ *
380
+ * @generated from message river.EventPayload.SolicitKeys
381
+ */
382
+ export type EventPayload_SolicitKeys = Message<"river.EventPayload.SolicitKeys"> & {
383
+ /**
384
+ * @generated from field: bytes stream_id = 1;
385
+ */
386
+ streamId: Uint8Array;
387
+ /**
388
+ * @generated from field: repeated string session_ids = 2;
389
+ */
390
+ sessionIds: string[];
391
+ };
392
+ /**
393
+ * Describes the message river.EventPayload.SolicitKeys.
394
+ * Use `create(EventPayload_SolicitKeysSchema)` to create a new message.
395
+ */
396
+ export declare const EventPayload_SolicitKeysSchema: GenMessage<EventPayload_SolicitKeys>;
397
+ /**
398
+ * @generated from message river.EventsPayload
399
+ */
400
+ export type EventsPayload = Message<"river.EventsPayload"> & {
401
+ /**
402
+ * @generated from field: repeated river.EventPayload events = 1;
403
+ */
404
+ events: EventPayload[];
405
+ };
406
+ /**
407
+ * Describes the message river.EventsPayload.
408
+ * Use `create(EventsPayloadSchema)` to create a new message.
409
+ */
410
+ export declare const EventsPayloadSchema: GenMessage<EventsPayload>;
411
+ /**
412
+ * @generated from message river.AppServiceRequest
413
+ */
414
+ export type AppServiceRequest = Message<"river.AppServiceRequest"> & {
415
+ /**
416
+ * @generated from oneof river.AppServiceRequest.payload
417
+ */
418
+ payload: {
419
+ /**
420
+ * @generated from field: google.protobuf.Empty initialize = 101;
421
+ */
422
+ value: Empty;
423
+ case: "initialize";
424
+ } | {
425
+ /**
426
+ * @generated from field: google.protobuf.Empty status = 102;
427
+ */
428
+ value: Empty;
429
+ case: "status";
430
+ } | {
431
+ /**
432
+ * @generated from field: river.EventsPayload events = 103;
433
+ */
434
+ value: EventsPayload;
435
+ case: "events";
436
+ } | {
437
+ /**
438
+ * @generated from field: river.PositionsRequest positions = 104;
439
+ */
440
+ value: PositionsRequest;
441
+ case: "positions";
442
+ } | {
443
+ case: undefined;
444
+ value?: undefined;
445
+ };
446
+ };
447
+ /**
448
+ * Describes the message river.AppServiceRequest.
449
+ * Use `create(AppServiceRequestSchema)` to create a new message.
450
+ */
451
+ export declare const AppServiceRequestSchema: GenMessage<AppServiceRequest>;
452
+ /**
453
+ * @generated from message river.AppServiceResponse
454
+ */
455
+ export type AppServiceResponse = Message<"river.AppServiceResponse"> & {
456
+ /**
457
+ * @generated from oneof river.AppServiceResponse.payload
458
+ */
459
+ payload: {
460
+ /**
461
+ * @generated from field: river.AppServiceResponse.InitializeResponse initialize = 101;
462
+ */
463
+ value: AppServiceResponse_InitializeResponse;
464
+ case: "initialize";
465
+ } | {
466
+ /**
467
+ * @generated from field: river.AppServiceResponse.StatusResponse status = 102;
468
+ */
469
+ value: AppServiceResponse_StatusResponse;
470
+ case: "status";
471
+ } | {
472
+ /**
473
+ * @generated from field: river.PositionsResponse positions = 103;
474
+ */
475
+ value: PositionsResponse;
476
+ case: "positions";
477
+ } | {
478
+ case: undefined;
479
+ value?: undefined;
480
+ };
481
+ };
482
+ /**
483
+ * Describes the message river.AppServiceResponse.
484
+ * Use `create(AppServiceResponseSchema)` to create a new message.
485
+ */
486
+ export declare const AppServiceResponseSchema: GenMessage<AppServiceResponse>;
487
+ /**
488
+ * @generated from message river.AppServiceResponse.InitializeResponse
489
+ */
490
+ export type AppServiceResponse_InitializeResponse = Message<"river.AppServiceResponse.InitializeResponse"> & {
491
+ /**
492
+ * @generated from field: river.UserMetadataPayload.EncryptionDevice encryption_device = 1;
493
+ */
494
+ encryptionDevice?: UserMetadataPayload_EncryptionDevice;
495
+ };
496
+ /**
497
+ * Describes the message river.AppServiceResponse.InitializeResponse.
498
+ * Use `create(AppServiceResponse_InitializeResponseSchema)` to create a new message.
499
+ */
500
+ export declare const AppServiceResponse_InitializeResponseSchema: GenMessage<AppServiceResponse_InitializeResponse>;
501
+ /**
502
+ * @generated from message river.AppServiceResponse.StatusResponse
503
+ */
504
+ export type AppServiceResponse_StatusResponse = Message<"river.AppServiceResponse.StatusResponse"> & {
505
+ /**
506
+ * Version established by the app registry that the bot framework supports.
507
+ * It indicates protocol compatibility.
508
+ *
509
+ * @generated from field: int32 framework_version = 1;
510
+ */
511
+ frameworkVersion: number;
512
+ /**
513
+ * @generated from field: string device_key = 2;
514
+ */
515
+ deviceKey: string;
516
+ /**
517
+ * @generated from field: string fallback_key = 3;
518
+ */
519
+ fallbackKey: string;
520
+ /**
521
+ * Optional metadata used to identify the client SDK version.
522
+ * Example: "javascript:@towns-labs/agent:0.0.1"
523
+ *
524
+ * @generated from field: optional string client_version = 4;
525
+ */
526
+ clientVersion?: string;
527
+ };
528
+ /**
529
+ * Describes the message river.AppServiceResponse.StatusResponse.
530
+ * Use `create(AppServiceResponse_StatusResponseSchema)` to create a new message.
531
+ */
532
+ export declare const AppServiceResponse_StatusResponseSchema: GenMessage<AppServiceResponse_StatusResponse>;
533
+ /**
534
+ * Position represents a single position held by a user.
535
+ *
536
+ * @generated from message river.Position
537
+ */
538
+ export type Position = Message<"river.Position"> & {
539
+ /**
540
+ * Human-readable label (e.g., "ETH-PERP Long", "Will BTC hit $100k?")
541
+ *
542
+ * @generated from field: string label = 1;
543
+ */
544
+ label: string;
545
+ /**
546
+ * Optional description (e.g., "10x leverage", "Yes @ $0.85")
547
+ *
548
+ * @generated from field: optional string description = 2;
549
+ */
550
+ description?: string;
551
+ /**
552
+ * Asset/token identifier (e.g., "ETH", "BTC", token ID)
553
+ *
554
+ * @generated from field: string symbol = 3;
555
+ */
556
+ symbol: string;
557
+ /**
558
+ * Position type for categorization
559
+ *
560
+ * @generated from field: river.PositionType type = 4;
561
+ */
562
+ type: PositionType;
563
+ /**
564
+ * Position value in USD (string for precision)
565
+ *
566
+ * @generated from field: string balance_usd = 5;
567
+ */
568
+ balanceUsd: string;
569
+ /**
570
+ * Unrealized PnL in USD (string for precision)
571
+ *
572
+ * @generated from field: string pnl_usd = 6;
573
+ */
574
+ pnlUsd: string;
575
+ /**
576
+ * Optional: Chain ID where the position exists (e.g., 42161 for Arbitrum, 137 for Polygon)
577
+ *
578
+ * @generated from field: optional uint64 chain_id = 7;
579
+ */
580
+ chainId?: bigint;
581
+ /**
582
+ * Optional: Native token balance on the chain (e.g., ETH, MATIC)
583
+ *
584
+ * @generated from field: optional string native_balance = 8;
585
+ */
586
+ nativeBalance?: string;
587
+ };
588
+ /**
589
+ * Describes the message river.Position.
590
+ * Use `create(PositionSchema)` to create a new message.
591
+ */
592
+ export declare const PositionSchema: GenMessage<Position>;
593
+ /**
594
+ * PositionsRequest is sent by the app registry to a bot to fetch user positions.
595
+ *
596
+ * @generated from message river.PositionsRequest
597
+ */
598
+ export type PositionsRequest = Message<"river.PositionsRequest"> & {
599
+ /**
600
+ * User requesting positions (20-byte Ethereum address)
601
+ *
602
+ * @generated from field: bytes user_id = 1;
603
+ */
604
+ userId: Uint8Array;
605
+ };
606
+ /**
607
+ * Describes the message river.PositionsRequest.
608
+ * Use `create(PositionsRequestSchema)` to create a new message.
609
+ */
610
+ export declare const PositionsRequestSchema: GenMessage<PositionsRequest>;
611
+ /**
612
+ * PositionsResponse is returned by a bot containing the user's positions.
613
+ *
614
+ * @generated from message river.PositionsResponse
615
+ */
616
+ export type PositionsResponse = Message<"river.PositionsResponse"> & {
617
+ /**
618
+ * Whether the bot supports positions
619
+ *
620
+ * @generated from field: bool supported = 1;
621
+ */
622
+ supported: boolean;
623
+ /**
624
+ * Error message if positions couldn't be fetched
625
+ *
626
+ * @generated from field: optional string error = 2;
627
+ */
628
+ error?: string;
629
+ /**
630
+ * Individual positions
631
+ *
632
+ * @generated from field: repeated river.Position positions = 3;
633
+ */
634
+ positions: Position[];
635
+ /**
636
+ * Timestamp when data was fetched (Unix milliseconds)
637
+ *
638
+ * @generated from field: int64 timestamp = 4;
639
+ */
640
+ timestamp: bigint;
641
+ };
642
+ /**
643
+ * Describes the message river.PositionsResponse.
644
+ * Use `create(PositionsResponseSchema)` to create a new message.
645
+ */
646
+ export declare const PositionsResponseSchema: GenMessage<PositionsResponse>;
647
+ /**
648
+ * SlashCommand represents a command that the bot supports.
649
+ *
650
+ * @generated from message river.SlashCommand
651
+ */
652
+ export type SlashCommand = Message<"river.SlashCommand"> & {
653
+ /**
654
+ * name is the command name (e.g., "help", "search").
655
+ * Must be 1-32 characters, contain only letters, numbers, and underscores,
656
+ * and start with a letter.
657
+ *
658
+ * @generated from field: string name = 1;
659
+ */
660
+ name: string;
661
+ /**
662
+ * description is a short description of what the command does.
663
+ * Must be 1-256 characters.
664
+ *
665
+ * @generated from field: string description = 2;
666
+ */
667
+ description: string;
668
+ };
669
+ /**
670
+ * Describes the message river.SlashCommand.
671
+ * Use `create(SlashCommandSchema)` to create a new message.
672
+ */
673
+ export declare const SlashCommandSchema: GenMessage<SlashCommand>;
674
+ /**
675
+ * @generated from message river.AppMetadata
676
+ */
677
+ export type AppMetadata = Message<"river.AppMetadata"> & {
678
+ /**
679
+ * username is the identifier used to mention the bot (e.g., "@mybot").
680
+ * Must be unique across all bots.
681
+ *
682
+ * @generated from field: string username = 1;
683
+ */
684
+ username: string;
685
+ /**
686
+ * @generated from field: string description = 2;
687
+ */
688
+ description: string;
689
+ /**
690
+ * @generated from field: string image_url = 3;
691
+ */
692
+ imageUrl: string;
693
+ /**
694
+ * @generated from field: optional string external_url = 4;
695
+ */
696
+ externalUrl?: string;
697
+ /**
698
+ * @generated from field: string avatar_url = 5;
699
+ */
700
+ avatarUrl: string;
701
+ /**
702
+ * slash_commands is a list of commands the bot supports.
703
+ * Maximum of 25 commands per bot.
704
+ *
705
+ * @generated from field: repeated river.SlashCommand slash_commands = 6;
706
+ */
707
+ slashCommands: SlashCommand[];
708
+ /**
709
+ * display_name is the friendly name shown in chat conversations (e.g., "My Helpful Bot").
710
+ * Must be non-empty.
711
+ *
712
+ * @generated from field: string display_name = 7;
713
+ */
714
+ displayName: string;
715
+ /**
716
+ * motto is a short tagline or slogan for the bot.
717
+ *
718
+ * @generated from field: string motto = 8;
719
+ */
720
+ motto: string;
721
+ };
722
+ /**
723
+ * Describes the message river.AppMetadata.
724
+ * Use `create(AppMetadataSchema)` to create a new message.
725
+ */
726
+ export declare const AppMetadataSchema: GenMessage<AppMetadata>;
727
+ /**
728
+ * AppMetadataUpdate represents a partial update to app metadata
729
+ *
730
+ * @generated from message river.AppMetadataUpdate
731
+ */
732
+ export type AppMetadataUpdate = Message<"river.AppMetadataUpdate"> & {
733
+ /**
734
+ * All fields are optional for partial updates
735
+ *
736
+ * @generated from field: optional string username = 1;
737
+ */
738
+ username?: string;
739
+ /**
740
+ * @generated from field: optional string description = 2;
741
+ */
742
+ description?: string;
743
+ /**
744
+ * @generated from field: optional string image_url = 3;
745
+ */
746
+ imageUrl?: string;
747
+ /**
748
+ * @generated from field: optional string external_url = 4;
749
+ */
750
+ externalUrl?: string;
751
+ /**
752
+ * @generated from field: optional string avatar_url = 5;
753
+ */
754
+ avatarUrl?: string;
755
+ /**
756
+ * @generated from field: repeated river.SlashCommand slash_commands = 6;
757
+ */
758
+ slashCommands: SlashCommand[];
759
+ /**
760
+ * @generated from field: optional string display_name = 7;
761
+ */
762
+ displayName?: string;
763
+ /**
764
+ * @generated from field: optional string motto = 8;
765
+ */
766
+ motto?: string;
767
+ };
768
+ /**
769
+ * Describes the message river.AppMetadataUpdate.
770
+ * Use `create(AppMetadataUpdateSchema)` to create a new message.
771
+ */
772
+ export declare const AppMetadataUpdateSchema: GenMessage<AppMetadataUpdate>;
773
+ /**
774
+ * Update app metadata
775
+ *
776
+ * @generated from message river.UpdateAppMetadataRequest
777
+ */
778
+ export type UpdateAppMetadataRequest = Message<"river.UpdateAppMetadataRequest"> & {
779
+ /**
780
+ * @generated from field: bytes app_id = 1;
781
+ */
782
+ appId: Uint8Array;
783
+ /**
784
+ * @generated from field: river.AppMetadataUpdate metadata = 2;
785
+ */
786
+ metadata?: AppMetadataUpdate;
787
+ /**
788
+ * @generated from field: repeated string update_mask = 3;
789
+ */
790
+ updateMask: string[];
791
+ };
792
+ /**
793
+ * Describes the message river.UpdateAppMetadataRequest.
794
+ * Use `create(UpdateAppMetadataRequestSchema)` to create a new message.
795
+ */
796
+ export declare const UpdateAppMetadataRequestSchema: GenMessage<UpdateAppMetadataRequest>;
797
+ /**
798
+ * @generated from message river.UpdateAppMetadataResponse
799
+ */
800
+ export type UpdateAppMetadataResponse = Message<"river.UpdateAppMetadataResponse"> & {};
801
+ /**
802
+ * Describes the message river.UpdateAppMetadataResponse.
803
+ * Use `create(UpdateAppMetadataResponseSchema)` to create a new message.
804
+ */
805
+ export declare const UpdateAppMetadataResponseSchema: GenMessage<UpdateAppMetadataResponse>;
806
+ /**
807
+ * Get app metadata
808
+ *
809
+ * @generated from message river.GetAppMetadataRequest
810
+ */
811
+ export type GetAppMetadataRequest = Message<"river.GetAppMetadataRequest"> & {
812
+ /**
813
+ * @generated from field: bytes app_id = 1;
814
+ */
815
+ appId: Uint8Array;
816
+ };
817
+ /**
818
+ * Describes the message river.GetAppMetadataRequest.
819
+ * Use `create(GetAppMetadataRequestSchema)` to create a new message.
820
+ */
821
+ export declare const GetAppMetadataRequestSchema: GenMessage<GetAppMetadataRequest>;
822
+ /**
823
+ * @generated from message river.GetAppMetadataResponse
824
+ */
825
+ export type GetAppMetadataResponse = Message<"river.GetAppMetadataResponse"> & {
826
+ /**
827
+ * @generated from field: river.AppMetadata metadata = 1;
828
+ */
829
+ metadata?: AppMetadata;
830
+ };
831
+ /**
832
+ * Describes the message river.GetAppMetadataResponse.
833
+ * Use `create(GetAppMetadataResponseSchema)` to create a new message.
834
+ */
835
+ export declare const GetAppMetadataResponseSchema: GenMessage<GetAppMetadataResponse>;
836
+ /**
837
+ * Validate bot username
838
+ *
839
+ * @generated from message river.ValidateBotNameRequest
840
+ */
841
+ export type ValidateBotNameRequest = Message<"river.ValidateBotNameRequest"> & {
842
+ /**
843
+ * @generated from field: string username = 1;
844
+ */
845
+ username: string;
846
+ };
847
+ /**
848
+ * Describes the message river.ValidateBotNameRequest.
849
+ * Use `create(ValidateBotNameRequestSchema)` to create a new message.
850
+ */
851
+ export declare const ValidateBotNameRequestSchema: GenMessage<ValidateBotNameRequest>;
852
+ /**
853
+ * @generated from message river.ValidateBotNameResponse
854
+ */
855
+ export type ValidateBotNameResponse = Message<"river.ValidateBotNameResponse"> & {
856
+ /**
857
+ * @generated from field: bool is_available = 1;
858
+ */
859
+ isAvailable: boolean;
860
+ /**
861
+ * @generated from field: string error_message = 2;
862
+ */
863
+ errorMessage: string;
864
+ };
865
+ /**
866
+ * Describes the message river.ValidateBotNameResponse.
867
+ * Use `create(ValidateBotNameResponseSchema)` to create a new message.
868
+ */
869
+ export declare const ValidateBotNameResponseSchema: GenMessage<ValidateBotNameResponse>;
870
+ /**
871
+ * Set app active status
872
+ *
873
+ * @generated from message river.SetAppActiveStatusRequest
874
+ */
875
+ export type SetAppActiveStatusRequest = Message<"river.SetAppActiveStatusRequest"> & {
876
+ /**
877
+ * @generated from field: bytes app_id = 1;
878
+ */
879
+ appId: Uint8Array;
880
+ /**
881
+ * @generated from field: bool active = 2;
882
+ */
883
+ active: boolean;
884
+ };
885
+ /**
886
+ * Describes the message river.SetAppActiveStatusRequest.
887
+ * Use `create(SetAppActiveStatusRequestSchema)` to create a new message.
888
+ */
889
+ export declare const SetAppActiveStatusRequestSchema: GenMessage<SetAppActiveStatusRequest>;
890
+ /**
891
+ * @generated from message river.SetAppActiveStatusResponse
892
+ */
893
+ export type SetAppActiveStatusResponse = Message<"river.SetAppActiveStatusResponse"> & {};
894
+ /**
895
+ * Describes the message river.SetAppActiveStatusResponse.
896
+ * Use `create(SetAppActiveStatusResponseSchema)` to create a new message.
897
+ */
898
+ export declare const SetAppActiveStatusResponseSchema: GenMessage<SetAppActiveStatusResponse>;
899
+ /**
900
+ * SetAppPromotedStatusRequest sets the promoted status of an app.
901
+ *
902
+ * @generated from message river.SetAppPromotedStatusRequest
903
+ */
904
+ export type SetAppPromotedStatusRequest = Message<"river.SetAppPromotedStatusRequest"> & {
905
+ /**
906
+ * app_id is the address of the app (20 bytes)
907
+ *
908
+ * @generated from field: bytes app_id = 1;
909
+ */
910
+ appId: Uint8Array;
911
+ /**
912
+ * promoted indicates whether the app should be discoverable in the catalog
913
+ *
914
+ * @generated from field: bool promoted = 2;
915
+ */
916
+ promoted: boolean;
917
+ };
918
+ /**
919
+ * Describes the message river.SetAppPromotedStatusRequest.
920
+ * Use `create(SetAppPromotedStatusRequestSchema)` to create a new message.
921
+ */
922
+ export declare const SetAppPromotedStatusRequestSchema: GenMessage<SetAppPromotedStatusRequest>;
923
+ /**
924
+ * @generated from message river.SetAppPromotedStatusResponse
925
+ */
926
+ export type SetAppPromotedStatusResponse = Message<"river.SetAppPromotedStatusResponse"> & {};
927
+ /**
928
+ * Describes the message river.SetAppPromotedStatusResponse.
929
+ * Use `create(SetAppPromotedStatusResponseSchema)` to create a new message.
930
+ */
931
+ export declare const SetAppPromotedStatusResponseSchema: GenMessage<SetAppPromotedStatusResponse>;
932
+ /**
933
+ * SetAppVerifiedStatusRequest sets the verified status of an app.
934
+ *
935
+ * @generated from message river.SetAppVerifiedStatusRequest
936
+ */
937
+ export type SetAppVerifiedStatusRequest = Message<"river.SetAppVerifiedStatusRequest"> & {
938
+ /**
939
+ * app_id is the address of the app (20 bytes)
940
+ *
941
+ * @generated from field: bytes app_id = 1;
942
+ */
943
+ appId: Uint8Array;
944
+ /**
945
+ * verified indicates whether the app has been reviewed and approved by admins
946
+ *
947
+ * @generated from field: bool verified = 2;
948
+ */
949
+ verified: boolean;
950
+ };
951
+ /**
952
+ * Describes the message river.SetAppVerifiedStatusRequest.
953
+ * Use `create(SetAppVerifiedStatusRequestSchema)` to create a new message.
954
+ */
955
+ export declare const SetAppVerifiedStatusRequestSchema: GenMessage<SetAppVerifiedStatusRequest>;
956
+ /**
957
+ * @generated from message river.SetAppVerifiedStatusResponse
958
+ */
959
+ export type SetAppVerifiedStatusResponse = Message<"river.SetAppVerifiedStatusResponse"> & {};
960
+ /**
961
+ * Describes the message river.SetAppVerifiedStatusResponse.
962
+ * Use `create(SetAppVerifiedStatusResponseSchema)` to create a new message.
963
+ */
964
+ export declare const SetAppVerifiedStatusResponseSchema: GenMessage<SetAppVerifiedStatusResponse>;
965
+ /**
966
+ * SetUserName allows users to set or update their username and display name.
967
+ *
968
+ * @generated from message river.SetUserNameRequest
969
+ */
970
+ export type SetUserNameRequest = Message<"river.SetUserNameRequest"> & {
971
+ /**
972
+ * username is the new username to set for the authenticated user.
973
+ *
974
+ * @generated from field: string username = 1;
975
+ */
976
+ username: string;
977
+ /**
978
+ * display_name is the friendly name shown in chat.
979
+ *
980
+ * @generated from field: string display_name = 2;
981
+ */
982
+ displayName: string;
983
+ };
984
+ /**
985
+ * Describes the message river.SetUserNameRequest.
986
+ * Use `create(SetUserNameRequestSchema)` to create a new message.
987
+ */
988
+ export declare const SetUserNameRequestSchema: GenMessage<SetUserNameRequest>;
989
+ /**
990
+ * @generated from message river.SetUserNameResponse
991
+ */
992
+ export type SetUserNameResponse = Message<"river.SetUserNameResponse"> & {};
993
+ /**
994
+ * Describes the message river.SetUserNameResponse.
995
+ * Use `create(SetUserNameResponseSchema)` to create a new message.
996
+ */
997
+ export declare const SetUserNameResponseSchema: GenMessage<SetUserNameResponse>;
998
+ /**
999
+ * GetEntityName request - retrieves username for a single entity.
1000
+ *
1001
+ * @generated from message river.GetEntityNameRequest
1002
+ */
1003
+ export type GetEntityNameRequest = Message<"river.GetEntityNameRequest"> & {
1004
+ /**
1005
+ * entity_id is the address of the user or app to look up
1006
+ *
1007
+ * @generated from field: bytes entity_id = 1;
1008
+ */
1009
+ entityId: Uint8Array;
1010
+ };
1011
+ /**
1012
+ * Describes the message river.GetEntityNameRequest.
1013
+ * Use `create(GetEntityNameRequestSchema)` to create a new message.
1014
+ */
1015
+ export declare const GetEntityNameRequestSchema: GenMessage<GetEntityNameRequest>;
1016
+ /**
1017
+ * @generated from message river.GetEntityNameResponse
1018
+ */
1019
+ export type GetEntityNameResponse = Message<"river.GetEntityNameResponse"> & {
1020
+ /**
1021
+ * username is the entity's chosen username
1022
+ *
1023
+ * @generated from field: string username = 1;
1024
+ */
1025
+ username: string;
1026
+ /**
1027
+ * display_name is the entity's friendly display name
1028
+ *
1029
+ * @generated from field: string display_name = 2;
1030
+ */
1031
+ displayName: string;
1032
+ /**
1033
+ * entity_type indicates whether this is a user (0) or app (1)
1034
+ *
1035
+ * @generated from field: int32 entity_type = 3;
1036
+ */
1037
+ entityType: number;
1038
+ };
1039
+ /**
1040
+ * Describes the message river.GetEntityNameResponse.
1041
+ * Use `create(GetEntityNameResponseSchema)` to create a new message.
1042
+ */
1043
+ export declare const GetEntityNameResponseSchema: GenMessage<GetEntityNameResponse>;
1044
+ /**
1045
+ * GetBatchEntityNames request - retrieves usernames for multiple entities.
1046
+ *
1047
+ * @generated from message river.GetBatchEntityNamesRequest
1048
+ */
1049
+ export type GetBatchEntityNamesRequest = Message<"river.GetBatchEntityNamesRequest"> & {
1050
+ /**
1051
+ * entity_ids is the list of addresses to look up
1052
+ *
1053
+ * @generated from field: repeated bytes entity_ids = 1;
1054
+ */
1055
+ entityIds: Uint8Array[];
1056
+ };
1057
+ /**
1058
+ * Describes the message river.GetBatchEntityNamesRequest.
1059
+ * Use `create(GetBatchEntityNamesRequestSchema)` to create a new message.
1060
+ */
1061
+ export declare const GetBatchEntityNamesRequestSchema: GenMessage<GetBatchEntityNamesRequest>;
1062
+ /**
1063
+ * EntityNameInfo contains the name information for a single entity.
1064
+ *
1065
+ * @generated from message river.EntityNameInfo
1066
+ */
1067
+ export type EntityNameInfo = Message<"river.EntityNameInfo"> & {
1068
+ /**
1069
+ * entity_id is the address of the entity
1070
+ *
1071
+ * @generated from field: bytes entity_id = 1;
1072
+ */
1073
+ entityId: Uint8Array;
1074
+ /**
1075
+ * username is the entity's chosen username
1076
+ *
1077
+ * @generated from field: string username = 2;
1078
+ */
1079
+ username: string;
1080
+ /**
1081
+ * display_name is the entity's friendly display name
1082
+ *
1083
+ * @generated from field: string display_name = 3;
1084
+ */
1085
+ displayName: string;
1086
+ /**
1087
+ * entity_type indicates whether this is a user (0) or app (1)
1088
+ *
1089
+ * @generated from field: int32 entity_type = 4;
1090
+ */
1091
+ entityType: number;
1092
+ };
1093
+ /**
1094
+ * Describes the message river.EntityNameInfo.
1095
+ * Use `create(EntityNameInfoSchema)` to create a new message.
1096
+ */
1097
+ export declare const EntityNameInfoSchema: GenMessage<EntityNameInfo>;
1098
+ /**
1099
+ * @generated from message river.GetBatchEntityNamesResponse
1100
+ */
1101
+ export type GetBatchEntityNamesResponse = Message<"river.GetBatchEntityNamesResponse"> & {
1102
+ /**
1103
+ * entities contains the name info for each found entity.
1104
+ * Entities that have not set usernames will not be included.
1105
+ *
1106
+ * @generated from field: repeated river.EntityNameInfo entities = 1;
1107
+ */
1108
+ entities: EntityNameInfo[];
1109
+ };
1110
+ /**
1111
+ * Describes the message river.GetBatchEntityNamesResponse.
1112
+ * Use `create(GetBatchEntityNamesResponseSchema)` to create a new message.
1113
+ */
1114
+ export declare const GetBatchEntityNamesResponseSchema: GenMessage<GetBatchEntityNamesResponse>;
1115
+ /**
1116
+ * CreateInviteLink - creates a new invite link for a stream
1117
+ *
1118
+ * @generated from message river.CreateInviteLinkRequest
1119
+ */
1120
+ export type CreateInviteLinkRequest = Message<"river.CreateInviteLinkRequest"> & {
1121
+ /**
1122
+ * stream_id is the 32-byte stream ID
1123
+ *
1124
+ * @generated from field: bytes stream_id = 1;
1125
+ */
1126
+ streamId: Uint8Array;
1127
+ };
1128
+ /**
1129
+ * Describes the message river.CreateInviteLinkRequest.
1130
+ * Use `create(CreateInviteLinkRequestSchema)` to create a new message.
1131
+ */
1132
+ export declare const CreateInviteLinkRequestSchema: GenMessage<CreateInviteLinkRequest>;
1133
+ /**
1134
+ * @generated from message river.CreateInviteLinkResponse
1135
+ */
1136
+ export type CreateInviteLinkResponse = Message<"river.CreateInviteLinkResponse"> & {
1137
+ /**
1138
+ * invite_code is the 12-character base64url-safe invite code
1139
+ *
1140
+ * @generated from field: string invite_code = 1;
1141
+ */
1142
+ inviteCode: string;
1143
+ };
1144
+ /**
1145
+ * Describes the message river.CreateInviteLinkResponse.
1146
+ * Use `create(CreateInviteLinkResponseSchema)` to create a new message.
1147
+ */
1148
+ export declare const CreateInviteLinkResponseSchema: GenMessage<CreateInviteLinkResponse>;
1149
+ /**
1150
+ * RevokeInviteLink - invalidates the current invite link
1151
+ *
1152
+ * @generated from message river.RevokeInviteLinkRequest
1153
+ */
1154
+ export type RevokeInviteLinkRequest = Message<"river.RevokeInviteLinkRequest"> & {
1155
+ /**
1156
+ * stream_id is the 32-byte stream ID
1157
+ *
1158
+ * @generated from field: bytes stream_id = 1;
1159
+ */
1160
+ streamId: Uint8Array;
1161
+ };
1162
+ /**
1163
+ * Describes the message river.RevokeInviteLinkRequest.
1164
+ * Use `create(RevokeInviteLinkRequestSchema)` to create a new message.
1165
+ */
1166
+ export declare const RevokeInviteLinkRequestSchema: GenMessage<RevokeInviteLinkRequest>;
1167
+ /**
1168
+ * @generated from message river.RevokeInviteLinkResponse
1169
+ */
1170
+ export type RevokeInviteLinkResponse = Message<"river.RevokeInviteLinkResponse"> & {};
1171
+ /**
1172
+ * Describes the message river.RevokeInviteLinkResponse.
1173
+ * Use `create(RevokeInviteLinkResponseSchema)` to create a new message.
1174
+ */
1175
+ export declare const RevokeInviteLinkResponseSchema: GenMessage<RevokeInviteLinkResponse>;
1176
+ /**
1177
+ * RedeemInviteLink - validates invite code and returns signed payload.
1178
+ * The stream ID is determined by the invite code lookup.
1179
+ *
1180
+ * @generated from message river.RedeemInviteLinkRequest
1181
+ */
1182
+ export type RedeemInviteLinkRequest = Message<"river.RedeemInviteLinkRequest"> & {
1183
+ /**
1184
+ * invite_code is the 12-character invite code to redeem
1185
+ *
1186
+ * @generated from field: string invite_code = 1;
1187
+ */
1188
+ inviteCode: string;
1189
+ };
1190
+ /**
1191
+ * Describes the message river.RedeemInviteLinkRequest.
1192
+ * Use `create(RedeemInviteLinkRequestSchema)` to create a new message.
1193
+ */
1194
+ export declare const RedeemInviteLinkRequestSchema: GenMessage<RedeemInviteLinkRequest>;
1195
+ /**
1196
+ * @generated from message river.RedeemInviteLinkResponse
1197
+ */
1198
+ export type RedeemInviteLinkResponse = Message<"river.RedeemInviteLinkResponse"> & {
1199
+ /**
1200
+ * signed_payload contains the signed invitation that can be used to join the stream
1201
+ *
1202
+ * @generated from field: river.InviteSignedPayload signed_payload = 1;
1203
+ */
1204
+ signedPayload?: InviteSignedPayload;
1205
+ };
1206
+ /**
1207
+ * Describes the message river.RedeemInviteLinkResponse.
1208
+ * Use `create(RedeemInviteLinkResponseSchema)` to create a new message.
1209
+ */
1210
+ export declare const RedeemInviteLinkResponseSchema: GenMessage<RedeemInviteLinkResponse>;
1211
+ /**
1212
+ * GetInviteLink - retrieves the current active invite link
1213
+ *
1214
+ * @generated from message river.GetInviteLinkRequest
1215
+ */
1216
+ export type GetInviteLinkRequest = Message<"river.GetInviteLinkRequest"> & {
1217
+ /**
1218
+ * stream_id is the 32-byte stream ID
1219
+ *
1220
+ * @generated from field: bytes stream_id = 1;
1221
+ */
1222
+ streamId: Uint8Array;
1223
+ };
1224
+ /**
1225
+ * Describes the message river.GetInviteLinkRequest.
1226
+ * Use `create(GetInviteLinkRequestSchema)` to create a new message.
1227
+ */
1228
+ export declare const GetInviteLinkRequestSchema: GenMessage<GetInviteLinkRequest>;
1229
+ /**
1230
+ * @generated from message river.GetInviteLinkResponse
1231
+ */
1232
+ export type GetInviteLinkResponse = Message<"river.GetInviteLinkResponse"> & {
1233
+ /**
1234
+ * invite_code is the current active invite code, if any
1235
+ *
1236
+ * @generated from field: optional string invite_code = 1;
1237
+ */
1238
+ inviteCode?: string;
1239
+ /**
1240
+ * created_at_epoch_ms is when the invite was created
1241
+ *
1242
+ * @generated from field: optional int64 created_at_epoch_ms = 2;
1243
+ */
1244
+ createdAtEpochMs?: bigint;
1245
+ };
1246
+ /**
1247
+ * Describes the message river.GetInviteLinkResponse.
1248
+ * Use `create(GetInviteLinkResponseSchema)` to create a new message.
1249
+ */
1250
+ export declare const GetInviteLinkResponseSchema: GenMessage<GetInviteLinkResponse>;
1251
+ /**
1252
+ * AppInstallStats contains installation statistics for an app.
1253
+ *
1254
+ * @generated from message river.AppInstallStats
1255
+ */
1256
+ export type AppInstallStats = Message<"river.AppInstallStats"> & {
1257
+ /**
1258
+ * app_id is the address of the app (20 bytes)
1259
+ *
1260
+ * @generated from field: bytes app_id = 1;
1261
+ */
1262
+ appId: Uint8Array;
1263
+ /**
1264
+ * install_count is the number of active DM/GDM installations
1265
+ *
1266
+ * @generated from field: int32 install_count = 2;
1267
+ */
1268
+ installCount: number;
1269
+ };
1270
+ /**
1271
+ * Describes the message river.AppInstallStats.
1272
+ * Use `create(AppInstallStatsSchema)` to create a new message.
1273
+ */
1274
+ export declare const AppInstallStatsSchema: GenMessage<AppInstallStats>;
1275
+ /**
1276
+ * AppReview represents a single review for an app.
1277
+ *
1278
+ * @generated from message river.AppReview
1279
+ */
1280
+ export type AppReview = Message<"river.AppReview"> & {
1281
+ /**
1282
+ * id is the unique review identifier (UUID string)
1283
+ *
1284
+ * @generated from field: string id = 1;
1285
+ */
1286
+ id: string;
1287
+ /**
1288
+ * app_id is the address of the app being reviewed (20 bytes)
1289
+ *
1290
+ * @generated from field: bytes app_id = 2;
1291
+ */
1292
+ appId: Uint8Array;
1293
+ /**
1294
+ * reviewer_address is the wallet address of the reviewer (20 bytes)
1295
+ *
1296
+ * @generated from field: bytes reviewer_address = 3;
1297
+ */
1298
+ reviewerAddress: Uint8Array;
1299
+ /**
1300
+ * rating is the review rating (1-5)
1301
+ *
1302
+ * @generated from field: int32 rating = 4;
1303
+ */
1304
+ rating: number;
1305
+ /**
1306
+ * comment is the optional review text
1307
+ *
1308
+ * @generated from field: string comment = 5;
1309
+ */
1310
+ comment: string;
1311
+ /**
1312
+ * created_at_ms is the creation timestamp in milliseconds since epoch
1313
+ *
1314
+ * @generated from field: int64 created_at_ms = 6;
1315
+ */
1316
+ createdAtMs: bigint;
1317
+ /**
1318
+ * is_revoked indicates if the review has been revoked
1319
+ *
1320
+ * @generated from field: bool is_revoked = 7;
1321
+ */
1322
+ isRevoked: boolean;
1323
+ };
1324
+ /**
1325
+ * Describes the message river.AppReview.
1326
+ * Use `create(AppReviewSchema)` to create a new message.
1327
+ */
1328
+ export declare const AppReviewSchema: GenMessage<AppReview>;
1329
+ /**
1330
+ * AppReviewSummary contains aggregated review statistics for an app.
1331
+ *
1332
+ * @generated from message river.AppReviewSummary
1333
+ */
1334
+ export type AppReviewSummary = Message<"river.AppReviewSummary"> & {
1335
+ /**
1336
+ * app_id is the address of the app (20 bytes)
1337
+ *
1338
+ * @generated from field: bytes app_id = 1;
1339
+ */
1340
+ appId: Uint8Array;
1341
+ /**
1342
+ * total_reviews is the total number of reviews (including revoked)
1343
+ *
1344
+ * @generated from field: int32 total_reviews = 2;
1345
+ */
1346
+ totalReviews: number;
1347
+ /**
1348
+ * active_reviews is the number of non-revoked reviews
1349
+ *
1350
+ * @generated from field: int32 active_reviews = 3;
1351
+ */
1352
+ activeReviews: number;
1353
+ /**
1354
+ * average_rating is the average rating from active reviews
1355
+ *
1356
+ * @generated from field: float average_rating = 4;
1357
+ */
1358
+ averageRating: number;
1359
+ };
1360
+ /**
1361
+ * Describes the message river.AppReviewSummary.
1362
+ * Use `create(AppReviewSummarySchema)` to create a new message.
1363
+ */
1364
+ export declare const AppReviewSummarySchema: GenMessage<AppReviewSummary>;
1365
+ /**
1366
+ * AppInfoFull contains complete app information for discovery.
1367
+ *
1368
+ * @generated from message river.AppInfoFull
1369
+ */
1370
+ export type AppInfoFull = Message<"river.AppInfoFull"> & {
1371
+ /**
1372
+ * app_id is the address of the app (20 bytes, primary identifier)
1373
+ *
1374
+ * @generated from field: bytes app_id = 1;
1375
+ */
1376
+ appId: Uint8Array;
1377
+ /**
1378
+ * owner is the owner address (20 bytes)
1379
+ *
1380
+ * @generated from field: bytes owner = 2;
1381
+ */
1382
+ owner: Uint8Array;
1383
+ /**
1384
+ * metadata contains the app's profile data
1385
+ *
1386
+ * @generated from field: river.AppMetadata metadata = 3;
1387
+ */
1388
+ metadata?: AppMetadata;
1389
+ /**
1390
+ * install_stats contains installation statistics
1391
+ *
1392
+ * @generated from field: river.AppInstallStats install_stats = 4;
1393
+ */
1394
+ installStats?: AppInstallStats;
1395
+ /**
1396
+ * review_summary contains aggregated review data
1397
+ *
1398
+ * @generated from field: river.AppReviewSummary review_summary = 5;
1399
+ */
1400
+ reviewSummary?: AppReviewSummary;
1401
+ /**
1402
+ * is_active indicates whether the app is currently active (published)
1403
+ *
1404
+ * @generated from field: bool is_active = 6;
1405
+ */
1406
+ isActive: boolean;
1407
+ /**
1408
+ * is_promoted indicates whether the app is discoverable in the catalog
1409
+ *
1410
+ * @generated from field: bool is_promoted = 7;
1411
+ */
1412
+ isPromoted: boolean;
1413
+ /**
1414
+ * is_verified indicates whether the app has been reviewed and approved by admins
1415
+ *
1416
+ * @generated from field: bool is_verified = 8;
1417
+ */
1418
+ isVerified: boolean;
1419
+ };
1420
+ /**
1421
+ * Describes the message river.AppInfoFull.
1422
+ * Use `create(AppInfoFullSchema)` to create a new message.
1423
+ */
1424
+ export declare const AppInfoFullSchema: GenMessage<AppInfoFull>;
1425
+ /**
1426
+ * ListRegisteredAppsRequest retrieves registered apps with optional filters.
1427
+ *
1428
+ * @generated from message river.ListRegisteredAppsRequest
1429
+ */
1430
+ export type ListRegisteredAppsRequest = Message<"river.ListRegisteredAppsRequest"> & {
1431
+ /**
1432
+ * limit is the maximum number of apps to return
1433
+ *
1434
+ * @generated from field: int32 limit = 1;
1435
+ */
1436
+ limit: number;
1437
+ /**
1438
+ * offset is the number of apps to skip for pagination
1439
+ *
1440
+ * @generated from field: int32 offset = 2;
1441
+ */
1442
+ offset: number;
1443
+ /**
1444
+ * active_only filters to only return active (published) apps
1445
+ *
1446
+ * @generated from field: bool active_only = 3;
1447
+ */
1448
+ activeOnly: boolean;
1449
+ /**
1450
+ * owner_address filters by owner - for "my apps" view (20 bytes)
1451
+ *
1452
+ * @generated from field: optional bytes owner_address = 4;
1453
+ */
1454
+ ownerAddress?: Uint8Array;
1455
+ /**
1456
+ * stream_id filters by stream - for apps in a DM/GDM (32 bytes)
1457
+ *
1458
+ * @generated from field: optional bytes stream_id = 5;
1459
+ */
1460
+ streamId?: Uint8Array;
1461
+ /**
1462
+ * promoted_only filters to only return promoted (discoverable) apps
1463
+ *
1464
+ * @generated from field: bool promoted_only = 6;
1465
+ */
1466
+ promotedOnly: boolean;
1467
+ /**
1468
+ * search_query searches apps by display_name and description (case-insensitive)
1469
+ *
1470
+ * @generated from field: optional string search_query = 7;
1471
+ */
1472
+ searchQuery?: string;
1473
+ };
1474
+ /**
1475
+ * Describes the message river.ListRegisteredAppsRequest.
1476
+ * Use `create(ListRegisteredAppsRequestSchema)` to create a new message.
1477
+ */
1478
+ export declare const ListRegisteredAppsRequestSchema: GenMessage<ListRegisteredAppsRequest>;
1479
+ /**
1480
+ * @generated from message river.ListRegisteredAppsResponse
1481
+ */
1482
+ export type ListRegisteredAppsResponse = Message<"river.ListRegisteredAppsResponse"> & {
1483
+ /**
1484
+ * apps is the list of matching apps
1485
+ *
1486
+ * @generated from field: repeated river.AppInfoFull apps = 1;
1487
+ */
1488
+ apps: AppInfoFull[];
1489
+ /**
1490
+ * total_count is the total number of matching apps (for pagination)
1491
+ *
1492
+ * @generated from field: int32 total_count = 2;
1493
+ */
1494
+ totalCount: number;
1495
+ };
1496
+ /**
1497
+ * Describes the message river.ListRegisteredAppsResponse.
1498
+ * Use `create(ListRegisteredAppsResponseSchema)` to create a new message.
1499
+ */
1500
+ export declare const ListRegisteredAppsResponseSchema: GenMessage<ListRegisteredAppsResponse>;
1501
+ /**
1502
+ * GetBulkAppDataRequest retrieves full app data for multiple apps.
1503
+ *
1504
+ * @generated from message river.GetBulkAppDataRequest
1505
+ */
1506
+ export type GetBulkAppDataRequest = Message<"river.GetBulkAppDataRequest"> & {
1507
+ /**
1508
+ * app_ids is the list of app addresses to look up (each 20 bytes)
1509
+ *
1510
+ * @generated from field: repeated bytes app_ids = 1;
1511
+ */
1512
+ appIds: Uint8Array[];
1513
+ };
1514
+ /**
1515
+ * Describes the message river.GetBulkAppDataRequest.
1516
+ * Use `create(GetBulkAppDataRequestSchema)` to create a new message.
1517
+ */
1518
+ export declare const GetBulkAppDataRequestSchema: GenMessage<GetBulkAppDataRequest>;
1519
+ /**
1520
+ * @generated from message river.GetBulkAppDataResponse
1521
+ */
1522
+ export type GetBulkAppDataResponse = Message<"river.GetBulkAppDataResponse"> & {
1523
+ /**
1524
+ * apps is the list of app data for found apps
1525
+ *
1526
+ * @generated from field: repeated river.AppInfoFull apps = 1;
1527
+ */
1528
+ apps: AppInfoFull[];
1529
+ };
1530
+ /**
1531
+ * Describes the message river.GetBulkAppDataResponse.
1532
+ * Use `create(GetBulkAppDataResponseSchema)` to create a new message.
1533
+ */
1534
+ export declare const GetBulkAppDataResponseSchema: GenMessage<GetBulkAppDataResponse>;
1535
+ /**
1536
+ * GetAppInstallStatsRequest retrieves installation stats for a single app.
1537
+ *
1538
+ * @generated from message river.GetAppInstallStatsRequest
1539
+ */
1540
+ export type GetAppInstallStatsRequest = Message<"river.GetAppInstallStatsRequest"> & {
1541
+ /**
1542
+ * app_id is the address of the app (20 bytes)
1543
+ *
1544
+ * @generated from field: bytes app_id = 1;
1545
+ */
1546
+ appId: Uint8Array;
1547
+ };
1548
+ /**
1549
+ * Describes the message river.GetAppInstallStatsRequest.
1550
+ * Use `create(GetAppInstallStatsRequestSchema)` to create a new message.
1551
+ */
1552
+ export declare const GetAppInstallStatsRequestSchema: GenMessage<GetAppInstallStatsRequest>;
1553
+ /**
1554
+ * @generated from message river.GetAppInstallStatsResponse
1555
+ */
1556
+ export type GetAppInstallStatsResponse = Message<"river.GetAppInstallStatsResponse"> & {
1557
+ /**
1558
+ * stats contains the installation statistics
1559
+ *
1560
+ * @generated from field: river.AppInstallStats stats = 1;
1561
+ */
1562
+ stats?: AppInstallStats;
1563
+ };
1564
+ /**
1565
+ * Describes the message river.GetAppInstallStatsResponse.
1566
+ * Use `create(GetAppInstallStatsResponseSchema)` to create a new message.
1567
+ */
1568
+ export declare const GetAppInstallStatsResponseSchema: GenMessage<GetAppInstallStatsResponse>;
1569
+ /**
1570
+ * GetBulkAppInstallStatsRequest retrieves installation stats for multiple apps.
1571
+ *
1572
+ * @generated from message river.GetBulkAppInstallStatsRequest
1573
+ */
1574
+ export type GetBulkAppInstallStatsRequest = Message<"river.GetBulkAppInstallStatsRequest"> & {
1575
+ /**
1576
+ * app_ids is the list of app addresses to look up (each 20 bytes)
1577
+ *
1578
+ * @generated from field: repeated bytes app_ids = 1;
1579
+ */
1580
+ appIds: Uint8Array[];
1581
+ };
1582
+ /**
1583
+ * Describes the message river.GetBulkAppInstallStatsRequest.
1584
+ * Use `create(GetBulkAppInstallStatsRequestSchema)` to create a new message.
1585
+ */
1586
+ export declare const GetBulkAppInstallStatsRequestSchema: GenMessage<GetBulkAppInstallStatsRequest>;
1587
+ /**
1588
+ * @generated from message river.GetBulkAppInstallStatsResponse
1589
+ */
1590
+ export type GetBulkAppInstallStatsResponse = Message<"river.GetBulkAppInstallStatsResponse"> & {
1591
+ /**
1592
+ * stats is a map of app_id (hex string) to installation stats
1593
+ *
1594
+ * @generated from field: repeated river.AppInstallStats stats = 1;
1595
+ */
1596
+ stats: AppInstallStats[];
1597
+ };
1598
+ /**
1599
+ * Describes the message river.GetBulkAppInstallStatsResponse.
1600
+ * Use `create(GetBulkAppInstallStatsResponseSchema)` to create a new message.
1601
+ */
1602
+ export declare const GetBulkAppInstallStatsResponseSchema: GenMessage<GetBulkAppInstallStatsResponse>;
1603
+ /**
1604
+ * SubmitAppReviewRequest creates or updates a review.
1605
+ *
1606
+ * @generated from message river.SubmitAppReviewRequest
1607
+ */
1608
+ export type SubmitAppReviewRequest = Message<"river.SubmitAppReviewRequest"> & {
1609
+ /**
1610
+ * app_id is the address of the app to review (20 bytes)
1611
+ *
1612
+ * @generated from field: bytes app_id = 1;
1613
+ */
1614
+ appId: Uint8Array;
1615
+ /**
1616
+ * rating is the review rating (1-5)
1617
+ *
1618
+ * @generated from field: int32 rating = 2;
1619
+ */
1620
+ rating: number;
1621
+ /**
1622
+ * comment is the optional review text
1623
+ *
1624
+ * @generated from field: string comment = 3;
1625
+ */
1626
+ comment: string;
1627
+ };
1628
+ /**
1629
+ * Describes the message river.SubmitAppReviewRequest.
1630
+ * Use `create(SubmitAppReviewRequestSchema)` to create a new message.
1631
+ */
1632
+ export declare const SubmitAppReviewRequestSchema: GenMessage<SubmitAppReviewRequest>;
1633
+ /**
1634
+ * @generated from message river.SubmitAppReviewResponse
1635
+ */
1636
+ export type SubmitAppReviewResponse = Message<"river.SubmitAppReviewResponse"> & {
1637
+ /**
1638
+ * review_id is the unique identifier of the created/updated review
1639
+ *
1640
+ * @generated from field: string review_id = 1;
1641
+ */
1642
+ reviewId: string;
1643
+ };
1644
+ /**
1645
+ * Describes the message river.SubmitAppReviewResponse.
1646
+ * Use `create(SubmitAppReviewResponseSchema)` to create a new message.
1647
+ */
1648
+ export declare const SubmitAppReviewResponseSchema: GenMessage<SubmitAppReviewResponse>;
1649
+ /**
1650
+ * GetAppReviewsRequest retrieves paginated reviews for an app.
1651
+ *
1652
+ * @generated from message river.GetAppReviewsRequest
1653
+ */
1654
+ export type GetAppReviewsRequest = Message<"river.GetAppReviewsRequest"> & {
1655
+ /**
1656
+ * app_id is the address of the app (20 bytes)
1657
+ *
1658
+ * @generated from field: bytes app_id = 1;
1659
+ */
1660
+ appId: Uint8Array;
1661
+ /**
1662
+ * limit is the maximum number of reviews to return
1663
+ *
1664
+ * @generated from field: int32 limit = 2;
1665
+ */
1666
+ limit: number;
1667
+ /**
1668
+ * offset is the number of reviews to skip for pagination
1669
+ *
1670
+ * @generated from field: int32 offset = 3;
1671
+ */
1672
+ offset: number;
1673
+ };
1674
+ /**
1675
+ * Describes the message river.GetAppReviewsRequest.
1676
+ * Use `create(GetAppReviewsRequestSchema)` to create a new message.
1677
+ */
1678
+ export declare const GetAppReviewsRequestSchema: GenMessage<GetAppReviewsRequest>;
1679
+ /**
1680
+ * @generated from message river.GetAppReviewsResponse
1681
+ */
1682
+ export type GetAppReviewsResponse = Message<"river.GetAppReviewsResponse"> & {
1683
+ /**
1684
+ * reviews is the list of reviews
1685
+ *
1686
+ * @generated from field: repeated river.AppReview reviews = 1;
1687
+ */
1688
+ reviews: AppReview[];
1689
+ /**
1690
+ * total_count is the total number of reviews (for pagination)
1691
+ *
1692
+ * @generated from field: int32 total_count = 2;
1693
+ */
1694
+ totalCount: number;
1695
+ };
1696
+ /**
1697
+ * Describes the message river.GetAppReviewsResponse.
1698
+ * Use `create(GetAppReviewsResponseSchema)` to create a new message.
1699
+ */
1700
+ export declare const GetAppReviewsResponseSchema: GenMessage<GetAppReviewsResponse>;
1701
+ /**
1702
+ * RevokeAppReviewRequest revokes the caller's review for an app.
1703
+ *
1704
+ * @generated from message river.RevokeAppReviewRequest
1705
+ */
1706
+ export type RevokeAppReviewRequest = Message<"river.RevokeAppReviewRequest"> & {
1707
+ /**
1708
+ * app_id is the address of the app (20 bytes)
1709
+ *
1710
+ * @generated from field: bytes app_id = 1;
1711
+ */
1712
+ appId: Uint8Array;
1713
+ };
1714
+ /**
1715
+ * Describes the message river.RevokeAppReviewRequest.
1716
+ * Use `create(RevokeAppReviewRequestSchema)` to create a new message.
1717
+ */
1718
+ export declare const RevokeAppReviewRequestSchema: GenMessage<RevokeAppReviewRequest>;
1719
+ /**
1720
+ * @generated from message river.RevokeAppReviewResponse
1721
+ */
1722
+ export type RevokeAppReviewResponse = Message<"river.RevokeAppReviewResponse"> & {};
1723
+ /**
1724
+ * Describes the message river.RevokeAppReviewResponse.
1725
+ * Use `create(RevokeAppReviewResponseSchema)` to create a new message.
1726
+ */
1727
+ export declare const RevokeAppReviewResponseSchema: GenMessage<RevokeAppReviewResponse>;
1728
+ /**
1729
+ * GetAppReviewSummaryRequest retrieves review summary for a single app.
1730
+ *
1731
+ * @generated from message river.GetAppReviewSummaryRequest
1732
+ */
1733
+ export type GetAppReviewSummaryRequest = Message<"river.GetAppReviewSummaryRequest"> & {
1734
+ /**
1735
+ * app_id is the address of the app (20 bytes)
1736
+ *
1737
+ * @generated from field: bytes app_id = 1;
1738
+ */
1739
+ appId: Uint8Array;
1740
+ };
1741
+ /**
1742
+ * Describes the message river.GetAppReviewSummaryRequest.
1743
+ * Use `create(GetAppReviewSummaryRequestSchema)` to create a new message.
1744
+ */
1745
+ export declare const GetAppReviewSummaryRequestSchema: GenMessage<GetAppReviewSummaryRequest>;
1746
+ /**
1747
+ * @generated from message river.GetAppReviewSummaryResponse
1748
+ */
1749
+ export type GetAppReviewSummaryResponse = Message<"river.GetAppReviewSummaryResponse"> & {
1750
+ /**
1751
+ * summary contains the aggregated review statistics
1752
+ *
1753
+ * @generated from field: river.AppReviewSummary summary = 1;
1754
+ */
1755
+ summary?: AppReviewSummary;
1756
+ };
1757
+ /**
1758
+ * Describes the message river.GetAppReviewSummaryResponse.
1759
+ * Use `create(GetAppReviewSummaryResponseSchema)` to create a new message.
1760
+ */
1761
+ export declare const GetAppReviewSummaryResponseSchema: GenMessage<GetAppReviewSummaryResponse>;
1762
+ /**
1763
+ * GetBulkAppReviewSummariesRequest retrieves review summaries for multiple apps.
1764
+ *
1765
+ * @generated from message river.GetBulkAppReviewSummariesRequest
1766
+ */
1767
+ export type GetBulkAppReviewSummariesRequest = Message<"river.GetBulkAppReviewSummariesRequest"> & {
1768
+ /**
1769
+ * app_ids is the list of app addresses to look up (each 20 bytes)
1770
+ *
1771
+ * @generated from field: repeated bytes app_ids = 1;
1772
+ */
1773
+ appIds: Uint8Array[];
1774
+ };
1775
+ /**
1776
+ * Describes the message river.GetBulkAppReviewSummariesRequest.
1777
+ * Use `create(GetBulkAppReviewSummariesRequestSchema)` to create a new message.
1778
+ */
1779
+ export declare const GetBulkAppReviewSummariesRequestSchema: GenMessage<GetBulkAppReviewSummariesRequest>;
1780
+ /**
1781
+ * @generated from message river.GetBulkAppReviewSummariesResponse
1782
+ */
1783
+ export type GetBulkAppReviewSummariesResponse = Message<"river.GetBulkAppReviewSummariesResponse"> & {
1784
+ /**
1785
+ * summaries is the list of review summaries for found apps
1786
+ *
1787
+ * @generated from field: repeated river.AppReviewSummary summaries = 1;
1788
+ */
1789
+ summaries: AppReviewSummary[];
1790
+ };
1791
+ /**
1792
+ * Describes the message river.GetBulkAppReviewSummariesResponse.
1793
+ * Use `create(GetBulkAppReviewSummariesResponseSchema)` to create a new message.
1794
+ */
1795
+ export declare const GetBulkAppReviewSummariesResponseSchema: GenMessage<GetBulkAppReviewSummariesResponse>;
1796
+ /**
1797
+ * GetAppPositionsRequest retrieves positions for the authenticated user from a single app.
1798
+ *
1799
+ * @generated from message river.GetAppPositionsRequest
1800
+ */
1801
+ export type GetAppPositionsRequest = Message<"river.GetAppPositionsRequest"> & {
1802
+ /**
1803
+ * app_id is the address of the app (20 bytes)
1804
+ *
1805
+ * @generated from field: bytes app_id = 1;
1806
+ */
1807
+ appId: Uint8Array;
1808
+ };
1809
+ /**
1810
+ * Describes the message river.GetAppPositionsRequest.
1811
+ * Use `create(GetAppPositionsRequestSchema)` to create a new message.
1812
+ */
1813
+ export declare const GetAppPositionsRequestSchema: GenMessage<GetAppPositionsRequest>;
1814
+ /**
1815
+ * @generated from message river.GetAppPositionsResponse
1816
+ */
1817
+ export type GetAppPositionsResponse = Message<"river.GetAppPositionsResponse"> & {
1818
+ /**
1819
+ * app_id is the address of the app (20 bytes)
1820
+ *
1821
+ * @generated from field: bytes app_id = 1;
1822
+ */
1823
+ appId: Uint8Array;
1824
+ /**
1825
+ * positions contains the position data from the bot
1826
+ *
1827
+ * @generated from field: river.PositionsResponse positions = 2;
1828
+ */
1829
+ positions?: PositionsResponse;
1830
+ };
1831
+ /**
1832
+ * Describes the message river.GetAppPositionsResponse.
1833
+ * Use `create(GetAppPositionsResponseSchema)` to create a new message.
1834
+ */
1835
+ export declare const GetAppPositionsResponseSchema: GenMessage<GetAppPositionsResponse>;
1836
+ /**
1837
+ * GetBatchAppPositionsRequest retrieves positions from multiple apps.
1838
+ *
1839
+ * @generated from message river.GetBatchAppPositionsRequest
1840
+ */
1841
+ export type GetBatchAppPositionsRequest = Message<"river.GetBatchAppPositionsRequest"> & {
1842
+ /**
1843
+ * app_ids is the list of app addresses to query (each 20 bytes)
1844
+ * Maximum 10 apps per request (enforced server-side)
1845
+ *
1846
+ * @generated from field: repeated bytes app_ids = 1;
1847
+ */
1848
+ appIds: Uint8Array[];
1849
+ };
1850
+ /**
1851
+ * Describes the message river.GetBatchAppPositionsRequest.
1852
+ * Use `create(GetBatchAppPositionsRequestSchema)` to create a new message.
1853
+ */
1854
+ export declare const GetBatchAppPositionsRequestSchema: GenMessage<GetBatchAppPositionsRequest>;
1855
+ /**
1856
+ * @generated from message river.GetBatchAppPositionsResponse
1857
+ */
1858
+ export type GetBatchAppPositionsResponse = Message<"river.GetBatchAppPositionsResponse"> & {
1859
+ /**
1860
+ * entries contains position data for each requested app
1861
+ *
1862
+ * @generated from field: repeated river.AppPositionsEntry entries = 1;
1863
+ */
1864
+ entries: AppPositionsEntry[];
1865
+ };
1866
+ /**
1867
+ * Describes the message river.GetBatchAppPositionsResponse.
1868
+ * Use `create(GetBatchAppPositionsResponseSchema)` to create a new message.
1869
+ */
1870
+ export declare const GetBatchAppPositionsResponseSchema: GenMessage<GetBatchAppPositionsResponse>;
1871
+ /**
1872
+ * AppPositionsEntry contains position data for a single app in a batch response.
1873
+ *
1874
+ * @generated from message river.AppPositionsEntry
1875
+ */
1876
+ export type AppPositionsEntry = Message<"river.AppPositionsEntry"> & {
1877
+ /**
1878
+ * app_id is the address of the app (20 bytes)
1879
+ *
1880
+ * @generated from field: bytes app_id = 1;
1881
+ */
1882
+ appId: Uint8Array;
1883
+ /**
1884
+ * positions contains the position data from the bot
1885
+ *
1886
+ * @generated from field: river.PositionsResponse positions = 2;
1887
+ */
1888
+ positions?: PositionsResponse;
1889
+ /**
1890
+ * error contains an error message if this specific app failed
1891
+ *
1892
+ * @generated from field: optional string error = 3;
1893
+ */
1894
+ error?: string;
1895
+ };
1896
+ /**
1897
+ * Describes the message river.AppPositionsEntry.
1898
+ * Use `create(AppPositionsEntrySchema)` to create a new message.
1899
+ */
1900
+ export declare const AppPositionsEntrySchema: GenMessage<AppPositionsEntry>;
1901
+ /**
1902
+ * ForwardSettingValue is an app-specific setting applied to all space channels the app is a member
1903
+ * of. It specifies which messages the app registry service will consider relevant for forwarding to
1904
+ * the bot.
1905
+ *
1906
+ * @generated from enum river.ForwardSettingValue
1907
+ */
1908
+ export declare enum ForwardSettingValue {
1909
+ /**
1910
+ * FORWARD_SETTING_UNSPECIFIED not set, assumes FORWARD_SETTING_MENTIONS_REPLIES_REACTIONS as the default setting.
1911
+ *
1912
+ * @generated from enum value: FORWARD_SETTING_UNSPECIFIED = 0;
1913
+ */
1914
+ FORWARD_SETTING_UNSPECIFIED = 0,
1915
+ /**
1916
+ * FORWARD_SETTING_ALL_MESSAGES indicates that the app would like all messages forwarded for each channel
1917
+ * it is a member of.
1918
+ *
1919
+ * @generated from enum value: FORWARD_SETTING_ALL_MESSAGES = 1;
1920
+ */
1921
+ FORWARD_SETTING_ALL_MESSAGES = 1,
1922
+ /**
1923
+ * FORWARD_SETTING_MENTIONS_REPLIES_REACTIONS indicates that the app would only like messages forwarded in
1924
+ * channels it has membership in if either the app is mentioned, or the message is a direct reply or reaction
1925
+ * to it's own post. This is the default.
1926
+ *
1927
+ * @generated from enum value: FORWARD_SETTING_MENTIONS_REPLIES_REACTIONS = 2;
1928
+ */
1929
+ FORWARD_SETTING_MENTIONS_REPLIES_REACTIONS = 2,
1930
+ /**
1931
+ * SPACE_CHANNEL_SETTING_NO_MESSAGES indicates that the user won't receive notifications of any channel in the space.
1932
+ *
1933
+ * @generated from enum value: FORWARD_SETTING_NO_MESSAGES = 3;
1934
+ */
1935
+ FORWARD_SETTING_NO_MESSAGES = 3
1936
+ }
1937
+ /**
1938
+ * Describes the enum river.ForwardSettingValue.
1939
+ */
1940
+ export declare const ForwardSettingValueSchema: GenEnum<ForwardSettingValue>;
1941
+ /**
1942
+ * PositionType categorizes the type of position.
1943
+ *
1944
+ * @generated from enum river.PositionType
1945
+ */
1946
+ export declare enum PositionType {
1947
+ /**
1948
+ * @generated from enum value: POSITION_TYPE_UNSPECIFIED = 0;
1949
+ */
1950
+ UNSPECIFIED = 0,
1951
+ /**
1952
+ * Perpetual futures (e.g., Hyperliquid)
1953
+ *
1954
+ * @generated from enum value: POSITION_TYPE_PERPETUAL = 1;
1955
+ */
1956
+ PERPETUAL = 1,
1957
+ /**
1958
+ * Prediction markets (e.g., Polymarket)
1959
+ *
1960
+ * @generated from enum value: POSITION_TYPE_PREDICTION = 2;
1961
+ */
1962
+ PREDICTION = 2
1963
+ }
1964
+ /**
1965
+ * Describes the enum river.PositionType.
1966
+ */
1967
+ export declare const PositionTypeSchema: GenEnum<PositionType>;
1968
+ /**
1969
+ * AppRegistryService allows apps and app owners to register apps, and set app-related preferences for messages added
1970
+ * to channels the app has membership in.
1971
+ *
1972
+ * These functions are all authenticated, with the exception of GetStatus, and require a session token to be passed
1973
+ * through the authorization metadata.
1974
+ * This session token can be obtained from the AuthenticationService. If the session token is missing or invalid an
1975
+ * Err_UNAUTHENTICATED (code=16) is returned.
1976
+ *
1977
+ * @generated from service river.AppRegistryService
1978
+ */
1979
+ export declare const AppRegistryService: GenService<{
1980
+ /**
1981
+ * @generated from rpc river.AppRegistryService.Register
1982
+ */
1983
+ register: {
1984
+ methodKind: "unary";
1985
+ input: typeof RegisterRequestSchema;
1986
+ output: typeof RegisterResponseSchema;
1987
+ };
1988
+ /**
1989
+ * Webhook status / registration.
1990
+ *
1991
+ * @generated from rpc river.AppRegistryService.RegisterWebhook
1992
+ */
1993
+ registerWebhook: {
1994
+ methodKind: "unary";
1995
+ input: typeof RegisterWebhookRequestSchema;
1996
+ output: typeof RegisterWebhookResponseSchema;
1997
+ };
1998
+ /**
1999
+ * @generated from rpc river.AppRegistryService.GetStatus
2000
+ */
2001
+ getStatus: {
2002
+ methodKind: "unary";
2003
+ input: typeof GetStatusRequestSchema;
2004
+ output: typeof GetStatusResponseSchema;
2005
+ };
2006
+ /**
2007
+ * App settings management.
2008
+ *
2009
+ * @generated from rpc river.AppRegistryService.SetAppSettings
2010
+ */
2011
+ setAppSettings: {
2012
+ methodKind: "unary";
2013
+ input: typeof SetAppSettingsRequestSchema;
2014
+ output: typeof SetAppSettingsResponseSchema;
2015
+ };
2016
+ /**
2017
+ * @generated from rpc river.AppRegistryService.GetAppSettings
2018
+ */
2019
+ getAppSettings: {
2020
+ methodKind: "unary";
2021
+ input: typeof GetAppSettingsRequestSchema;
2022
+ output: typeof GetAppSettingsResponseSchema;
2023
+ };
2024
+ /**
2025
+ * App metadata management.
2026
+ *
2027
+ * @generated from rpc river.AppRegistryService.UpdateAppMetadata
2028
+ */
2029
+ updateAppMetadata: {
2030
+ methodKind: "unary";
2031
+ input: typeof UpdateAppMetadataRequestSchema;
2032
+ output: typeof UpdateAppMetadataResponseSchema;
2033
+ };
2034
+ /**
2035
+ * @generated from rpc river.AppRegistryService.GetAppMetadata
2036
+ */
2037
+ getAppMetadata: {
2038
+ methodKind: "unary";
2039
+ input: typeof GetAppMetadataRequestSchema;
2040
+ output: typeof GetAppMetadataResponseSchema;
2041
+ };
2042
+ /**
2043
+ * RotateSecret allows the bot owner to rotate the shared secret the app registry
2044
+ * service uses to authorize itself to the bot when making webhook calls.
2045
+ *
2046
+ * @generated from rpc river.AppRegistryService.RotateSecret
2047
+ */
2048
+ rotateSecret: {
2049
+ methodKind: "unary";
2050
+ input: typeof RotateSecretRequestSchema;
2051
+ output: typeof RotateSecretResponseSchema;
2052
+ };
2053
+ /**
2054
+ * GetSession allows the bot owner to query for specific session keys.
2055
+ *
2056
+ * @generated from rpc river.AppRegistryService.GetSession
2057
+ */
2058
+ getSession: {
2059
+ methodKind: "unary";
2060
+ input: typeof GetSessionRequestSchema;
2061
+ output: typeof GetSessionResponseSchema;
2062
+ };
2063
+ /**
2064
+ * ValidateBotName checks if a bot name is available for use.
2065
+ *
2066
+ * @generated from rpc river.AppRegistryService.ValidateBotName
2067
+ */
2068
+ validateBotName: {
2069
+ methodKind: "unary";
2070
+ input: typeof ValidateBotNameRequestSchema;
2071
+ output: typeof ValidateBotNameResponseSchema;
2072
+ };
2073
+ /**
2074
+ * SetAppActiveStatus allows the bot owner or bot to activate or deactivate the app.
2075
+ * Deactivated apps won't receive forwarded messages but retain their configuration.
2076
+ *
2077
+ * @generated from rpc river.AppRegistryService.SetAppActiveStatus
2078
+ */
2079
+ setAppActiveStatus: {
2080
+ methodKind: "unary";
2081
+ input: typeof SetAppActiveStatusRequestSchema;
2082
+ output: typeof SetAppActiveStatusResponseSchema;
2083
+ };
2084
+ /**
2085
+ * SetAppPromotedStatus allows the app owner or app to promote or unpromote the app.
2086
+ * Promoted apps are discoverable in the app catalog.
2087
+ * Requires authentication.
2088
+ *
2089
+ * @generated from rpc river.AppRegistryService.SetAppPromotedStatus
2090
+ */
2091
+ setAppPromotedStatus: {
2092
+ methodKind: "unary";
2093
+ input: typeof SetAppPromotedStatusRequestSchema;
2094
+ output: typeof SetAppPromotedStatusResponseSchema;
2095
+ };
2096
+ /**
2097
+ * SetAppVerifiedStatus allows admins to mark apps as verified.
2098
+ * Verified apps have been reviewed and approved by admins.
2099
+ * Requires admin authentication.
2100
+ *
2101
+ * @generated from rpc river.AppRegistryService.SetAppVerifiedStatus
2102
+ */
2103
+ setAppVerifiedStatus: {
2104
+ methodKind: "unary";
2105
+ input: typeof SetAppVerifiedStatusRequestSchema;
2106
+ output: typeof SetAppVerifiedStatusResponseSchema;
2107
+ };
2108
+ /**
2109
+ * SetUserName allows authenticated users to set or update their username and display name.
2110
+ * Returns an error if the username is already taken by another entity (app or user).
2111
+ *
2112
+ * @generated from rpc river.AppRegistryService.SetUserName
2113
+ */
2114
+ setUserName: {
2115
+ methodKind: "unary";
2116
+ input: typeof SetUserNameRequestSchema;
2117
+ output: typeof SetUserNameResponseSchema;
2118
+ };
2119
+ /**
2120
+ * GetEntityName retrieves the username and display name for a single entity.
2121
+ * Returns NOT_FOUND if the entity has not set a username.
2122
+ * This endpoint does not require authentication.
2123
+ *
2124
+ * @generated from rpc river.AppRegistryService.GetEntityName
2125
+ */
2126
+ getEntityName: {
2127
+ methodKind: "unary";
2128
+ input: typeof GetEntityNameRequestSchema;
2129
+ output: typeof GetEntityNameResponseSchema;
2130
+ };
2131
+ /**
2132
+ * GetBatchEntityNames retrieves usernames and display names for multiple entities.
2133
+ * Entities that have not set usernames will not be included in the response.
2134
+ * This endpoint does not require authentication.
2135
+ *
2136
+ * @generated from rpc river.AppRegistryService.GetBatchEntityNames
2137
+ */
2138
+ getBatchEntityNames: {
2139
+ methodKind: "unary";
2140
+ input: typeof GetBatchEntityNamesRequestSchema;
2141
+ output: typeof GetBatchEntityNamesResponseSchema;
2142
+ };
2143
+ /**
2144
+ * CreateInviteLink generates a new invite link for a stream.
2145
+ * If an active invite link already exists, it is revoked and a new one is created.
2146
+ * Requires authentication.
2147
+ *
2148
+ * @generated from rpc river.AppRegistryService.CreateInviteLink
2149
+ */
2150
+ createInviteLink: {
2151
+ methodKind: "unary";
2152
+ input: typeof CreateInviteLinkRequestSchema;
2153
+ output: typeof CreateInviteLinkResponseSchema;
2154
+ };
2155
+ /**
2156
+ * RevokeInviteLink invalidates the current active invite link for a stream.
2157
+ * Requires authentication.
2158
+ *
2159
+ * @generated from rpc river.AppRegistryService.RevokeInviteLink
2160
+ */
2161
+ revokeInviteLink: {
2162
+ methodKind: "unary";
2163
+ input: typeof RevokeInviteLinkRequestSchema;
2164
+ output: typeof RevokeInviteLinkResponseSchema;
2165
+ };
2166
+ /**
2167
+ * RedeemInviteLink validates an invite code and returns a signed payload
2168
+ * that can be used to join the stream.
2169
+ * Requires authentication.
2170
+ *
2171
+ * @generated from rpc river.AppRegistryService.RedeemInviteLink
2172
+ */
2173
+ redeemInviteLink: {
2174
+ methodKind: "unary";
2175
+ input: typeof RedeemInviteLinkRequestSchema;
2176
+ output: typeof RedeemInviteLinkResponseSchema;
2177
+ };
2178
+ /**
2179
+ * GetInviteLink retrieves the current active invite link for a stream.
2180
+ * Returns NOT_FOUND if no active invite link exists.
2181
+ * Requires authentication.
2182
+ *
2183
+ * @generated from rpc river.AppRegistryService.GetInviteLink
2184
+ */
2185
+ getInviteLink: {
2186
+ methodKind: "unary";
2187
+ input: typeof GetInviteLinkRequestSchema;
2188
+ output: typeof GetInviteLinkResponseSchema;
2189
+ };
2190
+ /**
2191
+ * ListRegisteredApps returns registered apps with optional filters.
2192
+ * Use owner_address filter for "my apps" view, stream_id filter for apps in a DM/GDM.
2193
+ * This endpoint does not require authentication.
2194
+ *
2195
+ * @generated from rpc river.AppRegistryService.ListRegisteredApps
2196
+ */
2197
+ listRegisteredApps: {
2198
+ methodKind: "unary";
2199
+ input: typeof ListRegisteredAppsRequestSchema;
2200
+ output: typeof ListRegisteredAppsResponseSchema;
2201
+ };
2202
+ /**
2203
+ * GetBulkAppData retrieves full app data for multiple apps.
2204
+ * This endpoint does not require authentication.
2205
+ *
2206
+ * @generated from rpc river.AppRegistryService.GetBulkAppData
2207
+ */
2208
+ getBulkAppData: {
2209
+ methodKind: "unary";
2210
+ input: typeof GetBulkAppDataRequestSchema;
2211
+ output: typeof GetBulkAppDataResponseSchema;
2212
+ };
2213
+ /**
2214
+ * GetAppInstallStats returns installation statistics for a single app.
2215
+ * This endpoint does not require authentication.
2216
+ *
2217
+ * @generated from rpc river.AppRegistryService.GetAppInstallStats
2218
+ */
2219
+ getAppInstallStats: {
2220
+ methodKind: "unary";
2221
+ input: typeof GetAppInstallStatsRequestSchema;
2222
+ output: typeof GetAppInstallStatsResponseSchema;
2223
+ };
2224
+ /**
2225
+ * GetBulkAppInstallStats returns installation statistics for multiple apps.
2226
+ * This endpoint does not require authentication.
2227
+ *
2228
+ * @generated from rpc river.AppRegistryService.GetBulkAppInstallStats
2229
+ */
2230
+ getBulkAppInstallStats: {
2231
+ methodKind: "unary";
2232
+ input: typeof GetBulkAppInstallStatsRequestSchema;
2233
+ output: typeof GetBulkAppInstallStatsResponseSchema;
2234
+ };
2235
+ /**
2236
+ * SubmitAppReview creates or updates a review for an app.
2237
+ * Requires authentication. One review per user per app.
2238
+ *
2239
+ * @generated from rpc river.AppRegistryService.SubmitAppReview
2240
+ */
2241
+ submitAppReview: {
2242
+ methodKind: "unary";
2243
+ input: typeof SubmitAppReviewRequestSchema;
2244
+ output: typeof SubmitAppReviewResponseSchema;
2245
+ };
2246
+ /**
2247
+ * GetAppReviews returns paginated reviews for an app.
2248
+ * This endpoint does not require authentication.
2249
+ *
2250
+ * @generated from rpc river.AppRegistryService.GetAppReviews
2251
+ */
2252
+ getAppReviews: {
2253
+ methodKind: "unary";
2254
+ input: typeof GetAppReviewsRequestSchema;
2255
+ output: typeof GetAppReviewsResponseSchema;
2256
+ };
2257
+ /**
2258
+ * RevokeAppReview revokes the caller's review for an app.
2259
+ * Requires authentication.
2260
+ *
2261
+ * @generated from rpc river.AppRegistryService.RevokeAppReview
2262
+ */
2263
+ revokeAppReview: {
2264
+ methodKind: "unary";
2265
+ input: typeof RevokeAppReviewRequestSchema;
2266
+ output: typeof RevokeAppReviewResponseSchema;
2267
+ };
2268
+ /**
2269
+ * GetAppReviewSummary returns aggregated review stats for a single app.
2270
+ * This endpoint does not require authentication.
2271
+ *
2272
+ * @generated from rpc river.AppRegistryService.GetAppReviewSummary
2273
+ */
2274
+ getAppReviewSummary: {
2275
+ methodKind: "unary";
2276
+ input: typeof GetAppReviewSummaryRequestSchema;
2277
+ output: typeof GetAppReviewSummaryResponseSchema;
2278
+ };
2279
+ /**
2280
+ * GetBulkAppReviewSummaries returns review summaries for multiple apps.
2281
+ * This endpoint does not require authentication.
2282
+ *
2283
+ * @generated from rpc river.AppRegistryService.GetBulkAppReviewSummaries
2284
+ */
2285
+ getBulkAppReviewSummaries: {
2286
+ methodKind: "unary";
2287
+ input: typeof GetBulkAppReviewSummariesRequestSchema;
2288
+ output: typeof GetBulkAppReviewSummariesResponseSchema;
2289
+ };
2290
+ /**
2291
+ * GetAppPositions retrieves positions for a user from a single tradable app.
2292
+ * The app must have tradable=true in its settings.
2293
+ * Requires authentication.
2294
+ *
2295
+ * @generated from rpc river.AppRegistryService.GetAppPositions
2296
+ */
2297
+ getAppPositions: {
2298
+ methodKind: "unary";
2299
+ input: typeof GetAppPositionsRequestSchema;
2300
+ output: typeof GetAppPositionsResponseSchema;
2301
+ };
2302
+ /**
2303
+ * GetBatchAppPositions retrieves positions for a user from multiple tradable apps.
2304
+ * Apps that don't support positions will return supported=false.
2305
+ * Requires authentication.
2306
+ *
2307
+ * @generated from rpc river.AppRegistryService.GetBatchAppPositions
2308
+ */
2309
+ getBatchAppPositions: {
2310
+ methodKind: "unary";
2311
+ input: typeof GetBatchAppPositionsRequestSchema;
2312
+ output: typeof GetBatchAppPositionsResponseSchema;
2313
+ };
2314
+ }>;
2315
+ //# sourceMappingURL=apps_pb.d.ts.map