///
import { BaseStore, ImmutableStoreGetter, StoreGetter } from '../../base_store';
import { ModuleConfig } from '../types';
import { ValidatorAccount } from './validator';
export interface EligibleValidator {
lastReportMisbehaviorHeight: number;
}
export declare const eligibleValidatorsStoreSchema: {
$id: string;
type: string;
required: string[];
properties: {
lastReportMisbehaviorHeight: {
dataType: string;
fieldNumber: number;
};
};
};
export declare class EligibleValidatorsStore extends BaseStore {
schema: {
$id: string;
type: string;
required: string[];
properties: {
lastReportMisbehaviorHeight: {
dataType: string;
fieldNumber: number;
};
};
};
private _config;
init(config: ModuleConfig): void;
getKey(address: Buffer, validatorWeight: bigint): Buffer;
getTop(context: ImmutableStoreGetter, count: number): Promise<{
key: Buffer;
value: EligibleValidator;
}[]>;
getAll(context: ImmutableStoreGetter): Promise<{
key: Buffer;
value: EligibleValidator;
}[]>;
splitKey(key: Buffer): [Buffer, bigint];
update(context: StoreGetter, address: Buffer, oldWeight: bigint, validator: ValidatorAccount): Promise;
}