import { Interface } from '@ethersproject/abi'; import { IDexHelper } from '../../dex-helper'; import { DexParams, PoolState, ProtocolState } from './types'; export declare function generateOnChainState(poolStates: PoolState[], blockNumber: number, bunniHubInterface: Interface, bunniHookInterface: Interface, bunniTokenInterface: Interface, feeOverrideHookletInterface: Interface, dexHelper: IDexHelper, config: DexParams): Promise; export declare function updateStateAfterNewBunni(state: PoolState, blockNumber: number, bunniHubInterface: Interface, bunniHookInterface: Interface, bunniTokenInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateStateAfterDeposit(state: PoolState, blockNumber: number, bunniHubInterface: Interface, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateStateAfterWithdraw(state: PoolState, blockNumber: number, bunniHubInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateStateAfterSwap(state: PoolState, blockNumber: number, bunniHubInterface: Interface, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateStateAfterOrderFulfilled(states: PoolState[], blockNumber: number, bunniHubInterface: Interface, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateHubState(poolStates: PoolState[], blockNumber: number, bunniHubInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateHookState(poolStates: PoolState[], blockNumber: number, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateSlot0(poolStates: PoolState[], blockNumber: number, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateLdfState(poolStates: PoolState[], blockNumber: number, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateVaultSharePricesAtLastSwap(poolStates: PoolState[], blockNumber: number, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateCuratorFees(poolStates: PoolState[], blockNumber: number, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateTopBid(poolStates: PoolState[], blockNumber: number, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateNextBid(poolStates: PoolState[], blockNumber: number, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateTotalSupply(poolStates: PoolState[], blockNumber: number, bunniTokenInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateObservations(poolStates: PoolState[], blockNumber: number, bunniHookInterface: Interface, dexHelper: IDexHelper): Promise; export declare function updateFeeOverrides(poolStates: PoolState[], blockNumber: number, feeOverrideHookletInterface: Interface, dexHelper: IDexHelper, config: DexParams): Promise; export declare function updatePoolTotalValueLocked(state: ProtocolState, dexHelper: IDexHelper): Promise; export declare function updateVaultSharePrices(state: ProtocolState, dexHelper: IDexHelper): Promise; export declare function ERC4626_previewDeposit(amount: bigint, vault: string, blockNumber: bigint, dexHelper: IDexHelper): Promise; export declare function ERC4626_previewWithdraw(amount: bigint, vault: string, blockNumber: bigint, dexHelper: IDexHelper): Promise; export declare function ERC4626_previewRedeem(amount: bigint, vault: string, blockNumber: bigint, dexHelper: IDexHelper): Promise; export declare function ERC4626_maxDeposit(account: string, vault: string, blockNumber: bigint, dexHelper: IDexHelper): Promise;