pub trait SyncTokenExtension {
// Required method
fn get_synctoken(&self) -> String;
// Provided methods
fn get_prop(
&self,
prop: &SyncTokenExtensionPropName,
) -> Result<SyncTokenExtensionProp, Error> { ... }
fn set_prop(&self, _prop: SyncTokenExtensionProp) -> Result<(), Error> { ... }
fn remove_prop(
&self,
_prop: &SyncTokenExtensionPropName,
) -> Result<(), Error> { ... }
}