import { Transport } from "viem";
import { BigNumber } from "../utils";
import { SVMProvider as SolanaProvider } from "../arch/svm";
import { EvmGasPriceEstimate, SvmGasPriceEstimate } from "./types";
import { EvmProvider } from "../arch/evm/types";
export interface GasPriceEstimateOptions {
    baseFeeMultiplier: BigNumber;
    priorityFeeMultiplier: BigNumber;
    legacyFallback: boolean;
    chainId: number;
    unsignedTx?: unknown;
    feeHistoryOptions?: FeeHistoryOptions;
    transport?: Transport;
}
export interface FeeHistoryOptions {
    estimator?: (rewards: BigNumber[]) => BigNumber;
    percentile?: number;
    blockLookback?: number;
    minimumPriority?: BigNumber;
}
export declare function getGasPriceEstimate(provider: EvmProvider, opts?: Partial<GasPriceEstimateOptions>): Promise<EvmGasPriceEstimate>;
export declare function getGasPriceEstimate(provider: SolanaProvider, opts?: Partial<GasPriceEstimateOptions>): Promise<SvmGasPriceEstimate>;
//# sourceMappingURL=oracle.d.ts.map