use ink::primitives::AccountId;
use ink::{contract_ref, env::DefaultEnvironment};
pub type PausableRef = contract_ref!(Pausable, DefaultEnvironment);
#[ink::trait_definition]
pub trait Pausable {
#[ink(message)]
fn paused(&self) -> bool;
}
pub trait PausableStorage {
fn paused(&self) -> bool;
fn set_paused(&mut self, pause: bool);
}
pub trait PausableInternal {
fn _paused(&self) -> bool;
fn _pause(&mut self) -> Result<(), PausableError>;
fn _unpause(&mut self) -> Result<(), PausableError>;
fn _ensure_paused(&self) -> Result<(), PausableError>;
fn _ensure_not_paused(&self) -> Result<(), PausableError>;
}