1234567891011121314151617use frame_support::{traits::EqualPrivilegeOnly, weights::Weight, parameter_types};18use frame_system::EnsureSigned;19use sp_runtime::Perbill;20use crate::{21 runtime_common::{scheduler::SchedulerPaymentExecutor, config::substrate::RuntimeBlockWeights},22 Runtime, Call, Event, Origin, OriginCaller, Balances,23};24use up_common::types::AccountId;2526parameter_types! {27 pub MaximumSchedulerWeight: Weight = Perbill::from_percent(50) *28 RuntimeBlockWeights::get().max_block;29 pub const MaxScheduledPerBlock: u32 = 50;3031 pub const NoPreimagePostponement: Option<u32> = Some(10);32 pub const Preimage: Option<u32> = Some(10);33}3435impl pallet_unique_scheduler::Config for Runtime {36 type RuntimeEvent = RuntimeEvent;37 type RuntimeOrigin = RuntimeOrigin;38 type Currency = Balances;39 type PalletsOrigin = OriginCaller;40 type RuntimeCall = RuntimeCall;41 type MaximumWeight = MaximumSchedulerWeight;42 type ScheduleOrigin = EnsureSigned<AccountId>;43 type MaxScheduledPerBlock = MaxScheduledPerBlock;44 type WeightInfo = ();45 type CallExecutor = SchedulerPaymentExecutor;46 type OriginPrivilegeCmp = EqualPrivilegeOnly;47 type PreimageProvider = ();48 type NoPreimagePostponement = NoPreimagePostponement;49}