/** * @name perps/adrena/adrena-builder-staking * @description Staking builders for the Adrena perps protocol. * * Contains builders for initializing user staking, adding/removing liquid stakes, * adding locked stakes, and claiming staking rewards. * * @module perps/adrena/adrena-builder-staking */ import { PublicKey, Connection } from '@solana/web3.js'; import { type UnsignedTransactionResult } from './adrena-builder-core.js'; /** * @name buildInitUserStaking * @description Build an unsigned transaction to initialize user staking account. * @param connection — Solana RPC connection. * @param owner — Staker and fee payer. * @returns Unsigned transaction result. */ export declare function buildInitUserStaking(connection: Connection, owner: PublicKey): Promise; /** * @name buildAddLiquidStake * @description Build an unsigned transaction to add a liquid stake (LP tokens). * @param connection — Solana RPC connection. * @param owner — Staker and fee payer. * @param amount — Amount of LP tokens to stake (raw, 6 decimals). * @returns Unsigned transaction result. */ export declare function buildAddLiquidStake(connection: Connection, owner: PublicKey, amount: bigint): Promise; /** * @name buildRemoveLiquidStake * @description Build an unsigned transaction to remove a liquid stake. * @param connection — Solana RPC connection. * @param owner — Staker and fee payer. * @param amount — Amount of staked LP tokens to withdraw (raw, 6 decimals). * @returns Unsigned transaction result. */ export declare function buildRemoveLiquidStake(connection: Connection, owner: PublicKey, amount: bigint): Promise; /** * @name buildAddLockedStake * @description Build an unsigned transaction to add a locked stake. * @param connection — Solana RPC connection. * @param owner — Staker and fee payer. * @param amount — Amount of LP tokens to lock (raw, 6 decimals). * @param lockedDays — Lock duration in days. * @returns Unsigned transaction result. */ export declare function buildAddLockedStake(connection: Connection, owner: PublicKey, amount: bigint, lockedDays: number): Promise; /** * @name buildClaimStakes * @description Build an unsigned transaction to claim staking rewards. * @param connection — Solana RPC connection. * @param owner — Staker and fee payer. * @param lockedStakeIndexes — Optional array of locked stake indexes to claim. * @returns Unsigned transaction result. */ export declare function buildClaimStakes(connection: Connection, owner: PublicKey, lockedStakeIndexes: number[] | null): Promise; //# sourceMappingURL=adrena-builder-staking.d.ts.map