pub trait AttestersReadApi<Account, Balance, BlockNumber> {
// Required methods
fn previous_committee() -> Vec<Account, Global>;
fn current_committee() -> Vec<Account, Global>;
fn active_set() -> Vec<Account, Global>;
fn honest_active_set() -> Vec<Account, Global>;
fn read_attester_info(attester: &Account) -> Option<AttesterInfo>;
fn read_nominations(
for_attester: &Account
) -> Vec<(Account, Balance), Global>;
fn get_activated_targets() -> Vec<[u8; 4], Global>;
fn read_attestation_latency(target: &[u8; 4]) -> Option<LatencyStatus>;
fn estimate_finality_fee(target: &[u8; 4]) -> Balance;
fn estimate_finality_reward(
target: &[u8; 4],
blocks_delay: BlockNumber
) -> Balance;
fn estimate_batching_factor(target: &[u8; 4]) -> Option<BatchingFactor>;
}