iota_grpc_types/proto/generated/
iota.grpc.v1.transaction.rs

1// Copyright (c) Mysten Labs, Inc.
2// Modifications Copyright (c) 2025 IOTA Stiftung
3// SPDX-License-Identifier: Apache-2.0
4
5// This file is @generated by prost-build.
6/// A transaction.
7#[non_exhaustive]
8#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
9pub struct Transaction {
10    /// The digest of this Transaction.
11    #[prost(message, optional, tag = "1")]
12    pub digest: ::core::option::Option<super::types::Digest>,
13    /// This Transaction serialized as BCS.
14    #[prost(message, optional, tag = "2")]
15    pub bcs: ::core::option::Option<super::bcs::BcsData>,
16}
17/// The effects of executing a transaction.
18#[non_exhaustive]
19#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
20pub struct TransactionEffects {
21    /// The digest of this TransactionEffects.
22    #[prost(message, optional, tag = "1")]
23    pub digest: ::core::option::Option<super::types::Digest>,
24    /// This TransactionEffects serialized as BCS.
25    #[prost(message, optional, tag = "2")]
26    pub bcs: ::core::option::Option<super::bcs::BcsData>,
27}
28/// iota.grpc.v1.event.Events emitted during the successful execution of a transaction.
29#[non_exhaustive]
30#[derive(Clone, PartialEq, ::prost::Message)]
31pub struct TransactionEvents {
32    /// The digest of this TransactionEvents.
33    #[prost(message, optional, tag = "1")]
34    pub digest: ::core::option::Option<super::types::Digest>,
35    /// List of events emitted by a transaction.
36    #[prost(message, optional, tag = "2")]
37    pub events: ::core::option::Option<super::event::Events>,
38}
39/// A transaction that has been executed, along with its signatures, effects, events and objects.
40#[non_exhaustive]
41#[derive(Clone, PartialEq, ::prost::Message)]
42pub struct ExecutedTransaction {
43    /// The transaction itself.
44    #[prost(message, optional, tag = "1")]
45    pub transaction: ::core::option::Option<Transaction>,
46    /// List of user signatures that are used to authorize the
47    /// execution of this transaction.
48    #[prost(message, optional, tag = "2")]
49    pub signatures: ::core::option::Option<super::signatures::UserSignatures>,
50    /// The `TransactionEffects` for this transaction.
51    #[prost(message, optional, tag = "3")]
52    pub effects: ::core::option::Option<TransactionEffects>,
53    /// The `TransactionEvents` for this transaction.
54    ///
55    /// This field might be empty, even if it was explicitly requested, if the
56    /// transaction didn't produce any events.
57    /// `iota.types.TransactionEffects.events_digest` is populated if the
58    /// transaction produced any events.
59    #[prost(message, optional, tag = "4")]
60    pub events: ::core::option::Option<TransactionEvents>,
61    /// The sequence number for the checkpoint that includes this transaction.
62    #[prost(uint64, optional, tag = "5")]
63    pub checkpoint: ::core::option::Option<u64>,
64    /// The Unix timestamp of the checkpoint that includes this transaction.
65    #[prost(message, optional, tag = "6")]
66    pub timestamp: ::core::option::Option<::prost_types::Timestamp>,
67    /// Set of input objects used by this transaction.
68    #[prost(message, optional, tag = "7")]
69    pub input_objects: ::core::option::Option<super::object::Objects>,
70    /// Set of output objects produced by this transaction.
71    #[prost(message, optional, tag = "8")]
72    pub output_objects: ::core::option::Option<super::object::Objects>,
73}
74#[non_exhaustive]
75#[derive(Clone, PartialEq, ::prost::Message)]
76pub struct ExecutedTransactions {
77    #[prost(message, repeated, tag = "1")]
78    pub executed_transactions: ::prost::alloc::vec::Vec<ExecutedTransaction>,
79}