use chrono::{DateTime, Utc};
use fuel_core_interfaces::common::{fuel_tx::Bytes32, fuel_vm::prelude::ProgramState};
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Serialize, Deserialize)]
pub enum TransactionStatus {
Submitted {
time: DateTime<Utc>,
},
Success {
block_id: Bytes32,
time: DateTime<Utc>,
result: ProgramState,
},
Failed {
block_id: Bytes32,
time: DateTime<Utc>,
reason: String,
result: Option<ProgramState>,
},
}