import { Address } from 'viem';
import { ChainId } from './vault-config.mjs';
import 'viem/chains';
import '../vaults/config.mjs';

type AccountantBaseProps = {
    accountantAddress: Address;
    chainId: ChainId;
};
type RateInQuoteWithAssetDecimalsProps = AccountantBaseProps & {
    assetAddress: Address;
};
declare const getRateInQuoteWithAssetDecimals: ({ assetAddress, accountantAddress, chainId, }: RateInQuoteWithAssetDecimalsProps) => Promise<[{
    error: Error;
    result?: undefined;
    status: "failure";
} | {
    error?: undefined;
    result: number;
    status: "success";
}, {
    error?: undefined;
    result: bigint;
    status: "success";
} | {
    error: Error;
    result?: undefined;
    status: "failure";
}]>;
type RateInQuoteAndSharesAndWantAssetDecimalsParams = {
    sharesAssetAddress: Address;
    wantAssetAddress: Address;
    accountantAddress: Address;
    chainId: ChainId;
};
declare const getRateInQuoteAndSharesAndWantAssetDecimals: ({ sharesAssetAddress, wantAssetAddress, accountantAddress, chainId, }: RateInQuoteAndSharesAndWantAssetDecimalsParams) => Promise<[{
    error: Error;
    result?: undefined;
    status: "failure";
} | {
    error?: undefined;
    result: number;
    status: "success";
}, {
    error: Error;
    result?: undefined;
    status: "failure";
} | {
    error?: undefined;
    result: number;
    status: "success";
}, {
    error?: undefined;
    result: bigint;
    status: "success";
} | {
    error: Error;
    result?: undefined;
    status: "failure";
}]>;

export { getRateInQuoteAndSharesAndWantAssetDecimals, getRateInQuoteWithAssetDecimals };
