import type { Provider, ProviderEffect } from "./Provider.js";
/**
 * Blockfrost provider for Cardano blockchain data access.
 * Supports both mainnet and testnet networks with project-based authentication.
 * Implements rate limiting to respect Blockfrost API limits.
 *
 * @since 2.0.0
 * @category constructors
 */
export declare class BlockfrostProvider implements Provider {
    readonly effect: ProviderEffect;
    readonly baseUrl: string;
    readonly projectId?: string;
    constructor(baseUrl: string, projectId?: string);
    getProtocolParameters: () => Promise<import("./Provider.js").ProtocolParameters>;
    getUtxos: (addressOrCredential: Parameters<Provider["getUtxos"]>[0]) => Promise<import("../../UTxO.js").UTxO[]>;
    getUtxosWithUnit: (addressOrCredential: Parameters<Provider["getUtxosWithUnit"]>[0], unit: Parameters<Provider["getUtxosWithUnit"]>[1]) => Promise<import("../../UTxO.js").UTxO[]>;
    getUtxoByUnit: (unit: Parameters<Provider["getUtxoByUnit"]>[0]) => Promise<import("../../UTxO.js").UTxO>;
    getUtxosByOutRef: (outRefs: Parameters<Provider["getUtxosByOutRef"]>[0]) => Promise<import("../../UTxO.js").UTxO[]>;
    getDelegation: (rewardAddress: Parameters<Provider["getDelegation"]>[0]) => Promise<import("./Provider.js").Delegation>;
    getDatum: (datumHash: Parameters<Provider["getDatum"]>[0]) => Promise<import("../../Data.js").Data>;
    awaitTx: (txHash: Parameters<Provider["awaitTx"]>[0], checkInterval?: Parameters<Provider["awaitTx"]>[1], timeout?: Parameters<Provider["awaitTx"]>[2]) => Promise<boolean>;
    submitTx: (cbor: Parameters<Provider["submitTx"]>[0]) => Promise<import("../../TransactionHash.js").TransactionHash>;
    evaluateTx: (tx: Parameters<Provider["evaluateTx"]>[0], additionalUTxOs?: Parameters<Provider["evaluateTx"]>[1]) => Promise<import("../EvalRedeemer.js").EvalRedeemer[]>;
}
/**
 * Pre-configured Blockfrost provider for Cardano mainnet.
 *
 * @since 2.0.0
 * @category constructors
 */
export declare const mainnet: (projectId: string) => BlockfrostProvider;
/**
 * Pre-configured Blockfrost provider for Cardano preprod testnet.
 *
 * @since 2.0.0
 * @category constructors
 */
export declare const preprod: (projectId: string) => BlockfrostProvider;
/**
 * Pre-configured Blockfrost provider for Cardano preview testnet.
 *
 * @since 2.0.0
 * @category constructors
 */
export declare const preview: (projectId: string) => BlockfrostProvider;
/**
 * Create a custom Blockfrost provider with custom base URL.
 *
 * @since 2.0.0
 * @category constructors
 */
export declare const custom: (baseUrl: string, projectId?: string) => BlockfrostProvider;
//# sourceMappingURL=Blockfrost.d.ts.map