import { AlgorandClient } from "@algorandfoundation/algokit-utils"; import { Validator, NodePoolAssignmentConfig, RetiReaderSDK, ValidatorConfig, ValidatorCurState, ValidatorPoolInfo, MbrAmountsAndProtocolConstraints } from "./generated/RetiReaderSDK.js"; export { Validator } from "./generated/RetiReaderSDK.js"; export type PoolBalanceAndLastPayout = { balance: bigint; lastPayout: bigint; }; export type AssetInfo = { index: bigint; deleted: true; } | { index: bigint; params: { creator: string; total: bigint; decimals: number; unitName: string; name: string; }; }; export declare class RetiGhostSDK { static baseSDK: typeof RetiReaderSDK; algorand: AlgorandClient; registryAppId: bigint; baseSDK: RetiReaderSDK; concurrency: number; constructor({ algorand, registryAppId, concurrency, ghostAppId, }: { algorand: AlgorandClient; concurrency?: number; registryAppId: number | bigint; ghostAppId?: bigint; }); getNumValidators(): Promise; /** * Get the MBR amounts and protocol constraints from Reti Registry * @returns MbrAmountsAndProtocolConstraints */ getMbrAmountsAndProtocolConstraints(): Promise; /** * Fetch multiple validator configs efficiently.\ * Handles chunking internally with chunk size of 127. * @param validatorIds * @returns Array of `ValidatorConfig`, preserving input order. */ getValidatorConfig(validatorIds: number[] | bigint[]): Promise; getValidatorStates(validatorIds: number[] | bigint[]): Promise; getPools(validatorIds: number[] | bigint[]): Promise; private _internal_getPoolInfo; getNodePoolAssignments(validatorIds: number[] | bigint[]): Promise; /** * Fetch multiple validators' config/state/pools/nodePoolAssignments efficiently. Handles chunking internally with chunk size of 64. * @param validatorIds * @returns Validator[] { config: ValidatorConfig, curState: ValidatorCurState, pools: ValidatorPoolInfo["poolInfo"][], nodePoolAssignment: NodePoolAssignmentConfig } */ getValidators(validatorIds: number[]): Promise; getPoolAlgodVersions(poolAppIds: number[] | bigint[]): Promise; getBlockTimestamps(num: number): Promise; getAssets(assetIds: number[] | bigint[]): Promise; getPoolBalancesAndLastPayouts(poolAppIds: number[] | bigint[]): Promise; }