@helium/http
Version:
HTTP library for interacting with the Helium blockchain API
60 lines • 1.65 kB
TypeScript
import Balance, { NetworkTokens } from '../../../currency/build';
import type Client from '../Client';
import DataModel from './DataModel';
import Transactions from '../resources/Transactions';
import Rewards from '../resources/Rewards';
import Roles from '../resources/Roles';
export type ValidatorData = Omit<Validator, 'client'>;
export type Bucket = 'hour' | 'day' | 'week';
export type NaturalDate = string;
export interface HTTPValidatorObject {
version_heartbeat?: number;
status?: {
height: number;
online: string;
listen_addrs: string[];
};
stake_status?: string;
stake?: number;
penalty?: number;
penalties?: Penalty[];
owner?: string;
name?: string;
last_heartbeat?: number;
consensus_groups?: number;
block_added?: number;
block?: number;
address: string;
}
export interface Penalty {
type: string;
height: number;
amount: number;
}
export interface Status {
height: number;
online: string;
listenAddrs: string[];
}
export default class Validator extends DataModel {
private client;
versionHeartbeat?: number;
consensusGroups?: number;
status?: Status;
stakeStatus?: string;
stake?: Balance<NetworkTokens>;
penalty?: number;
penalties?: Penalty[];
owner?: string;
name?: string;
lastHeartbeat?: number;
blockAdded?: number;
block?: number;
address: string;
constructor(client: Client, validator: HTTPValidatorObject);
get activity(): Transactions;
get roles(): Roles;
get rewards(): Rewards;
get data(): ValidatorData;
}
//# sourceMappingURL=Validator.d.ts.map