UNPKG

@skynetxbt/venice-ai-plugin

Version:

Venice AI Plugin for Skynet Framework - Staking Contract Integration

22 lines (21 loc) 1.14 kB
import { ethers } from "ethers"; import { EventEmitter } from "events"; import { StakeInfo, StakingContractConfig, StakingOperationResult, StakingStats, StakingViewResult, UserStakeInfo } from "./types"; export declare class StakingContract extends EventEmitter { private contract; private provider; private signer; private address; constructor(config?: StakingContractConfig); initialize(provider?: ethers.Provider, signer?: ethers.Signer): Promise<void>; cleanup(): Promise<void>; stake(recipient: string, amount: bigint): Promise<StakingOperationResult>; initiateUnstake(amount: bigint): Promise<StakingOperationResult>; finalizeUnstake(): Promise<StakingOperationResult>; claim(): Promise<StakingOperationResult>; getPendingRewards(userAddress: string): Promise<StakingViewResult<bigint>>; getVenicePercentage(): Promise<StakingViewResult<bigint>>; getStakeInfo(userAddress: string): Promise<StakingViewResult<StakeInfo>>; getUserStakeInfo(userAddress: string): Promise<StakingViewResult<UserStakeInfo>>; getStakingStats(): Promise<StakingViewResult<StakingStats>>; }