/** * Staking operations (stake2) for IoTeX SDK * * Note: This is a simplified implementation. Full protobuf integration * would require proper action builders and serialization. */ import { GrpcClient } from '../client/grpc-client'; import { StakeCreateParams, StakeRegisterParams, StakeUpdateCandidateParams, SendActionResult } from '../types'; export declare class Stake2 { private client; private keystore; constructor(client: GrpcClient, keystoreDir?: string); /** * Create voting bucket * * Note: This is a placeholder implementation. Full implementation requires: * 1. Proper protobuf action building * 2. Action serialization * 3. Signing with private key * 4. Wrapping in envelope with nonce, gas, etc. */ create(params: StakeCreateParams): Promise; /** * Register as candidate */ register(params: StakeRegisterParams): Promise; /** * Add to stake */ add(bucketIndex: number, amount: string, signer: string, password: string): Promise; /** * Renew stake */ renew(bucketIndex: number, duration: number, autoStake: boolean, signer: string, password: string): Promise; /** * Withdraw stake */ withdraw(bucketIndex: number, signer: string, password: string): Promise; /** * Change candidate */ changeCandidate(bucketIndex: number, candidateName: string, signer: string, password: string): Promise; /** * Update candidate info */ updateCandidate(params: StakeUpdateCandidateParams): Promise; /** * Transfer bucket ownership */ transferOwnership(bucketIndex: number, newOwner: string, signer: string, password: string): Promise; /** * Endorse action */ endorse(bucketIndex: number, signer: string, password: string): Promise; /** * Release stake */ release(bucketIndex: number, signer: string, password: string): Promise; /** * Helper: Get nonce for address */ private getNonce; /** * Helper: Suggest gas price */ private suggestGasPrice; } //# sourceMappingURL=stake2.d.ts.map