1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
use parity_scale_codec::{Decode, Encode, MaxEncodedLen};
use sp_core::RuntimeDebug;

// Proxy Pallet Config
/// The type used to represent the kinds of proxying allowed.
#[derive(
	Copy,
	Clone,
	Eq,
	PartialEq,
	Ord,
	PartialOrd,
	Encode,
	Decode,
	RuntimeDebug,
	MaxEncodedLen,
	scale_info::TypeInfo,
)]
pub enum ProxyType {
	/// Fully permissioned proxy. Can execute any call on behalf of _proxied_.
	Any = 0,
	/// Can execute any call that does not transfer funds or assets.
	NonTransfer = 1,
	Governance = 2,
	Staking = 3,
	// Skip: SudoBalances = 4, IdentityJudgement = 5,
	/// Proxy with the ability to reject time-delay proxy announcements.
	CancelProxy = 6,
	// Skip: Auction = 7, NominationPools = 8,
}

impl Default for ProxyType {
	fn default() -> Self {
		Self::Any
	}
}