use crate::atom::molecule_types::{MoleculeStatus, MoleculeUpdate};
use chrono::{DateTime, Utc};
pub trait MoleculeBehavior {
fn uuid(&self) -> &str;
fn updated_at(&self) -> DateTime<Utc>;
fn status(&self) -> &MoleculeStatus;
fn set_status(&mut self, status: &MoleculeStatus, source_pub_key: String);
fn update_history(&self) -> &Vec<MoleculeUpdate>;
}