#![cfg_attr(not(feature = "std"), no_std)]
pub mod v1;
pub mod v2;
use codec::{Decode, DecodeWithMemTracking, Encode};
use frame_support::PalletError;
use scale_info::TypeInfo;
use sp_arithmetic::traits::{BaseArithmetic, Unsigned};
use Debug;
pub use snowbridge_verification_primitives::*;
#[derive(Copy, Clone, Encode, Decode, DecodeWithMemTracking, PartialEq, Eq, Debug, 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, Debug, PalletError, TypeInfo,
)]
pub enum SendError {
MessageTooLarge,
Halted,
InvalidChannel,
InvalidOrigin,
}