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