import type { Address } from "viem"; import type { LucidlyClient } from "./client.js"; import type { TxResult } from "./types.js"; /** Resolve the Accountant address for a vault. The vault address alone isn't the accountant, * so callers pass the accountant address (from deploy) or set it as the active vault's accountant. * For convenience the read methods accept an explicit accountant address. */ export declare class AccountantModule { private readonly c; constructor(c: LucidlyClient); /** Current exchange rate (base-asset units per share). Pass the accountant address. */ getRate(accountant?: Address): Promise; /** Share price expressed in `quote` asset units. */ getRateInQuote(quote: Address | string, accountant?: Address): Promise; /** Push a new exchange rate (requires UPDATE_EXCHANGE_RATE role and within bounds/delay). */ updateRate(newRate: bigint, accountant?: Address): Promise; }