pub trait AdminControl<Storage: ContractStorage>: ContractContext<Storage> {
// Provided methods
fn init(&mut self) { ... }
fn add_admin(&mut self, address: Key) { ... }
fn disable_admin(&mut self, address: Key) { ... }
fn add_admin_without_checked(&mut self, address: Key) { ... }
fn assert_caller_is_admin(&self) { ... }
}