import { Contract, ethers } from 'ethers';
import { E as ETFCreateParams, b as ETFCreateResult, M as MintETFTokenParams, c as MintETFResult, a as ETFBurnParams } from './params-D5pUAaOi.mjs';
import '@solana/web3.js';

declare class DexClientEVM {
    readonly factory: Contract;
    readonly router: Contract;
    readonly oracle: Contract;
    readonly signer: ethers.JsonRpcSigner;
    private readonly WETH;
    constructor(signer: ethers.JsonRpcSigner, addresses: {
        TWAP: string;
        CETO: string;
        ETFROUTER: string;
        ETFFACTORY: string;
        WETH: string;
    });
    createETF(params: ETFCreateParams): Promise<ETFCreateResult>;
    purchaseETF(params: MintETFTokenParams): Promise<MintETFResult>;
    burnETF(params: ETFBurnParams): Promise<MintETFResult>;
    getETFInfo(etfAddress: string): Promise<{
        totalSupply: any;
        reserves: any[];
    }>;
    getETFBalance(etfAddress: string): Promise<any>;
    getNav(etfAddress: string): Promise<any>;
}

export { DexClientEVM };
