use serde::{Serialize, de::DeserializeOwned};
const SESSION_KEY_PREFIX: &str = "__carapax_dialogue";
pub trait DialogueState: Default + DeserializeOwned + Serialize {
fn dialogue_name() -> &'static str;
fn session_key() -> String {
format!("{}:{}", SESSION_KEY_PREFIX, Self::dialogue_name())
}
}