muta_protocol/types/
transaction.rs1use bytes::Bytes;
2
3use crate::types::primitive::{Hash, JsonString};
4
5#[derive(Clone, Debug, PartialEq, Eq)]
6pub struct RawTransaction {
7 pub chain_id: Hash,
8 pub nonce: Hash,
9 pub timeout: u64,
10 pub cycles_price: u64,
11 pub cycles_limit: u64,
12 pub request: TransactionRequest,
13}
14
15#[derive(Clone, Debug, PartialEq, Eq)]
16pub struct TransactionRequest {
17 pub service_name: String,
18 pub method: String,
19 pub payload: JsonString,
20}
21
22#[derive(Clone, Debug, PartialEq, Eq)]
23pub struct SignedTransaction {
24 pub raw: RawTransaction,
25 pub tx_hash: Hash,
26 pub pubkey: Bytes,
27 pub signature: Bytes,
28}