import { ARTHStoreState, ARTHStore, Fees } from "@mahadao/arth-base"; import { ReadableEthersARTH } from "./ReadableEthersARTH"; import { EthersARTHConnection } from "./EthersARTHConnection"; /** * Extra state added to {@link @mahadao/arth-base#ARTHStoreState} by * {@link BlockPolledARTHStore}. * * @public */ export interface BlockPolledARTHStoreExtraState { /** * Number of block that the store state was fetched from. * * @remarks * May be undefined when the store state is fetched for the first time. */ blockTag?: number; /** * Timestamp of latest block (number of seconds since epoch). */ blockTimestamp: number; /** @internal */ _feesFactory: (blockTimestamp: number, recoveryMode: boolean) => Fees; } /** * The type of {@link BlockPolledARTHStore}'s * {@link @mahadao/arth-base#ARTHStore.state | state}. * * @public */ export declare type BlockPolledARTHStoreState = ARTHStoreState; /** * Ethers-based {@link @mahadao/arth-base#ARTHStore} that updates state whenever there's a new * block. * * @public */ export declare class BlockPolledARTHStore extends ARTHStore { readonly connection: EthersARTHConnection; private readonly _readable; private readonly _provider; constructor(readable: ReadableEthersARTH); private _getRiskiestTroveBeforeRedistribution; private _get; /** @internal @override */ protected _doStart(): () => void; /** @internal @override */ protected _reduceExtra(oldState: BlockPolledARTHStoreExtraState, stateUpdate: Partial): BlockPolledARTHStoreExtraState; } //# sourceMappingURL=BlockPolledARTHStore.d.ts.map