@thru/sdk 0.2.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/README.abi.md +112 -0
  2. package/README.md +342 -0
  3. package/dist/abi/index.cjs +946 -0
  4. package/dist/abi/index.cjs.map +1 -0
  5. package/dist/abi/index.d.cts +331 -0
  6. package/dist/abi/index.d.ts +331 -0
  7. package/dist/abi/index.js +892 -0
  8. package/dist/abi/index.js.map +1 -0
  9. package/dist/abi/wasm/bundler/abi_reflect_wasm.d.ts +65 -0
  10. package/dist/abi/wasm/bundler/abi_reflect_wasm.js +5 -0
  11. package/dist/abi/wasm/bundler/abi_reflect_wasm_bg.js +412 -0
  12. package/dist/abi/wasm/bundler/abi_reflect_wasm_bg.wasm +0 -0
  13. package/dist/abi/wasm/bundler/abi_reflect_wasm_bg.wasm.d.ts +24 -0
  14. package/dist/abi/wasm/bundler/package.json +17 -0
  15. package/dist/abi/wasm/node/abi_reflect_wasm.d.ts +65 -0
  16. package/dist/abi/wasm/node/abi_reflect_wasm.js +425 -0
  17. package/dist/abi/wasm/node/abi_reflect_wasm_bg.wasm +0 -0
  18. package/dist/abi/wasm/node/abi_reflect_wasm_bg.wasm.d.ts +24 -0
  19. package/dist/abi/wasm/node/package.json +11 -0
  20. package/dist/abi/wasm/web/abi_reflect_wasm.d.ts +114 -0
  21. package/dist/abi/wasm/web/abi_reflect_wasm.js +499 -0
  22. package/dist/abi/wasm/web/abi_reflect_wasm_bg.wasm +0 -0
  23. package/dist/abi/wasm/web/abi_reflect_wasm_bg.wasm.d.ts +24 -0
  24. package/dist/abi/wasm/web/package.json +15 -0
  25. package/dist/chunk-CVBQ4UPL.js +3614 -0
  26. package/dist/chunk-CVBQ4UPL.js.map +1 -0
  27. package/dist/chunk-NSBPE2FW.js +15 -0
  28. package/dist/chunk-NSBPE2FW.js.map +1 -0
  29. package/dist/chunk-RL3Q6FDE.js +105 -0
  30. package/dist/chunk-RL3Q6FDE.js.map +1 -0
  31. package/dist/chunk-UDIXYJXC.js +260 -0
  32. package/dist/chunk-UDIXYJXC.js.map +1 -0
  33. package/dist/chunk-YQDWOMNO.js +271 -0
  34. package/dist/chunk-YQDWOMNO.js.map +1 -0
  35. package/dist/client-Cfi7zRLm.d.cts +1247 -0
  36. package/dist/client-worIo0a3.d.ts +1247 -0
  37. package/dist/client.cjs +3791 -0
  38. package/dist/client.cjs.map +1 -0
  39. package/dist/client.d.cts +7 -0
  40. package/dist/client.d.ts +7 -0
  41. package/dist/client.js +7 -0
  42. package/dist/client.js.map +1 -0
  43. package/dist/crypto/index.cjs +170 -0
  44. package/dist/crypto/index.cjs.map +1 -0
  45. package/dist/crypto/index.d.cts +60 -0
  46. package/dist/crypto/index.d.ts +60 -0
  47. package/dist/crypto/index.js +5 -0
  48. package/dist/crypto/index.js.map +1 -0
  49. package/dist/helpers/index.cjs +270 -0
  50. package/dist/helpers/index.cjs.map +1 -0
  51. package/dist/helpers/index.d.cts +15 -0
  52. package/dist/helpers/index.d.ts +15 -0
  53. package/dist/helpers/index.js +4 -0
  54. package/dist/helpers/index.js.map +1 -0
  55. package/dist/metafile-cjs.json +1 -0
  56. package/dist/metafile-esm.json +1 -0
  57. package/dist/proto/index.cjs +433 -0
  58. package/dist/proto/index.cjs.map +1 -0
  59. package/dist/proto/index.d.cts +435 -0
  60. package/dist/proto/index.d.ts +435 -0
  61. package/dist/proto/index.js +4 -0
  62. package/dist/proto/index.js.map +1 -0
  63. package/dist/sdk.cjs +4137 -0
  64. package/dist/sdk.cjs.map +1 -0
  65. package/dist/sdk.d.cts +36 -0
  66. package/dist/sdk.d.ts +36 -0
  67. package/dist/sdk.js +7 -0
  68. package/dist/sdk.js.map +1 -0
  69. package/dist/streaming_service_pb-DvCdJiCr.d.cts +4877 -0
  70. package/dist/streaming_service_pb-DvCdJiCr.d.ts +4877 -0
  71. package/dist/webcrypto-LTajLAad.d.cts +3 -0
  72. package/dist/webcrypto-LTajLAad.d.ts +3 -0
  73. package/package.json +88 -0
@@ -0,0 +1,4877 @@
1
+ import { GenEnum, GenMessage, GenFile, GenService } from '@bufbuild/protobuf/codegenv2';
2
+ import { Timestamp, Duration } from '@bufbuild/protobuf/wkt';
3
+ import { Message } from '@bufbuild/protobuf';
4
+
5
+ /**
6
+ * Describes the file thru/common/v1/consensus.proto.
7
+ */
8
+ declare const file_thru_common_v1_consensus: GenFile;
9
+ /**
10
+ * VersionContext selects which logical version of a resource should be
11
+ * returned. At least one field must be set.
12
+ *
13
+ * @generated from message thru.common.v1.VersionContext
14
+ */
15
+ type VersionContext = Message<"thru.common.v1.VersionContext"> & {
16
+ /**
17
+ * Specifies the desired version semantics.
18
+ *
19
+ * @generated from oneof thru.common.v1.VersionContext.version
20
+ */
21
+ version: {
22
+ /**
23
+ * Request the latest version available at request time.
24
+ *
25
+ * @generated from field: thru.common.v1.CurrentVersion current = 1;
26
+ */
27
+ value: CurrentVersion;
28
+ case: "current";
29
+ } | {
30
+ /**
31
+ * Request the latest version, or historical on.
32
+ *
33
+ * @generated from field: thru.common.v1.CurrentOrHistoricalVersion currentOrHistorical = 2;
34
+ */
35
+ value: CurrentOrHistoricalVersion;
36
+ case: "currentOrHistorical";
37
+ } | {
38
+ /**
39
+ * Request the version for a specific slot number.
40
+ *
41
+ * @generated from field: uint64 slot = 3;
42
+ */
43
+ value: bigint;
44
+ case: "slot";
45
+ } | {
46
+ /**
47
+ * Request the version nearest to the provided block timestamp.
48
+ *
49
+ * @generated from field: google.protobuf.Timestamp timestamp = 4;
50
+ */
51
+ value: Timestamp;
52
+ case: "timestamp";
53
+ } | {
54
+ /**
55
+ * Request the version for a specific seq number.
56
+ * Relevant only for GetAccount and GetRawAccount requests.
57
+ *
58
+ * @generated from field: uint64 seq = 5;
59
+ */
60
+ value: bigint;
61
+ case: "seq";
62
+ } | {
63
+ case: undefined;
64
+ value?: undefined;
65
+ };
66
+ };
67
+ /**
68
+ * Describes the message thru.common.v1.VersionContext.
69
+ * Use `create(VersionContextSchema)` to create a new message.
70
+ */
71
+ declare const VersionContextSchema: GenMessage<VersionContext>;
72
+ /**
73
+ * CurrentVersion is an empty marker message for VersionContext.current.
74
+ *
75
+ * @generated from message thru.common.v1.CurrentVersion
76
+ */
77
+ type CurrentVersion = Message<"thru.common.v1.CurrentVersion"> & {};
78
+ /**
79
+ * Describes the message thru.common.v1.CurrentVersion.
80
+ * Use `create(CurrentVersionSchema)` to create a new message.
81
+ */
82
+ declare const CurrentVersionSchema: GenMessage<CurrentVersion>;
83
+ /**
84
+ * CurrentOrHistoricalVersion is an empty marker message for VersionContext.current.
85
+ *
86
+ * @generated from message thru.common.v1.CurrentOrHistoricalVersion
87
+ */
88
+ type CurrentOrHistoricalVersion = Message<"thru.common.v1.CurrentOrHistoricalVersion"> & {};
89
+ /**
90
+ * Describes the message thru.common.v1.CurrentOrHistoricalVersion.
91
+ * Use `create(CurrentOrHistoricalVersionSchema)` to create a new message.
92
+ */
93
+ declare const CurrentOrHistoricalVersionSchema: GenMessage<CurrentOrHistoricalVersion>;
94
+ /**
95
+ * ConsensusStatus represents the minimum consensus level a resource has
96
+ * achieved when returned by the service.
97
+ *
98
+ * @generated from enum thru.common.v1.ConsensusStatus
99
+ */
100
+ declare enum ConsensusStatus {
101
+ /**
102
+ * CONSENSUS_STATUS_UNSPECIFIED indicates the consensus status is unknown.
103
+ *
104
+ * @generated from enum value: CONSENSUS_STATUS_UNSPECIFIED = 0;
105
+ */
106
+ UNSPECIFIED = 0,
107
+ /**
108
+ * CONSENSUS_STATUS_OBSERVED indicates the resource has been observed but
109
+ * not yet confirmed in a finalized block.
110
+ *
111
+ * @generated from enum value: CONSENSUS_STATUS_OBSERVED = 1;
112
+ */
113
+ OBSERVED = 1,
114
+ /**
115
+ * CONSENSUS_STATUS_INCLUDED indicates the resource has been included in the
116
+ * ledger but may not be finalized.
117
+ *
118
+ * @generated from enum value: CONSENSUS_STATUS_INCLUDED = 2;
119
+ */
120
+ INCLUDED = 2,
121
+ /**
122
+ * CONSENSUS_STATUS_FINALIZED indicates the resource is finalized for a slot.
123
+ *
124
+ * @generated from enum value: CONSENSUS_STATUS_FINALIZED = 3;
125
+ */
126
+ FINALIZED = 3,
127
+ /**
128
+ * CONSENSUS_STATUS_LOCALLY_EXECUTED indicates the local node executed the
129
+ * resource but broader cluster finality may not have been achieved.
130
+ *
131
+ * @generated from enum value: CONSENSUS_STATUS_LOCALLY_EXECUTED = 4;
132
+ */
133
+ LOCALLY_EXECUTED = 4,
134
+ /**
135
+ * CONSENSUS_STATUS_CLUSTER_EXECUTED indicates the entire cluster has
136
+ * executed and agreed on the resource.
137
+ *
138
+ * @generated from enum value: CONSENSUS_STATUS_CLUSTER_EXECUTED = 5;
139
+ */
140
+ CLUSTER_EXECUTED = 5
141
+ }
142
+ /**
143
+ * Describes the enum thru.common.v1.ConsensusStatus.
144
+ */
145
+ declare const ConsensusStatusSchema: GenEnum<ConsensusStatus>;
146
+
147
+ /**
148
+ * Describes the file thru/common/v1/primitives.proto.
149
+ */
150
+ declare const file_thru_common_v1_primitives: GenFile;
151
+ /**
152
+ * Pubkey represents a 32-byte public key value.
153
+ *
154
+ * @generated from message thru.common.v1.Pubkey
155
+ */
156
+ type Pubkey = Message<"thru.common.v1.Pubkey"> & {
157
+ /**
158
+ * 32-byte public key buffer.
159
+ *
160
+ * @generated from field: bytes value = 1;
161
+ */
162
+ value: Uint8Array;
163
+ };
164
+ /**
165
+ * Describes the message thru.common.v1.Pubkey.
166
+ * Use `create(PubkeySchema)` to create a new message.
167
+ */
168
+ declare const PubkeySchema: GenMessage<Pubkey>;
169
+ /**
170
+ * Signature represents a 64-byte signature value.
171
+ *
172
+ * @generated from message thru.common.v1.Signature
173
+ */
174
+ type Signature = Message<"thru.common.v1.Signature"> & {
175
+ /**
176
+ * 64-byte signature buffer.
177
+ *
178
+ * @generated from field: bytes value = 1;
179
+ */
180
+ value: Uint8Array;
181
+ };
182
+ /**
183
+ * Describes the message thru.common.v1.Signature.
184
+ * Use `create(SignatureSchema)` to create a new message.
185
+ */
186
+ declare const SignatureSchema: GenMessage<Signature>;
187
+ /**
188
+ * TaPubkey represents a ta-encoded public key string (46 characters).
189
+ *
190
+ * @generated from message thru.common.v1.TaPubkey
191
+ */
192
+ type TaPubkey = Message<"thru.common.v1.TaPubkey"> & {
193
+ /**
194
+ * 46-character ta-encoded public key string.
195
+ *
196
+ * @generated from field: string value = 1;
197
+ */
198
+ value: string;
199
+ };
200
+ /**
201
+ * Describes the message thru.common.v1.TaPubkey.
202
+ * Use `create(TaPubkeySchema)` to create a new message.
203
+ */
204
+ declare const TaPubkeySchema: GenMessage<TaPubkey>;
205
+ /**
206
+ * TsSignature represents a ts-encoded signature string (90 characters).
207
+ *
208
+ * @generated from message thru.common.v1.TsSignature
209
+ */
210
+ type TsSignature = Message<"thru.common.v1.TsSignature"> & {
211
+ /**
212
+ * 90-character ts-encoded signature string.
213
+ *
214
+ * @generated from field: string value = 1;
215
+ */
216
+ value: string;
217
+ };
218
+ /**
219
+ * Describes the message thru.common.v1.TsSignature.
220
+ * Use `create(TsSignatureSchema)` to create a new message.
221
+ */
222
+ declare const TsSignatureSchema: GenMessage<TsSignature>;
223
+
224
+ /**
225
+ * Describes the file thru/common/v1/filters.proto.
226
+ */
227
+ declare const file_thru_common_v1_filters: GenFile;
228
+ /**
229
+ * Filter represents a CEL-based expression applied to query or stream results.
230
+ *
231
+ * @generated from message thru.common.v1.Filter
232
+ */
233
+ type Filter = Message<"thru.common.v1.Filter"> & {
234
+ /**
235
+ * CEL expression applied server-side. Empty expressions are treated as no-op.
236
+ *
237
+ * @generated from field: optional string expression = 1;
238
+ */
239
+ expression?: string | undefined;
240
+ /**
241
+ * Named parameter bindings for expression parameterization.
242
+ *
243
+ * @generated from field: map<string, thru.common.v1.FilterParamValue> params = 2;
244
+ */
245
+ params: {
246
+ [key: string]: FilterParamValue;
247
+ };
248
+ };
249
+ /**
250
+ * Describes the message thru.common.v1.Filter.
251
+ * Use `create(FilterSchema)` to create a new message.
252
+ */
253
+ declare const FilterSchema: GenMessage<Filter>;
254
+ /**
255
+ * FilterParamValue carries strongly-typed CEL parameter bindings.
256
+ *
257
+ * @generated from message thru.common.v1.FilterParamValue
258
+ */
259
+ type FilterParamValue = Message<"thru.common.v1.FilterParamValue"> & {
260
+ /**
261
+ * @generated from oneof thru.common.v1.FilterParamValue.kind
262
+ */
263
+ kind: {
264
+ /**
265
+ * @generated from field: string string_value = 1;
266
+ */
267
+ value: string;
268
+ case: "stringValue";
269
+ } | {
270
+ /**
271
+ * @generated from field: bytes bytes_value = 2;
272
+ */
273
+ value: Uint8Array;
274
+ case: "bytesValue";
275
+ } | {
276
+ /**
277
+ * @generated from field: bool bool_value = 3;
278
+ */
279
+ value: boolean;
280
+ case: "boolValue";
281
+ } | {
282
+ /**
283
+ * @generated from field: sint64 int_value = 4;
284
+ */
285
+ value: bigint;
286
+ case: "intValue";
287
+ } | {
288
+ /**
289
+ * @generated from field: uint64 uint_value = 5;
290
+ */
291
+ value: bigint;
292
+ case: "uintValue";
293
+ } | {
294
+ /**
295
+ * @generated from field: double double_value = 6;
296
+ */
297
+ value: number;
298
+ case: "doubleValue";
299
+ } | {
300
+ /**
301
+ * @generated from field: thru.common.v1.Pubkey pubkey_value = 7;
302
+ */
303
+ value: Pubkey;
304
+ case: "pubkeyValue";
305
+ } | {
306
+ /**
307
+ * @generated from field: thru.common.v1.Signature signature_value = 8;
308
+ */
309
+ value: Signature;
310
+ case: "signatureValue";
311
+ } | {
312
+ /**
313
+ * @generated from field: thru.common.v1.TaPubkey ta_pubkey_value = 9;
314
+ */
315
+ value: TaPubkey;
316
+ case: "taPubkeyValue";
317
+ } | {
318
+ /**
319
+ * @generated from field: thru.common.v1.TsSignature ts_signature_value = 10;
320
+ */
321
+ value: TsSignature;
322
+ case: "tsSignatureValue";
323
+ } | {
324
+ /**
325
+ * @generated from field: thru.common.v1.BytesList bytes_list_value = 11;
326
+ */
327
+ value: BytesList;
328
+ case: "bytesListValue";
329
+ } | {
330
+ /**
331
+ * @generated from field: thru.common.v1.PubkeyList pubkey_list_value = 12;
332
+ */
333
+ value: PubkeyList;
334
+ case: "pubkeyListValue";
335
+ } | {
336
+ case: undefined;
337
+ value?: undefined;
338
+ };
339
+ };
340
+ /**
341
+ * Describes the message thru.common.v1.FilterParamValue.
342
+ * Use `create(FilterParamValueSchema)` to create a new message.
343
+ */
344
+ declare const FilterParamValueSchema: GenMessage<FilterParamValue>;
345
+ /**
346
+ * BytesList holds a list of byte arrays for multi-value CEL filtering.
347
+ *
348
+ * @generated from message thru.common.v1.BytesList
349
+ */
350
+ type BytesList = Message<"thru.common.v1.BytesList"> & {
351
+ /**
352
+ * @generated from field: repeated bytes values = 1;
353
+ */
354
+ values: Uint8Array[];
355
+ };
356
+ /**
357
+ * Describes the message thru.common.v1.BytesList.
358
+ * Use `create(BytesListSchema)` to create a new message.
359
+ */
360
+ declare const BytesListSchema: GenMessage<BytesList>;
361
+ /**
362
+ * PubkeyList holds a list of pubkeys for multi-value CEL filtering.
363
+ *
364
+ * @generated from message thru.common.v1.PubkeyList
365
+ */
366
+ type PubkeyList = Message<"thru.common.v1.PubkeyList"> & {
367
+ /**
368
+ * @generated from field: repeated thru.common.v1.Pubkey values = 1;
369
+ */
370
+ values: Pubkey[];
371
+ };
372
+ /**
373
+ * Describes the message thru.common.v1.PubkeyList.
374
+ * Use `create(PubkeyListSchema)` to create a new message.
375
+ */
376
+ declare const PubkeyListSchema: GenMessage<PubkeyList>;
377
+ /**
378
+ * CelFilterValidation describes the validation configuration returned to
379
+ * clients to help them build safe filter expressions.
380
+ *
381
+ * @generated from message thru.common.v1.CelFilterValidation
382
+ */
383
+ type CelFilterValidation = Message<"thru.common.v1.CelFilterValidation"> & {
384
+ /**
385
+ * List of allowed CEL function names for a specific request type.
386
+ *
387
+ * @generated from field: repeated string allowed_functions = 1;
388
+ */
389
+ allowedFunctions: string[];
390
+ /**
391
+ * List of allowed field names accessible to the CEL expression.
392
+ *
393
+ * @generated from field: repeated string allowed_fields = 2;
394
+ */
395
+ allowedFields: string[];
396
+ /**
397
+ * Maximum AST node count permitted for a CEL expression.
398
+ *
399
+ * @generated from field: optional uint32 max_complexity = 3;
400
+ */
401
+ maxComplexity?: number | undefined;
402
+ };
403
+ /**
404
+ * Describes the message thru.common.v1.CelFilterValidation.
405
+ * Use `create(CelFilterValidationSchema)` to create a new message.
406
+ */
407
+ declare const CelFilterValidationSchema: GenMessage<CelFilterValidation>;
408
+
409
+ /**
410
+ * Describes the file thru/common/v1/pagination.proto.
411
+ */
412
+ declare const file_thru_common_v1_pagination: GenFile;
413
+ /**
414
+ * PageRequest contains pagination parameters for listing RPCs.
415
+ *
416
+ * @generated from message thru.common.v1.PageRequest
417
+ */
418
+ type PageRequest = Message<"thru.common.v1.PageRequest"> & {
419
+ /**
420
+ * Maximum number of items to return in a single response.
421
+ *
422
+ * @generated from field: optional uint32 page_size = 1;
423
+ */
424
+ pageSize?: number | undefined;
425
+ /**
426
+ * Token identifying the position to resume from.
427
+ *
428
+ * @generated from field: optional string page_token = 2;
429
+ */
430
+ pageToken?: string | undefined;
431
+ /**
432
+ * Optional ordering specification in "field [asc|desc]" form.
433
+ *
434
+ * @generated from field: optional string order_by = 3;
435
+ */
436
+ orderBy?: string | undefined;
437
+ };
438
+ /**
439
+ * Describes the message thru.common.v1.PageRequest.
440
+ * Use `create(PageRequestSchema)` to create a new message.
441
+ */
442
+ declare const PageRequestSchema: GenMessage<PageRequest>;
443
+ /**
444
+ * PageResponse captures pagination metadata returned with list results.
445
+ *
446
+ * @generated from message thru.common.v1.PageResponse
447
+ */
448
+ type PageResponse = Message<"thru.common.v1.PageResponse"> & {
449
+ /**
450
+ * Token to retrieve the next page of results, if any.
451
+ *
452
+ * @generated from field: optional string next_page_token = 1;
453
+ */
454
+ nextPageToken?: string | undefined;
455
+ /**
456
+ * Total number of items available when known.
457
+ *
458
+ * @generated from field: optional uint64 total_size = 2;
459
+ */
460
+ totalSize?: bigint | undefined;
461
+ };
462
+ /**
463
+ * Describes the message thru.common.v1.PageResponse.
464
+ * Use `create(PageResponseSchema)` to create a new message.
465
+ */
466
+ declare const PageResponseSchema: GenMessage<PageResponse>;
467
+
468
+ /**
469
+ * Describes the file thru/core/v1/account.proto.
470
+ */
471
+ declare const file_thru_core_v1_account: GenFile;
472
+ /**
473
+ * AccountFlags enumerates boolean account capability flags.
474
+ *
475
+ * @generated from message thru.core.v1.AccountFlags
476
+ */
477
+ type AccountFlags = Message<"thru.core.v1.AccountFlags"> & {
478
+ /**
479
+ * @generated from field: bool is_program = 1;
480
+ */
481
+ isProgram: boolean;
482
+ /**
483
+ * @generated from field: bool is_privileged = 2;
484
+ */
485
+ isPrivileged: boolean;
486
+ /**
487
+ * @generated from field: bool is_uncompressable = 3;
488
+ */
489
+ isUncompressable: boolean;
490
+ /**
491
+ * @generated from field: bool is_ephemeral = 4;
492
+ */
493
+ isEphemeral: boolean;
494
+ /**
495
+ * @generated from field: bool is_deleted = 5;
496
+ */
497
+ isDeleted: boolean;
498
+ /**
499
+ * @generated from field: bool is_new = 6;
500
+ */
501
+ isNew: boolean;
502
+ /**
503
+ * @generated from field: bool is_compressed = 7;
504
+ */
505
+ isCompressed: boolean;
506
+ };
507
+ /**
508
+ * Describes the message thru.core.v1.AccountFlags.
509
+ * Use `create(AccountFlagsSchema)` to create a new message.
510
+ */
511
+ declare const AccountFlagsSchema: GenMessage<AccountFlags>;
512
+ /**
513
+ * AccountMeta captures metadata associated with an account.
514
+ *
515
+ * @generated from message thru.core.v1.AccountMeta
516
+ */
517
+ type AccountMeta = Message<"thru.core.v1.AccountMeta"> & {
518
+ /**
519
+ * @generated from field: uint32 version = 1;
520
+ */
521
+ version: number;
522
+ /**
523
+ * @generated from field: thru.core.v1.AccountFlags flags = 2;
524
+ */
525
+ flags?: AccountFlags | undefined;
526
+ /**
527
+ * @generated from field: uint32 data_size = 3;
528
+ */
529
+ dataSize: number;
530
+ /**
531
+ * Account sequence number
532
+ *
533
+ * @generated from field: uint64 seq = 4;
534
+ */
535
+ seq: bigint;
536
+ /**
537
+ * @generated from field: thru.common.v1.Pubkey owner = 5;
538
+ */
539
+ owner?: Pubkey | undefined;
540
+ /**
541
+ * @generated from field: uint64 balance = 6;
542
+ */
543
+ balance: bigint;
544
+ /**
545
+ * @generated from field: uint64 nonce = 7;
546
+ */
547
+ nonce: bigint;
548
+ /**
549
+ * The slot in which this account was last updated.
550
+ *
551
+ * @generated from field: optional uint64 last_updated_slot = 8;
552
+ */
553
+ lastUpdatedSlot?: bigint | undefined;
554
+ };
555
+ /**
556
+ * Describes the message thru.core.v1.AccountMeta.
557
+ * Use `create(AccountMetaSchema)` to create a new message.
558
+ */
559
+ declare const AccountMetaSchema: GenMessage<AccountMeta>;
560
+ /**
561
+ * AccountData contains account data payloads.
562
+ *
563
+ * @generated from message thru.core.v1.AccountData
564
+ */
565
+ type AccountData = Message<"thru.core.v1.AccountData"> & {
566
+ /**
567
+ * @generated from field: optional bytes data = 1;
568
+ */
569
+ data?: Uint8Array | undefined;
570
+ /**
571
+ * @generated from field: optional bool compressed = 2;
572
+ */
573
+ compressed?: boolean | undefined;
574
+ /**
575
+ * @generated from field: optional string compression_algorithm = 3;
576
+ */
577
+ compressionAlgorithm?: string | undefined;
578
+ };
579
+ /**
580
+ * Describes the message thru.core.v1.AccountData.
581
+ * Use `create(AccountDataSchema)` to create a new message.
582
+ */
583
+ declare const AccountDataSchema: GenMessage<AccountData>;
584
+ /**
585
+ * DataSlice describes a contiguous range of account data to return.
586
+ *
587
+ * @generated from message thru.core.v1.DataSlice
588
+ */
589
+ type DataSlice = Message<"thru.core.v1.DataSlice"> & {
590
+ /**
591
+ * @generated from field: uint32 offset = 1;
592
+ */
593
+ offset: number;
594
+ /**
595
+ * @generated from field: uint32 length = 2;
596
+ */
597
+ length: number;
598
+ };
599
+ /**
600
+ * Describes the message thru.core.v1.DataSlice.
601
+ * Use `create(DataSliceSchema)` to create a new message.
602
+ */
603
+ declare const DataSliceSchema: GenMessage<DataSlice>;
604
+ /**
605
+ * AccountPage represents a 4KB chunk for streaming account data.
606
+ *
607
+ * @generated from message thru.core.v1.AccountPage
608
+ */
609
+ type AccountPage = Message<"thru.core.v1.AccountPage"> & {
610
+ /**
611
+ * @generated from field: uint32 page_idx = 1;
612
+ */
613
+ pageIdx: number;
614
+ /**
615
+ * @generated from field: uint32 page_size = 2;
616
+ */
617
+ pageSize: number;
618
+ /**
619
+ * @generated from field: bytes page_data = 3;
620
+ */
621
+ pageData: Uint8Array;
622
+ /**
623
+ * @generated from field: optional bool compressed = 4;
624
+ */
625
+ compressed?: boolean | undefined;
626
+ /**
627
+ * @generated from field: optional string compression_algorithm = 5;
628
+ */
629
+ compressionAlgorithm?: string | undefined;
630
+ };
631
+ /**
632
+ * Describes the message thru.core.v1.AccountPage.
633
+ * Use `create(AccountPageSchema)` to create a new message.
634
+ */
635
+ declare const AccountPageSchema: GenMessage<AccountPage>;
636
+ /**
637
+ * VersionContextMetadata captures context for a returned account state.
638
+ *
639
+ * @generated from message thru.core.v1.VersionContextMetadata
640
+ */
641
+ type VersionContextMetadata = Message<"thru.core.v1.VersionContextMetadata"> & {
642
+ /**
643
+ * @generated from field: optional uint64 slot = 1;
644
+ */
645
+ slot?: bigint | undefined;
646
+ /**
647
+ * @generated from field: optional google.protobuf.Timestamp block_timestamp = 2;
648
+ */
649
+ blockTimestamp?: Timestamp | undefined;
650
+ };
651
+ /**
652
+ * Describes the message thru.core.v1.VersionContextMetadata.
653
+ * Use `create(VersionContextMetadataSchema)` to create a new message.
654
+ */
655
+ declare const VersionContextMetadataSchema: GenMessage<VersionContextMetadata>;
656
+ /**
657
+ * Account models a fully decoded account resource.
658
+ *
659
+ * @generated from message thru.core.v1.Account
660
+ */
661
+ type Account = Message<"thru.core.v1.Account"> & {
662
+ /**
663
+ * @generated from field: thru.common.v1.Pubkey address = 1;
664
+ */
665
+ address?: Pubkey | undefined;
666
+ /**
667
+ * @generated from field: optional thru.core.v1.AccountMeta meta = 2;
668
+ */
669
+ meta?: AccountMeta | undefined;
670
+ /**
671
+ * @generated from field: optional thru.core.v1.AccountData data = 3;
672
+ */
673
+ data?: AccountData | undefined;
674
+ /**
675
+ * @generated from field: optional thru.core.v1.VersionContextMetadata version_context = 4;
676
+ */
677
+ versionContext?: VersionContextMetadata | undefined;
678
+ /**
679
+ * @generated from field: optional thru.common.v1.ConsensusStatus consensus_status = 5;
680
+ */
681
+ consensusStatus?: ConsensusStatus | undefined;
682
+ };
683
+ /**
684
+ * Describes the message thru.core.v1.Account.
685
+ * Use `create(AccountSchema)` to create a new message.
686
+ */
687
+ declare const AccountSchema: GenMessage<Account>;
688
+ /**
689
+ * RawAccount captures raw serialized account bytes.
690
+ *
691
+ * @generated from message thru.core.v1.RawAccount
692
+ */
693
+ type RawAccount = Message<"thru.core.v1.RawAccount"> & {
694
+ /**
695
+ * @generated from field: thru.common.v1.Pubkey address = 1;
696
+ */
697
+ address?: Pubkey | undefined;
698
+ /**
699
+ * @generated from field: bytes raw_meta = 2;
700
+ */
701
+ rawMeta: Uint8Array;
702
+ /**
703
+ * @generated from field: optional bytes raw_data = 3;
704
+ */
705
+ rawData?: Uint8Array | undefined;
706
+ /**
707
+ * @generated from field: optional thru.core.v1.VersionContextMetadata version_context = 4;
708
+ */
709
+ versionContext?: VersionContextMetadata | undefined;
710
+ };
711
+ /**
712
+ * Describes the message thru.core.v1.RawAccount.
713
+ * Use `create(RawAccountSchema)` to create a new message.
714
+ */
715
+ declare const RawAccountSchema: GenMessage<RawAccount>;
716
+ /**
717
+ * AccountView controls which sections of account resources are returned.
718
+ *
719
+ * @generated from enum thru.core.v1.AccountView
720
+ */
721
+ declare enum AccountView {
722
+ /**
723
+ * ACCOUNT_VIEW_UNSPECIFIED uses service defaults.
724
+ *
725
+ * @generated from enum value: ACCOUNT_VIEW_UNSPECIFIED = 0;
726
+ */
727
+ UNSPECIFIED = 0,
728
+ /**
729
+ * ACCOUNT_VIEW_PUBKEY_ONLY returns only the account address.
730
+ *
731
+ * @generated from enum value: ACCOUNT_VIEW_PUBKEY_ONLY = 1;
732
+ */
733
+ PUBKEY_ONLY = 1,
734
+ /**
735
+ * ACCOUNT_VIEW_META_ONLY returns only account metadata.
736
+ *
737
+ * @generated from enum value: ACCOUNT_VIEW_META_ONLY = 2;
738
+ */
739
+ META_ONLY = 2,
740
+ /**
741
+ * ACCOUNT_VIEW_DATA_ONLY returns only account data.
742
+ *
743
+ * @generated from enum value: ACCOUNT_VIEW_DATA_ONLY = 3;
744
+ */
745
+ DATA_ONLY = 3,
746
+ /**
747
+ * ACCOUNT_VIEW_FULL returns address, metadata, and data.
748
+ *
749
+ * @generated from enum value: ACCOUNT_VIEW_FULL = 4;
750
+ */
751
+ FULL = 4
752
+ }
753
+ /**
754
+ * Describes the enum thru.core.v1.AccountView.
755
+ */
756
+ declare const AccountViewSchema: GenEnum<AccountView>;
757
+
758
+ /**
759
+ * Describes the file thru/core/v1/types.proto.
760
+ */
761
+ declare const file_thru_core_v1_types: GenFile;
762
+ /**
763
+ * Hash represents a 32-byte hash value.
764
+ *
765
+ * @generated from message thru.core.v1.Hash
766
+ */
767
+ type Hash = Message<"thru.core.v1.Hash"> & {
768
+ /**
769
+ * 32-byte hash buffer.
770
+ *
771
+ * @generated from field: bytes value = 1;
772
+ */
773
+ value: Uint8Array;
774
+ };
775
+ /**
776
+ * Describes the message thru.core.v1.Hash.
777
+ * Use `create(HashSchema)` to create a new message.
778
+ */
779
+ declare const HashSchema: GenMessage<Hash>;
780
+ /**
781
+ * BlockHash represents a 32-byte hash for block identifiers.
782
+ *
783
+ * @generated from message thru.core.v1.BlockHash
784
+ */
785
+ type BlockHash = Message<"thru.core.v1.BlockHash"> & {
786
+ /**
787
+ * 32-byte block hash buffer.
788
+ *
789
+ * @generated from field: bytes value = 1;
790
+ */
791
+ value: Uint8Array;
792
+ };
793
+ /**
794
+ * Describes the message thru.core.v1.BlockHash.
795
+ * Use `create(BlockHashSchema)` to create a new message.
796
+ */
797
+ declare const BlockHashSchema: GenMessage<BlockHash>;
798
+
799
+ /**
800
+ * Describes the file thru/core/v1/block.proto.
801
+ */
802
+ declare const file_thru_core_v1_block: GenFile;
803
+ /**
804
+ * BlockHeader describes metadata about a block.
805
+ *
806
+ * @generated from message thru.core.v1.BlockHeader
807
+ */
808
+ type BlockHeader = Message<"thru.core.v1.BlockHeader"> & {
809
+ /**
810
+ * @generated from field: uint64 slot = 1;
811
+ */
812
+ slot: bigint;
813
+ /**
814
+ * @generated from field: thru.core.v1.BlockHash block_hash = 2;
815
+ */
816
+ blockHash?: BlockHash | undefined;
817
+ /**
818
+ * @generated from field: thru.common.v1.Signature header_signature = 3;
819
+ */
820
+ headerSignature?: Signature | undefined;
821
+ /**
822
+ * @generated from field: uint32 version = 4;
823
+ */
824
+ version: number;
825
+ /**
826
+ * @generated from field: thru.common.v1.Pubkey producer = 5;
827
+ */
828
+ producer?: Pubkey | undefined;
829
+ /**
830
+ * @generated from field: google.protobuf.Timestamp expiry_timestamp = 6;
831
+ */
832
+ expiryTimestamp?: Timestamp | undefined;
833
+ /**
834
+ * @generated from field: uint64 start_slot = 7;
835
+ */
836
+ startSlot: bigint;
837
+ /**
838
+ * @generated from field: uint32 expiry_after = 8;
839
+ */
840
+ expiryAfter: number;
841
+ /**
842
+ * @generated from field: uint32 max_block_size = 9;
843
+ */
844
+ maxBlockSize: number;
845
+ /**
846
+ * @generated from field: uint64 max_compute_units = 10;
847
+ */
848
+ maxComputeUnits: bigint;
849
+ /**
850
+ * @generated from field: uint32 max_state_units = 11;
851
+ */
852
+ maxStateUnits: number;
853
+ /**
854
+ * @generated from field: uint64 bond_amount_lock_up = 12;
855
+ */
856
+ bondAmountLockUp: bigint;
857
+ /**
858
+ * @generated from field: google.protobuf.Timestamp block_time = 13;
859
+ */
860
+ blockTime?: Timestamp | undefined;
861
+ /**
862
+ * @generated from field: uint64 weight_slot = 14;
863
+ */
864
+ weightSlot: bigint;
865
+ /**
866
+ * @generated from field: uint32 chain_id = 15;
867
+ */
868
+ chainId: number;
869
+ };
870
+ /**
871
+ * Describes the message thru.core.v1.BlockHeader.
872
+ * Use `create(BlockHeaderSchema)` to create a new message.
873
+ */
874
+ declare const BlockHeaderSchema: GenMessage<BlockHeader>;
875
+ /**
876
+ * BlockFooter captures execution result metadata for a block.
877
+ *
878
+ * @generated from message thru.core.v1.BlockFooter
879
+ */
880
+ type BlockFooter = Message<"thru.core.v1.BlockFooter"> & {
881
+ /**
882
+ * @generated from field: thru.common.v1.Signature signature = 1;
883
+ */
884
+ signature?: Signature | undefined;
885
+ /**
886
+ * @generated from field: thru.core.v1.ExecutionStatus status = 2;
887
+ */
888
+ status: ExecutionStatus;
889
+ /**
890
+ * @generated from field: uint64 consumed_compute_units = 3;
891
+ */
892
+ consumedComputeUnits: bigint;
893
+ /**
894
+ * @generated from field: uint32 consumed_state_units = 4;
895
+ */
896
+ consumedStateUnits: number;
897
+ /**
898
+ * @generated from field: uint64 attestor_payment = 5;
899
+ */
900
+ attestorPayment: bigint;
901
+ };
902
+ /**
903
+ * Describes the message thru.core.v1.BlockFooter.
904
+ * Use `create(BlockFooterSchema)` to create a new message.
905
+ */
906
+ declare const BlockFooterSchema: GenMessage<BlockFooter>;
907
+ /**
908
+ * Block represents a fully decoded block resource.
909
+ *
910
+ * @generated from message thru.core.v1.Block
911
+ */
912
+ type Block = Message<"thru.core.v1.Block"> & {
913
+ /**
914
+ * @generated from field: thru.core.v1.BlockHeader header = 1;
915
+ */
916
+ header?: BlockHeader | undefined;
917
+ /**
918
+ * @generated from field: optional thru.core.v1.BlockFooter footer = 2;
919
+ */
920
+ footer?: BlockFooter | undefined;
921
+ /**
922
+ * @generated from field: optional bytes body = 3;
923
+ */
924
+ body?: Uint8Array | undefined;
925
+ /**
926
+ * @generated from field: optional thru.common.v1.ConsensusStatus consensus_status = 4;
927
+ */
928
+ consensusStatus?: ConsensusStatus | undefined;
929
+ };
930
+ /**
931
+ * Describes the message thru.core.v1.Block.
932
+ * Use `create(BlockSchema)` to create a new message.
933
+ */
934
+ declare const BlockSchema: GenMessage<Block>;
935
+ /**
936
+ * RawBlock captures raw block bytes for direct access.
937
+ *
938
+ * @generated from message thru.core.v1.RawBlock
939
+ */
940
+ type RawBlock = Message<"thru.core.v1.RawBlock"> & {
941
+ /**
942
+ * @generated from field: uint64 slot = 1;
943
+ */
944
+ slot: bigint;
945
+ /**
946
+ * @generated from field: bytes raw_block = 2;
947
+ */
948
+ rawBlock: Uint8Array;
949
+ };
950
+ /**
951
+ * Describes the message thru.core.v1.RawBlock.
952
+ * Use `create(RawBlockSchema)` to create a new message.
953
+ */
954
+ declare const RawBlockSchema: GenMessage<RawBlock>;
955
+ /**
956
+ * BlockView controls how much of a block resource is returned.
957
+ *
958
+ * @generated from enum thru.core.v1.BlockView
959
+ */
960
+ declare enum BlockView {
961
+ /**
962
+ * @generated from enum value: BLOCK_VIEW_UNSPECIFIED = 0;
963
+ */
964
+ UNSPECIFIED = 0,
965
+ /**
966
+ * @generated from enum value: BLOCK_VIEW_HEADER_ONLY = 1;
967
+ */
968
+ HEADER_ONLY = 1,
969
+ /**
970
+ * @generated from enum value: BLOCK_VIEW_HEADER_AND_FOOTER = 2;
971
+ */
972
+ HEADER_AND_FOOTER = 2,
973
+ /**
974
+ * @generated from enum value: BLOCK_VIEW_BODY_ONLY = 3;
975
+ */
976
+ BODY_ONLY = 3,
977
+ /**
978
+ * @generated from enum value: BLOCK_VIEW_FULL = 4;
979
+ */
980
+ FULL = 4
981
+ }
982
+ /**
983
+ * Describes the enum thru.core.v1.BlockView.
984
+ */
985
+ declare const BlockViewSchema: GenEnum<BlockView>;
986
+ /**
987
+ * ExecutionStatus enumerates block execution results.
988
+ *
989
+ * @generated from enum thru.core.v1.ExecutionStatus
990
+ */
991
+ declare enum ExecutionStatus {
992
+ /**
993
+ * @generated from enum value: EXECUTION_STATUS_UNSPECIFIED = 0;
994
+ */
995
+ UNSPECIFIED = 0,
996
+ /**
997
+ * @generated from enum value: EXECUTION_STATUS_PENDING = 1;
998
+ */
999
+ PENDING = 1,
1000
+ /**
1001
+ * @generated from enum value: EXECUTION_STATUS_EXECUTED = 2;
1002
+ */
1003
+ EXECUTED = 2,
1004
+ /**
1005
+ * @generated from enum value: EXECUTION_STATUS_FAILED = 3;
1006
+ */
1007
+ FAILED = 3
1008
+ }
1009
+ /**
1010
+ * Describes the enum thru.core.v1.ExecutionStatus.
1011
+ */
1012
+ declare const ExecutionStatusSchema: GenEnum<ExecutionStatus>;
1013
+
1014
+ /**
1015
+ * Describes the file thru/core/v1/node.proto.
1016
+ */
1017
+ declare const file_thru_core_v1_node: GenFile;
1018
+ /**
1019
+ * NodeContact represents a network contact address for a node.
1020
+ *
1021
+ * @generated from message thru.core.v1.NodeContact
1022
+ */
1023
+ type NodeContact = Message<"thru.core.v1.NodeContact"> & {
1024
+ /**
1025
+ * IPv4 address as 32-bit integer (network byte order).
1026
+ *
1027
+ * @generated from field: uint32 ip4_addr = 1;
1028
+ */
1029
+ ip4Addr: number;
1030
+ /**
1031
+ * Port number.
1032
+ *
1033
+ * @generated from field: uint32 port = 2;
1034
+ */
1035
+ port: number;
1036
+ };
1037
+ /**
1038
+ * Describes the message thru.core.v1.NodeContact.
1039
+ * Use `create(NodeContactSchema)` to create a new message.
1040
+ */
1041
+ declare const NodeContactSchema: GenMessage<NodeContact>;
1042
+ /**
1043
+ * NodeProtocol represents a protocol supported by a node contact.
1044
+ *
1045
+ * @generated from message thru.core.v1.NodeProtocol
1046
+ */
1047
+ type NodeProtocol = Message<"thru.core.v1.NodeProtocol"> & {
1048
+ /**
1049
+ * Index into the contacts array.
1050
+ *
1051
+ * @generated from field: uint32 contact_idx = 1;
1052
+ */
1053
+ contactIdx: number;
1054
+ /**
1055
+ * Protocol identifier (discovery=1, block_dissem=2, consensus=3, snapshot=4, repair=5, transaction=6).
1056
+ *
1057
+ * @generated from field: uint32 protocol_id = 2;
1058
+ */
1059
+ protocolId: number;
1060
+ };
1061
+ /**
1062
+ * Describes the message thru.core.v1.NodeProtocol.
1063
+ * Use `create(NodeProtocolSchema)` to create a new message.
1064
+ */
1065
+ declare const NodeProtocolSchema: GenMessage<NodeProtocol>;
1066
+ /**
1067
+ * NodeRecord represents a node's signed identity and network information.
1068
+ *
1069
+ * @generated from message thru.core.v1.NodeRecord
1070
+ */
1071
+ type NodeRecord = Message<"thru.core.v1.NodeRecord"> & {
1072
+ /**
1073
+ * Record version.
1074
+ *
1075
+ * @generated from field: uint32 version = 1;
1076
+ */
1077
+ version: number;
1078
+ /**
1079
+ * Chain identifier.
1080
+ *
1081
+ * @generated from field: uint32 chain_id = 2;
1082
+ */
1083
+ chainId: number;
1084
+ /**
1085
+ * Sequence number (incremented on each record update).
1086
+ *
1087
+ * @generated from field: uint64 seqnum = 3;
1088
+ */
1089
+ seqnum: bigint;
1090
+ /**
1091
+ * Node's ED25519 public key.
1092
+ *
1093
+ * @generated from field: thru.common.v1.Pubkey pubkey = 4;
1094
+ */
1095
+ pubkey?: Pubkey | undefined;
1096
+ /**
1097
+ * Network contact addresses.
1098
+ *
1099
+ * @generated from field: repeated thru.core.v1.NodeContact contacts = 5;
1100
+ */
1101
+ contacts: NodeContact[];
1102
+ /**
1103
+ * Protocols supported at each contact.
1104
+ *
1105
+ * @generated from field: repeated thru.core.v1.NodeProtocol protocols = 6;
1106
+ */
1107
+ protocols: NodeProtocol[];
1108
+ /**
1109
+ * ED25519 signature over the record.
1110
+ *
1111
+ * @generated from field: bytes signature = 7;
1112
+ */
1113
+ signature: Uint8Array;
1114
+ /**
1115
+ * True if this is the responding node's own record.
1116
+ *
1117
+ * @generated from field: bool is_own = 8;
1118
+ */
1119
+ isOwn: boolean;
1120
+ };
1121
+ /**
1122
+ * Describes the message thru.core.v1.NodeRecord.
1123
+ * Use `create(NodeRecordSchema)` to create a new message.
1124
+ */
1125
+ declare const NodeRecordSchema: GenMessage<NodeRecord>;
1126
+
1127
+ /**
1128
+ * Describes the file thru/core/v1/state.proto.
1129
+ */
1130
+ declare const file_thru_core_v1_state: GenFile;
1131
+ /**
1132
+ * StateProofRequest describes a request to generate an account state proof.
1133
+ *
1134
+ * @generated from message thru.core.v1.StateProofRequest
1135
+ */
1136
+ type StateProofRequest = Message<"thru.core.v1.StateProofRequest"> & {
1137
+ /**
1138
+ * @generated from field: thru.common.v1.Pubkey address = 1;
1139
+ */
1140
+ address?: Pubkey | undefined;
1141
+ /**
1142
+ * @generated from field: thru.core.v1.StateProofType proof_type = 2;
1143
+ */
1144
+ proofType: StateProofType;
1145
+ /**
1146
+ * @generated from field: optional uint64 target_slot = 3;
1147
+ */
1148
+ targetSlot?: bigint | undefined;
1149
+ };
1150
+ /**
1151
+ * Describes the message thru.core.v1.StateProofRequest.
1152
+ * Use `create(StateProofRequestSchema)` to create a new message.
1153
+ */
1154
+ declare const StateProofRequestSchema: GenMessage<StateProofRequest>;
1155
+ /**
1156
+ * StateProof returns binary proof data along with context.
1157
+ *
1158
+ * @generated from message thru.core.v1.StateProof
1159
+ */
1160
+ type StateProof = Message<"thru.core.v1.StateProof"> & {
1161
+ /**
1162
+ * @generated from field: bytes proof = 1;
1163
+ */
1164
+ proof: Uint8Array;
1165
+ /**
1166
+ * @generated from field: uint64 slot = 2;
1167
+ */
1168
+ slot: bigint;
1169
+ };
1170
+ /**
1171
+ * Describes the message thru.core.v1.StateProof.
1172
+ * Use `create(StateProofSchema)` to create a new message.
1173
+ */
1174
+ declare const StateProofSchema: GenMessage<StateProof>;
1175
+ /**
1176
+ * StateProofType selects the type of state proof to generate.
1177
+ *
1178
+ * @generated from enum thru.core.v1.StateProofType
1179
+ */
1180
+ declare enum StateProofType {
1181
+ /**
1182
+ * @generated from enum value: STATE_PROOF_TYPE_UNSPECIFIED = 0;
1183
+ */
1184
+ UNSPECIFIED = 0,
1185
+ /**
1186
+ * @generated from enum value: STATE_PROOF_TYPE_CREATING = 1;
1187
+ */
1188
+ CREATING = 1,
1189
+ /**
1190
+ * @generated from enum value: STATE_PROOF_TYPE_UPDATING = 2;
1191
+ */
1192
+ UPDATING = 2,
1193
+ /**
1194
+ * @generated from enum value: STATE_PROOF_TYPE_EXISTING = 3;
1195
+ */
1196
+ EXISTING = 3
1197
+ }
1198
+ /**
1199
+ * Describes the enum thru.core.v1.StateProofType.
1200
+ */
1201
+ declare const StateProofTypeSchema: GenEnum<StateProofType>;
1202
+
1203
+ /**
1204
+ * Describes the file thru/core/v1/transaction.proto.
1205
+ */
1206
+ declare const file_thru_core_v1_transaction: GenFile;
1207
+ /**
1208
+ * TransactionHeader carries structured metadata for a transaction.
1209
+ *
1210
+ * @generated from message thru.core.v1.TransactionHeader
1211
+ */
1212
+ type TransactionHeader = Message<"thru.core.v1.TransactionHeader"> & {
1213
+ /**
1214
+ * @generated from field: thru.common.v1.Signature fee_payer_signature = 1;
1215
+ */
1216
+ feePayerSignature?: Signature | undefined;
1217
+ /**
1218
+ * @generated from field: uint32 version = 2;
1219
+ */
1220
+ version: number;
1221
+ /**
1222
+ * @generated from field: uint32 flags = 3;
1223
+ */
1224
+ flags: number;
1225
+ /**
1226
+ * @generated from field: uint32 readwrite_accounts_count = 4;
1227
+ */
1228
+ readwriteAccountsCount: number;
1229
+ /**
1230
+ * @generated from field: uint32 readonly_accounts_count = 5;
1231
+ */
1232
+ readonlyAccountsCount: number;
1233
+ /**
1234
+ * @generated from field: uint32 instruction_data_size = 6;
1235
+ */
1236
+ instructionDataSize: number;
1237
+ /**
1238
+ * @generated from field: uint32 requested_compute_units = 7;
1239
+ */
1240
+ requestedComputeUnits: number;
1241
+ /**
1242
+ * @generated from field: uint32 requested_state_units = 8;
1243
+ */
1244
+ requestedStateUnits: number;
1245
+ /**
1246
+ * @generated from field: uint32 requested_memory_units = 9;
1247
+ */
1248
+ requestedMemoryUnits: number;
1249
+ /**
1250
+ * @generated from field: uint32 expiry_after = 10;
1251
+ */
1252
+ expiryAfter: number;
1253
+ /**
1254
+ * @generated from field: uint64 fee = 11;
1255
+ */
1256
+ fee: bigint;
1257
+ /**
1258
+ * @generated from field: uint64 nonce = 12;
1259
+ */
1260
+ nonce: bigint;
1261
+ /**
1262
+ * @generated from field: uint64 start_slot = 13;
1263
+ */
1264
+ startSlot: bigint;
1265
+ /**
1266
+ * @generated from field: thru.common.v1.Pubkey fee_payer_pubkey = 14;
1267
+ */
1268
+ feePayerPubkey?: Pubkey | undefined;
1269
+ /**
1270
+ * @generated from field: thru.common.v1.Pubkey program_pubkey = 15;
1271
+ */
1272
+ programPubkey?: Pubkey | undefined;
1273
+ /**
1274
+ * Chain identifier to prevent transaction replay across different chains.
1275
+ *
1276
+ * @generated from field: uint32 chain_id = 16;
1277
+ */
1278
+ chainId: number;
1279
+ };
1280
+ /**
1281
+ * Describes the message thru.core.v1.TransactionHeader.
1282
+ * Use `create(TransactionHeaderSchema)` to create a new message.
1283
+ */
1284
+ declare const TransactionHeaderSchema: GenMessage<TransactionHeader>;
1285
+ /**
1286
+ * TransactionExecutionResult captures execution outcomes.
1287
+ *
1288
+ * @generated from message thru.core.v1.TransactionExecutionResult
1289
+ */
1290
+ type TransactionExecutionResult = Message<"thru.core.v1.TransactionExecutionResult"> & {
1291
+ /**
1292
+ * @generated from field: uint32 consumed_compute_units = 1;
1293
+ */
1294
+ consumedComputeUnits: number;
1295
+ /**
1296
+ * @generated from field: uint32 consumed_memory_units = 2;
1297
+ */
1298
+ consumedMemoryUnits: number;
1299
+ /**
1300
+ * @generated from field: uint32 consumed_state_units = 3;
1301
+ */
1302
+ consumedStateUnits: number;
1303
+ /**
1304
+ * @generated from field: uint64 user_error_code = 4;
1305
+ */
1306
+ userErrorCode: bigint;
1307
+ /**
1308
+ * @generated from field: thru.core.v1.TransactionVmError vm_error = 5;
1309
+ */
1310
+ vmError: TransactionVmError;
1311
+ /**
1312
+ * @generated from field: uint64 execution_result = 6;
1313
+ */
1314
+ executionResult: bigint;
1315
+ /**
1316
+ * @generated from field: uint32 pages_used = 7;
1317
+ */
1318
+ pagesUsed: number;
1319
+ /**
1320
+ * @generated from field: uint32 events_count = 8;
1321
+ */
1322
+ eventsCount: number;
1323
+ /**
1324
+ * @generated from field: uint32 events_size = 9;
1325
+ */
1326
+ eventsSize: number;
1327
+ /**
1328
+ * @generated from field: repeated thru.common.v1.Pubkey readwrite_accounts = 10;
1329
+ */
1330
+ readwriteAccounts: Pubkey[];
1331
+ /**
1332
+ * @generated from field: repeated thru.common.v1.Pubkey readonly_accounts = 11;
1333
+ */
1334
+ readonlyAccounts: Pubkey[];
1335
+ /**
1336
+ * @generated from field: repeated thru.core.v1.TransactionEvent events = 12;
1337
+ */
1338
+ events: TransactionEvent[];
1339
+ /**
1340
+ * Account index of the program that caused the error (revert, fault, etc.).
1341
+ * Only meaningful when vm_error indicates a failure.
1342
+ *
1343
+ * @generated from field: uint32 error_program_acc_idx = 13;
1344
+ */
1345
+ errorProgramAccIdx: number;
1346
+ };
1347
+ /**
1348
+ * Describes the message thru.core.v1.TransactionExecutionResult.
1349
+ * Use `create(TransactionExecutionResultSchema)` to create a new message.
1350
+ */
1351
+ declare const TransactionExecutionResultSchema: GenMessage<TransactionExecutionResult>;
1352
+ /**
1353
+ * TransactionEvent describes an event emitted during transaction execution.
1354
+ *
1355
+ * @generated from message thru.core.v1.TransactionEvent
1356
+ */
1357
+ type TransactionEvent = Message<"thru.core.v1.TransactionEvent"> & {
1358
+ /**
1359
+ * @generated from field: string event_id = 1;
1360
+ */
1361
+ eventId: string;
1362
+ /**
1363
+ * @generated from field: uint32 call_idx = 2;
1364
+ */
1365
+ callIdx: number;
1366
+ /**
1367
+ * @generated from field: uint32 program_idx = 3;
1368
+ */
1369
+ programIdx: number;
1370
+ /**
1371
+ * @generated from field: thru.common.v1.Pubkey program = 4;
1372
+ */
1373
+ program?: Pubkey | undefined;
1374
+ /**
1375
+ * @generated from field: bytes payload = 5;
1376
+ */
1377
+ payload: Uint8Array;
1378
+ };
1379
+ /**
1380
+ * Describes the message thru.core.v1.TransactionEvent.
1381
+ * Use `create(TransactionEventSchema)` to create a new message.
1382
+ */
1383
+ declare const TransactionEventSchema: GenMessage<TransactionEvent>;
1384
+ /**
1385
+ * Transaction describes a fully decoded transaction resource.
1386
+ *
1387
+ * @generated from message thru.core.v1.Transaction
1388
+ */
1389
+ type Transaction = Message<"thru.core.v1.Transaction"> & {
1390
+ /**
1391
+ * @generated from field: thru.common.v1.Signature signature = 1;
1392
+ */
1393
+ signature?: Signature | undefined;
1394
+ /**
1395
+ * @generated from field: thru.core.v1.TransactionHeader header = 2;
1396
+ */
1397
+ header?: TransactionHeader | undefined;
1398
+ /**
1399
+ * @generated from field: optional bytes body = 3;
1400
+ */
1401
+ body?: Uint8Array | undefined;
1402
+ /**
1403
+ * @generated from field: optional thru.core.v1.TransactionExecutionResult execution_result = 4;
1404
+ */
1405
+ executionResult?: TransactionExecutionResult | undefined;
1406
+ /**
1407
+ * @generated from field: optional uint64 slot = 5;
1408
+ */
1409
+ slot?: bigint | undefined;
1410
+ /**
1411
+ * @generated from field: optional uint32 block_offset = 6;
1412
+ */
1413
+ blockOffset?: number | undefined;
1414
+ };
1415
+ /**
1416
+ * Describes the message thru.core.v1.Transaction.
1417
+ * Use `create(TransactionSchema)` to create a new message.
1418
+ */
1419
+ declare const TransactionSchema: GenMessage<Transaction>;
1420
+ /**
1421
+ * RawTransaction provides direct access to serialized transaction bytes.
1422
+ *
1423
+ * @generated from message thru.core.v1.RawTransaction
1424
+ */
1425
+ type RawTransaction = Message<"thru.core.v1.RawTransaction"> & {
1426
+ /**
1427
+ * @generated from field: thru.common.v1.Signature signature = 1;
1428
+ */
1429
+ signature?: Signature | undefined;
1430
+ /**
1431
+ * @generated from field: bytes raw_transaction = 2;
1432
+ */
1433
+ rawTransaction: Uint8Array;
1434
+ };
1435
+ /**
1436
+ * Describes the message thru.core.v1.RawTransaction.
1437
+ * Use `create(RawTransactionSchema)` to create a new message.
1438
+ */
1439
+ declare const RawTransactionSchema: GenMessage<RawTransaction>;
1440
+ /**
1441
+ * TransactionView controls how transactions are materialized in responses.
1442
+ *
1443
+ * @generated from enum thru.core.v1.TransactionView
1444
+ */
1445
+ declare enum TransactionView {
1446
+ /**
1447
+ * @generated from enum value: TRANSACTION_VIEW_UNSPECIFIED = 0;
1448
+ */
1449
+ UNSPECIFIED = 0,
1450
+ /**
1451
+ * @generated from enum value: TRANSACTION_VIEW_SIGNATURE_ONLY = 1;
1452
+ */
1453
+ SIGNATURE_ONLY = 1,
1454
+ /**
1455
+ * @generated from enum value: TRANSACTION_VIEW_HEADER_ONLY = 2;
1456
+ */
1457
+ HEADER_ONLY = 2,
1458
+ /**
1459
+ * @generated from enum value: TRANSACTION_VIEW_HEADER_AND_BODY = 3;
1460
+ */
1461
+ HEADER_AND_BODY = 3,
1462
+ /**
1463
+ * @generated from enum value: TRANSACTION_VIEW_FULL = 4;
1464
+ */
1465
+ FULL = 4
1466
+ }
1467
+ /**
1468
+ * Describes the enum thru.core.v1.TransactionView.
1469
+ */
1470
+ declare const TransactionViewSchema: GenEnum<TransactionView>;
1471
+ /**
1472
+ * TransactionVmError enumerates runtime error codes returned by the executor.
1473
+ *
1474
+ * @generated from enum thru.core.v1.TransactionVmError
1475
+ */
1476
+ declare enum TransactionVmError {
1477
+ /**
1478
+ * TN_RUNTIME_TXN_EXECUTE_SUCCESS
1479
+ *
1480
+ * @generated from enum value: TRANSACTION_VM_EXECUTE_SUCCESS = 0;
1481
+ */
1482
+ TRANSACTION_VM_EXECUTE_SUCCESS = 0,
1483
+ /**
1484
+ * TN_RUNTIME_TXN_ERR_INVALID_FORMAT
1485
+ *
1486
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_FORMAT = -255;
1487
+ */
1488
+ TRANSACTION_VM_ERROR_INVALID_FORMAT = -255,
1489
+ /**
1490
+ * TN_RUNTIME_TXN_ERR_INVALID_VERSION
1491
+ *
1492
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_VERSION = -254;
1493
+ */
1494
+ TRANSACTION_VM_ERROR_INVALID_VERSION = -254,
1495
+ /**
1496
+ * TN_RUNTIME_TXN_ERR_INVALID_FLAGS
1497
+ *
1498
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_FLAGS = -253;
1499
+ */
1500
+ TRANSACTION_VM_ERROR_INVALID_FLAGS = -253,
1501
+ /**
1502
+ * TN_RUNTIME_TXN_ERR_INVALID_SIGNATURE
1503
+ *
1504
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_SIGNATURE = -252;
1505
+ */
1506
+ TRANSACTION_VM_ERROR_INVALID_SIGNATURE = -252,
1507
+ /**
1508
+ * TN_RUNTIME_TXN_ERR_DUPLICATE_ACCOUNT
1509
+ *
1510
+ * @generated from enum value: TRANSACTION_VM_ERROR_DUPLICATE_ACCOUNT = -251;
1511
+ */
1512
+ TRANSACTION_VM_ERROR_DUPLICATE_ACCOUNT = -251,
1513
+ /**
1514
+ * TN_RUNTIME_TXN_ERR_UNSORTED_ACCOUNTS
1515
+ *
1516
+ * @generated from enum value: TRANSACTION_VM_ERROR_UNSORTED_ACCOUNTS = -250;
1517
+ */
1518
+ TRANSACTION_VM_ERROR_UNSORTED_ACCOUNTS = -250,
1519
+ /**
1520
+ * TN_RUNTIME_TXN_ERR_UNSORTED_READWRITE_ACCOUNTS
1521
+ *
1522
+ * @generated from enum value: TRANSACTION_VM_ERROR_UNSORTED_READWRITE_ACCOUNTS = -249;
1523
+ */
1524
+ TRANSACTION_VM_ERROR_UNSORTED_READWRITE_ACCOUNTS = -249,
1525
+ /**
1526
+ * TN_RUNTIME_TXN_ERR_UNSORTED_READONLY_ACCOUNTS
1527
+ *
1528
+ * @generated from enum value: TRANSACTION_VM_ERROR_UNSORTED_READONLY_ACCOUNTS = -248;
1529
+ */
1530
+ TRANSACTION_VM_ERROR_UNSORTED_READONLY_ACCOUNTS = -248,
1531
+ /**
1532
+ * TN_RUNTIME_TXN_ERR_ACCOUNT_COUNT_LIMIT_EXCEEDED
1533
+ *
1534
+ * @generated from enum value: TRANSACTION_VM_ERROR_ACCOUNT_COUNT_LIMIT_EXCEEDED = -247;
1535
+ */
1536
+ TRANSACTION_VM_ERROR_ACCOUNT_COUNT_LIMIT_EXCEEDED = -247,
1537
+ /**
1538
+ * TN_RUNTIME_TXN_ERR_NONCE_TOO_LOW
1539
+ *
1540
+ * @generated from enum value: TRANSACTION_VM_ERROR_NONCE_TOO_LOW = -511;
1541
+ */
1542
+ TRANSACTION_VM_ERROR_NONCE_TOO_LOW = -511,
1543
+ /**
1544
+ * TN_RUNTIME_TXN_ERR_NONCE_TOO_HIGH
1545
+ *
1546
+ * @generated from enum value: TRANSACTION_VM_ERROR_NONCE_TOO_HIGH = -510;
1547
+ */
1548
+ TRANSACTION_VM_ERROR_NONCE_TOO_HIGH = -510,
1549
+ /**
1550
+ * TN_RUNTIME_TXN_ERR_INSUFFICIENT_FEE_PAYER_BALANCE
1551
+ *
1552
+ * @generated from enum value: TRANSACTION_VM_ERROR_INSUFFICIENT_FEE_PAYER_BALANCE = -509;
1553
+ */
1554
+ TRANSACTION_VM_ERROR_INSUFFICIENT_FEE_PAYER_BALANCE = -509,
1555
+ /**
1556
+ * TN_RUNTIME_TXN_ERR_FEE_PAYER_ACCOUNT_DOES_NOT_EXIST
1557
+ *
1558
+ * @generated from enum value: TRANSACTION_VM_ERROR_FEE_PAYER_ACCOUNT_DOES_NOT_EXIST = -508;
1559
+ */
1560
+ TRANSACTION_VM_ERROR_FEE_PAYER_ACCOUNT_DOES_NOT_EXIST = -508,
1561
+ /**
1562
+ * TN_RUNTIME_TXN_ERR_NOT_LIVE_YET
1563
+ *
1564
+ * @generated from enum value: TRANSACTION_VM_ERROR_NOT_LIVE_YET = -507;
1565
+ */
1566
+ TRANSACTION_VM_ERROR_NOT_LIVE_YET = -507,
1567
+ /**
1568
+ * TN_RUNTIME_TXN_ERR_EXPIRED
1569
+ *
1570
+ * @generated from enum value: TRANSACTION_VM_ERROR_EXPIRED = -506;
1571
+ */
1572
+ TRANSACTION_VM_ERROR_EXPIRED = -506,
1573
+ /**
1574
+ * TN_RUNTIME_TXN_ERR_INVALID_FEE_PAYER_STATE_PROOF
1575
+ *
1576
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF = -505;
1577
+ */
1578
+ TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF = -505,
1579
+ /**
1580
+ * TN_RUNTIME_TXN_ERR_INVALID_FEE_PAYER_STATE_PROOF_TYPE
1581
+ *
1582
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF_TYPE = -504;
1583
+ */
1584
+ TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF_TYPE = -504,
1585
+ /**
1586
+ * TN_RUNTIME_TXN_ERR_INVALID_FEE_PAYER_STATE_PROOF_SLOT
1587
+ *
1588
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF_SLOT = -503;
1589
+ */
1590
+ TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF_SLOT = -503,
1591
+ /**
1592
+ * TN_RUNTIME_TXN_ERR_INVALID_FEE_PAYER_ACCOUNT_OWNER
1593
+ *
1594
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_ACCOUNT_OWNER = -502;
1595
+ */
1596
+ TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_ACCOUNT_OWNER = -502,
1597
+ /**
1598
+ * TN_RUNTIME_TXN_ERR_INVALID_FEE_PAYER_STATE_PROOF_ACCOUNT_OWNER
1599
+ *
1600
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF_ACCOUNT_OWNER = -501;
1601
+ */
1602
+ TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF_ACCOUNT_OWNER = -501,
1603
+ /**
1604
+ * TN_RUNTIME_TXN_ERR_INVALID_FEE_PAYER_STATE_PROOF_ACCOUNT_META_DATA_SZ
1605
+ *
1606
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF_ACCOUNT_META_DATA_SZ = -500;
1607
+ */
1608
+ TRANSACTION_VM_ERROR_INVALID_FEE_PAYER_STATE_PROOF_ACCOUNT_META_DATA_SZ = -500,
1609
+ /**
1610
+ * TN_RUNTIME_TXN_ERR_VM_FAILED
1611
+ *
1612
+ * @generated from enum value: TRANSACTION_VM_ERROR_VM_FAILED = -767;
1613
+ */
1614
+ TRANSACTION_VM_ERROR_VM_FAILED = -767,
1615
+ /**
1616
+ * TN_RUNTIME_TXN_ERR_INVALID_PROGRAM_ACCOUNT
1617
+ *
1618
+ * @generated from enum value: TRANSACTION_VM_ERROR_INVALID_PROGRAM_ACCOUNT = -766;
1619
+ */
1620
+ TRANSACTION_VM_ERROR_INVALID_PROGRAM_ACCOUNT = -766,
1621
+ /**
1622
+ * TN_RUNTIME_TXN_ERR_VM_REVERT
1623
+ *
1624
+ * @generated from enum value: TRANSACTION_VM_ERROR_VM_REVERT = -765;
1625
+ */
1626
+ TRANSACTION_VM_ERROR_VM_REVERT = -765,
1627
+ /**
1628
+ * TN_RUNTIME_TXN_ERR_CU_EXHAUSTED
1629
+ *
1630
+ * @generated from enum value: TRANSACTION_VM_ERROR_CU_EXHAUSTED = -764;
1631
+ */
1632
+ TRANSACTION_VM_ERROR_CU_EXHAUSTED = -764,
1633
+ /**
1634
+ * TN_RUNTIME_TXN_ERR_SU_EXHAUSTED
1635
+ *
1636
+ * @generated from enum value: TRANSACTION_VM_ERROR_SU_EXHAUSTED = -763;
1637
+ */
1638
+ TRANSACTION_VM_ERROR_SU_EXHAUSTED = -763
1639
+ }
1640
+ /**
1641
+ * Describes the enum thru.core.v1.TransactionVmError.
1642
+ */
1643
+ declare const TransactionVmErrorSchema: GenEnum<TransactionVmError>;
1644
+
1645
+ /**
1646
+ * Describes the file thru/services/v1/command_service.proto.
1647
+ */
1648
+ declare const file_thru_services_v1_command_service: GenFile;
1649
+ /**
1650
+ * SendTransactionRequest submits a transaction to the cluster.
1651
+ *
1652
+ * @generated from message thru.services.v1.SendTransactionRequest
1653
+ */
1654
+ type SendTransactionRequest = Message<"thru.services.v1.SendTransactionRequest"> & {
1655
+ /**
1656
+ * Raw transaction bytes encoded according to chain specification.
1657
+ *
1658
+ * @generated from field: bytes raw_transaction = 1;
1659
+ */
1660
+ rawTransaction: Uint8Array;
1661
+ };
1662
+ /**
1663
+ * Describes the message thru.services.v1.SendTransactionRequest.
1664
+ * Use `create(SendTransactionRequestSchema)` to create a new message.
1665
+ */
1666
+ declare const SendTransactionRequestSchema: GenMessage<SendTransactionRequest>;
1667
+ /**
1668
+ * SendTransactionResponse echoes submission metadata.
1669
+ *
1670
+ * @generated from message thru.services.v1.SendTransactionResponse
1671
+ */
1672
+ type SendTransactionResponse = Message<"thru.services.v1.SendTransactionResponse"> & {
1673
+ /**
1674
+ * @generated from field: thru.common.v1.Signature signature = 1;
1675
+ */
1676
+ signature?: Signature | undefined;
1677
+ };
1678
+ /**
1679
+ * Describes the message thru.services.v1.SendTransactionResponse.
1680
+ * Use `create(SendTransactionResponseSchema)` to create a new message.
1681
+ */
1682
+ declare const SendTransactionResponseSchema: GenMessage<SendTransactionResponse>;
1683
+ /**
1684
+ * BatchSendTransactionsRequest submits multiple transactions to the cluster.
1685
+ *
1686
+ * @generated from message thru.services.v1.BatchSendTransactionsRequest
1687
+ */
1688
+ type BatchSendTransactionsRequest = Message<"thru.services.v1.BatchSendTransactionsRequest"> & {
1689
+ /**
1690
+ * List of raw transaction bytes encoded according to chain specification.
1691
+ *
1692
+ * @generated from field: repeated bytes raw_transactions = 1;
1693
+ */
1694
+ rawTransactions: Uint8Array[];
1695
+ /**
1696
+ * Number of retries for each transaction if not accepted by UDS (defaults to 0).
1697
+ *
1698
+ * @generated from field: int32 num_retries = 2;
1699
+ */
1700
+ numRetries: number;
1701
+ };
1702
+ /**
1703
+ * Describes the message thru.services.v1.BatchSendTransactionsRequest.
1704
+ * Use `create(BatchSendTransactionsRequestSchema)` to create a new message.
1705
+ */
1706
+ declare const BatchSendTransactionsRequestSchema: GenMessage<BatchSendTransactionsRequest>;
1707
+ /**
1708
+ * BatchSendTransactionsResponse returns submission results for each transaction.
1709
+ *
1710
+ * @generated from message thru.services.v1.BatchSendTransactionsResponse
1711
+ */
1712
+ type BatchSendTransactionsResponse = Message<"thru.services.v1.BatchSendTransactionsResponse"> & {
1713
+ /**
1714
+ * Signatures for each transaction (in same order as request).
1715
+ *
1716
+ * @generated from field: repeated thru.common.v1.Signature signatures = 1;
1717
+ */
1718
+ signatures: Signature[];
1719
+ /**
1720
+ * Acceptance status for each transaction (true if accepted, false if not).
1721
+ *
1722
+ * @generated from field: repeated bool accepted = 2;
1723
+ */
1724
+ accepted: boolean[];
1725
+ };
1726
+ /**
1727
+ * Describes the message thru.services.v1.BatchSendTransactionsResponse.
1728
+ * Use `create(BatchSendTransactionsResponseSchema)` to create a new message.
1729
+ */
1730
+ declare const BatchSendTransactionsResponseSchema: GenMessage<BatchSendTransactionsResponse>;
1731
+ /**
1732
+ * SendAndTrackTxnRequest submits a transaction and tracks its execution.
1733
+ *
1734
+ * @generated from message thru.services.v1.SendAndTrackTxnRequest
1735
+ */
1736
+ type SendAndTrackTxnRequest = Message<"thru.services.v1.SendAndTrackTxnRequest"> & {
1737
+ /**
1738
+ * Raw transaction bytes encoded according to chain specification.
1739
+ *
1740
+ * @generated from field: bytes transaction = 1;
1741
+ */
1742
+ transaction: Uint8Array;
1743
+ /**
1744
+ * Optional timeout for tracking the transaction execution.
1745
+ * If not specified, the stream will remain open until the transaction is executed or the client cancels.
1746
+ *
1747
+ * @generated from field: google.protobuf.Duration timeout = 2;
1748
+ */
1749
+ timeout?: Duration | undefined;
1750
+ };
1751
+ /**
1752
+ * Describes the message thru.services.v1.SendAndTrackTxnRequest.
1753
+ * Use `create(SendAndTrackTxnRequestSchema)` to create a new message.
1754
+ */
1755
+ declare const SendAndTrackTxnRequestSchema: GenMessage<SendAndTrackTxnRequest>;
1756
+ /**
1757
+ * SendAndTrackTxnResponse streams transaction status updates.
1758
+ *
1759
+ * @generated from message thru.services.v1.SendAndTrackTxnResponse
1760
+ */
1761
+ type SendAndTrackTxnResponse = Message<"thru.services.v1.SendAndTrackTxnResponse"> & {
1762
+ /**
1763
+ * Current submission status of the transaction.
1764
+ *
1765
+ * @generated from field: thru.services.v1.SubmissionStatus status = 1;
1766
+ */
1767
+ status: SubmissionStatus;
1768
+ /**
1769
+ * Transaction signature (populated for tracking messages).
1770
+ *
1771
+ * @generated from field: thru.common.v1.Signature signature = 2;
1772
+ */
1773
+ signature?: Signature | undefined;
1774
+ /**
1775
+ * Consensus status (populated for tracking messages).
1776
+ *
1777
+ * @generated from field: thru.common.v1.ConsensusStatus consensus_status = 3;
1778
+ */
1779
+ consensusStatus: ConsensusStatus;
1780
+ /**
1781
+ * Execution result (populated for tracking messages when execution completes).
1782
+ *
1783
+ * @generated from field: thru.core.v1.TransactionExecutionResult execution_result = 4;
1784
+ */
1785
+ executionResult?: TransactionExecutionResult | undefined;
1786
+ };
1787
+ /**
1788
+ * Describes the message thru.services.v1.SendAndTrackTxnResponse.
1789
+ * Use `create(SendAndTrackTxnResponseSchema)` to create a new message.
1790
+ */
1791
+ declare const SendAndTrackTxnResponseSchema: GenMessage<SendAndTrackTxnResponse>;
1792
+ /**
1793
+ * SubmissionStatus represents the status of a transaction in the submission pipeline.
1794
+ *
1795
+ * @generated from enum thru.services.v1.SubmissionStatus
1796
+ */
1797
+ declare enum SubmissionStatus {
1798
+ /**
1799
+ * Submission status is unspecified (default value).
1800
+ *
1801
+ * @generated from enum value: SUBMISSION_STATUS_UNSPECIFIED = 0;
1802
+ */
1803
+ UNSPECIFIED = 0,
1804
+ /**
1805
+ * Transaction has been received by the gRPC server.
1806
+ *
1807
+ * @generated from enum value: SUBMISSION_STATUS_RECEIVED = 1;
1808
+ */
1809
+ RECEIVED = 1,
1810
+ /**
1811
+ * Transaction has been accepted by the forwarder via UDS.
1812
+ *
1813
+ * @generated from enum value: SUBMISSION_STATUS_ACCEPTED = 2;
1814
+ */
1815
+ ACCEPTED = 2
1816
+ }
1817
+ /**
1818
+ * Describes the enum thru.services.v1.SubmissionStatus.
1819
+ */
1820
+ declare const SubmissionStatusSchema: GenEnum<SubmissionStatus>;
1821
+ /**
1822
+ * CommandService defines transactional RPCs that mutate state or perform
1823
+ * expensive computations.
1824
+ *
1825
+ * @generated from service thru.services.v1.CommandService
1826
+ */
1827
+ declare const CommandService: GenService<{
1828
+ /**
1829
+ * Submit a new transaction to the cluster.
1830
+ *
1831
+ * @generated from rpc thru.services.v1.CommandService.SendTransaction
1832
+ */
1833
+ sendTransaction: {
1834
+ methodKind: "unary";
1835
+ input: typeof SendTransactionRequestSchema;
1836
+ output: typeof SendTransactionResponseSchema;
1837
+ };
1838
+ /**
1839
+ * Submit multiple transactions to the cluster in batch.
1840
+ *
1841
+ * @generated from rpc thru.services.v1.CommandService.BatchSendTransactions
1842
+ */
1843
+ batchSendTransactions: {
1844
+ methodKind: "unary";
1845
+ input: typeof BatchSendTransactionsRequestSchema;
1846
+ output: typeof BatchSendTransactionsResponseSchema;
1847
+ };
1848
+ /**
1849
+ * Submit a transaction and track its execution status.
1850
+ * Returns a stream of status updates starting with RECEIVED, then ACCEPTED,
1851
+ * followed by consensus and execution updates, closing after the transaction is executed.
1852
+ *
1853
+ * @generated from rpc thru.services.v1.CommandService.SendAndTrackTxn
1854
+ */
1855
+ sendAndTrackTxn: {
1856
+ methodKind: "server_streaming";
1857
+ input: typeof SendAndTrackTxnRequestSchema;
1858
+ output: typeof SendAndTrackTxnResponseSchema;
1859
+ };
1860
+ }>;
1861
+
1862
+ /**
1863
+ * Describes the file thru/services/v1/query_service.proto.
1864
+ */
1865
+ declare const file_thru_services_v1_query_service: GenFile;
1866
+ /**
1867
+ * GetAccountRequest retrieves a decoded account by public key.
1868
+ *
1869
+ * @generated from message thru.services.v1.GetAccountRequest
1870
+ */
1871
+ type GetAccountRequest = Message<"thru.services.v1.GetAccountRequest"> & {
1872
+ /**
1873
+ * @generated from field: thru.common.v1.Pubkey address = 1;
1874
+ */
1875
+ address?: Pubkey | undefined;
1876
+ /**
1877
+ * @generated from field: optional thru.core.v1.AccountView view = 2;
1878
+ */
1879
+ view?: AccountView | undefined;
1880
+ /**
1881
+ * @generated from field: thru.common.v1.VersionContext version_context = 3;
1882
+ */
1883
+ versionContext?: VersionContext | undefined;
1884
+ /**
1885
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 4;
1886
+ */
1887
+ minConsensus?: ConsensusStatus | undefined;
1888
+ /**
1889
+ * @generated from field: optional thru.core.v1.DataSlice data_slice = 5;
1890
+ */
1891
+ dataSlice?: DataSlice | undefined;
1892
+ };
1893
+ /**
1894
+ * Describes the message thru.services.v1.GetAccountRequest.
1895
+ * Use `create(GetAccountRequestSchema)` to create a new message.
1896
+ */
1897
+ declare const GetAccountRequestSchema: GenMessage<GetAccountRequest>;
1898
+ /**
1899
+ * GetRawAccountRequest retrieves raw account bytes by public key.
1900
+ *
1901
+ * @generated from message thru.services.v1.GetRawAccountRequest
1902
+ */
1903
+ type GetRawAccountRequest = Message<"thru.services.v1.GetRawAccountRequest"> & {
1904
+ /**
1905
+ * @generated from field: thru.common.v1.Pubkey address = 1;
1906
+ */
1907
+ address?: Pubkey | undefined;
1908
+ /**
1909
+ * @generated from field: optional thru.core.v1.AccountView view = 2;
1910
+ */
1911
+ view?: AccountView | undefined;
1912
+ /**
1913
+ * @generated from field: thru.common.v1.VersionContext version_context = 3;
1914
+ */
1915
+ versionContext?: VersionContext | undefined;
1916
+ /**
1917
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 4;
1918
+ */
1919
+ minConsensus?: ConsensusStatus | undefined;
1920
+ };
1921
+ /**
1922
+ * Describes the message thru.services.v1.GetRawAccountRequest.
1923
+ * Use `create(GetRawAccountRequestSchema)` to create a new message.
1924
+ */
1925
+ declare const GetRawAccountRequestSchema: GenMessage<GetRawAccountRequest>;
1926
+ /**
1927
+ * GetTransactionRequest retrieves a decoded transaction by signature.
1928
+ *
1929
+ * @generated from message thru.services.v1.GetTransactionRequest
1930
+ */
1931
+ type GetTransactionRequest = Message<"thru.services.v1.GetTransactionRequest"> & {
1932
+ /**
1933
+ * @generated from field: thru.common.v1.Signature signature = 1;
1934
+ */
1935
+ signature?: Signature | undefined;
1936
+ /**
1937
+ * @generated from field: optional thru.core.v1.TransactionView view = 2;
1938
+ */
1939
+ view?: TransactionView | undefined;
1940
+ /**
1941
+ * @generated from field: thru.common.v1.VersionContext version_context = 3;
1942
+ */
1943
+ versionContext?: VersionContext | undefined;
1944
+ /**
1945
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 4;
1946
+ */
1947
+ minConsensus?: ConsensusStatus | undefined;
1948
+ };
1949
+ /**
1950
+ * Describes the message thru.services.v1.GetTransactionRequest.
1951
+ * Use `create(GetTransactionRequestSchema)` to create a new message.
1952
+ */
1953
+ declare const GetTransactionRequestSchema: GenMessage<GetTransactionRequest>;
1954
+ /**
1955
+ * GetRawTransactionRequest retrieves raw transaction bytes by signature.
1956
+ *
1957
+ * @generated from message thru.services.v1.GetRawTransactionRequest
1958
+ */
1959
+ type GetRawTransactionRequest = Message<"thru.services.v1.GetRawTransactionRequest"> & {
1960
+ /**
1961
+ * @generated from field: thru.common.v1.Signature signature = 1;
1962
+ */
1963
+ signature?: Signature | undefined;
1964
+ /**
1965
+ * @generated from field: thru.common.v1.VersionContext version_context = 2;
1966
+ */
1967
+ versionContext?: VersionContext | undefined;
1968
+ /**
1969
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 3;
1970
+ */
1971
+ minConsensus?: ConsensusStatus | undefined;
1972
+ };
1973
+ /**
1974
+ * Describes the message thru.services.v1.GetRawTransactionRequest.
1975
+ * Use `create(GetRawTransactionRequestSchema)` to create a new message.
1976
+ */
1977
+ declare const GetRawTransactionRequestSchema: GenMessage<GetRawTransactionRequest>;
1978
+ /**
1979
+ * GenerateStateProofRequest requests an account state proof.
1980
+ *
1981
+ * @generated from message thru.services.v1.GenerateStateProofRequest
1982
+ */
1983
+ type GenerateStateProofRequest = Message<"thru.services.v1.GenerateStateProofRequest"> & {
1984
+ /**
1985
+ * @generated from field: thru.core.v1.StateProofRequest request = 1;
1986
+ */
1987
+ request?: StateProofRequest | undefined;
1988
+ };
1989
+ /**
1990
+ * Describes the message thru.services.v1.GenerateStateProofRequest.
1991
+ * Use `create(GenerateStateProofRequestSchema)` to create a new message.
1992
+ */
1993
+ declare const GenerateStateProofRequestSchema: GenMessage<GenerateStateProofRequest>;
1994
+ /**
1995
+ * GenerateStateProofResponse contains the generated proof.
1996
+ *
1997
+ * @generated from message thru.services.v1.GenerateStateProofResponse
1998
+ */
1999
+ type GenerateStateProofResponse = Message<"thru.services.v1.GenerateStateProofResponse"> & {
2000
+ /**
2001
+ * @generated from field: thru.core.v1.StateProof proof = 1;
2002
+ */
2003
+ proof?: StateProof | undefined;
2004
+ };
2005
+ /**
2006
+ * Describes the message thru.services.v1.GenerateStateProofResponse.
2007
+ * Use `create(GenerateStateProofResponseSchema)` to create a new message.
2008
+ */
2009
+ declare const GenerateStateProofResponseSchema: GenMessage<GenerateStateProofResponse>;
2010
+ /**
2011
+ * GetBlockRequest retrieves decoded block information by slot or hash.
2012
+ *
2013
+ * @generated from message thru.services.v1.GetBlockRequest
2014
+ */
2015
+ type GetBlockRequest = Message<"thru.services.v1.GetBlockRequest"> & {
2016
+ /**
2017
+ * @generated from oneof thru.services.v1.GetBlockRequest.selector
2018
+ */
2019
+ selector: {
2020
+ /**
2021
+ * @generated from field: uint64 slot = 1;
2022
+ */
2023
+ value: bigint;
2024
+ case: "slot";
2025
+ } | {
2026
+ /**
2027
+ * @generated from field: thru.core.v1.BlockHash block_hash = 2;
2028
+ */
2029
+ value: BlockHash;
2030
+ case: "blockHash";
2031
+ } | {
2032
+ case: undefined;
2033
+ value?: undefined;
2034
+ };
2035
+ /**
2036
+ * @generated from field: optional thru.core.v1.BlockView view = 3;
2037
+ */
2038
+ view?: BlockView | undefined;
2039
+ /**
2040
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 4;
2041
+ */
2042
+ minConsensus?: ConsensusStatus | undefined;
2043
+ };
2044
+ /**
2045
+ * Describes the message thru.services.v1.GetBlockRequest.
2046
+ * Use `create(GetBlockRequestSchema)` to create a new message.
2047
+ */
2048
+ declare const GetBlockRequestSchema: GenMessage<GetBlockRequest>;
2049
+ /**
2050
+ * GetRawBlockRequest retrieves raw block bytes by slot or hash.
2051
+ *
2052
+ * @generated from message thru.services.v1.GetRawBlockRequest
2053
+ */
2054
+ type GetRawBlockRequest = Message<"thru.services.v1.GetRawBlockRequest"> & {
2055
+ /**
2056
+ * @generated from oneof thru.services.v1.GetRawBlockRequest.selector
2057
+ */
2058
+ selector: {
2059
+ /**
2060
+ * @generated from field: uint64 slot = 1;
2061
+ */
2062
+ value: bigint;
2063
+ case: "slot";
2064
+ } | {
2065
+ /**
2066
+ * @generated from field: thru.core.v1.BlockHash block_hash = 2;
2067
+ */
2068
+ value: BlockHash;
2069
+ case: "blockHash";
2070
+ } | {
2071
+ case: undefined;
2072
+ value?: undefined;
2073
+ };
2074
+ /**
2075
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 3;
2076
+ */
2077
+ minConsensus?: ConsensusStatus | undefined;
2078
+ };
2079
+ /**
2080
+ * Describes the message thru.services.v1.GetRawBlockRequest.
2081
+ * Use `create(GetRawBlockRequestSchema)` to create a new message.
2082
+ */
2083
+ declare const GetRawBlockRequestSchema: GenMessage<GetRawBlockRequest>;
2084
+ /**
2085
+ * ListAccountsRequest lists accounts using CEL filters.
2086
+ *
2087
+ * The filter expression supports filtering on account metadata fields using CEL (Common Expression Language).
2088
+ * A filter expression is REQUIRED for all ListAccounts requests.
2089
+ *
2090
+ * Available fields for filtering:
2091
+ * - account.address.value (bytes): The account's public key address
2092
+ * - account.meta.owner.value (bytes): The account owner's public key
2093
+ * - account.meta.balance (uint64): Account balance in native units
2094
+ * - account.meta.seq (uint64): Account sequence number / state counter
2095
+ * - account.meta.nonce (uint64): Account transaction nonce
2096
+ * - account.meta.data_size (uint32): Size of account data in bytes
2097
+ * - account.meta.version (uint32): Account version number
2098
+ * - account.meta.flags (AccountFlags): Account capability flags (message type)
2099
+ * - account.meta.flags.is_program (bool): Flag indicating if account is a program
2100
+ * - account.meta.flags.is_privileged (bool): Flag indicating if account is privileged
2101
+ * - account.meta.flags.is_uncompressable (bool): Flag indicating if account data cannot be compressed
2102
+ * - account.meta.flags.is_ephemeral (bool): Flag indicating if account is ephemeral
2103
+ * - account.meta.flags.is_deleted (bool): Flag indicating if account is deleted
2104
+ * - account.meta.flags.is_new (bool): Flag indicating if account is new
2105
+ * - account.meta.flags.is_compressed (bool): Flag indicating if account data is compressed
2106
+ * - account.meta.last_updated_slot (uint64): Slot when account was last modified
2107
+ *
2108
+ * Available CEL functions:
2109
+ * - has(field): Check if optional field exists
2110
+ * - uint(value): Convert to uint type
2111
+ * - int(value): Convert to int type
2112
+ * - string(value): Convert to string type
2113
+ * - bytes(value): Convert to bytes type
2114
+ *
2115
+ * Available filter parameters (accessible via params.* in expressions):
2116
+ * - params.owner_bytes (bytes): Owner public key for owner filtering (REQUIRED when filtering by owner)
2117
+ * - params.prefix (bytes): Byte prefix for range-based filtering
2118
+ * - params.tag (any): Custom tag parameter
2119
+ * - params.min_slot (uint64): Minimum slot parameter
2120
+ * - params.min_updated_slot (uint64): Minimum last_updated_slot for filtering
2121
+ *
2122
+ * Filter examples:
2123
+ *
2124
+ * 1. Filter by balance:
2125
+ * filter.expression = "account.meta.balance > uint(1000000)"
2126
+ *
2127
+ * 2. Filter by balance range:
2128
+ * filter.expression = "account.meta.balance >= uint(100) && account.meta.balance <= uint(10000)"
2129
+ *
2130
+ * 3. Filter by owner (requires params.owner_bytes):
2131
+ * filter.expression = "account.meta.owner.value == params.owner_bytes"
2132
+ * filter.params["owner_bytes"].bytes_value = <32-byte owner pubkey>
2133
+ *
2134
+ * 4. Filter by data size:
2135
+ * filter.expression = "account.meta.data_size > uint(0)"
2136
+ * filter.expression = "account.meta.data_size >= uint(100) && account.meta.data_size <= uint(1000)"
2137
+ *
2138
+ * 5. Filter by nonce:
2139
+ * filter.expression = "account.meta.nonce == uint(0)"
2140
+ *
2141
+ * 6. Filter by sequence number:
2142
+ * filter.expression = "account.meta.seq >= uint(100)"
2143
+ *
2144
+ * 7. Filter by version:
2145
+ * filter.expression = "account.meta.version == uint(1)"
2146
+ *
2147
+ * 8. Filter by specific address (using inline bytes literal with octal escaping):
2148
+ * filter.expression = "account.address.value == b'\001\002\003...'"
2149
+ * Note: Binary bytes must be properly escaped using octal notation (\NNN) for non-printable bytes
2150
+ *
2151
+ * 9. Filter by address prefix (using range comparison):
2152
+ * filter.expression = "account.address.value >= b'\001\002\003\004' && account.address.value <= b'\001\002\003\004\377\377...'"
2153
+ * Note: Create upper bound by appending 0xff bytes after prefix
2154
+ *
2155
+ * 10. Combine multiple conditions with AND:
2156
+ * filter.expression = "account.meta.balance > uint(0) && account.meta.data_size == uint(0)"
2157
+ *
2158
+ * 11. Combine multiple conditions with OR:
2159
+ * filter.expression = "account.meta.balance == uint(0) || account.meta.balance > uint(50000)"
2160
+ *
2161
+ * 12. Complex combined filters:
2162
+ * filter.expression = "(account.meta.balance > uint(100) && account.meta.balance < uint(10000)) || account.meta.data_size > uint(1000)"
2163
+ *
2164
+ * 13. Check for optional field existence:
2165
+ * filter.expression = "has(account.address.value)"
2166
+ * filter.expression = "has(account.meta.owner.value)" // Requires params.owner_bytes
2167
+ *
2168
+ * 14. Use inequality operators:
2169
+ * filter.expression = "account.meta.balance < uint(5000)"
2170
+ * filter.expression = "account.meta.balance <= uint(5000)"
2171
+ * filter.expression = "account.meta.balance >= uint(100)"
2172
+ * filter.expression = "account.meta.balance != uint(999)"
2173
+ *
2174
+ * 15. Type conversions:
2175
+ * filter.expression = "account.meta.balance == uint(100)"
2176
+ * filter.expression = "uint(account.meta.data_size) > uint(0)"
2177
+ *
2178
+ * 16. Filter by account flags (individual flag fields):
2179
+ * filter.expression = "account.meta.flags.is_program == true"
2180
+ * filter.expression = "account.meta.flags.is_privileged == true"
2181
+ * filter.expression = "account.meta.flags.is_uncompressable == true"
2182
+ * filter.expression = "account.meta.flags.is_ephemeral == true"
2183
+ * filter.expression = "account.meta.flags.is_deleted == true"
2184
+ * filter.expression = "account.meta.flags.is_new == true"
2185
+ * filter.expression = "account.meta.flags.is_compressed == true"
2186
+ *
2187
+ * 17. Combine flag filters with other conditions:
2188
+ * filter.expression = "account.meta.flags.is_program == true && account.meta.balance > uint(0)"
2189
+ *
2190
+ * 18. Filter by last_updated_slot:
2191
+ * filter.expression = "account.meta.last_updated_slot >= uint(1000)"
2192
+ *
2193
+ * 19. Filter by last_updated_slot with params:
2194
+ * filter.expression = "account.meta.last_updated_slot >= params.min_updated_slot"
2195
+ * filter.params["min_updated_slot"].uint_value = 1000
2196
+ *
2197
+ * Limitations:
2198
+ * - The startsWith() function only works with strings, not bytes
2199
+ * - The bytesPrefix() function is NOT available for ListAccounts (use range comparison instead)
2200
+ * - Parameter names other than owner_bytes, prefix, tag, min_slot, min_updated_slot are NOT permitted
2201
+ * - All filters are pushed down to SQL for optimal performance where possible
2202
+ *
2203
+ * @generated from message thru.services.v1.ListAccountsRequest
2204
+ */
2205
+ type ListAccountsRequest = Message<"thru.services.v1.ListAccountsRequest"> & {
2206
+ /**
2207
+ * @generated from field: optional thru.core.v1.AccountView view = 1;
2208
+ */
2209
+ view?: AccountView | undefined;
2210
+ /**
2211
+ * @generated from field: optional thru.common.v1.VersionContext version_context = 2;
2212
+ */
2213
+ versionContext?: VersionContext | undefined;
2214
+ /**
2215
+ * CEL filter expression (REQUIRED). See message documentation for examples.
2216
+ *
2217
+ * @generated from field: optional thru.common.v1.Filter filter = 3;
2218
+ */
2219
+ filter?: Filter | undefined;
2220
+ /**
2221
+ * @generated from field: optional thru.common.v1.PageRequest page = 4;
2222
+ */
2223
+ page?: PageRequest | undefined;
2224
+ /**
2225
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 5;
2226
+ */
2227
+ minConsensus?: ConsensusStatus | undefined;
2228
+ };
2229
+ /**
2230
+ * Describes the message thru.services.v1.ListAccountsRequest.
2231
+ * Use `create(ListAccountsRequestSchema)` to create a new message.
2232
+ */
2233
+ declare const ListAccountsRequestSchema: GenMessage<ListAccountsRequest>;
2234
+ /**
2235
+ * ListAccountsResponse contains paginated accounts.
2236
+ *
2237
+ * @generated from message thru.services.v1.ListAccountsResponse
2238
+ */
2239
+ type ListAccountsResponse = Message<"thru.services.v1.ListAccountsResponse"> & {
2240
+ /**
2241
+ * @generated from field: repeated thru.core.v1.Account accounts = 1;
2242
+ */
2243
+ accounts: Account[];
2244
+ /**
2245
+ * @generated from field: optional thru.common.v1.PageResponse page = 2;
2246
+ */
2247
+ page?: PageResponse | undefined;
2248
+ };
2249
+ /**
2250
+ * Describes the message thru.services.v1.ListAccountsResponse.
2251
+ * Use `create(ListAccountsResponseSchema)` to create a new message.
2252
+ */
2253
+ declare const ListAccountsResponseSchema: GenMessage<ListAccountsResponse>;
2254
+ /**
2255
+ * ListBlocksRequest lists blocks with pagination and filtering.
2256
+ *
2257
+ * Returns blocks ordered from latest slot to earliest (slot DESC) by default.
2258
+ * Supports filtering on block header and footer fields using CEL expressions.
2259
+ *
2260
+ * Available fields for filtering:
2261
+ *
2262
+ * Header fields:
2263
+ * - block.header.slot (uint64): Block slot number
2264
+ * - block.header.version (uint32): Block version number
2265
+ * - block.header.start_slot (uint64): Start slot for block production
2266
+ * - block.header.producer.value (bytes): Block producer's public key
2267
+ * - block.header.expiry_after (uint32): Expiry duration in slots
2268
+ * - block.header.expiry_timestamp (google.protobuf.Timestamp): Expiry timestamp
2269
+ * - block.header.max_block_size (uint32): Maximum block size in bytes
2270
+ * - block.header.max_compute_units (uint64): Maximum compute units allowed
2271
+ * - block.header.max_state_units (uint32): Maximum state units allowed
2272
+ * - block.header.bond_amount_lock_up (uint64): Bond amount lock-up for block production
2273
+ * - block.header.price (uint64): Block production price
2274
+ * - block.header.block_hash.value (bytes): Block hash
2275
+ * - block.header.header_signature.value (bytes): Header signature
2276
+ * - block.header.block_time (google.protobuf.Timestamp): Block timestamp
2277
+ *
2278
+ * Footer fields:
2279
+ * - block.footer.signature.value (bytes): Block signature
2280
+ * - block.footer.status (int32): Block execution status (2 = EXECUTION_STATUS_EXECUTED)
2281
+ * - block.footer.consumed_compute_units (uint64): Total compute units consumed by all transactions
2282
+ * - block.footer.consumed_state_units (uint32): Total state units consumed by all transactions
2283
+ * - block.footer.attestor_payment (uint64): Payment to attestors for block validation
2284
+ *
2285
+ * Consensus status:
2286
+ * - block.consensus_status (int32): Consensus status (always CONSENSUS_STATUS_INCLUDED for persisted blocks)
2287
+ *
2288
+ * Available CEL functions:
2289
+ * - has(field): Check if optional field exists
2290
+ * - uint(value): Convert to uint type
2291
+ * - int(value): Convert to int type
2292
+ * - bytes(value): Convert to bytes type
2293
+ * - timestamp(value): Convert to timestamp type
2294
+ * - duration(value): Convert to duration type
2295
+ *
2296
+ * Available filter parameters (accessible via params.* in expressions):
2297
+ * - params.slot (uint64): Slot number for filtering
2298
+ * - params.u64 (uint64): Generic uint64 parameter
2299
+ * - params.producer (bytes): Producer public key for filtering
2300
+ *
2301
+ * Filter examples:
2302
+ *
2303
+ * 1. Filter by specific slot:
2304
+ * filter.expression = "block.header.slot == uint(1234)"
2305
+ *
2306
+ * 2. Filter by slot range:
2307
+ * filter.expression = "block.header.slot >= uint(1000) && block.header.slot <= uint(2000)"
2308
+ *
2309
+ * 3. Filter by slot using parameter:
2310
+ * filter.expression = "block.header.slot == params.slot"
2311
+ * filter.params["slot"].uint_value = 1234
2312
+ *
2313
+ * 4. Filter by block version:
2314
+ * filter.expression = "block.header.version == uint(1)"
2315
+ *
2316
+ * 5. Filter by producer (using parameter):
2317
+ * filter.expression = "block.header.producer.value == params.producer"
2318
+ * filter.params["producer"].bytes_value = <32-byte producer pubkey>
2319
+ *
2320
+ * 6. Filter by max compute units:
2321
+ * filter.expression = "block.header.max_compute_units > uint(1000000)"
2322
+ * filter.expression = "block.header.max_compute_units >= uint(0) && block.header.max_compute_units <= uint(10000000)"
2323
+ *
2324
+ * 7. Filter by max state units:
2325
+ * filter.expression = "block.header.max_state_units > uint(0)"
2326
+ *
2327
+ * 8. Filter by price:
2328
+ * filter.expression = "block.header.price >= uint(0)"
2329
+ * filter.expression = "block.header.price > uint(1000)"
2330
+ *
2331
+ * 9. Filter by start_slot:
2332
+ * filter.expression = "block.header.start_slot <= uint(5000)"
2333
+ *
2334
+ * 10. Filter by expiry_after:
2335
+ * filter.expression = "block.header.expiry_after > uint(0)"
2336
+ *
2337
+ * 11. Filter by max_block_size:
2338
+ * filter.expression = "block.header.max_block_size >= uint(1000000)"
2339
+ *
2340
+ * 12. Filter by execution status:
2341
+ * filter.expression = "block.footer.status == int(2)" // EXECUTION_STATUS_EXECUTED
2342
+ *
2343
+ * 13. Filter by consumed compute units:
2344
+ * filter.expression = "block.footer.consumed_compute_units > uint(0)"
2345
+ * filter.expression = "block.footer.consumed_compute_units >= uint(100) && block.footer.consumed_compute_units <= uint(1000000)"
2346
+ *
2347
+ * 14. Filter by consumed state units:
2348
+ * filter.expression = "block.footer.consumed_state_units >= uint(0)"
2349
+ * filter.expression = "block.footer.consumed_state_units > uint(10)"
2350
+ *
2351
+ * 15. Check for footer signature existence:
2352
+ * filter.expression = "has(block.footer.signature)"
2353
+ *
2354
+ * 16. Check for footer existence:
2355
+ * filter.expression = "has(block.footer)"
2356
+ *
2357
+ * 17. Check for producer existence:
2358
+ * filter.expression = "has(block.header.producer)"
2359
+ *
2360
+ * 18. Check for block hash existence:
2361
+ * filter.expression = "has(block.header.block_hash)"
2362
+ *
2363
+ * 19. Check for header signature existence:
2364
+ * filter.expression = "has(block.header.header_signature)"
2365
+ *
2366
+ * 20. Check for expiry timestamp existence:
2367
+ * filter.expression = "has(block.header.expiry_timestamp)"
2368
+ *
2369
+ * 21. Check for block time existence:
2370
+ * filter.expression = "has(block.header.block_time)"
2371
+ *
2372
+ * 22. Combine multiple header conditions with AND:
2373
+ * filter.expression = "block.header.slot >= uint(1000) && block.header.max_compute_units > uint(1000000)"
2374
+ *
2375
+ * 23. Combine multiple footer conditions with AND:
2376
+ * filter.expression = "block.footer.consumed_compute_units > uint(0) && block.footer.consumed_state_units > uint(0)"
2377
+ *
2378
+ * 24. Combine header and footer conditions:
2379
+ * filter.expression = "block.header.slot >= uint(1000) && block.footer.consumed_compute_units > uint(100000)"
2380
+ *
2381
+ * 25. Combine multiple conditions with OR:
2382
+ * filter.expression = "block.header.slot == uint(100) || block.header.slot == uint(200)"
2383
+ * filter.expression = "block.footer.consumed_compute_units > uint(1000000) || block.footer.consumed_state_units > uint(10000)"
2384
+ *
2385
+ * 26. Complex combined filters:
2386
+ * filter.expression = "(block.header.slot >= uint(1000) && block.header.slot <= uint(2000)) || block.footer.consumed_compute_units > uint(5000000)"
2387
+ *
2388
+ * 27. Use inequality operators:
2389
+ * filter.expression = "block.header.max_compute_units < uint(10000000)"
2390
+ * filter.expression = "block.header.max_compute_units <= uint(10000000)"
2391
+ * filter.expression = "block.header.price >= uint(100)"
2392
+ * filter.expression = "block.footer.consumed_compute_units != uint(0)"
2393
+ *
2394
+ * 28. Combine has() with value checks:
2395
+ * filter.expression = "has(block.header.producer) && block.header.producer.value == params.producer"
2396
+ * filter.params["producer"].bytes_value = <32-byte producer pubkey>
2397
+ *
2398
+ * 29. Filter by multiple resource limits:
2399
+ * filter.expression = "block.header.max_compute_units > uint(1000000) && block.header.max_state_units > uint(1000) && block.header.max_block_size > uint(1000000)"
2400
+ *
2401
+ * 30. Filter blocks with high resource consumption:
2402
+ * filter.expression = "block.footer.consumed_compute_units > uint(block.header.max_compute_units / 2)"
2403
+ *
2404
+ * Note: All filters are pushed down to SQL for optimal performance where possible.
2405
+ * When SQL pushdown is not possible, filters are evaluated in-memory on fetched results.
2406
+ *
2407
+ * @generated from message thru.services.v1.ListBlocksRequest
2408
+ */
2409
+ type ListBlocksRequest = Message<"thru.services.v1.ListBlocksRequest"> & {
2410
+ /**
2411
+ * CEL filter expression (OPTIONAL). See message documentation for examples.
2412
+ *
2413
+ * @generated from field: optional thru.common.v1.Filter filter = 1;
2414
+ */
2415
+ filter?: Filter | undefined;
2416
+ /**
2417
+ * @generated from field: optional thru.common.v1.PageRequest page = 2;
2418
+ */
2419
+ page?: PageRequest | undefined;
2420
+ /**
2421
+ * @generated from field: optional thru.core.v1.BlockView view = 3;
2422
+ */
2423
+ view?: BlockView | undefined;
2424
+ /**
2425
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 4;
2426
+ */
2427
+ minConsensus?: ConsensusStatus | undefined;
2428
+ };
2429
+ /**
2430
+ * Describes the message thru.services.v1.ListBlocksRequest.
2431
+ * Use `create(ListBlocksRequestSchema)` to create a new message.
2432
+ */
2433
+ declare const ListBlocksRequestSchema: GenMessage<ListBlocksRequest>;
2434
+ /**
2435
+ * ListBlocksResponse returns a page of blocks.
2436
+ *
2437
+ * @generated from message thru.services.v1.ListBlocksResponse
2438
+ */
2439
+ type ListBlocksResponse = Message<"thru.services.v1.ListBlocksResponse"> & {
2440
+ /**
2441
+ * @generated from field: repeated thru.core.v1.Block blocks = 1;
2442
+ */
2443
+ blocks: Block[];
2444
+ /**
2445
+ * @generated from field: optional thru.common.v1.PageResponse page = 2;
2446
+ */
2447
+ page?: PageResponse | undefined;
2448
+ };
2449
+ /**
2450
+ * Describes the message thru.services.v1.ListBlocksResponse.
2451
+ * Use `create(ListBlocksResponseSchema)` to create a new message.
2452
+ */
2453
+ declare const ListBlocksResponseSchema: GenMessage<ListBlocksResponse>;
2454
+ /**
2455
+ * ListTransactionsForAccountRequest lists transactions involving a specific account.
2456
+ *
2457
+ * This RPC returns all transactions where the specified account appears in any
2458
+ * capacity (fee payer, signer, or affected account). Results can be filtered
2459
+ * using CEL expressions on transaction properties.
2460
+ *
2461
+ * ## Available Filter Fields
2462
+ *
2463
+ * - `transaction.slot` (uint64): Block slot number
2464
+ * - `transaction.block_offset` (uint32): Position within block
2465
+ * - `transaction.signature.value` (bytes): Transaction signature
2466
+ *
2467
+ * Header fields (in-memory evaluation only, not SQL pushdown):
2468
+ * - `transaction.header.version` (uint32): Transaction format version
2469
+ * - `transaction.header.fee` (uint64): Transaction fee
2470
+ * - `transaction.header.nonce` (uint64): Sender account nonce
2471
+ * - `transaction.header.start_slot` (uint64): Earliest slot for execution
2472
+ * - `transaction.header.expiry_after` (uint32): Expiry duration in slots
2473
+ * - `transaction.header.requested_compute_units` (uint64): Requested compute units
2474
+ * - `transaction.header.requested_memory_units` (uint32): Requested memory units
2475
+ * - `transaction.header.requested_state_units` (uint32): Requested state units
2476
+ * - `transaction.header.fee_payer_pubkey.value` (bytes): Fee payer public key
2477
+ * - `transaction.header.program_pubkey.value` (bytes): Program public key
2478
+ * - `transaction.header.fee_payer_signature.value` (bytes): Fee payer signature
2479
+ *
2480
+ * Execution result fields:
2481
+ * - `transaction.execution_result.vm_error` (TransactionVmError enum): VM execution status (0 = success)
2482
+ * - `transaction.execution_result.user_error_code` (uint64): User-defined error code
2483
+ * - `transaction.execution_result.execution_result` (uint64): Alias for user_error_code
2484
+ * - `transaction.execution_result.consumed_compute_units` (uint64): Compute units used
2485
+ * - `transaction.execution_result.consumed_memory_units` (uint32): Memory units used
2486
+ * - `transaction.execution_result.consumed_state_units` (uint32): State units used
2487
+ * - `transaction.execution_result.events_count` (uint32): Number of events emitted
2488
+ * - `transaction.execution_result.events_size` (uint32): Total size of event data in bytes
2489
+ *
2490
+ * ## Filter Examples
2491
+ *
2492
+ * ### Filter by slot
2493
+ * ```
2494
+ * filter {
2495
+ * expression: "transaction.slot == params.slot"
2496
+ * params {
2497
+ * key: "slot"
2498
+ * value { int_value: 12345 }
2499
+ * }
2500
+ * }
2501
+ * ```
2502
+ *
2503
+ * ### Filter by block offset
2504
+ * ```
2505
+ * filter {
2506
+ * expression: "transaction.block_offset == uint(5)"
2507
+ * }
2508
+ * ```
2509
+ *
2510
+ * ### Filter by compute units (high usage)
2511
+ * ```
2512
+ * filter {
2513
+ * expression: "transaction.execution_result.consumed_compute_units >= uint(1000000)"
2514
+ * }
2515
+ * ```
2516
+ *
2517
+ * ### Filter by memory units
2518
+ * ```
2519
+ * filter {
2520
+ * expression: "transaction.execution_result.consumed_memory_units > uint(0)"
2521
+ * }
2522
+ * ```
2523
+ *
2524
+ * ### Filter by state units
2525
+ * ```
2526
+ * filter {
2527
+ * expression: "transaction.execution_result.consumed_state_units > uint(0)"
2528
+ * }
2529
+ * ```
2530
+ *
2531
+ * ### Filter successful transactions (by error code)
2532
+ * ```
2533
+ * filter {
2534
+ * expression: "transaction.execution_result.user_error_code == uint(0)"
2535
+ * }
2536
+ * ```
2537
+ *
2538
+ * ### Filter by VM execution status
2539
+ * ```
2540
+ * filter {
2541
+ * expression: "transaction.execution_result.vm_error == int(0)"
2542
+ * }
2543
+ * ```
2544
+ *
2545
+ * ### Filter transactions with events
2546
+ * ```
2547
+ * filter {
2548
+ * expression: "transaction.execution_result.events_count > uint(0)"
2549
+ * }
2550
+ * ```
2551
+ *
2552
+ * ### Filter by event data size
2553
+ * ```
2554
+ * filter {
2555
+ * expression: "transaction.execution_result.events_size > uint(0)"
2556
+ * }
2557
+ * ```
2558
+ *
2559
+ * ### Check for optional fields using has()
2560
+ * ```
2561
+ * filter {
2562
+ * expression: "has(transaction.execution_result)"
2563
+ * }
2564
+ * ```
2565
+ *
2566
+ * ### Combined filters with AND/OR
2567
+ * ```
2568
+ * filter {
2569
+ * expression: "transaction.execution_result.consumed_compute_units >= uint(1000000) && transaction.execution_result.user_error_code == uint(0)"
2570
+ * }
2571
+ * ```
2572
+ *
2573
+ * ### Using params for dynamic values
2574
+ * ```
2575
+ * filter {
2576
+ * expression: "transaction.execution_result.consumed_compute_units >= params.u64"
2577
+ * params {
2578
+ * key: "u64"
2579
+ * value { int_value: 500000 }
2580
+ * }
2581
+ * }
2582
+ * ```
2583
+ *
2584
+ * ## Available Functions
2585
+ *
2586
+ * - `has(field)`: Check if optional field is present
2587
+ * - `uint(value)`: Convert to unsigned integer
2588
+ * - `int(value)`: Convert to signed integer
2589
+ * - `string(value)`: Convert to string type
2590
+ * - `bytes(value)`: Convert to bytes type
2591
+ *
2592
+ * ## Available Filter Parameters
2593
+ *
2594
+ * - `params.slot` (uint64): Slot number for filtering
2595
+ * - `params.u64` (uint64): Generic uint64 parameter
2596
+ * - `params.pubkey` (Pubkey): Public key parameter for filtering
2597
+ *
2598
+ * ## Performance Notes
2599
+ *
2600
+ * Filters on `transaction.slot`, `transaction.block_offset`, and
2601
+ * `transaction.execution_result.*` fields are optimized with SQL pushdown
2602
+ * for better performance. Complex expressions may fall back to in-memory evaluation.
2603
+ *
2604
+ * @generated from message thru.services.v1.ListTransactionsForAccountRequest
2605
+ */
2606
+ type ListTransactionsForAccountRequest = Message<"thru.services.v1.ListTransactionsForAccountRequest"> & {
2607
+ /**
2608
+ * @generated from field: thru.common.v1.Pubkey account = 1;
2609
+ */
2610
+ account?: Pubkey | undefined;
2611
+ /**
2612
+ * @generated from field: optional thru.common.v1.PageRequest page = 2;
2613
+ */
2614
+ page?: PageRequest | undefined;
2615
+ /**
2616
+ * Optional CEL filter applied after the account constraint.
2617
+ *
2618
+ * @generated from field: optional thru.common.v1.Filter filter = 3;
2619
+ */
2620
+ filter?: Filter | undefined;
2621
+ };
2622
+ /**
2623
+ * Describes the message thru.services.v1.ListTransactionsForAccountRequest.
2624
+ * Use `create(ListTransactionsForAccountRequestSchema)` to create a new message.
2625
+ */
2626
+ declare const ListTransactionsForAccountRequestSchema: GenMessage<ListTransactionsForAccountRequest>;
2627
+ /**
2628
+ * ListTransactionsForAccountResponse contains transaction data.
2629
+ *
2630
+ *
2631
+ * @generated from message thru.services.v1.ListTransactionsForAccountResponse
2632
+ */
2633
+ type ListTransactionsForAccountResponse = Message<"thru.services.v1.ListTransactionsForAccountResponse"> & {
2634
+ /**
2635
+ * @generated from field: optional thru.common.v1.PageResponse page = 1;
2636
+ */
2637
+ page?: PageResponse | undefined;
2638
+ /**
2639
+ * @generated from field: repeated thru.core.v1.Transaction transactions = 2;
2640
+ */
2641
+ transactions: Transaction[];
2642
+ };
2643
+ /**
2644
+ * Describes the message thru.services.v1.ListTransactionsForAccountResponse.
2645
+ * Use `create(ListTransactionsForAccountResponseSchema)` to create a new message.
2646
+ */
2647
+ declare const ListTransactionsForAccountResponseSchema: GenMessage<ListTransactionsForAccountResponse>;
2648
+ /**
2649
+ * GetVersionRequest fetches component version strings.
2650
+ *
2651
+ * @generated from message thru.services.v1.GetVersionRequest
2652
+ */
2653
+ type GetVersionRequest = Message<"thru.services.v1.GetVersionRequest"> & {};
2654
+ /**
2655
+ * Describes the message thru.services.v1.GetVersionRequest.
2656
+ * Use `create(GetVersionRequestSchema)` to create a new message.
2657
+ */
2658
+ declare const GetVersionRequestSchema: GenMessage<GetVersionRequest>;
2659
+ /**
2660
+ * GetVersionResponse returns version information per component.
2661
+ *
2662
+ * @generated from message thru.services.v1.GetVersionResponse
2663
+ */
2664
+ type GetVersionResponse = Message<"thru.services.v1.GetVersionResponse"> & {
2665
+ /**
2666
+ * @generated from field: map<string, string> versions = 1;
2667
+ */
2668
+ versions: {
2669
+ [key: string]: string;
2670
+ };
2671
+ };
2672
+ /**
2673
+ * Describes the message thru.services.v1.GetVersionResponse.
2674
+ * Use `create(GetVersionResponseSchema)` to create a new message.
2675
+ */
2676
+ declare const GetVersionResponseSchema: GenMessage<GetVersionResponse>;
2677
+ /**
2678
+ * GetEventRequest fetches an event by identifier.
2679
+ *
2680
+ * @generated from message thru.services.v1.GetEventRequest
2681
+ */
2682
+ type GetEventRequest = Message<"thru.services.v1.GetEventRequest"> & {
2683
+ /**
2684
+ * @generated from field: string event_id = 1;
2685
+ */
2686
+ eventId: string;
2687
+ /**
2688
+ * @generated from field: optional thru.common.v1.VersionContext version_context = 2;
2689
+ */
2690
+ versionContext?: VersionContext | undefined;
2691
+ };
2692
+ /**
2693
+ * Describes the message thru.services.v1.GetEventRequest.
2694
+ * Use `create(GetEventRequestSchema)` to create a new message.
2695
+ */
2696
+ declare const GetEventRequestSchema: GenMessage<GetEventRequest>;
2697
+ /**
2698
+ * Event represents a transaction event emitted by the chain.
2699
+ *
2700
+ * @generated from message thru.services.v1.Event
2701
+ */
2702
+ type Event = Message<"thru.services.v1.Event"> & {
2703
+ /**
2704
+ * @generated from field: string event_id = 1;
2705
+ */
2706
+ eventId: string;
2707
+ /**
2708
+ * @generated from field: thru.common.v1.Signature transaction_signature = 2;
2709
+ */
2710
+ transactionSignature?: Signature | undefined;
2711
+ /**
2712
+ * @generated from field: optional thru.common.v1.Pubkey program = 3;
2713
+ */
2714
+ program?: Pubkey | undefined;
2715
+ /**
2716
+ * @generated from field: optional bytes payload = 4;
2717
+ */
2718
+ payload?: Uint8Array | undefined;
2719
+ /**
2720
+ * @generated from field: optional uint64 slot = 5;
2721
+ */
2722
+ slot?: bigint | undefined;
2723
+ /**
2724
+ * @generated from field: optional uint32 call_idx = 6;
2725
+ */
2726
+ callIdx?: number | undefined;
2727
+ /**
2728
+ * @generated from field: optional uint32 program_idx = 7;
2729
+ */
2730
+ programIdx?: number | undefined;
2731
+ /**
2732
+ * @generated from field: optional uint32 payload_size = 8;
2733
+ */
2734
+ payloadSize?: number | undefined;
2735
+ /**
2736
+ * @generated from field: optional uint32 block_offset = 9;
2737
+ */
2738
+ blockOffset?: number | undefined;
2739
+ /**
2740
+ * @generated from field: optional google.protobuf.Timestamp timestamp = 10;
2741
+ */
2742
+ timestamp?: Timestamp | undefined;
2743
+ /**
2744
+ * @generated from field: optional thru.common.v1.Pubkey fee_payer = 11;
2745
+ */
2746
+ feePayer?: Pubkey | undefined;
2747
+ };
2748
+ /**
2749
+ * Describes the message thru.services.v1.Event.
2750
+ * Use `create(EventSchema)` to create a new message.
2751
+ */
2752
+ declare const EventSchema: GenMessage<Event>;
2753
+ /**
2754
+ * ListEventsRequest lists events with CEL filtering and pagination.
2755
+ *
2756
+ * Returns events ordered from most recent to older (slot DESC, block_offset DESC, call_idx DESC).
2757
+ * Supports filtering on event metadata and payload using CEL expressions with specialized byte functions.
2758
+ *
2759
+ * Available fields for filtering:
2760
+ * - event.event_id (string): Unique event identifier (format: "ts{slot}_{block_offset}_{call_idx}")
2761
+ * - event.transaction_signature.value (bytes): Transaction signature that emitted the event
2762
+ * - event.slot (uint64): Block slot number where event was emitted
2763
+ * - event.call_idx (uint32): Instruction call index within transaction
2764
+ * - event.block_offset (uint32): Transaction's position within the block
2765
+ * - event.timestamp (google.protobuf.Timestamp): Event emission timestamp
2766
+ * - event.program.value (bytes): Program public key that emitted the event
2767
+ * - event.program_idx (uint32): Program index within transaction
2768
+ * - event.payload (bytes): Event payload data
2769
+ * - event.payload_size (uint32): Size of event payload in bytes
2770
+ * - event.fee_payer.value (bytes): Fee payer's public key for the transaction
2771
+ *
2772
+ * Available CEL functions:
2773
+ * - has(field): Check if optional field exists
2774
+ * - startsWith(string, prefix): Check if string starts with prefix (string fields only)
2775
+ * - first1Byte(bytes): Extract first byte as uint8
2776
+ * - first4Bytes(bytes): Extract first 4 bytes as uint32 (little-endian)
2777
+ * - first8Bytes(bytes): Extract first 8 bytes as uint64 (little-endian)
2778
+ * - bytesPrefix(bytes, prefix): Check if bytes start with prefix
2779
+ * - uint(value): Convert to uint type
2780
+ * - int(value): Convert to int type
2781
+ * - string(value): Convert to string type
2782
+ * - bytes(value): Convert to bytes type
2783
+ * - double(value): Convert to double type
2784
+ * - timestamp(value): Convert to timestamp type
2785
+ * - duration(value): Convert to duration type
2786
+ *
2787
+ * Available filter parameters (accessible via params.* in expressions):
2788
+ * - params.slot (uint64): Slot number for filtering
2789
+ * - params.u64 (uint64): Generic uint64 parameter for payload matching
2790
+ * - params.signature (Signature): Transaction signature for filtering
2791
+ * - params.signature.value (bytes): Transaction signature bytes for filtering
2792
+ * - params.address (Pubkey): Program address for filtering
2793
+ * - params.address.value (bytes): Program address bytes for filtering
2794
+ * - params.prefix (bytes): Byte prefix for payload filtering
2795
+ * - params.timestamp (Timestamp): Timestamp parameter for filtering
2796
+ *
2797
+ * Filter examples:
2798
+ *
2799
+ * 1. Filter by slot:
2800
+ * filter.expression = "event.slot > uint(1000)"
2801
+ * filter.expression = "event.slot >= uint(100) && event.slot <= uint(200)"
2802
+ *
2803
+ * 2. Filter by slot using parameter:
2804
+ * filter.expression = "event.slot >= params.slot"
2805
+ * filter.params["slot"].int_value = 1234
2806
+ *
2807
+ * 3. Filter by call index:
2808
+ * filter.expression = "event.call_idx == uint(0)" // First instruction
2809
+ * filter.expression = "event.call_idx > uint(0)" // Nested instructions
2810
+ *
2811
+ * 4. Filter by block offset:
2812
+ * filter.expression = "event.block_offset >= uint(0)"
2813
+ * filter.expression = "event.block_offset == uint(5)"
2814
+ *
2815
+ * 5. Filter by transaction signature (using parameter):
2816
+ * filter.expression = "event.transaction_signature.value == params.signature"
2817
+ * filter.params["signature"].signature_value.value = <64-byte signature>
2818
+ *
2819
+ * 6. Filter by program address (using parameter):
2820
+ * filter.expression = "has(event.program) && event.program.value == params.address"
2821
+ * filter.params["address"].pubkey_value.value = <32-byte program pubkey>
2822
+ *
2823
+ * 7. Filter by event ID prefix using startsWith:
2824
+ * filter.expression = "event.event_id.startsWith(\"ts\")"
2825
+ * filter.expression = "event.event_id.startsWith(\"ts1000_\")"
2826
+ *
2827
+ * 8. Check for payload existence:
2828
+ * filter.expression = "has(event.payload)"
2829
+ *
2830
+ * 9. Check for program existence:
2831
+ * filter.expression = "has(event.program)"
2832
+ *
2833
+ * 10. Filter by payload first byte (event type):
2834
+ * filter.expression = "has(event.payload) && first1Byte(event.payload) == uint(1)" // MESSAGE events
2835
+ * filter.expression = "has(event.payload) && first1Byte(event.payload) == uint(2)" // Other type
2836
+ *
2837
+ * 11. Filter by payload first 4 bytes (uint32 event type):
2838
+ * filter.expression = "has(event.payload) && first4Bytes(event.payload) == uint(2)" // COUNTER events
2839
+ * filter.expression = "has(event.payload) && first4Bytes(event.payload) == params.u64"
2840
+ * filter.params["u64"].int_value = 2
2841
+ *
2842
+ * 12. Filter by payload first 8 bytes (uint64 event type):
2843
+ * filter.expression = "has(event.payload) && first8Bytes(event.payload) == uint(6)" // PATTERN events
2844
+ * filter.expression = "has(event.payload) && first8Bytes(event.payload) == params.u64"
2845
+ * filter.params["u64"].int_value = 6
2846
+ *
2847
+ * 13. Filter by payload byte prefix:
2848
+ * filter.expression = "bytesPrefix(event.payload, params.prefix)"
2849
+ * filter.params["prefix"].bytes_value = <byte prefix to match>
2850
+ *
2851
+ * 14. Combine slot and call_idx filters:
2852
+ * filter.expression = "event.slot > uint(1000) && event.call_idx == uint(0)"
2853
+ *
2854
+ * 15. Combine slot, call_idx, and payload existence:
2855
+ * filter.expression = "event.slot > uint(1000) && event.call_idx == uint(0) && has(event.payload)"
2856
+ *
2857
+ * 16. Filter by program and payload type:
2858
+ * filter.expression = "has(event.program) && event.program.value == params.address && first1Byte(event.payload) == uint(1)"
2859
+ * filter.params["address"].pubkey_value.value = <32-byte program pubkey>
2860
+ *
2861
+ * 17. Filter MESSAGE events (type 1) with specific program:
2862
+ * filter.expression = "has(event.payload) && first1Byte(event.payload) == uint(1) && event.program.value == params.address"
2863
+ * filter.params["address"].pubkey_value.value = <32-byte program pubkey>
2864
+ *
2865
+ * 18. Filter COUNTER events (type 2) in slot range:
2866
+ * filter.expression = "has(event.payload) && first4Bytes(event.payload) == uint(2) && event.slot >= uint(100) && event.slot <= uint(200)"
2867
+ *
2868
+ * 19. Filter PATTERN events (type 6) with payload prefix:
2869
+ * filter.expression = "has(event.payload) && first8Bytes(event.payload) == uint(6) && bytesPrefix(event.payload, params.prefix)"
2870
+ * filter.params["prefix"].bytes_value = <pattern prefix bytes>
2871
+ *
2872
+ * 20. Complex combined filter:
2873
+ * filter.expression = "(event.slot > uint(1000) && event.call_idx == uint(0)) || first1Byte(event.payload) == uint(1)"
2874
+ *
2875
+ * 21. Filter events from specific transaction:
2876
+ * filter.expression = "event.transaction_signature.value == params.signature && has(event.payload)"
2877
+ * filter.params["signature"].signature_value.value = <64-byte signature>
2878
+ *
2879
+ * 22. Filter by multiple payload type options:
2880
+ * filter.expression = "has(event.payload) && (first1Byte(event.payload) == uint(1) || first1Byte(event.payload) == uint(2))"
2881
+ *
2882
+ * 23. Filter nested instruction events:
2883
+ * filter.expression = "event.call_idx > uint(0) && has(event.program)"
2884
+ *
2885
+ * 24. Filter first instruction events only:
2886
+ * filter.expression = "event.call_idx == uint(0)"
2887
+ *
2888
+ * 25. Filter events with payload longer than specific size (using bytesPrefix with empty prefix):
2889
+ * filter.expression = "has(event.payload)"
2890
+ *
2891
+ * 26. Combine has() checks:
2892
+ * filter.expression = "has(event.program) && has(event.payload) && has(event.timestamp)"
2893
+ *
2894
+ * 27. Use inequality operators:
2895
+ * filter.expression = "event.slot < uint(10000)"
2896
+ * filter.expression = "event.slot <= uint(10000)"
2897
+ * filter.expression = "event.call_idx >= uint(0)"
2898
+ * filter.expression = "event.block_offset != uint(0)"
2899
+ *
2900
+ * 28. Filter by timestamp (if available):
2901
+ * filter.expression = "has(event.timestamp)"
2902
+ *
2903
+ * 29. Match specific event ID pattern:
2904
+ * filter.expression = "event.event_id.startsWith(\"ts1234_0_\")"
2905
+ *
2906
+ * 30. Complex payload and metadata filter:
2907
+ * filter.expression = "event.slot >= params.slot && has(event.payload) && first8Bytes(event.payload) == params.u64 && event.program.value == params.address"
2908
+ * filter.params["slot"].int_value = 1000
2909
+ * filter.params["u64"].int_value = 6
2910
+ * filter.params["address"].pubkey_value.value = <32-byte program pubkey>
2911
+ *
2912
+ * Note: Filters on slot, call_idx, block_offset, transaction_signature, and program are pushed down to SQL
2913
+ * for optimal performance. Payload filters (first1Byte, first4Bytes, first8Bytes, bytesPrefix) are evaluated
2914
+ * in-memory on fetched results.
2915
+ *
2916
+ * @generated from message thru.services.v1.ListEventsRequest
2917
+ */
2918
+ type ListEventsRequest = Message<"thru.services.v1.ListEventsRequest"> & {
2919
+ /**
2920
+ * CEL filter expression (OPTIONAL). See message documentation for examples.
2921
+ *
2922
+ * @generated from field: optional thru.common.v1.Filter filter = 1;
2923
+ */
2924
+ filter?: Filter | undefined;
2925
+ /**
2926
+ * @generated from field: optional thru.common.v1.PageRequest page = 2;
2927
+ */
2928
+ page?: PageRequest | undefined;
2929
+ /**
2930
+ * @generated from field: optional thru.common.v1.VersionContext version_context = 3;
2931
+ */
2932
+ versionContext?: VersionContext | undefined;
2933
+ /**
2934
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 4;
2935
+ */
2936
+ minConsensus?: ConsensusStatus | undefined;
2937
+ };
2938
+ /**
2939
+ * Describes the message thru.services.v1.ListEventsRequest.
2940
+ * Use `create(ListEventsRequestSchema)` to create a new message.
2941
+ */
2942
+ declare const ListEventsRequestSchema: GenMessage<ListEventsRequest>;
2943
+ /**
2944
+ * ListEventsResponse returns paginated events.
2945
+ *
2946
+ * @generated from message thru.services.v1.ListEventsResponse
2947
+ */
2948
+ type ListEventsResponse = Message<"thru.services.v1.ListEventsResponse"> & {
2949
+ /**
2950
+ * @generated from field: repeated thru.services.v1.Event events = 1;
2951
+ */
2952
+ events: Event[];
2953
+ /**
2954
+ * @generated from field: optional thru.common.v1.PageResponse page = 2;
2955
+ */
2956
+ page?: PageResponse | undefined;
2957
+ };
2958
+ /**
2959
+ * Describes the message thru.services.v1.ListEventsResponse.
2960
+ * Use `create(ListEventsResponseSchema)` to create a new message.
2961
+ */
2962
+ declare const ListEventsResponseSchema: GenMessage<ListEventsResponse>;
2963
+ /**
2964
+ * ListTransactionsRequest lists executed transactions with CEL filtering and pagination.
2965
+ *
2966
+ * Returns transactions ordered from most recent to older (slot DESC, block_offset DESC).
2967
+ * Supports filtering on transaction metadata and execution results using CEL expressions.
2968
+ *
2969
+ * Available fields for filtering:
2970
+ * - transaction.slot (uint64): Block slot number where transaction was executed
2971
+ * - transaction.block_offset (uint32): Transaction's position within the block
2972
+ * - transaction.signature.value (bytes): Transaction signature
2973
+ *
2974
+ * Header fields (in-memory evaluation only, not SQL pushdown):
2975
+ * - transaction.header.version (uint32): Transaction format version
2976
+ * - transaction.header.fee (uint64): Transaction fee
2977
+ * - transaction.header.nonce (uint64): Sender account nonce
2978
+ * - transaction.header.start_slot (uint64): Earliest slot for execution
2979
+ * - transaction.header.expiry_after (uint32): Expiry duration in slots
2980
+ * - transaction.header.requested_compute_units (uint64): Requested compute units
2981
+ * - transaction.header.requested_memory_units (uint32): Requested memory units
2982
+ * - transaction.header.requested_state_units (uint32): Requested state units
2983
+ * - transaction.header.fee_payer_pubkey.value (bytes): Fee payer public key
2984
+ * - transaction.header.program_pubkey.value (bytes): Program public key
2985
+ * - transaction.header.fee_payer_signature.value (bytes): Fee payer signature
2986
+ *
2987
+ * Execution result fields:
2988
+ * - transaction.execution_result.vm_error (TransactionVmError enum): VM error code (0 = success)
2989
+ * - transaction.execution_result.user_error_code (uint64): User-defined error code
2990
+ * - transaction.execution_result.execution_result (uint64): Alias for user_error_code
2991
+ * - transaction.execution_result.consumed_compute_units (uint64): Compute units consumed
2992
+ * - transaction.execution_result.consumed_memory_units (uint32): Memory units consumed
2993
+ * - transaction.execution_result.consumed_state_units (uint32): State units consumed
2994
+ * - transaction.execution_result.events_count (uint32): Number of events emitted
2995
+ * - transaction.execution_result.events_size (uint32): Total size of events in bytes
2996
+ *
2997
+ * Available CEL functions:
2998
+ * - has(field): Check if optional field exists
2999
+ * - uint(value): Convert to uint type
3000
+ * - int(value): Convert to int type
3001
+ * - string(value): Convert to string type
3002
+ * - bytes(value): Convert to bytes type
3003
+ *
3004
+ * Available filter parameters (accessible via params.* in expressions):
3005
+ * - params.slot (uint64): Slot number for filtering
3006
+ * - params.u64 (uint64): Generic uint64 parameter
3007
+ * - params.pubkey (Pubkey): Public key parameter for filtering
3008
+ *
3009
+ * Filter examples:
3010
+ *
3011
+ * 1. Filter by slot range:
3012
+ * filter.expression = "transaction.slot >= uint(1000) && transaction.slot <= uint(2000)"
3013
+ *
3014
+ * 2. Filter by successful transactions (no error):
3015
+ * filter.expression = "transaction.execution_result.user_error_code == uint(0)"
3016
+ * filter.expression = "transaction.execution_result.vm_error == int(0)"
3017
+ *
3018
+ * 3. Filter by specific VM error:
3019
+ * filter.expression = "transaction.execution_result.vm_error == int(2)" // VM_REVERT
3020
+ * filter.expression = "transaction.execution_result.vm_error == int(4)" // NONCE_TOO_LOW
3021
+ * filter.expression = "transaction.execution_result.vm_error == int(5)" // NONCE_TOO_HIGH
3022
+ *
3023
+ * 4. Filter by resource usage:
3024
+ * filter.expression = "transaction.execution_result.consumed_compute_units > uint(1000)"
3025
+ * filter.expression = "transaction.execution_result.consumed_memory_units > uint(0)"
3026
+ * filter.expression = "transaction.execution_result.consumed_state_units >= uint(0)"
3027
+ *
3028
+ * 5. Filter by compute units range:
3029
+ * filter.expression = "transaction.execution_result.consumed_compute_units >= uint(0) && transaction.execution_result.consumed_compute_units < uint(1000000)"
3030
+ *
3031
+ * 6. Filter by events count:
3032
+ * filter.expression = "transaction.execution_result.events_count == uint(0)" // No events (transfers)
3033
+ * filter.expression = "transaction.execution_result.events_count > uint(0)" // Has events
3034
+ * filter.expression = "transaction.execution_result.events_count == uint(1)" // Exactly 1 event
3035
+ *
3036
+ * 7. Filter by events size:
3037
+ * filter.expression = "transaction.execution_result.events_size == uint(0)" // No events
3038
+ * filter.expression = "transaction.execution_result.events_size > uint(0)" // Has events
3039
+ * filter.expression = "transaction.execution_result.events_size >= uint(100)" // Large events
3040
+ * filter.expression = "transaction.execution_result.events_size >= uint(50) && transaction.execution_result.events_size <= uint(200)"
3041
+ *
3042
+ * 8. Filter by block offset:
3043
+ * filter.expression = "transaction.block_offset >= uint(0)"
3044
+ * filter.expression = "transaction.block_offset == uint(5)"
3045
+ *
3046
+ * 9. Combine multiple conditions with AND:
3047
+ * filter.expression = "transaction.execution_result.user_error_code == uint(0) && transaction.execution_result.consumed_compute_units > uint(0)"
3048
+ *
3049
+ * 10. Combine multiple conditions with OR:
3050
+ * filter.expression = "transaction.execution_result.user_error_code == uint(0) || transaction.execution_result.user_error_code != uint(0)"
3051
+ * filter.expression = "transaction.execution_result.vm_error == int(2) || transaction.execution_result.vm_error == int(4)"
3052
+ *
3053
+ * 11. Complex combined filters:
3054
+ * filter.expression = "(transaction.slot >= uint(0) && transaction.execution_result.user_error_code == uint(0)) || transaction.execution_result.consumed_compute_units > uint(100000)"
3055
+ *
3056
+ * 12. Check for field existence:
3057
+ * filter.expression = "has(transaction.execution_result)"
3058
+ *
3059
+ * 13. Use inequality operators:
3060
+ * filter.expression = "transaction.execution_result.consumed_compute_units < uint(1000000)"
3061
+ * filter.expression = "transaction.execution_result.consumed_compute_units <= uint(1000000)"
3062
+ * filter.expression = "transaction.execution_result.consumed_compute_units >= uint(0)"
3063
+ * filter.expression = "transaction.execution_result.user_error_code != uint(999)"
3064
+ *
3065
+ * 14. Use params.slot parameter:
3066
+ * filter.expression = "transaction.slot == params.slot"
3067
+ * filter.params["slot"].uint_value = 1234
3068
+ *
3069
+ * 15. Use params.u64 with type conversion:
3070
+ * filter.expression = "transaction.execution_result.consumed_compute_units < uint(params.u64)"
3071
+ * filter.params["u64"].uint_value = 1000000
3072
+ *
3073
+ * The return_events flag controls whether event data is included in the response:
3074
+ * - return_events = false (default): Only event counts/sizes are returned, not actual event data
3075
+ * - return_events = true: Full event data is included in execution results
3076
+ *
3077
+ * Note: All filters are pushed down to SQL for optimal performance where possible.
3078
+ *
3079
+ * @generated from message thru.services.v1.ListTransactionsRequest
3080
+ */
3081
+ type ListTransactionsRequest = Message<"thru.services.v1.ListTransactionsRequest"> & {
3082
+ /**
3083
+ * CEL filter expression (OPTIONAL). See message documentation for examples.
3084
+ *
3085
+ * @generated from field: optional thru.common.v1.Filter filter = 1;
3086
+ */
3087
+ filter?: Filter | undefined;
3088
+ /**
3089
+ * @generated from field: optional thru.common.v1.PageRequest page = 2;
3090
+ */
3091
+ page?: PageRequest | undefined;
3092
+ /**
3093
+ * Whether to include event data in results (default: false)
3094
+ *
3095
+ * @generated from field: optional bool return_events = 3;
3096
+ */
3097
+ returnEvents?: boolean | undefined;
3098
+ /**
3099
+ * @generated from field: optional thru.common.v1.VersionContext version_context = 4;
3100
+ */
3101
+ versionContext?: VersionContext | undefined;
3102
+ /**
3103
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 5;
3104
+ */
3105
+ minConsensus?: ConsensusStatus | undefined;
3106
+ };
3107
+ /**
3108
+ * Describes the message thru.services.v1.ListTransactionsRequest.
3109
+ * Use `create(ListTransactionsRequestSchema)` to create a new message.
3110
+ */
3111
+ declare const ListTransactionsRequestSchema: GenMessage<ListTransactionsRequest>;
3112
+ /**
3113
+ * ListTransactionsResponse returns paginated executed transactions.
3114
+ *
3115
+ * @generated from message thru.services.v1.ListTransactionsResponse
3116
+ */
3117
+ type ListTransactionsResponse = Message<"thru.services.v1.ListTransactionsResponse"> & {
3118
+ /**
3119
+ * @generated from field: repeated thru.core.v1.Transaction transactions = 1;
3120
+ */
3121
+ transactions: Transaction[];
3122
+ /**
3123
+ * @generated from field: optional thru.common.v1.PageResponse page = 2;
3124
+ */
3125
+ page?: PageResponse | undefined;
3126
+ };
3127
+ /**
3128
+ * Describes the message thru.services.v1.ListTransactionsResponse.
3129
+ * Use `create(ListTransactionsResponseSchema)` to create a new message.
3130
+ */
3131
+ declare const ListTransactionsResponseSchema: GenMessage<ListTransactionsResponse>;
3132
+ /**
3133
+ * GetTransactionStatusRequest fetches execution status for a transaction.
3134
+ *
3135
+ * @generated from message thru.services.v1.GetTransactionStatusRequest
3136
+ */
3137
+ type GetTransactionStatusRequest = Message<"thru.services.v1.GetTransactionStatusRequest"> & {
3138
+ /**
3139
+ * @generated from field: thru.common.v1.Signature signature = 1;
3140
+ */
3141
+ signature?: Signature | undefined;
3142
+ };
3143
+ /**
3144
+ * Describes the message thru.services.v1.GetTransactionStatusRequest.
3145
+ * Use `create(GetTransactionStatusRequestSchema)` to create a new message.
3146
+ */
3147
+ declare const GetTransactionStatusRequestSchema: GenMessage<GetTransactionStatusRequest>;
3148
+ /**
3149
+ * TransactionStatus captures status metadata for a transaction.
3150
+ *
3151
+ * @generated from message thru.services.v1.TransactionStatus
3152
+ */
3153
+ type TransactionStatus = Message<"thru.services.v1.TransactionStatus"> & {
3154
+ /**
3155
+ * @generated from field: thru.common.v1.Signature signature = 1;
3156
+ */
3157
+ signature?: Signature | undefined;
3158
+ /**
3159
+ * @generated from field: optional thru.common.v1.ConsensusStatus consensus_status = 2;
3160
+ */
3161
+ consensusStatus?: ConsensusStatus | undefined;
3162
+ /**
3163
+ * @generated from field: optional thru.core.v1.TransactionExecutionResult execution_result = 3;
3164
+ */
3165
+ executionResult?: TransactionExecutionResult | undefined;
3166
+ };
3167
+ /**
3168
+ * Describes the message thru.services.v1.TransactionStatus.
3169
+ * Use `create(TransactionStatusSchema)` to create a new message.
3170
+ */
3171
+ declare const TransactionStatusSchema: GenMessage<TransactionStatus>;
3172
+ /**
3173
+ * @generated from message thru.services.v1.GetHeightRequest
3174
+ */
3175
+ type GetHeightRequest = Message<"thru.services.v1.GetHeightRequest"> & {};
3176
+ /**
3177
+ * Describes the message thru.services.v1.GetHeightRequest.
3178
+ * Use `create(GetHeightRequestSchema)` to create a new message.
3179
+ */
3180
+ declare const GetHeightRequestSchema: GenMessage<GetHeightRequest>;
3181
+ /**
3182
+ * GetHeightResponse
3183
+ *
3184
+ * @generated from message thru.services.v1.GetHeightResponse
3185
+ */
3186
+ type GetHeightResponse = Message<"thru.services.v1.GetHeightResponse"> & {
3187
+ /**
3188
+ * @generated from field: uint64 finalized = 1;
3189
+ */
3190
+ finalized: bigint;
3191
+ /**
3192
+ * @generated from field: uint64 locally_executed = 2;
3193
+ */
3194
+ locallyExecuted: bigint;
3195
+ /**
3196
+ * @generated from field: uint64 cluster_executed = 3;
3197
+ */
3198
+ clusterExecuted: bigint;
3199
+ };
3200
+ /**
3201
+ * Describes the message thru.services.v1.GetHeightResponse.
3202
+ * Use `create(GetHeightResponseSchema)` to create a new message.
3203
+ */
3204
+ declare const GetHeightResponseSchema: GenMessage<GetHeightResponse>;
3205
+ /**
3206
+ * GetChainInfoRequest retrieves chain-level information.
3207
+ *
3208
+ * @generated from message thru.services.v1.GetChainInfoRequest
3209
+ */
3210
+ type GetChainInfoRequest = Message<"thru.services.v1.GetChainInfoRequest"> & {};
3211
+ /**
3212
+ * Describes the message thru.services.v1.GetChainInfoRequest.
3213
+ * Use `create(GetChainInfoRequestSchema)` to create a new message.
3214
+ */
3215
+ declare const GetChainInfoRequestSchema: GenMessage<GetChainInfoRequest>;
3216
+ /**
3217
+ * GetChainInfoResponse returns chain-level information.
3218
+ *
3219
+ * @generated from message thru.services.v1.GetChainInfoResponse
3220
+ */
3221
+ type GetChainInfoResponse = Message<"thru.services.v1.GetChainInfoResponse"> & {
3222
+ /**
3223
+ * Chain identifier, unique per network (similar to Ethereum chain ID).
3224
+ * Used to prevent transaction replay across different chains.
3225
+ *
3226
+ * @generated from field: uint32 chain_id = 1;
3227
+ */
3228
+ chainId: number;
3229
+ /**
3230
+ * Minimum timestamp (nanoseconds since epoch) at which 4f+1 validator weight
3231
+ * has reported advancement. Zero if not yet available.
3232
+ *
3233
+ * @generated from field: uint64 min_lock_time = 2;
3234
+ */
3235
+ minLockTime: bigint;
3236
+ };
3237
+ /**
3238
+ * Describes the message thru.services.v1.GetChainInfoResponse.
3239
+ * Use `create(GetChainInfoResponseSchema)` to create a new message.
3240
+ */
3241
+ declare const GetChainInfoResponseSchema: GenMessage<GetChainInfoResponse>;
3242
+ /**
3243
+ * GetStateRootsRequest retrieves up to 257 state roots ending at a specified slot.
3244
+ * Used for transaction replay to verify state proofs against historical roots.
3245
+ * Returns state roots in ascending slot order, from (slot - 256) to slot (inclusive).
3246
+ *
3247
+ * @generated from message thru.services.v1.GetStateRootsRequest
3248
+ */
3249
+ type GetStateRootsRequest = Message<"thru.services.v1.GetStateRootsRequest"> & {
3250
+ /**
3251
+ * The slot to retrieve state roots up to (inclusive).
3252
+ * Returns up to 257 state roots ending at this slot.
3253
+ * If not specified, returns state roots ending at the latest available slot.
3254
+ *
3255
+ * @generated from field: optional uint64 slot = 1;
3256
+ */
3257
+ slot?: bigint | undefined;
3258
+ };
3259
+ /**
3260
+ * Describes the message thru.services.v1.GetStateRootsRequest.
3261
+ * Use `create(GetStateRootsRequestSchema)` to create a new message.
3262
+ */
3263
+ declare const GetStateRootsRequestSchema: GenMessage<GetStateRootsRequest>;
3264
+ /**
3265
+ * StateRootEntry represents a state root for a specific slot.
3266
+ *
3267
+ * @generated from message thru.services.v1.StateRootEntry
3268
+ */
3269
+ type StateRootEntry = Message<"thru.services.v1.StateRootEntry"> & {
3270
+ /**
3271
+ * @generated from field: uint64 slot = 1;
3272
+ */
3273
+ slot: bigint;
3274
+ /**
3275
+ * @generated from field: bytes state_root = 2;
3276
+ */
3277
+ stateRoot: Uint8Array;
3278
+ };
3279
+ /**
3280
+ * Describes the message thru.services.v1.StateRootEntry.
3281
+ * Use `create(StateRootEntrySchema)` to create a new message.
3282
+ */
3283
+ declare const StateRootEntrySchema: GenMessage<StateRootEntry>;
3284
+ /**
3285
+ * GetStateRootsResponse contains up to 257 state roots ending at the requested slot.
3286
+ *
3287
+ * @generated from message thru.services.v1.GetStateRootsResponse
3288
+ */
3289
+ type GetStateRootsResponse = Message<"thru.services.v1.GetStateRootsResponse"> & {
3290
+ /**
3291
+ * @generated from field: repeated thru.services.v1.StateRootEntry state_roots = 1;
3292
+ */
3293
+ stateRoots: StateRootEntry[];
3294
+ };
3295
+ /**
3296
+ * Describes the message thru.services.v1.GetStateRootsResponse.
3297
+ * Use `create(GetStateRootsResponseSchema)` to create a new message.
3298
+ */
3299
+ declare const GetStateRootsResponseSchema: GenMessage<GetStateRootsResponse>;
3300
+ /**
3301
+ * GetActiveStateHashesRequest retrieves active state hashes for a range of slots.
3302
+ *
3303
+ * @generated from message thru.services.v1.GetActiveStateHashesRequest
3304
+ */
3305
+ type GetActiveStateHashesRequest = Message<"thru.services.v1.GetActiveStateHashesRequest"> & {
3306
+ /**
3307
+ * The upper bound slot (inclusive). If not specified, defaults to the latest finalized slot.
3308
+ *
3309
+ * @generated from field: optional uint64 end_slot = 1;
3310
+ */
3311
+ endSlot?: bigint | undefined;
3312
+ /**
3313
+ * The lower bound slot (inclusive). If not specified, defaults to max(0, end_slot - 127).
3314
+ *
3315
+ * @generated from field: optional uint64 start_slot = 2;
3316
+ */
3317
+ startSlot?: bigint | undefined;
3318
+ };
3319
+ /**
3320
+ * Describes the message thru.services.v1.GetActiveStateHashesRequest.
3321
+ * Use `create(GetActiveStateHashesRequestSchema)` to create a new message.
3322
+ */
3323
+ declare const GetActiveStateHashesRequestSchema: GenMessage<GetActiveStateHashesRequest>;
3324
+ /**
3325
+ * ActiveStateHashEntry represents an active state hash for a specific slot.
3326
+ *
3327
+ * @generated from message thru.services.v1.ActiveStateHashEntry
3328
+ */
3329
+ type ActiveStateHashEntry = Message<"thru.services.v1.ActiveStateHashEntry"> & {
3330
+ /**
3331
+ * @generated from field: uint64 slot = 1;
3332
+ */
3333
+ slot: bigint;
3334
+ /**
3335
+ * @generated from field: bytes active_state_hash = 2;
3336
+ */
3337
+ activeStateHash: Uint8Array;
3338
+ };
3339
+ /**
3340
+ * Describes the message thru.services.v1.ActiveStateHashEntry.
3341
+ * Use `create(ActiveStateHashEntrySchema)` to create a new message.
3342
+ */
3343
+ declare const ActiveStateHashEntrySchema: GenMessage<ActiveStateHashEntry>;
3344
+ /**
3345
+ * GetActiveStateHashesResponse contains active state hashes ending at the requested slot.
3346
+ *
3347
+ * @generated from message thru.services.v1.GetActiveStateHashesResponse
3348
+ */
3349
+ type GetActiveStateHashesResponse = Message<"thru.services.v1.GetActiveStateHashesResponse"> & {
3350
+ /**
3351
+ * @generated from field: repeated thru.services.v1.ActiveStateHashEntry active_state_hashes = 1;
3352
+ */
3353
+ activeStateHashes: ActiveStateHashEntry[];
3354
+ };
3355
+ /**
3356
+ * Describes the message thru.services.v1.GetActiveStateHashesResponse.
3357
+ * Use `create(GetActiveStateHashesResponseSchema)` to create a new message.
3358
+ */
3359
+ declare const GetActiveStateHashesResponseSchema: GenMessage<GetActiveStateHashesResponse>;
3360
+ /**
3361
+ * GetSlotMetricsRequest retrieves metrics for a specific slot.
3362
+ *
3363
+ * @generated from message thru.services.v1.GetSlotMetricsRequest
3364
+ */
3365
+ type GetSlotMetricsRequest = Message<"thru.services.v1.GetSlotMetricsRequest"> & {
3366
+ /**
3367
+ * Block slot number to retrieve metrics for.
3368
+ *
3369
+ * @generated from field: uint64 slot = 1;
3370
+ */
3371
+ slot: bigint;
3372
+ };
3373
+ /**
3374
+ * Describes the message thru.services.v1.GetSlotMetricsRequest.
3375
+ * Use `create(GetSlotMetricsRequestSchema)` to create a new message.
3376
+ */
3377
+ declare const GetSlotMetricsRequestSchema: GenMessage<GetSlotMetricsRequest>;
3378
+ /**
3379
+ * GetSlotMetricsResponse contains slot-level metrics.
3380
+ *
3381
+ * @generated from message thru.services.v1.GetSlotMetricsResponse
3382
+ */
3383
+ type GetSlotMetricsResponse = Message<"thru.services.v1.GetSlotMetricsResponse"> & {
3384
+ /**
3385
+ * Block slot number.
3386
+ *
3387
+ * @generated from field: uint64 slot = 1;
3388
+ */
3389
+ slot: bigint;
3390
+ /**
3391
+ * Global counter tracking total activated state across all accounts.
3392
+ *
3393
+ * @generated from field: uint64 global_activated_state_counter = 2;
3394
+ */
3395
+ globalActivatedStateCounter: bigint;
3396
+ /**
3397
+ * Global counter tracking total deactivated state across all accounts.
3398
+ *
3399
+ * @generated from field: uint64 global_deactivated_state_counter = 3;
3400
+ */
3401
+ globalDeactivatedStateCounter: bigint;
3402
+ /**
3403
+ * Total fees collected from all transactions in this block.
3404
+ *
3405
+ * @generated from field: uint64 collected_fees = 4;
3406
+ */
3407
+ collectedFees: bigint;
3408
+ /**
3409
+ * Block timestamp when available.
3410
+ *
3411
+ * @generated from field: optional google.protobuf.Timestamp block_timestamp = 5;
3412
+ */
3413
+ blockTimestamp?: Timestamp | undefined;
3414
+ };
3415
+ /**
3416
+ * Describes the message thru.services.v1.GetSlotMetricsResponse.
3417
+ * Use `create(GetSlotMetricsResponseSchema)` to create a new message.
3418
+ */
3419
+ declare const GetSlotMetricsResponseSchema: GenMessage<GetSlotMetricsResponse>;
3420
+ /**
3421
+ * ListSlotMetricsRequest lists slot metrics for a range of slots.
3422
+ *
3423
+ * @generated from message thru.services.v1.ListSlotMetricsRequest
3424
+ */
3425
+ type ListSlotMetricsRequest = Message<"thru.services.v1.ListSlotMetricsRequest"> & {
3426
+ /**
3427
+ * Start slot for the range (inclusive).
3428
+ *
3429
+ * @generated from field: uint64 start_slot = 1;
3430
+ */
3431
+ startSlot: bigint;
3432
+ /**
3433
+ * End slot for the range (inclusive). Defaults to start_slot if not specified.
3434
+ *
3435
+ * @generated from field: optional uint64 end_slot = 2;
3436
+ */
3437
+ endSlot?: bigint | undefined;
3438
+ /**
3439
+ * Maximum number of results to return. Defaults to 100.
3440
+ *
3441
+ * @generated from field: optional uint32 limit = 3;
3442
+ */
3443
+ limit?: number | undefined;
3444
+ };
3445
+ /**
3446
+ * Describes the message thru.services.v1.ListSlotMetricsRequest.
3447
+ * Use `create(ListSlotMetricsRequestSchema)` to create a new message.
3448
+ */
3449
+ declare const ListSlotMetricsRequestSchema: GenMessage<ListSlotMetricsRequest>;
3450
+ /**
3451
+ * ListSlotMetricsResponse contains a list of slot metrics.
3452
+ *
3453
+ * @generated from message thru.services.v1.ListSlotMetricsResponse
3454
+ */
3455
+ type ListSlotMetricsResponse = Message<"thru.services.v1.ListSlotMetricsResponse"> & {
3456
+ /**
3457
+ * @generated from field: repeated thru.services.v1.GetSlotMetricsResponse metrics = 1;
3458
+ */
3459
+ metrics: GetSlotMetricsResponse[];
3460
+ };
3461
+ /**
3462
+ * Describes the message thru.services.v1.ListSlotMetricsResponse.
3463
+ * Use `create(ListSlotMetricsResponseSchema)` to create a new message.
3464
+ */
3465
+ declare const ListSlotMetricsResponseSchema: GenMessage<ListSlotMetricsResponse>;
3466
+ /**
3467
+ * GetNodePubkeyRequest requests the node's own public key.
3468
+ *
3469
+ * @generated from message thru.services.v1.GetNodePubkeyRequest
3470
+ */
3471
+ type GetNodePubkeyRequest = Message<"thru.services.v1.GetNodePubkeyRequest"> & {};
3472
+ /**
3473
+ * Describes the message thru.services.v1.GetNodePubkeyRequest.
3474
+ * Use `create(GetNodePubkeyRequestSchema)` to create a new message.
3475
+ */
3476
+ declare const GetNodePubkeyRequestSchema: GenMessage<GetNodePubkeyRequest>;
3477
+ /**
3478
+ * GetNodePubkeyResponse returns the node's ED25519 public key.
3479
+ *
3480
+ * @generated from message thru.services.v1.GetNodePubkeyResponse
3481
+ */
3482
+ type GetNodePubkeyResponse = Message<"thru.services.v1.GetNodePubkeyResponse"> & {
3483
+ /**
3484
+ * @generated from field: thru.common.v1.Pubkey pubkey = 1;
3485
+ */
3486
+ pubkey?: Pubkey | undefined;
3487
+ };
3488
+ /**
3489
+ * Describes the message thru.services.v1.GetNodePubkeyResponse.
3490
+ * Use `create(GetNodePubkeyResponseSchema)` to create a new message.
3491
+ */
3492
+ declare const GetNodePubkeyResponseSchema: GenMessage<GetNodePubkeyResponse>;
3493
+ /**
3494
+ * GetNodeRecordsRequest requests all known node records.
3495
+ *
3496
+ * @generated from message thru.services.v1.GetNodeRecordsRequest
3497
+ */
3498
+ type GetNodeRecordsRequest = Message<"thru.services.v1.GetNodeRecordsRequest"> & {};
3499
+ /**
3500
+ * Describes the message thru.services.v1.GetNodeRecordsRequest.
3501
+ * Use `create(GetNodeRecordsRequestSchema)` to create a new message.
3502
+ */
3503
+ declare const GetNodeRecordsRequestSchema: GenMessage<GetNodeRecordsRequest>;
3504
+ /**
3505
+ * GetNodeRecordsResponse returns all known node records from the gossip network.
3506
+ *
3507
+ * @generated from message thru.services.v1.GetNodeRecordsResponse
3508
+ */
3509
+ type GetNodeRecordsResponse = Message<"thru.services.v1.GetNodeRecordsResponse"> & {
3510
+ /**
3511
+ * @generated from field: repeated thru.core.v1.NodeRecord records = 1;
3512
+ */
3513
+ records: NodeRecord[];
3514
+ };
3515
+ /**
3516
+ * Describes the message thru.services.v1.GetNodeRecordsResponse.
3517
+ * Use `create(GetNodeRecordsResponseSchema)` to create a new message.
3518
+ */
3519
+ declare const GetNodeRecordsResponseSchema: GenMessage<GetNodeRecordsResponse>;
3520
+ /**
3521
+ * GetNodeStatusRequest requests the node's operational status.
3522
+ *
3523
+ * @generated from message thru.services.v1.GetNodeStatusRequest
3524
+ */
3525
+ type GetNodeStatusRequest = Message<"thru.services.v1.GetNodeStatusRequest"> & {};
3526
+ /**
3527
+ * Describes the message thru.services.v1.GetNodeStatusRequest.
3528
+ * Use `create(GetNodeStatusRequestSchema)` to create a new message.
3529
+ */
3530
+ declare const GetNodeStatusRequestSchema: GenMessage<GetNodeStatusRequest>;
3531
+ /**
3532
+ * GetNodeStatusResponse returns the node's operational status including
3533
+ * consensus readiness, repair state, and current heights.
3534
+ *
3535
+ * @generated from message thru.services.v1.GetNodeStatusResponse
3536
+ */
3537
+ type GetNodeStatusResponse = Message<"thru.services.v1.GetNodeStatusResponse"> & {
3538
+ /**
3539
+ * High-level readiness flag. True when consensus is active and the node
3540
+ * is ready to accept and process transactions.
3541
+ *
3542
+ * @generated from field: bool ready = 1;
3543
+ */
3544
+ ready: boolean;
3545
+ /**
3546
+ * Consensus subsystem state.
3547
+ *
3548
+ * @generated from field: thru.services.v1.NodeConsensusStatus consensus = 2;
3549
+ */
3550
+ consensus?: NodeConsensusStatus | undefined;
3551
+ /**
3552
+ * Repair subsystem state.
3553
+ *
3554
+ * @generated from field: thru.services.v1.NodeRepairStatus repair = 3;
3555
+ */
3556
+ repair?: NodeRepairStatus | undefined;
3557
+ /**
3558
+ * Latest finalized slot.
3559
+ *
3560
+ * @generated from field: uint64 finalized_slot = 4;
3561
+ */
3562
+ finalizedSlot: bigint;
3563
+ /**
3564
+ * Latest locally executed slot.
3565
+ *
3566
+ * @generated from field: uint64 locally_executed_slot = 5;
3567
+ */
3568
+ locallyExecutedSlot: bigint;
3569
+ };
3570
+ /**
3571
+ * Describes the message thru.services.v1.GetNodeStatusResponse.
3572
+ * Use `create(GetNodeStatusResponseSchema)` to create a new message.
3573
+ */
3574
+ declare const GetNodeStatusResponseSchema: GenMessage<GetNodeStatusResponse>;
3575
+ /**
3576
+ * NodeConsensusStatus describes the consensus driver state.
3577
+ *
3578
+ * @generated from message thru.services.v1.NodeConsensusStatus
3579
+ */
3580
+ type NodeConsensusStatus = Message<"thru.services.v1.NodeConsensusStatus"> & {
3581
+ /**
3582
+ * Whether post-repair consensus is active and voting.
3583
+ *
3584
+ * @generated from field: bool active = 1;
3585
+ */
3586
+ active: boolean;
3587
+ /**
3588
+ * How consensus was entered: regular startup or catastrophic recovery.
3589
+ *
3590
+ * @generated from field: thru.services.v1.NodeMode mode = 2;
3591
+ */
3592
+ mode: NodeMode;
3593
+ /**
3594
+ * Current consensus frontier slot (first slot without EXECUTION_FINISHED).
3595
+ *
3596
+ * @generated from field: uint64 frontier = 3;
3597
+ */
3598
+ frontier: bigint;
3599
+ };
3600
+ /**
3601
+ * Describes the message thru.services.v1.NodeConsensusStatus.
3602
+ * Use `create(NodeConsensusStatusSchema)` to create a new message.
3603
+ */
3604
+ declare const NodeConsensusStatusSchema: GenMessage<NodeConsensusStatus>;
3605
+ /**
3606
+ * NodeRepairStatus describes the repair subsystem state.
3607
+ *
3608
+ * @generated from message thru.services.v1.NodeRepairStatus
3609
+ */
3610
+ type NodeRepairStatus = Message<"thru.services.v1.NodeRepairStatus"> & {
3611
+ /**
3612
+ * Whether catastrophic repair gating is active. When true, the node is
3613
+ * suppressing consensus output and rejecting transactions.
3614
+ * Note: during normal gap repair (non-catastrophic), this is false but
3615
+ * consensus.active is also false, so ready is correctly false.
3616
+ *
3617
+ * @generated from field: bool active = 1;
3618
+ */
3619
+ active: boolean;
3620
+ };
3621
+ /**
3622
+ * Describes the message thru.services.v1.NodeRepairStatus.
3623
+ * Use `create(NodeRepairStatusSchema)` to create a new message.
3624
+ */
3625
+ declare const NodeRepairStatusSchema: GenMessage<NodeRepairStatus>;
3626
+ /**
3627
+ * NodeMode represents the consensus/repair operating mode.
3628
+ *
3629
+ * @generated from enum thru.services.v1.NodeMode
3630
+ */
3631
+ declare enum NodeMode {
3632
+ /**
3633
+ * @generated from enum value: NODE_MODE_UNKNOWN = 0;
3634
+ */
3635
+ UNKNOWN = 0,
3636
+ /**
3637
+ * @generated from enum value: NODE_MODE_REGULAR = 1;
3638
+ */
3639
+ REGULAR = 1,
3640
+ /**
3641
+ * @generated from enum value: NODE_MODE_CATASTROPHIC = 2;
3642
+ */
3643
+ CATASTROPHIC = 2
3644
+ }
3645
+ /**
3646
+ * Describes the enum thru.services.v1.NodeMode.
3647
+ */
3648
+ declare const NodeModeSchema: GenEnum<NodeMode>;
3649
+ /**
3650
+ * QueryService defines unary RPCs for accessing blockchain data.
3651
+ *
3652
+ * @generated from service thru.services.v1.QueryService
3653
+ */
3654
+ declare const QueryService: GenService<{
3655
+ /**
3656
+ * Get block heights
3657
+ *
3658
+ * @generated from rpc thru.services.v1.QueryService.GetHeight
3659
+ */
3660
+ getHeight: {
3661
+ methodKind: "unary";
3662
+ input: typeof GetHeightRequestSchema;
3663
+ output: typeof GetHeightResponseSchema;
3664
+ };
3665
+ /**
3666
+ * Get chain-level information including chain ID.
3667
+ *
3668
+ * @generated from rpc thru.services.v1.QueryService.GetChainInfo
3669
+ */
3670
+ getChainInfo: {
3671
+ methodKind: "unary";
3672
+ input: typeof GetChainInfoRequestSchema;
3673
+ output: typeof GetChainInfoResponseSchema;
3674
+ };
3675
+ /**
3676
+ * Get account information.
3677
+ *
3678
+ * @generated from rpc thru.services.v1.QueryService.GetAccount
3679
+ */
3680
+ getAccount: {
3681
+ methodKind: "unary";
3682
+ input: typeof GetAccountRequestSchema;
3683
+ output: typeof AccountSchema;
3684
+ };
3685
+ /**
3686
+ * Get account raw bytes.
3687
+ *
3688
+ * @generated from rpc thru.services.v1.QueryService.GetRawAccount
3689
+ */
3690
+ getRawAccount: {
3691
+ methodKind: "unary";
3692
+ input: typeof GetRawAccountRequestSchema;
3693
+ output: typeof RawAccountSchema;
3694
+ };
3695
+ /**
3696
+ * Get transaction by signature.
3697
+ *
3698
+ * @generated from rpc thru.services.v1.QueryService.GetTransaction
3699
+ */
3700
+ getTransaction: {
3701
+ methodKind: "unary";
3702
+ input: typeof GetTransactionRequestSchema;
3703
+ output: typeof TransactionSchema;
3704
+ };
3705
+ /**
3706
+ * Get raw transaction by signature.
3707
+ *
3708
+ * @generated from rpc thru.services.v1.QueryService.GetRawTransaction
3709
+ */
3710
+ getRawTransaction: {
3711
+ methodKind: "unary";
3712
+ input: typeof GetRawTransactionRequestSchema;
3713
+ output: typeof RawTransactionSchema;
3714
+ };
3715
+ /**
3716
+ * Get block by slot or hash.
3717
+ *
3718
+ * @generated from rpc thru.services.v1.QueryService.GetBlock
3719
+ */
3720
+ getBlock: {
3721
+ methodKind: "unary";
3722
+ input: typeof GetBlockRequestSchema;
3723
+ output: typeof BlockSchema;
3724
+ };
3725
+ /**
3726
+ * Get raw block bytes.
3727
+ *
3728
+ * @generated from rpc thru.services.v1.QueryService.GetRawBlock
3729
+ */
3730
+ getRawBlock: {
3731
+ methodKind: "unary";
3732
+ input: typeof GetRawBlockRequestSchema;
3733
+ output: typeof RawBlockSchema;
3734
+ };
3735
+ /**
3736
+ * List accounts using CEL-based filtering.
3737
+ *
3738
+ * @generated from rpc thru.services.v1.QueryService.ListAccounts
3739
+ */
3740
+ listAccounts: {
3741
+ methodKind: "unary";
3742
+ input: typeof ListAccountsRequestSchema;
3743
+ output: typeof ListAccountsResponseSchema;
3744
+ };
3745
+ /**
3746
+ * List blocks using pagination and filtering. By default returns blocks ordered from latest slot to the first one.
3747
+ *
3748
+ * @generated from rpc thru.services.v1.QueryService.ListBlocks
3749
+ */
3750
+ listBlocks: {
3751
+ methodKind: "unary";
3752
+ input: typeof ListBlocksRequestSchema;
3753
+ output: typeof ListBlocksResponseSchema;
3754
+ };
3755
+ /**
3756
+ * List executed transaction signatures involving an account.
3757
+ *
3758
+ * @generated from rpc thru.services.v1.QueryService.ListTransactionsForAccount
3759
+ */
3760
+ listTransactionsForAccount: {
3761
+ methodKind: "unary";
3762
+ input: typeof ListTransactionsForAccountRequestSchema;
3763
+ output: typeof ListTransactionsForAccountResponseSchema;
3764
+ };
3765
+ /**
3766
+ * Get a specific event by ID.
3767
+ *
3768
+ * @generated from rpc thru.services.v1.QueryService.GetEvent
3769
+ */
3770
+ getEvent: {
3771
+ methodKind: "unary";
3772
+ input: typeof GetEventRequestSchema;
3773
+ output: typeof EventSchema;
3774
+ };
3775
+ /**
3776
+ * List events with CEL filtering and pagination. Returns events ordered from most recent to older.
3777
+ *
3778
+ * @generated from rpc thru.services.v1.QueryService.ListEvents
3779
+ */
3780
+ listEvents: {
3781
+ methodKind: "unary";
3782
+ input: typeof ListEventsRequestSchema;
3783
+ output: typeof ListEventsResponseSchema;
3784
+ };
3785
+ /**
3786
+ * List executed transactions with CEL filtering and pagination. Returns transactions ordered from most recent to older.
3787
+ *
3788
+ * @generated from rpc thru.services.v1.QueryService.ListTransactions
3789
+ */
3790
+ listTransactions: {
3791
+ methodKind: "unary";
3792
+ input: typeof ListTransactionsRequestSchema;
3793
+ output: typeof ListTransactionsResponseSchema;
3794
+ };
3795
+ /**
3796
+ * Get derived transaction status metadata.
3797
+ *
3798
+ * @generated from rpc thru.services.v1.QueryService.GetTransactionStatus
3799
+ */
3800
+ getTransactionStatus: {
3801
+ methodKind: "unary";
3802
+ input: typeof GetTransactionStatusRequestSchema;
3803
+ output: typeof TransactionStatusSchema;
3804
+ };
3805
+ /**
3806
+ * Generate an account state proof snapshot.
3807
+ *
3808
+ * @generated from rpc thru.services.v1.QueryService.GenerateStateProof
3809
+ */
3810
+ generateStateProof: {
3811
+ methodKind: "unary";
3812
+ input: typeof GenerateStateProofRequestSchema;
3813
+ output: typeof GenerateStateProofResponseSchema;
3814
+ };
3815
+ /**
3816
+ * Get component version strings.
3817
+ *
3818
+ * @generated from rpc thru.services.v1.QueryService.GetVersion
3819
+ */
3820
+ getVersion: {
3821
+ methodKind: "unary";
3822
+ input: typeof GetVersionRequestSchema;
3823
+ output: typeof GetVersionResponseSchema;
3824
+ };
3825
+ /**
3826
+ * Get state roots for a range of slots.
3827
+ * Used for transaction replay to verify state proofs against historical roots.
3828
+ *
3829
+ * @generated from rpc thru.services.v1.QueryService.GetStateRoots
3830
+ */
3831
+ getStateRoots: {
3832
+ methodKind: "unary";
3833
+ input: typeof GetStateRootsRequestSchema;
3834
+ output: typeof GetStateRootsResponseSchema;
3835
+ };
3836
+ /**
3837
+ * Get active state hashes for a range of slots.
3838
+ *
3839
+ * @generated from rpc thru.services.v1.QueryService.GetActiveStateHashes
3840
+ */
3841
+ getActiveStateHashes: {
3842
+ methodKind: "unary";
3843
+ input: typeof GetActiveStateHashesRequestSchema;
3844
+ output: typeof GetActiveStateHashesResponseSchema;
3845
+ };
3846
+ /**
3847
+ * Get slot-level metrics including state counters and collected fees.
3848
+ *
3849
+ * @generated from rpc thru.services.v1.QueryService.GetSlotMetrics
3850
+ */
3851
+ getSlotMetrics: {
3852
+ methodKind: "unary";
3853
+ input: typeof GetSlotMetricsRequestSchema;
3854
+ output: typeof GetSlotMetricsResponseSchema;
3855
+ };
3856
+ /**
3857
+ * List slot metrics for a range of slots.
3858
+ *
3859
+ * @generated from rpc thru.services.v1.QueryService.ListSlotMetrics
3860
+ */
3861
+ listSlotMetrics: {
3862
+ methodKind: "unary";
3863
+ input: typeof ListSlotMetricsRequestSchema;
3864
+ output: typeof ListSlotMetricsResponseSchema;
3865
+ };
3866
+ /**
3867
+ * Get the node's own ED25519 public key.
3868
+ *
3869
+ * @generated from rpc thru.services.v1.QueryService.GetNodePubkey
3870
+ */
3871
+ getNodePubkey: {
3872
+ methodKind: "unary";
3873
+ input: typeof GetNodePubkeyRequestSchema;
3874
+ output: typeof GetNodePubkeyResponseSchema;
3875
+ };
3876
+ /**
3877
+ * Get all known node records from the gossip network.
3878
+ *
3879
+ * @generated from rpc thru.services.v1.QueryService.GetNodeRecords
3880
+ */
3881
+ getNodeRecords: {
3882
+ methodKind: "unary";
3883
+ input: typeof GetNodeRecordsRequestSchema;
3884
+ output: typeof GetNodeRecordsResponseSchema;
3885
+ };
3886
+ /**
3887
+ * Get the node's operational status including consensus readiness.
3888
+ *
3889
+ * @generated from rpc thru.services.v1.QueryService.GetNodeStatus
3890
+ */
3891
+ getNodeStatus: {
3892
+ methodKind: "unary";
3893
+ input: typeof GetNodeStatusRequestSchema;
3894
+ output: typeof GetNodeStatusResponseSchema;
3895
+ };
3896
+ }>;
3897
+
3898
+ /**
3899
+ * Describes the file thru/services/v1/streaming_service.proto.
3900
+ */
3901
+ declare const file_thru_services_v1_streaming_service: GenFile;
3902
+ /**
3903
+ * StreamBlocksRequest subscribes to real-time block updates.
3904
+ *
3905
+ * Filter expressions support the following params:
3906
+ *
3907
+ * - params.slot (int64): Slot number for comparison
3908
+ * Example: block.block.header.slot == params.slot
3909
+ *
3910
+ * - params.min_slot (int64): Minimum slot for range filtering
3911
+ * Example: block.block.header.slot >= params.min_slot
3912
+ *
3913
+ * - params.start_slot (int64): Starting slot for filtering
3914
+ * Example: block.block.header.slot >= params.start_slot
3915
+ *
3916
+ * - params.u64 (int64): Generic 64-bit value for numeric comparisons
3917
+ * Examples:
3918
+ * block.block.header.max_compute_units > params.u64
3919
+ * block.block.header.bond_amount_lock_up >= params.u64
3920
+ *
3921
+ * - params.producer (bytes|Pubkey): Producer pubkey for filtering
3922
+ * Examples:
3923
+ * block.block.header.producer.value == params.producer
3924
+ * has(block.block.header.producer) && block.block.header.producer.value == params.producer
3925
+ *
3926
+ * Available block header fields:
3927
+ * block.block.header.slot, block.block.header.version,
3928
+ * block.block.header.start_slot, block.block.header.expiry_after,
3929
+ * block.block.header.max_block_size, block.block.header.max_compute_units,
3930
+ * block.block.header.max_state_units, block.block.header.bond_amount_lock_up,
3931
+ * block.block.header.producer, block.block.header.producer.value
3932
+ *
3933
+ * Available block footer fields:
3934
+ * block.block.footer.status, block.block.footer.consumed_compute_units,
3935
+ * block.block.footer.consumed_state_units, block.block.footer.attestor_payment
3936
+ *
3937
+ * Available consensus status field:
3938
+ * block.block.consensus_status
3939
+ *
3940
+ * Filter expression examples:
3941
+ *
3942
+ * 1. Filter by specific slot:
3943
+ * Expression: "block.block.header.slot == params.slot"
3944
+ * Params: {"slot": 12345}
3945
+ *
3946
+ * 2. Filter by slot range:
3947
+ * Expression: "block.block.header.slot >= params.min_slot"
3948
+ * Params: {"min_slot": 1000}
3949
+ *
3950
+ * 3. Filter by block version:
3951
+ * Expression: "block.block.header.version >= uint(0)"
3952
+ *
3953
+ * 4. Filter by specific producer:
3954
+ * Expression: "has(block.block.header.producer) && block.block.header.producer.value == params.producer"
3955
+ * Params: {"producer": <32-byte pubkey>}
3956
+ *
3957
+ * 5. Filter by max compute units:
3958
+ * Expression: "block.block.header.max_compute_units > uint(0)"
3959
+ *
3960
+ * 6. Filter by max state units:
3961
+ * Expression: "block.block.header.max_state_units > uint(0)"
3962
+ *
3963
+ * 7. Filter by bond amount lock-up:
3964
+ * Expression: "block.block.header.bond_amount_lock_up >= uint(0)"
3965
+ *
3966
+ * 8. Filter by footer status:
3967
+ * Expression: "has(block.block.footer) && block.block.footer.status == int(1)"
3968
+ * Note: EXECUTION_STATUS_PENDING = 1, EXECUTION_STATUS_EXECUTED = 2
3969
+ *
3970
+ * 9. Filter by consumed compute units:
3971
+ * Expression: "has(block.block.footer) && block.block.footer.consumed_compute_units > uint(0)"
3972
+ *
3973
+ * 10. Filter by consumed state units:
3974
+ * Expression: "has(block.block.footer) && block.block.footer.consumed_state_units > uint(0)"
3975
+ *
3976
+ * 11. Filter by consensus status:
3977
+ * Expression: "block.block.consensus_status == int(2)"
3978
+ * Note: CONSENSUS_STATUS_UNSPECIFIED = 0, CONSENSUS_STATUS_OBSERVED = 1,
3979
+ * CONSENSUS_STATUS_INCLUDED = 2
3980
+ *
3981
+ * 12. Check for optional fields presence:
3982
+ * Expression: "has(block.block.header) && has(block.block.footer)"
3983
+ *
3984
+ * 13. Combined filters (multiple conditions):
3985
+ * Expression: "block.block.header.slot >= params.min_slot && has(block.block.footer) && block.block.footer.consumed_compute_units > uint(0)"
3986
+ * Params: {"min_slot": 1000}
3987
+ *
3988
+ * 14. Numeric comparison with params:
3989
+ * Expression: "block.block.header.max_compute_units > params.u64"
3990
+ * Params: {"u64": 1000000}
3991
+ *
3992
+ * @generated from message thru.services.v1.StreamBlocksRequest
3993
+ */
3994
+ type StreamBlocksRequest = Message<"thru.services.v1.StreamBlocksRequest"> & {
3995
+ /**
3996
+ * @generated from field: optional uint64 start_slot = 1;
3997
+ */
3998
+ startSlot?: bigint | undefined;
3999
+ /**
4000
+ * @generated from field: optional thru.common.v1.Filter filter = 2;
4001
+ */
4002
+ filter?: Filter | undefined;
4003
+ /**
4004
+ * @generated from field: optional thru.core.v1.BlockView view = 3;
4005
+ */
4006
+ view?: BlockView | undefined;
4007
+ /**
4008
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 4;
4009
+ */
4010
+ minConsensus?: ConsensusStatus | undefined;
4011
+ };
4012
+ /**
4013
+ * Describes the message thru.services.v1.StreamBlocksRequest.
4014
+ * Use `create(StreamBlocksRequestSchema)` to create a new message.
4015
+ */
4016
+ declare const StreamBlocksRequestSchema: GenMessage<StreamBlocksRequest>;
4017
+ /**
4018
+ * StreamBlocksResponse delivers block updates.
4019
+ *
4020
+ * @generated from message thru.services.v1.StreamBlocksResponse
4021
+ */
4022
+ type StreamBlocksResponse = Message<"thru.services.v1.StreamBlocksResponse"> & {
4023
+ /**
4024
+ * @generated from field: thru.core.v1.Block block = 1;
4025
+ */
4026
+ block?: Block | undefined;
4027
+ };
4028
+ /**
4029
+ * Describes the message thru.services.v1.StreamBlocksResponse.
4030
+ * Use `create(StreamBlocksResponseSchema)` to create a new message.
4031
+ */
4032
+ declare const StreamBlocksResponseSchema: GenMessage<StreamBlocksResponse>;
4033
+ /**
4034
+ * StreamAccountUpdatesRequest subscribes to account delta events.
4035
+ *
4036
+ * Filter expressions support the following params:
4037
+ *
4038
+ * - params.min_slot (uint64): Minimum slot for filtering updates
4039
+ * Example: account_update.slot >= params.min_slot
4040
+ *
4041
+ * - params.min_balance (uint64): Minimum balance for filtering
4042
+ * Example: snapshot.meta.balance >= params.min_balance
4043
+ *
4044
+ * - params.owner (bytes|Pubkey): Owner pubkey for filtering
4045
+ * Examples:
4046
+ * snapshot.meta.owner.value == params.owner
4047
+ * account_update.meta.owner.value == params.owner
4048
+ *
4049
+ * - params.address (bytes|Pubkey): Account address for filtering
4050
+ * Example: account_address.value == params.address
4051
+ * Note: Use account_address for unified filtering across both snapshot and update messages
4052
+ *
4053
+ * - params.addresses (BytesList): List of addresses for multi-account filtering
4054
+ * Example: account_address.value in params.addresses
4055
+ * Note: Use the 'in' operator to filter by multiple addresses in a single subscription
4056
+ *
4057
+ * - params.min_nonce (uint64): Minimum nonce for filtering
4058
+ * Example: snapshot.meta.nonce >= params.min_nonce
4059
+ *
4060
+ * - params.min_seq (uint64): Minimum sequence number for filtering
4061
+ * Example: snapshot.meta.seq >= params.min_seq
4062
+ *
4063
+ * - params.min_data_size (uint32): Minimum data size for filtering
4064
+ * Example: snapshot.meta.data_size >= params.min_data_size
4065
+ *
4066
+ * Available snapshot fields (thru.core.v1.Account):
4067
+ * snapshot.address, snapshot.address.value (bytes),
4068
+ * snapshot.meta.balance (uint64), snapshot.meta.seq (uint64),
4069
+ * snapshot.meta.nonce (uint64), snapshot.meta.data_size (uint32),
4070
+ * snapshot.meta.version (uint32), snapshot.meta.flags (AccountFlags),
4071
+ * snapshot.meta.flags.is_program (bool), snapshot.meta.flags.is_privileged (bool),
4072
+ * snapshot.meta.flags.is_uncompressable (bool), snapshot.meta.flags.is_ephemeral (bool),
4073
+ * snapshot.meta.flags.is_deleted (bool), snapshot.meta.flags.is_new (bool),
4074
+ * snapshot.meta.flags.is_compressed (bool),
4075
+ * snapshot.meta.owner, snapshot.meta.owner.value (bytes)
4076
+ *
4077
+ * Available account_update fields (AccountUpdate):
4078
+ * account_update.slot (uint64), account_update.delete (bool),
4079
+ * account_update.meta.balance (uint64), account_update.meta.seq (uint64),
4080
+ * account_update.meta.nonce (uint64), account_update.meta.data_size (uint32),
4081
+ * account_update.meta.version (uint32), account_update.meta.flags (AccountFlags),
4082
+ * account_update.meta.flags.is_program (bool), account_update.meta.flags.is_privileged (bool),
4083
+ * account_update.meta.flags.is_uncompressable (bool), account_update.meta.flags.is_ephemeral (bool),
4084
+ * account_update.meta.flags.is_deleted (bool), account_update.meta.flags.is_new (bool),
4085
+ * account_update.meta.flags.is_compressed (bool),
4086
+ * account_update.meta.owner, account_update.meta.owner.value (bytes)
4087
+ *
4088
+ * Available unified fields (work for both snapshot and update messages):
4089
+ * account_address, account_address.value (bytes) - extracted from whichever message type is present
4090
+ *
4091
+ * Filter expression examples:
4092
+ *
4093
+ * 1. Filter by minimum balance (snapshot or update):
4094
+ * Expression: "(has(snapshot.meta) && snapshot.meta.balance >= uint(1000000)) || (has(account_update.meta) && account_update.meta.balance >= uint(1000000))"
4095
+ *
4096
+ * 2. Filter by account owner using params:
4097
+ * Expression: "(has(snapshot.meta) && has(snapshot.meta.owner) && snapshot.meta.owner.value == params.owner) || (has(account_update.meta) && has(account_update.meta.owner) && account_update.meta.owner.value == params.owner)"
4098
+ * Params: {"owner": <32-byte pubkey>}
4099
+ *
4100
+ * 3. Filter by specific account address (works for both snapshot and update messages):
4101
+ * Expression: "account_address.value == params.address"
4102
+ * Params: {"address": <32-byte pubkey>}
4103
+ *
4104
+ * 4. Filter by minimum slot for updates:
4105
+ * Expression: "has(account_update.meta) && account_update.slot >= params.min_slot"
4106
+ * Params: {"min_slot": 1000}
4107
+ *
4108
+ * 5. Filter by nonce greater than value:
4109
+ * Expression: "(has(snapshot.meta) && snapshot.meta.nonce >= uint(5)) || (has(account_update.meta) && account_update.meta.nonce >= uint(5))"
4110
+ *
4111
+ * 6. Filter by sequence number:
4112
+ * Expression: "(has(snapshot.meta) && snapshot.meta.seq >= uint(100)) || (has(account_update.meta) && account_update.meta.seq >= uint(100))"
4113
+ *
4114
+ * 7. Filter by data size:
4115
+ * Expression: "(has(snapshot.meta) && snapshot.meta.data_size >= uint(1024)) || (has(account_update.meta) && account_update.meta.data_size >= uint(1024))"
4116
+ *
4117
+ * 8. Filter by account version:
4118
+ * Expression: "(has(snapshot.meta) && snapshot.meta.version >= uint(1)) || (has(account_update.meta) && account_update.meta.version >= uint(1))"
4119
+ *
4120
+ * 9. Filter by account flags (check if account is a program):
4121
+ * Expression: "(has(snapshot.meta) && has(snapshot.meta.flags) && snapshot.meta.flags.is_program) || (has(account_update.meta) && has(account_update.meta.flags) && account_update.meta.flags.is_program)"
4122
+ *
4123
+ * 10. Filter by privileged flag:
4124
+ * Expression: "(has(snapshot.meta) && has(snapshot.meta.flags) && snapshot.meta.flags.is_privileged) || (has(account_update.meta) && has(account_update.meta.flags) && account_update.meta.flags.is_privileged)"
4125
+ *
4126
+ * 11. Filter non-delete updates:
4127
+ * Expression: "has(snapshot.meta) || (has(account_update.meta) && (!has(account_update.delete) || !account_update.delete))"
4128
+ *
4129
+ * 12. Check for snapshot or update presence:
4130
+ * Expression: "has(snapshot.meta) || has(account_update.meta)"
4131
+ *
4132
+ * 13. Combined filters (multiple conditions):
4133
+ * Expression: "has(snapshot.meta) || (has(account_update.meta) && account_update.slot >= params.min_slot && account_update.meta.balance >= params.min_balance)"
4134
+ * Params: {"min_slot": 1000, "min_balance": 1000000}
4135
+ *
4136
+ * 14. Filter by minimum balance using params:
4137
+ * Expression: "(has(snapshot.meta) && snapshot.meta.balance >= params.min_balance) || (has(account_update.meta) && account_update.meta.balance >= params.min_balance)"
4138
+ * Params: {"min_balance": 5000000000}
4139
+ *
4140
+ * Note: The response contains either a snapshot (initial state), an update (delta),
4141
+ * or a BlockFinished message. Filters should handle both snapshot and update cases
4142
+ * using OR logic to match either message type.
4143
+ *
4144
+ * To filter by specific account address (recommended - works for both message types):
4145
+ * Expression: "account_address.value == params.address"
4146
+ * Params: {"address": <32-byte pubkey>}
4147
+ *
4148
+ * To filter by owner (program):
4149
+ * Expression: "(has(snapshot.meta.owner) && snapshot.meta.owner.value == params.owner) || (has(account_update.meta.owner) && account_update.meta.owner.value == params.owner)"
4150
+ * Params: {"owner": <32-byte program pubkey>}
4151
+ *
4152
+ * To filter by multiple account addresses (recommended for multi-account subscriptions):
4153
+ * Expression: "account_address.value in params.addresses"
4154
+ * Params: {"addresses": BytesList{values: [<pubkey1>, <pubkey2>, ...]}}
4155
+ * Note: Use BytesList parameter type with the 'in' operator for efficient multi-address filtering
4156
+ *
4157
+ * @generated from message thru.services.v1.StreamAccountUpdatesRequest
4158
+ */
4159
+ type StreamAccountUpdatesRequest = Message<"thru.services.v1.StreamAccountUpdatesRequest"> & {
4160
+ /**
4161
+ * @generated from field: optional thru.core.v1.AccountView view = 2;
4162
+ */
4163
+ view?: AccountView | undefined;
4164
+ /**
4165
+ * @generated from field: optional thru.common.v1.Filter filter = 4;
4166
+ */
4167
+ filter?: Filter | undefined;
4168
+ };
4169
+ /**
4170
+ * Describes the message thru.services.v1.StreamAccountUpdatesRequest.
4171
+ * Use `create(StreamAccountUpdatesRequestSchema)` to create a new message.
4172
+ */
4173
+ declare const StreamAccountUpdatesRequestSchema: GenMessage<StreamAccountUpdatesRequest>;
4174
+ /**
4175
+ * AccountUpdate describes a delta for an account.
4176
+ *
4177
+ * @generated from message thru.services.v1.AccountUpdate
4178
+ */
4179
+ type AccountUpdate = Message<"thru.services.v1.AccountUpdate"> & {
4180
+ /**
4181
+ * @generated from field: uint64 slot = 1;
4182
+ */
4183
+ slot: bigint;
4184
+ /**
4185
+ * @generated from field: optional thru.core.v1.AccountPage page = 2;
4186
+ */
4187
+ page?: AccountPage | undefined;
4188
+ /**
4189
+ * @generated from field: optional thru.core.v1.AccountMeta meta = 3;
4190
+ */
4191
+ meta?: AccountMeta | undefined;
4192
+ /**
4193
+ * @generated from field: optional bool delete = 4;
4194
+ */
4195
+ delete?: boolean | undefined;
4196
+ /**
4197
+ * Account address for identifying the account in multi-account streams.
4198
+ *
4199
+ * @generated from field: thru.common.v1.Pubkey address = 5;
4200
+ */
4201
+ address?: Pubkey | undefined;
4202
+ };
4203
+ /**
4204
+ * Describes the message thru.services.v1.AccountUpdate.
4205
+ * Use `create(AccountUpdateSchema)` to create a new message.
4206
+ */
4207
+ declare const AccountUpdateSchema: GenMessage<AccountUpdate>;
4208
+ /**
4209
+ * BlockFinished is sent when block's execution is complete.
4210
+ * Contains block accumulator metrics finalized after execution.
4211
+ *
4212
+ * @generated from message thru.services.v1.BlockFinished
4213
+ */
4214
+ type BlockFinished = Message<"thru.services.v1.BlockFinished"> & {
4215
+ /**
4216
+ * @generated from field: uint64 slot = 1;
4217
+ */
4218
+ slot: bigint;
4219
+ /**
4220
+ * Global counter tracking total activated state across all accounts.
4221
+ * Increments when accounts are created or modified.
4222
+ *
4223
+ * @generated from field: uint64 global_activated_state_counter = 2;
4224
+ */
4225
+ globalActivatedStateCounter: bigint;
4226
+ /**
4227
+ * Global counter tracking total deactivated state across all accounts.
4228
+ * Increments when accounts are deleted or compressed.
4229
+ *
4230
+ * @generated from field: uint64 global_deactivated_state_counter = 3;
4231
+ */
4232
+ globalDeactivatedStateCounter: bigint;
4233
+ /**
4234
+ * Total fees collected from all transactions in this block.
4235
+ *
4236
+ * @generated from field: uint64 collected_fees = 4;
4237
+ */
4238
+ collectedFees: bigint;
4239
+ };
4240
+ /**
4241
+ * Describes the message thru.services.v1.BlockFinished.
4242
+ * Use `create(BlockFinishedSchema)` to create a new message.
4243
+ */
4244
+ declare const BlockFinishedSchema: GenMessage<BlockFinished>;
4245
+ /**
4246
+ * StreamAccountUpdatesResponse contains either an initial snapshot or a delta.
4247
+ *
4248
+ * @generated from message thru.services.v1.StreamAccountUpdatesResponse
4249
+ */
4250
+ type StreamAccountUpdatesResponse = Message<"thru.services.v1.StreamAccountUpdatesResponse"> & {
4251
+ /**
4252
+ * @generated from oneof thru.services.v1.StreamAccountUpdatesResponse.message
4253
+ */
4254
+ message: {
4255
+ /**
4256
+ * @generated from field: thru.core.v1.Account snapshot = 1;
4257
+ */
4258
+ value: Account;
4259
+ case: "snapshot";
4260
+ } | {
4261
+ /**
4262
+ * @generated from field: thru.services.v1.AccountUpdate update = 2;
4263
+ */
4264
+ value: AccountUpdate;
4265
+ case: "update";
4266
+ } | {
4267
+ /**
4268
+ * @generated from field: thru.services.v1.BlockFinished finished = 3;
4269
+ */
4270
+ value: BlockFinished;
4271
+ case: "finished";
4272
+ } | {
4273
+ case: undefined;
4274
+ value?: undefined;
4275
+ };
4276
+ };
4277
+ /**
4278
+ * Describes the message thru.services.v1.StreamAccountUpdatesResponse.
4279
+ * Use `create(StreamAccountUpdatesResponseSchema)` to create a new message.
4280
+ */
4281
+ declare const StreamAccountUpdatesResponseSchema: GenMessage<StreamAccountUpdatesResponse>;
4282
+ /**
4283
+ * StreamTransactionsRequest subscribes to transaction confirmations.
4284
+ *
4285
+ * Filter expressions support the following params:
4286
+ *
4287
+ * - params.min_slot (uint64): Minimum slot for filtering transactions
4288
+ * Example: transaction.slot >= params.min_slot
4289
+ *
4290
+ * - params.max_slot (uint64): Maximum slot for filtering transactions
4291
+ * Example: transaction.slot <= params.max_slot
4292
+ *
4293
+ * - params.slot (uint64): Specific slot for exact match filtering
4294
+ * Example: transaction.slot == params.slot
4295
+ *
4296
+ * - params.min_fee (uint64): Minimum fee for filtering transactions
4297
+ * Example: transaction.header.fee >= params.min_fee
4298
+ *
4299
+ * - params.fee_payer (bytes|Pubkey): Fee payer pubkey for filtering
4300
+ * Example: transaction.header.fee_payer_pubkey.value == params.fee_payer
4301
+ *
4302
+ * - params.signature (bytes|Signature): Transaction signature for filtering
4303
+ * Example: transaction.signature.value == params.signature
4304
+ *
4305
+ * Available transaction fields (thru.core.v1.Transaction):
4306
+ * transaction.signature, transaction.signature.value (bytes),
4307
+ * transaction.slot (uint64), transaction.block_offset (uint32),
4308
+ * transaction.header, transaction.header.version (uint32),
4309
+ * transaction.header.fee (uint64),
4310
+ * transaction.header.fee_payer_pubkey, transaction.header.fee_payer_pubkey.value (bytes),
4311
+ * transaction.execution_result, transaction.execution_result.user_error_code (uint32),
4312
+ * transaction.execution_result.vm_error (int32)
4313
+ *
4314
+ * Available consensus_status field:
4315
+ * consensus_status (int32) - Current consensus status of the transaction
4316
+ * Values: CONSENSUS_STATUS_UNSPECIFIED = 0, CONSENSUS_STATUS_OBSERVED = 1,
4317
+ * CONSENSUS_STATUS_INCLUDED = 2
4318
+ *
4319
+ * Filter expression examples:
4320
+ *
4321
+ * 1. Filter by minimum slot:
4322
+ * Expression: "has(transaction.slot) && transaction.slot >= params.min_slot"
4323
+ * Params: {"min_slot": 1000}
4324
+ *
4325
+ * 2. Filter by slot range:
4326
+ * Expression: "has(transaction.slot) && transaction.slot >= params.min_slot && transaction.slot <= params.max_slot"
4327
+ * Params: {"min_slot": 1000, "max_slot": 2000}
4328
+ *
4329
+ * 3. Filter by specific slot:
4330
+ * Expression: "has(transaction.slot) && transaction.slot == params.slot"
4331
+ * Params: {"slot": 12345}
4332
+ *
4333
+ * 4. Filter by minimum fee:
4334
+ * Expression: "has(transaction.header) && transaction.header.fee >= params.min_fee"
4335
+ * Params: {"min_fee": 5000}
4336
+ *
4337
+ * 5. Filter by fee payer:
4338
+ * Expression: "has(transaction.header.fee_payer_pubkey) && transaction.header.fee_payer_pubkey.value == params.fee_payer"
4339
+ * Params: {"fee_payer": <32-byte pubkey>}
4340
+ *
4341
+ * 6. Filter by transaction signature:
4342
+ * Expression: "has(transaction.signature) && transaction.signature.value == params.signature"
4343
+ * Params: {"signature": <64-byte signature>}
4344
+ *
4345
+ * 7. Filter by header version:
4346
+ * Expression: "has(transaction.header) && transaction.header.version >= uint(0)"
4347
+ *
4348
+ * 8. Filter by successful execution:
4349
+ * Expression: "has(transaction.execution_result) && transaction.execution_result.vm_error == int(0)"
4350
+ *
4351
+ * 9. Filter by user error code:
4352
+ * Expression: "has(transaction.execution_result) && transaction.execution_result.user_error_code == uint(0)"
4353
+ *
4354
+ * 10. Filter by consensus status:
4355
+ * Expression: "consensus_status >= int(2)"
4356
+ * Note: Use >= int(2) for CONSENSUS_STATUS_INCLUDED and above
4357
+ *
4358
+ * 11. Check for execution result presence:
4359
+ * Expression: "has(transaction.execution_result)"
4360
+ *
4361
+ * 12. Filter by transaction with header and slot:
4362
+ * Expression: "has(transaction.slot) && transaction.slot >= uint(0) && has(transaction.header)"
4363
+ *
4364
+ * 13. Combined filters (slot, fee, and status):
4365
+ * Expression: "has(transaction.slot) && transaction.slot >= params.min_slot && has(transaction.header) && transaction.header.fee >= params.min_fee && consensus_status >= int(2)"
4366
+ * Params: {"min_slot": 1000, "min_fee": 5000}
4367
+ *
4368
+ * 14. Filter successful transactions with minimum fee:
4369
+ * Expression: "has(transaction.execution_result) && transaction.execution_result.vm_error == int(0) && has(transaction.header) && transaction.header.fee >= params.min_fee"
4370
+ * Params: {"min_fee": 10000}
4371
+ *
4372
+ * Note: The min_consensus field in the request provides built-in consensus filtering
4373
+ * without requiring a CEL expression. Use it in combination with filter expressions
4374
+ * for more complex filtering logic.
4375
+ *
4376
+ * @generated from message thru.services.v1.StreamTransactionsRequest
4377
+ */
4378
+ type StreamTransactionsRequest = Message<"thru.services.v1.StreamTransactionsRequest"> & {
4379
+ /**
4380
+ * @generated from field: optional thru.common.v1.Filter filter = 1;
4381
+ */
4382
+ filter?: Filter | undefined;
4383
+ /**
4384
+ * @generated from field: optional thru.common.v1.ConsensusStatus min_consensus = 2;
4385
+ */
4386
+ minConsensus?: ConsensusStatus | undefined;
4387
+ };
4388
+ /**
4389
+ * Describes the message thru.services.v1.StreamTransactionsRequest.
4390
+ * Use `create(StreamTransactionsRequestSchema)` to create a new message.
4391
+ */
4392
+ declare const StreamTransactionsRequestSchema: GenMessage<StreamTransactionsRequest>;
4393
+ /**
4394
+ * StreamTransactionsResponse delivers transaction events.
4395
+ *
4396
+ * @generated from message thru.services.v1.StreamTransactionsResponse
4397
+ */
4398
+ type StreamTransactionsResponse = Message<"thru.services.v1.StreamTransactionsResponse"> & {
4399
+ /**
4400
+ * @generated from field: thru.core.v1.Transaction transaction = 1;
4401
+ */
4402
+ transaction?: Transaction | undefined;
4403
+ };
4404
+ /**
4405
+ * Describes the message thru.services.v1.StreamTransactionsResponse.
4406
+ * Use `create(StreamTransactionsResponseSchema)` to create a new message.
4407
+ */
4408
+ declare const StreamTransactionsResponseSchema: GenMessage<StreamTransactionsResponse>;
4409
+ /**
4410
+ * StreamEventsRequest subscribes to chain events.
4411
+ *
4412
+ * Filter expressions support the following params:
4413
+ *
4414
+ * - params.prefix (bytes): Byte prefix for payload filtering
4415
+ * Example: bytesPrefix(event.payload, params.prefix)
4416
+ *
4417
+ * - params.slot (int64): Slot number for comparison
4418
+ * Example: event.slot >= params.slot
4419
+ *
4420
+ * - params.u64 (int64): Generic 64-bit value for payload extraction
4421
+ * Examples:
4422
+ * first8Bytes(event.payload) == params.u64
4423
+ * first4Bytes(event.payload) == params.u64
4424
+ * first1Byte(event.payload) == params.u64
4425
+ *
4426
+ * - params.signature (bytes|Signature|TsSignature): Signature for comparison
4427
+ * Examples:
4428
+ * event.signature.value == params.signature // bytes type
4429
+ * bytesPrefix(event.signature.value, params.signature)
4430
+ * Note: Signature and TsSignature types are auto-converted to bytes
4431
+ *
4432
+ * - params.address (bytes|Pubkey|TaPubkey): Address/pubkey for comparison
4433
+ * Examples:
4434
+ * event.program.value == params.address // bytes type
4435
+ * bytesPrefix(event.program.value, params.address)
4436
+ * Note: Pubkey and TaPubkey types are auto-converted to bytes
4437
+ *
4438
+ * - params.timestamp (int64): Timestamp in seconds for comparison
4439
+ * Example: int(event.timestamp) > params.timestamp
4440
+ *
4441
+ * Available event fields:
4442
+ * event.event_id (string), event.slot (uint64), event.payload (bytes),
4443
+ * event.call_idx (uint32), event.signature (Signature),
4444
+ * event.signature.value (bytes), event.program (Pubkey),
4445
+ * event.program.value (bytes), event.timestamp (Timestamp)
4446
+ *
4447
+ * Note: Unlike ListEventsRequest in QueryService, StreamEventsRequest does NOT support:
4448
+ * event.block_offset, event.program_idx, event.payload_size, event.transaction_signature
4449
+ *
4450
+ * Available filter functions:
4451
+ * - has(field): Check if optional field exists
4452
+ * Example: has(event.program) && has(event.signature)
4453
+ *
4454
+ * - startsWith(string, prefix): Check if string starts with prefix
4455
+ * Example: event.event_id.startsWith("ts")
4456
+ *
4457
+ * - bytesPrefix(bytes, prefix): Check if bytes start with prefix
4458
+ * Examples:
4459
+ * bytesPrefix(event.payload, b"\x01\x00\x00\x00\x00\x00\x00\x00")
4460
+ * bytesPrefix(event.payload, params.prefix)
4461
+ * bytesPrefix(event.program.value, params.address)
4462
+ * bytesPrefix(event.signature.value, params.signature)
4463
+ *
4464
+ * - first1Byte(bytes): Extract first byte as uint
4465
+ * Example: first1Byte(event.payload) == uint(1)
4466
+ *
4467
+ * - first4Bytes(bytes): Extract first 4 bytes as little-endian uint32
4468
+ * Example: first4Bytes(event.payload) == uint(2)
4469
+ *
4470
+ * - first8Bytes(bytes): Extract first 8 bytes as little-endian uint64
4471
+ * Example: first8Bytes(event.payload) == uint(6)
4472
+ *
4473
+ * - uint(value): Convert value to uint for comparison
4474
+ * - int(value): Convert value to int (used for timestamps)
4475
+ *
4476
+ * Filter expression examples:
4477
+ *
4478
+ * 1. Filter by payload type using first1Byte (MESSAGE event type = 1):
4479
+ * Expression: "first1Byte(event.payload) == uint(1)"
4480
+ *
4481
+ * 2. Filter by payload type using first4Bytes (COUNTER event type = 2):
4482
+ * Expression: "first4Bytes(event.payload) == uint(2)"
4483
+ *
4484
+ * 3. Filter by payload type using first8Bytes (PATTERN event type = 6):
4485
+ * Expression: "first8Bytes(event.payload) == uint(6)"
4486
+ *
4487
+ * 4. Filter by payload prefix with params:
4488
+ * Expression: "bytesPrefix(event.payload, params.prefix)"
4489
+ * Params: {"prefix": <bytes, e.g., 0x01000000...>}
4490
+ *
4491
+ * 5. Filter by slot using params:
4492
+ * Expression: "event.slot >= params.slot"
4493
+ * Params: {"slot": 1000}
4494
+ *
4495
+ * 6. Filter by program address (exact match):
4496
+ * Expression: "event.program.value == params.address"
4497
+ * Params: {"address": <32-byte pubkey as bytes, Pubkey, or TaPubkey>}
4498
+ *
4499
+ * 7. Filter by program address (prefix match):
4500
+ * Expression: "bytesPrefix(event.program.value, params.address)"
4501
+ * Params: {"address": <pubkey prefix bytes>}
4502
+ *
4503
+ * 8. Filter by transaction signature (exact match):
4504
+ * Expression: "event.signature.value == params.signature"
4505
+ * Params: {"signature": <64-byte signature as bytes, Signature, or TsSignature>}
4506
+ *
4507
+ * 9. Filter by transaction signature (prefix match):
4508
+ * Expression: "bytesPrefix(event.signature.value, params.signature)"
4509
+ * Params: {"signature": <signature prefix bytes>}
4510
+ *
4511
+ * 10. Filter by call_idx (0 = main program, 1+ = CPI calls):
4512
+ * Expression: "event.call_idx == uint(0)"
4513
+ * Expression: "event.call_idx == uint(1)"
4514
+ *
4515
+ * 11. Filter by event_id prefix:
4516
+ * Expression: "event.event_id.startsWith(\"ts\")"
4517
+ *
4518
+ * 12. Filter by timestamp (events in last hour):
4519
+ * Expression: "has(event.timestamp) && int(event.timestamp) > int(1700000000)"
4520
+ *
4521
+ * 13. Filter by timestamp using params:
4522
+ * Expression: "has(event.timestamp) && int(event.timestamp) > params.timestamp"
4523
+ * Params: {"timestamp": 1700000000}
4524
+ *
4525
+ * 14. Check field existence:
4526
+ * Expression: "has(event.program) && has(event.signature)"
4527
+ *
4528
+ * 15. Filter using params.u64 with first8Bytes:
4529
+ * Expression: "first8Bytes(event.payload) == params.u64"
4530
+ * Params: {"u64": 6}
4531
+ *
4532
+ * 16. Filter using params.u64 with first4Bytes:
4533
+ * Expression: "first4Bytes(event.payload) == params.u64"
4534
+ * Params: {"u64": 2}
4535
+ *
4536
+ * 17. Filter using params.u64 with first1Byte:
4537
+ * Expression: "first1Byte(event.payload) == params.u64"
4538
+ * Params: {"u64": 1}
4539
+ *
4540
+ * 18. Combined filter (slot + payload type + call_idx):
4541
+ * Expression: "event.slot > uint(1000) && first1Byte(event.payload) == uint(1) && event.call_idx == uint(0)"
4542
+ *
4543
+ * 19. Combined filter (call_idx + program address):
4544
+ * Expression: "event.call_idx == uint(1) && event.program.value == params.address"
4545
+ * Params: {"address": <32-byte CPI target program pubkey>}
4546
+ *
4547
+ * 20. Timestamp range filter:
4548
+ * Expression: "has(event.timestamp) && int(event.timestamp) > int(1700000000) && int(event.timestamp) < int(1700100000)"
4549
+ *
4550
+ * @generated from message thru.services.v1.StreamEventsRequest
4551
+ */
4552
+ type StreamEventsRequest = Message<"thru.services.v1.StreamEventsRequest"> & {
4553
+ /**
4554
+ * @generated from field: optional thru.common.v1.Filter filter = 1;
4555
+ */
4556
+ filter?: Filter | undefined;
4557
+ };
4558
+ /**
4559
+ * Describes the message thru.services.v1.StreamEventsRequest.
4560
+ * Use `create(StreamEventsRequestSchema)` to create a new message.
4561
+ */
4562
+ declare const StreamEventsRequestSchema: GenMessage<StreamEventsRequest>;
4563
+ /**
4564
+ * StreamEventsResponse delivers event payloads.
4565
+ *
4566
+ * @generated from message thru.services.v1.StreamEventsResponse
4567
+ */
4568
+ type StreamEventsResponse = Message<"thru.services.v1.StreamEventsResponse"> & {
4569
+ /**
4570
+ * @generated from field: string event_id = 1;
4571
+ */
4572
+ eventId: string;
4573
+ /**
4574
+ * @generated from field: optional bytes payload = 2;
4575
+ */
4576
+ payload?: Uint8Array | undefined;
4577
+ /**
4578
+ * @generated from field: optional google.protobuf.Timestamp timestamp = 3;
4579
+ */
4580
+ timestamp?: Timestamp | undefined;
4581
+ /**
4582
+ * @generated from field: thru.common.v1.Pubkey program = 4;
4583
+ */
4584
+ program?: Pubkey | undefined;
4585
+ /**
4586
+ * @generated from field: uint32 call_idx = 5;
4587
+ */
4588
+ callIdx: number;
4589
+ /**
4590
+ * @generated from field: thru.common.v1.Signature signature = 6;
4591
+ */
4592
+ signature?: Signature | undefined;
4593
+ /**
4594
+ * @generated from field: uint64 slot = 7;
4595
+ */
4596
+ slot: bigint;
4597
+ };
4598
+ /**
4599
+ * Describes the message thru.services.v1.StreamEventsResponse.
4600
+ * Use `create(StreamEventsResponseSchema)` to create a new message.
4601
+ */
4602
+ declare const StreamEventsResponseSchema: GenMessage<StreamEventsResponse>;
4603
+ /**
4604
+ * TrackTransactionRequest subscribes to status updates for a transaction.
4605
+ *
4606
+ * @generated from message thru.services.v1.TrackTransactionRequest
4607
+ */
4608
+ type TrackTransactionRequest = Message<"thru.services.v1.TrackTransactionRequest"> & {
4609
+ /**
4610
+ * @generated from field: thru.common.v1.Signature signature = 1;
4611
+ */
4612
+ signature?: Signature | undefined;
4613
+ /**
4614
+ * @generated from field: optional google.protobuf.Duration timeout = 2;
4615
+ */
4616
+ timeout?: Duration | undefined;
4617
+ };
4618
+ /**
4619
+ * Describes the message thru.services.v1.TrackTransactionRequest.
4620
+ * Use `create(TrackTransactionRequestSchema)` to create a new message.
4621
+ */
4622
+ declare const TrackTransactionRequestSchema: GenMessage<TrackTransactionRequest>;
4623
+ /**
4624
+ * TrackTransactionResponse reports status transitions for a transaction.
4625
+ *
4626
+ * @generated from message thru.services.v1.TrackTransactionResponse
4627
+ */
4628
+ type TrackTransactionResponse = Message<"thru.services.v1.TrackTransactionResponse"> & {
4629
+ /**
4630
+ * @generated from field: thru.common.v1.Signature signature = 1;
4631
+ */
4632
+ signature?: Signature | undefined;
4633
+ /**
4634
+ * @generated from field: thru.common.v1.ConsensusStatus consensus_status = 2;
4635
+ */
4636
+ consensusStatus: ConsensusStatus;
4637
+ /**
4638
+ * @generated from field: thru.core.v1.TransactionExecutionResult execution_result = 3;
4639
+ */
4640
+ executionResult?: TransactionExecutionResult | undefined;
4641
+ /**
4642
+ * Slot in which this transaction landed. Zero until the producing block
4643
+ * has been observed by the ingestor; consumers waiting to anchor downstream
4644
+ * ClickHouse reads (e.g. GetTransaction) should ignore zero slots and wait
4645
+ * for the next response.
4646
+ *
4647
+ * @generated from field: uint64 slot = 4;
4648
+ */
4649
+ slot: bigint;
4650
+ };
4651
+ /**
4652
+ * Describes the message thru.services.v1.TrackTransactionResponse.
4653
+ * Use `create(TrackTransactionResponseSchema)` to create a new message.
4654
+ */
4655
+ declare const TrackTransactionResponseSchema: GenMessage<TrackTransactionResponse>;
4656
+ /**
4657
+ * StreamSlotMetricsRequest subscribes to per-slot metrics updates.
4658
+ * Metrics are emitted after each block's execution completes.
4659
+ *
4660
+ * @generated from message thru.services.v1.StreamSlotMetricsRequest
4661
+ */
4662
+ type StreamSlotMetricsRequest = Message<"thru.services.v1.StreamSlotMetricsRequest"> & {
4663
+ /**
4664
+ * Optional starting slot. If specified, starts streaming from this slot.
4665
+ * If not specified, starts from the next executed slot.
4666
+ *
4667
+ * @generated from field: optional uint64 start_slot = 1;
4668
+ */
4669
+ startSlot?: bigint | undefined;
4670
+ };
4671
+ /**
4672
+ * Describes the message thru.services.v1.StreamSlotMetricsRequest.
4673
+ * Use `create(StreamSlotMetricsRequestSchema)` to create a new message.
4674
+ */
4675
+ declare const StreamSlotMetricsRequestSchema: GenMessage<StreamSlotMetricsRequest>;
4676
+ /**
4677
+ * StreamSlotMetricsResponse delivers slot metrics after execution completes.
4678
+ *
4679
+ * @generated from message thru.services.v1.StreamSlotMetricsResponse
4680
+ */
4681
+ type StreamSlotMetricsResponse = Message<"thru.services.v1.StreamSlotMetricsResponse"> & {
4682
+ /**
4683
+ * Block slot number.
4684
+ *
4685
+ * @generated from field: uint64 slot = 1;
4686
+ */
4687
+ slot: bigint;
4688
+ /**
4689
+ * Global counter tracking total activated state across all accounts.
4690
+ *
4691
+ * @generated from field: uint64 global_activated_state_counter = 2;
4692
+ */
4693
+ globalActivatedStateCounter: bigint;
4694
+ /**
4695
+ * Global counter tracking total deactivated state across all accounts.
4696
+ *
4697
+ * @generated from field: uint64 global_deactivated_state_counter = 3;
4698
+ */
4699
+ globalDeactivatedStateCounter: bigint;
4700
+ /**
4701
+ * Total fees collected from all transactions in this block.
4702
+ *
4703
+ * @generated from field: uint64 collected_fees = 4;
4704
+ */
4705
+ collectedFees: bigint;
4706
+ /**
4707
+ * Block timestamp.
4708
+ *
4709
+ * @generated from field: google.protobuf.Timestamp block_timestamp = 5;
4710
+ */
4711
+ blockTimestamp?: Timestamp | undefined;
4712
+ };
4713
+ /**
4714
+ * Describes the message thru.services.v1.StreamSlotMetricsResponse.
4715
+ * Use `create(StreamSlotMetricsResponseSchema)` to create a new message.
4716
+ */
4717
+ declare const StreamSlotMetricsResponseSchema: GenMessage<StreamSlotMetricsResponse>;
4718
+ /**
4719
+ * StreamHeightRequest subscribes to real-time height updates.
4720
+ *
4721
+ * @generated from message thru.services.v1.StreamHeightRequest
4722
+ */
4723
+ type StreamHeightRequest = Message<"thru.services.v1.StreamHeightRequest"> & {};
4724
+ /**
4725
+ * Describes the message thru.services.v1.StreamHeightRequest.
4726
+ * Use `create(StreamHeightRequestSchema)` to create a new message.
4727
+ */
4728
+ declare const StreamHeightRequestSchema: GenMessage<StreamHeightRequest>;
4729
+ /**
4730
+ * StreamHeightResponse delivers height update events.
4731
+ *
4732
+ * @generated from message thru.services.v1.StreamHeightResponse
4733
+ */
4734
+ type StreamHeightResponse = Message<"thru.services.v1.StreamHeightResponse"> & {
4735
+ /**
4736
+ * @generated from field: uint64 finalized = 1;
4737
+ */
4738
+ finalized: bigint;
4739
+ /**
4740
+ * @generated from field: uint64 locally_executed = 2;
4741
+ */
4742
+ locallyExecuted: bigint;
4743
+ /**
4744
+ * @generated from field: uint64 cluster_executed = 3;
4745
+ */
4746
+ clusterExecuted: bigint;
4747
+ };
4748
+ /**
4749
+ * Describes the message thru.services.v1.StreamHeightResponse.
4750
+ * Use `create(StreamHeightResponseSchema)` to create a new message.
4751
+ */
4752
+ declare const StreamHeightResponseSchema: GenMessage<StreamHeightResponse>;
4753
+ /**
4754
+ * StreamNodeRecordsRequest subscribes to node record updates from the gossip network.
4755
+ *
4756
+ * @generated from message thru.services.v1.StreamNodeRecordsRequest
4757
+ */
4758
+ type StreamNodeRecordsRequest = Message<"thru.services.v1.StreamNodeRecordsRequest"> & {};
4759
+ /**
4760
+ * Describes the message thru.services.v1.StreamNodeRecordsRequest.
4761
+ * Use `create(StreamNodeRecordsRequestSchema)` to create a new message.
4762
+ */
4763
+ declare const StreamNodeRecordsRequestSchema: GenMessage<StreamNodeRecordsRequest>;
4764
+ /**
4765
+ * StreamNodeRecordsResponse delivers node record updates.
4766
+ *
4767
+ * @generated from message thru.services.v1.StreamNodeRecordsResponse
4768
+ */
4769
+ type StreamNodeRecordsResponse = Message<"thru.services.v1.StreamNodeRecordsResponse"> & {
4770
+ /**
4771
+ * @generated from oneof thru.services.v1.StreamNodeRecordsResponse.message
4772
+ */
4773
+ message: {
4774
+ /**
4775
+ * A node record (initial snapshot or update).
4776
+ *
4777
+ * @generated from field: thru.core.v1.NodeRecord record = 1;
4778
+ */
4779
+ value: NodeRecord;
4780
+ case: "record";
4781
+ } | {
4782
+ /**
4783
+ * Signals the initial batch of records is complete.
4784
+ *
4785
+ * @generated from field: bool finished = 2;
4786
+ */
4787
+ value: boolean;
4788
+ case: "finished";
4789
+ } | {
4790
+ case: undefined;
4791
+ value?: undefined;
4792
+ };
4793
+ };
4794
+ /**
4795
+ * Describes the message thru.services.v1.StreamNodeRecordsResponse.
4796
+ * Use `create(StreamNodeRecordsResponseSchema)` to create a new message.
4797
+ */
4798
+ declare const StreamNodeRecordsResponseSchema: GenMessage<StreamNodeRecordsResponse>;
4799
+ /**
4800
+ * StreamingService serves server-streaming gRPC APIs for real-time data.
4801
+ *
4802
+ * @generated from service thru.services.v1.StreamingService
4803
+ */
4804
+ declare const StreamingService: GenService<{
4805
+ /**
4806
+ * @generated from rpc thru.services.v1.StreamingService.StreamBlocks
4807
+ */
4808
+ streamBlocks: {
4809
+ methodKind: "server_streaming";
4810
+ input: typeof StreamBlocksRequestSchema;
4811
+ output: typeof StreamBlocksResponseSchema;
4812
+ };
4813
+ /**
4814
+ * @generated from rpc thru.services.v1.StreamingService.StreamAccountUpdates
4815
+ */
4816
+ streamAccountUpdates: {
4817
+ methodKind: "server_streaming";
4818
+ input: typeof StreamAccountUpdatesRequestSchema;
4819
+ output: typeof StreamAccountUpdatesResponseSchema;
4820
+ };
4821
+ /**
4822
+ * @generated from rpc thru.services.v1.StreamingService.StreamTransactions
4823
+ */
4824
+ streamTransactions: {
4825
+ methodKind: "server_streaming";
4826
+ input: typeof StreamTransactionsRequestSchema;
4827
+ output: typeof StreamTransactionsResponseSchema;
4828
+ };
4829
+ /**
4830
+ * @generated from rpc thru.services.v1.StreamingService.StreamEvents
4831
+ */
4832
+ streamEvents: {
4833
+ methodKind: "server_streaming";
4834
+ input: typeof StreamEventsRequestSchema;
4835
+ output: typeof StreamEventsResponseSchema;
4836
+ };
4837
+ /**
4838
+ * @generated from rpc thru.services.v1.StreamingService.TrackTransaction
4839
+ */
4840
+ trackTransaction: {
4841
+ methodKind: "server_streaming";
4842
+ input: typeof TrackTransactionRequestSchema;
4843
+ output: typeof TrackTransactionResponseSchema;
4844
+ };
4845
+ /**
4846
+ * @generated from rpc thru.services.v1.StreamingService.StreamHeight
4847
+ */
4848
+ streamHeight: {
4849
+ methodKind: "server_streaming";
4850
+ input: typeof StreamHeightRequestSchema;
4851
+ output: typeof StreamHeightResponseSchema;
4852
+ };
4853
+ /**
4854
+ * Stream per-slot metrics including state counters and collected fees.
4855
+ * Metrics are emitted after each block's execution completes.
4856
+ *
4857
+ * @generated from rpc thru.services.v1.StreamingService.StreamSlotMetrics
4858
+ */
4859
+ streamSlotMetrics: {
4860
+ methodKind: "server_streaming";
4861
+ input: typeof StreamSlotMetricsRequestSchema;
4862
+ output: typeof StreamSlotMetricsResponseSchema;
4863
+ };
4864
+ /**
4865
+ * Stream node records from the gossip network.
4866
+ * Returns an initial snapshot of all known records, followed by live updates.
4867
+ *
4868
+ * @generated from rpc thru.services.v1.StreamingService.StreamNodeRecords
4869
+ */
4870
+ streamNodeRecords: {
4871
+ methodKind: "server_streaming";
4872
+ input: typeof StreamNodeRecordsRequestSchema;
4873
+ output: typeof StreamNodeRecordsResponseSchema;
4874
+ };
4875
+ }>;
4876
+
4877
+ export { type GenerateStateProofRequest as $, type Account as A, type BatchSendTransactionsRequest as B, BlockHeaderSchema as C, BlockSchema as D, BlockView as E, BlockViewSchema as F, type BytesList as G, BytesListSchema as H, type CelFilterValidation as I, CelFilterValidationSchema as J, CommandService as K, ConsensusStatus as L, ConsensusStatusSchema as M, type CurrentOrHistoricalVersion as N, CurrentOrHistoricalVersionSchema as O, type CurrentVersion as P, CurrentVersionSchema as Q, type DataSlice as R, DataSliceSchema as S, type Event as T, EventSchema as U, ExecutionStatus as V, ExecutionStatusSchema as W, type Filter as X, type FilterParamValue as Y, FilterParamValueSchema as Z, FilterSchema as _, type AccountData as a, type ListBlocksResponse as a$, GenerateStateProofRequestSchema as a0, type GenerateStateProofResponse as a1, GenerateStateProofResponseSchema as a2, type GetAccountRequest as a3, GetAccountRequestSchema as a4, type GetActiveStateHashesRequest as a5, GetActiveStateHashesRequestSchema as a6, type GetActiveStateHashesResponse as a7, GetActiveStateHashesResponseSchema as a8, type GetBlockRequest as a9, GetRawBlockRequestSchema as aA, type GetRawTransactionRequest as aB, GetRawTransactionRequestSchema as aC, type GetSlotMetricsRequest as aD, GetSlotMetricsRequestSchema as aE, type GetSlotMetricsResponse as aF, GetSlotMetricsResponseSchema as aG, type GetStateRootsRequest as aH, GetStateRootsRequestSchema as aI, type GetStateRootsResponse as aJ, GetStateRootsResponseSchema as aK, type GetTransactionRequest as aL, GetTransactionRequestSchema as aM, type GetTransactionStatusRequest as aN, GetTransactionStatusRequestSchema as aO, type GetVersionRequest as aP, GetVersionRequestSchema as aQ, type GetVersionResponse as aR, GetVersionResponseSchema as aS, type Hash as aT, HashSchema as aU, type ListAccountsRequest as aV, ListAccountsRequestSchema as aW, type ListAccountsResponse as aX, ListAccountsResponseSchema as aY, type ListBlocksRequest as aZ, ListBlocksRequestSchema as a_, GetBlockRequestSchema as aa, type GetChainInfoRequest as ab, GetChainInfoRequestSchema as ac, type GetChainInfoResponse as ad, GetChainInfoResponseSchema as ae, type GetEventRequest as af, GetEventRequestSchema as ag, type GetHeightRequest as ah, GetHeightRequestSchema as ai, type GetHeightResponse as aj, GetHeightResponseSchema as ak, type GetNodePubkeyRequest as al, GetNodePubkeyRequestSchema as am, type GetNodePubkeyResponse as an, GetNodePubkeyResponseSchema as ao, type GetNodeRecordsRequest as ap, GetNodeRecordsRequestSchema as aq, type GetNodeRecordsResponse as ar, GetNodeRecordsResponseSchema as as, type GetNodeStatusRequest as at, GetNodeStatusRequestSchema as au, type GetNodeStatusResponse as av, GetNodeStatusResponseSchema as aw, type GetRawAccountRequest as ax, GetRawAccountRequestSchema as ay, type GetRawBlockRequest as az, AccountDataSchema as b, StreamAccountUpdatesRequestSchema as b$, ListBlocksResponseSchema as b0, type ListEventsRequest as b1, ListEventsRequestSchema as b2, type ListEventsResponse as b3, ListEventsResponseSchema as b4, type ListSlotMetricsRequest as b5, ListSlotMetricsRequestSchema as b6, type ListSlotMetricsResponse as b7, ListSlotMetricsResponseSchema as b8, type ListTransactionsForAccountRequest as b9, PubkeySchema as bA, QueryService as bB, type RawAccount as bC, RawAccountSchema as bD, type RawBlock as bE, RawBlockSchema as bF, type RawTransaction as bG, RawTransactionSchema as bH, type SendAndTrackTxnRequest as bI, SendAndTrackTxnRequestSchema as bJ, type SendAndTrackTxnResponse as bK, SendAndTrackTxnResponseSchema as bL, type SendTransactionRequest as bM, SendTransactionRequestSchema as bN, type SendTransactionResponse as bO, SendTransactionResponseSchema as bP, type Signature as bQ, SignatureSchema as bR, type StateProof as bS, type StateProofRequest as bT, StateProofRequestSchema as bU, StateProofSchema as bV, StateProofType as bW, StateProofTypeSchema as bX, type StateRootEntry as bY, StateRootEntrySchema as bZ, type StreamAccountUpdatesRequest as b_, ListTransactionsForAccountRequestSchema as ba, type ListTransactionsForAccountResponse as bb, ListTransactionsForAccountResponseSchema as bc, type ListTransactionsRequest as bd, ListTransactionsRequestSchema as be, type ListTransactionsResponse as bf, ListTransactionsResponseSchema as bg, type NodeConsensusStatus as bh, NodeConsensusStatusSchema as bi, type NodeContact as bj, NodeContactSchema as bk, NodeMode as bl, NodeModeSchema as bm, type NodeProtocol as bn, NodeProtocolSchema as bo, type NodeRecord as bp, NodeRecordSchema as bq, type NodeRepairStatus as br, NodeRepairStatusSchema as bs, type PageRequest as bt, PageRequestSchema as bu, type PageResponse as bv, PageResponseSchema as bw, type Pubkey as bx, type PubkeyList as by, PubkeyListSchema as bz, type AccountFlags as c, file_thru_core_v1_transaction as c$, type StreamAccountUpdatesResponse as c0, StreamAccountUpdatesResponseSchema as c1, type StreamBlocksRequest as c2, StreamBlocksRequestSchema as c3, type StreamBlocksResponse as c4, StreamBlocksResponseSchema as c5, type StreamEventsRequest as c6, StreamEventsRequestSchema as c7, type StreamEventsResponse as c8, StreamEventsResponseSchema as c9, type TransactionEvent as cA, TransactionEventSchema as cB, type TransactionExecutionResult as cC, TransactionExecutionResultSchema as cD, type TransactionHeader as cE, TransactionHeaderSchema as cF, TransactionSchema as cG, type TransactionStatus as cH, TransactionStatusSchema as cI, TransactionView as cJ, TransactionViewSchema as cK, TransactionVmError as cL, TransactionVmErrorSchema as cM, type TsSignature as cN, TsSignatureSchema as cO, type VersionContext as cP, type VersionContextMetadata as cQ, VersionContextMetadataSchema as cR, VersionContextSchema as cS, file_thru_common_v1_consensus as cT, file_thru_common_v1_filters as cU, file_thru_common_v1_pagination as cV, file_thru_common_v1_primitives as cW, file_thru_core_v1_account as cX, file_thru_core_v1_block as cY, file_thru_core_v1_node as cZ, file_thru_core_v1_state as c_, type StreamHeightRequest as ca, StreamHeightRequestSchema as cb, type StreamHeightResponse as cc, StreamHeightResponseSchema as cd, type StreamNodeRecordsRequest as ce, StreamNodeRecordsRequestSchema as cf, type StreamNodeRecordsResponse as cg, StreamNodeRecordsResponseSchema as ch, type StreamSlotMetricsRequest as ci, StreamSlotMetricsRequestSchema as cj, type StreamSlotMetricsResponse as ck, StreamSlotMetricsResponseSchema as cl, type StreamTransactionsRequest as cm, StreamTransactionsRequestSchema as cn, type StreamTransactionsResponse as co, StreamTransactionsResponseSchema as cp, StreamingService as cq, SubmissionStatus as cr, SubmissionStatusSchema as cs, type TaPubkey as ct, TaPubkeySchema as cu, type TrackTransactionRequest as cv, TrackTransactionRequestSchema as cw, type TrackTransactionResponse as cx, TrackTransactionResponseSchema as cy, type Transaction as cz, AccountFlagsSchema as d, file_thru_core_v1_types as d0, file_thru_services_v1_command_service as d1, file_thru_services_v1_query_service as d2, file_thru_services_v1_streaming_service as d3, type AccountMeta as e, AccountMetaSchema as f, type AccountPage as g, AccountPageSchema as h, AccountSchema as i, type AccountUpdate as j, AccountUpdateSchema as k, AccountView as l, AccountViewSchema as m, type ActiveStateHashEntry as n, ActiveStateHashEntrySchema as o, BatchSendTransactionsRequestSchema as p, type BatchSendTransactionsResponse as q, BatchSendTransactionsResponseSchema as r, type Block as s, type BlockFinished as t, BlockFinishedSchema as u, type BlockFooter as v, BlockFooterSchema as w, type BlockHash as x, BlockHashSchema as y, type BlockHeader as z };