@exromany/lido-csm-sdk
Version:
[](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [](h
37 lines • 1.91 kB
TypeScript
import { CsmSDKModule } from '../common/class-primitives/csm-sdk-module.js';
import { AmountByKeys, BondAmountByKeysCountProps, BondForNextKeysProps, KeysCountByBondAmountProps, StethPoolData } from './types.js';
export declare class AccountingSDK extends CsmSDKModule {
private get accountingContract();
private get stethContract();
getStethPoolData(blockNumber?: bigint): Promise<StethPoolData>;
getStethPoolDataByBlockNumbers(blockNumbers: bigint[]): Promise<Map<bigint, StethPoolData>>;
/**
* Converts stETH shares to ETH amount using the current pool ratio.
* Also works for converting wstETH to stETH.
*/
sharesToEth(amount: bigint, blockNumber?: bigint): Promise<bigint>;
/**
* Converts ETH amount to stETH shares using the current pool ratio.
* Also works for converting stETH to wstETH.
*/
ethToShares(amount: bigint, blockNumber?: bigint): Promise<bigint>;
getBondAmountByKeysCountETH({ curveId, keysCount, }: BondAmountByKeysCountProps): Promise<bigint>;
getBondAmountByKeysCountWstETH({ curveId, keysCount, }: BondAmountByKeysCountProps): Promise<bigint>;
getBondAmountByKeysCountPerToken(props: BondAmountByKeysCountProps): Promise<AmountByKeys>;
getCurve(curveId: bigint): Promise<{
intervals: readonly {
minKeysCount: bigint;
minBond: bigint;
trend: bigint;
}[];
}>;
getKeysCountByBondAmount({ amount, curveId, }: KeysCountByBondAmountProps): Promise<bigint>;
getBondForNextKeysETH({ nodeOperatorId, keysCount, }: BondForNextKeysProps): Promise<bigint>;
getBondForNextKeysWstETH({ nodeOperatorId, keysCount, }: BondForNextKeysProps): Promise<bigint>;
getBondForNextKeysPerToken(props: BondForNextKeysProps): Promise<{
ETH: bigint;
stETH: bigint;
wstETH: bigint;
}>;
}
//# sourceMappingURL=accounting-sdk.d.ts.map