import { PoxInfo } from "./hiro-api.js"; import { type Network } from "../config/index.js"; import { type Account, type TransferResult } from "../transactions/builder.js"; export interface StackingStatus { stacked: boolean; amountMicroStx: string; amountStx: string; firstRewardCycle: number; lockPeriod: number; unlockHeight: number; poxAddress?: string; } export declare class StackingService { private network; private hiro; private contracts; constructor(network: Network); /** * Get current PoX (Proof of Transfer) info */ getPoxInfo(): Promise; /** * Get stacking status for an address * Note: Returns whether the address is stacking, but detailed amounts require proper CV parsing */ getStackingStatus(address: string): Promise; /** * Stack STX tokens */ stack(account: Account, amount: bigint, poxAddress: { version: number; hashbytes: string; }, startBurnHeight: number, lockPeriod: number): Promise; /** * Extend stacking period */ extendStacking(account: Account, extendCount: number, poxAddress: { version: number; hashbytes: string; }): Promise; /** * Increase stacking amount */ increaseStacking(account: Account, increaseAmount: bigint): Promise; /** * Delegate STX to a stacking pool */ delegateStx(account: Account, amount: bigint, delegateTo: string, untilBurnHeight?: number, poxAddress?: { version: number; hashbytes: string; }): Promise; /** * Revoke delegation */ revokeDelegation(account: Account): Promise; } export declare function getStackingService(network: Network): StackingService; //# sourceMappingURL=stacking.service.d.ts.map