use std::time::SystemTime;
use crate::StoredValue;
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum ChangeSource {
Local,
External,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum ChangeEvent {
Set {
key: String,
old_value: Option<StoredValue>,
new_value: StoredValue,
source: ChangeSource,
timestamp: SystemTime,
},
Deleted {
key: String,
old_value: StoredValue,
source: ChangeSource,
timestamp: SystemTime,
},
DeserializeFailure {
key: String,
raw: String,
error: String,
source: ChangeSource,
timestamp: SystemTime,
},
}