pub const VERSION: u32 = 2; #[derive(serde::Serialize, serde::Deserialize, Debug)] pub struct Request { pub tty: Option, pub action: Action, } #[derive(serde::Serialize, serde::Deserialize, Debug)] #[serde(tag = "type")] pub enum Action { Login, Unlock, Lock, Sync, Decrypt { cipherstring: String, org_id: Option, }, Encrypt { plaintext: String, org_id: Option, }, Quit, Version, } #[derive(serde::Serialize, serde::Deserialize, Debug)] #[serde(tag = "type")] pub enum Response { Ack, Error { error: String }, Decrypt { plaintext: String }, Encrypt { cipherstring: String }, Version { version: u32 }, }