use std::borrow::Cow; #[derive(Clone)] pub struct Tag(pub String); pub enum Response<'a> { Done(ResponseDone<'a>), } pub struct ResponseDone<'a> { pub tag: Tag, pub status: Status, pub code: Option>, pub info: Option>, } pub enum Status { Ok, No, Bad, PreAuth, Bye, } pub enum ResponseCode<'a> { Capabilities(Vec>), } pub enum Capability<'a> { Imap4rev1, Auth(Cow<'a, str>), Atom(Cow<'a, str>), }