UNPKG

@exromany/lido-csm-sdk

Version:

[![GitHub license](https://img.shields.io/github/license/lidofinance/lido-csm-sdk?color=limegreen)](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [![Version npm](https://img.shields.io/npm/v/@lidofinance/lido-csm-sdk?label=version)](h

290 lines 9.66 kB
import { AccountingSDK } from '../accounting-sdk/index.js'; import { CsmSDKModule } from '../common/class-primitives/csm-sdk-module.js'; import { NodeOperatorId, RewardProof } from '../common/index.js'; import { EventsSDK } from '../events-sdk/events-sdk.js'; import { FrameSDK } from '../frame-sdk/frame-sdk.js'; import { KeysWithStatusSDK } from '../keys-with-status-sdk/keys-with-status-sdk.js'; import { ModuleSDK } from '../module-sdk/module-sdk.js'; import { ParametersSDK } from '../parameters-sdk/index.js'; import { OperatorRewards, OperatorRewardsHistory } from './types.js'; export declare class RewardsSDK extends CsmSDKModule<{ accounting: AccountingSDK; events: EventsSDK; parameters: ParametersSDK; frame: FrameSDK; keysWithStatus: KeysWithStatusSDK; module: ModuleSDK; }> { private get distributorContract(); getProofTreeUrls(cid: string): string[]; getReportUrls(cid: string): string[]; private getHistoryCount; getReportConfig(number: bigint): Promise<{ refSlot: bigint; treeRoot: `0x${string}`; treeCid: string; logCid: string; distributed: bigint; rebate: bigint; }>; getLastReportConfig(): Promise<{ refSlot: bigint; treeRoot: `0x${string}`; treeCid: string; logCid: string; distributed: bigint; rebate: bigint; } | null>; getProofTree(): Promise<import("@openzeppelin/merkle-tree").StandardMerkleTree<[bigint, bigint]> | null>; getProof(nodeOperatorId: NodeOperatorId): Promise<RewardProof>; getAvailable(nodeOperatorId: NodeOperatorId, { proof, shares }: RewardProof): Promise<bigint>; getRewards(nodeOperatorId: NodeOperatorId): Promise<{ available: bigint; shares: bigint; proof: import("../common/types.js").Proof; }>; getReportByCid(cid: string): Promise<void | { blockstamp: { block_hash: string; block_number: bigint; block_timestamp: number; ref_epoch: bigint; ref_slot: bigint; slot_number: bigint; state_root: string; }; distributable: bigint; frame: [number, number]; threshold: number; operators: Record<`${bigint}`, { distributed: bigint; validators: Record<`${bigint}`, { perf: { assigned: number; included: number; }; slashed: boolean; }>; }>; } | { blockstamp: { block_hash: string; block_number: bigint; block_timestamp: number; ref_epoch: bigint; ref_slot: bigint; slot_number: bigint; state_root: string; }; distributable: bigint; distributed_rewards: bigint; rebate_to_protocol: bigint; frame: [number, number]; operators: Record<`${bigint}`, { distributed_rewards: bigint; performance_coefficients: { attestations_weight: number; blocks_weight: number; sync_weight: number; }; validators: Record<`${bigint}`, { attestation_duty: { assigned: number; included: number; }; distributed_rewards: bigint; performance: number; proposal_duty: { assigned: number; included: number; }; rewards_share: number; slashed: boolean; strikes: number; sync_duty: { assigned: number; included: number; }; threshold: number; }>; }>; } | { blockstamp: { block_hash: string; block_number: bigint; block_timestamp: number; ref_epoch: bigint; ref_slot: bigint; slot_number: bigint; state_root: string; }; distributable: bigint; distributed_rewards: bigint; rebate_to_protocol: bigint; frame: [number, number]; operators: Record<`${bigint}`, { distributed_rewards: bigint; performance_coefficients: { attestations_weight: number; blocks_weight: number; sync_weight: number; }; validators: Record<`${bigint}`, { attestation_duty: { assigned: number; included: number; }; distributed_rewards: bigint; performance: number; proposal_duty: { assigned: number; included: number; }; rewards_share: number; slashed: boolean; strikes: number; sync_duty: { assigned: number; included: number; }; threshold: number; }>; }>; }[]>; getLastReport(): Promise<void | { blockstamp: { block_hash: string; block_number: bigint; block_timestamp: number; ref_epoch: bigint; ref_slot: bigint; slot_number: bigint; state_root: string; }; distributable: bigint; frame: [number, number]; threshold: number; operators: Record<`${bigint}`, { distributed: bigint; validators: Record<`${bigint}`, { perf: { assigned: number; included: number; }; slashed: boolean; }>; }>; } | { blockstamp: { block_hash: string; block_number: bigint; block_timestamp: number; ref_epoch: bigint; ref_slot: bigint; slot_number: bigint; state_root: string; }; distributable: bigint; distributed_rewards: bigint; rebate_to_protocol: bigint; frame: [number, number]; operators: Record<`${bigint}`, { distributed_rewards: bigint; performance_coefficients: { attestations_weight: number; blocks_weight: number; sync_weight: number; }; validators: Record<`${bigint}`, { attestation_duty: { assigned: number; included: number; }; distributed_rewards: bigint; performance: number; proposal_duty: { assigned: number; included: number; }; rewards_share: number; slashed: boolean; strikes: number; sync_duty: { assigned: number; included: number; }; threshold: number; }>; }>; }>; getOperatorRewardsInLastReport(nodeOperatorId: NodeOperatorId): Promise<OperatorRewards | undefined>; getLastReportTransactionHash(): Promise<`0x${string}` | undefined>; getAllReports(): Promise<({ blockstamp: { block_hash: string; block_number: bigint; block_timestamp: number; ref_epoch: bigint; ref_slot: bigint; slot_number: bigint; state_root: string; }; distributable: bigint; frame: [number, number]; threshold: number; operators: Record<`${bigint}`, { distributed: bigint; validators: Record<`${bigint}`, { perf: { assigned: number; included: number; }; slashed: boolean; }>; }>; } | { blockstamp: { block_hash: string; block_number: bigint; block_timestamp: number; ref_epoch: bigint; ref_slot: bigint; slot_number: bigint; state_root: string; }; distributable: bigint; distributed_rewards: bigint; rebate_to_protocol: bigint; frame: [number, number]; operators: Record<`${bigint}`, { distributed_rewards: bigint; performance_coefficients: { attestations_weight: number; blocks_weight: number; sync_weight: number; }; validators: Record<`${bigint}`, { attestation_duty: { assigned: number; included: number; }; distributed_rewards: bigint; performance: number; proposal_duty: { assigned: number; included: number; }; rewards_share: number; slashed: boolean; strikes: number; sync_duty: { assigned: number; included: number; }; threshold: number; }>; }>; })[]>; getOperatorRewardsHistory(nodeOperatorId: NodeOperatorId): Promise<OperatorRewardsHistory>; } //# sourceMappingURL=rewards-sdk.d.ts.map