use crate::EraId;
use super::DelegationRate;
pub const INITIAL_ERA_ID: EraId = EraId::new(0);
pub const INITIAL_ERA_END_TIMESTAMP_MILLIS: u64 = 0;
pub const DELEGATION_RATE_DENOMINATOR: DelegationRate = 100;
pub const BLOCK_REWARD: u64 = 1_000_000_000_000;
pub const ARG_AMOUNT: &str = "amount";
pub const ARG_DELEGATION_RATE: &str = "delegation_rate";
pub const ARG_PUBLIC_KEY: &str = "public_key";
pub const ARG_VALIDATOR: &str = "validator";
pub const ARG_DELEGATOR: &str = "delegator";
pub const ARG_VALIDATOR_PURSE: &str = "validator_purse";
pub const ARG_VALIDATOR_KEYS: &str = "validator_keys";
pub const ARG_VALIDATOR_PUBLIC_KEYS: &str = "validator_public_keys";
pub const ARG_NEW_VALIDATOR: &str = "new_validator";
pub const ARG_ERA_ID: &str = "era_id";
pub const ARG_REWARD_FACTORS: &str = "reward_factors";
pub const ARG_VALIDATOR_PUBLIC_KEY: &str = "validator_public_key";
pub const ARG_DELEGATOR_PUBLIC_KEY: &str = "delegator_public_key";
pub const ARG_VALIDATOR_SLOTS: &str = VALIDATOR_SLOTS_KEY;
pub const ARG_MINT_CONTRACT_PACKAGE_HASH: &str = "mint_contract_package_hash";
pub const ARG_GENESIS_VALIDATORS: &str = "genesis_validators";
pub const ARG_AUCTION_DELAY: &str = "auction_delay";
pub const ARG_LOCKED_FUNDS_PERIOD: &str = "locked_funds_period";
pub const ARG_UNBONDING_DELAY: &str = "unbonding_delay";
pub const ARG_ERA_END_TIMESTAMP_MILLIS: &str = "era_end_timestamp_millis";
pub const ARG_EVICTED_VALIDATORS: &str = "evicted_validators";
pub const METHOD_GET_ERA_VALIDATORS: &str = "get_era_validators";
pub const METHOD_ADD_BID: &str = "add_bid";
pub const METHOD_WITHDRAW_BID: &str = "withdraw_bid";
pub const METHOD_DELEGATE: &str = "delegate";
pub const METHOD_UNDELEGATE: &str = "undelegate";
pub const METHOD_REDELEGATE: &str = "redelegate";
pub const METHOD_RUN_AUCTION: &str = "run_auction";
pub const METHOD_SLASH: &str = "slash";
pub const METHOD_DISTRIBUTE: &str = "distribute";
pub const METHOD_READ_ERA_ID: &str = "read_era_id";
pub const METHOD_ACTIVATE_BID: &str = "activate_bid";
pub const ERA_ID_KEY: &str = "era_id";
pub const ERA_END_TIMESTAMP_MILLIS_KEY: &str = "era_end_timestamp_millis";
pub const SEIGNIORAGE_RECIPIENTS_SNAPSHOT_KEY: &str = "seigniorage_recipients_snapshot";
pub const VALIDATOR_SLOTS_KEY: &str = "validator_slots";
pub const AUCTION_DELAY_KEY: &str = "auction_delay";
pub const LOCKED_FUNDS_PERIOD_KEY: &str = "locked_funds_period";
pub const UNBONDING_DELAY_KEY: &str = "unbonding_delay";