#![cfg_attr(not(feature = "std"), no_std)]
pub mod v1;
pub mod v2;
use codec::{Decode, DecodeWithMemTracking, Encode};
use pezframe_support::PalletError;
use pezsp_arithmetic::traits::{BaseArithmetic, Unsigned};
use pezsp_core::RuntimeDebug;
use scale_info::TypeInfo;
pub use pezsnowbridge_verification_primitives::*;
#[derive(
Copy, Clone, Encode, Decode, DecodeWithMemTracking, PartialEq, Eq, RuntimeDebug, TypeInfo,
)]
pub enum OperatingMode {
Normal,
RejectingOutboundMessages,
}
pub trait SendMessageFeeProvider {
type Balance: BaseArithmetic + Unsigned + Copy;
fn local_fee() -> Self::Balance;
}
#[derive(
Copy,
Clone,
Encode,
Decode,
DecodeWithMemTracking,
PartialEq,
Eq,
RuntimeDebug,
PalletError,
TypeInfo,
)]
pub enum SendError {
MessageTooLarge,
Halted,
InvalidChannel,
InvalidOrigin,
}