/// <reference types="bn.js" />
/// <reference types="node" />
import type { Hedgehog } from '@audius/hedgehog';
import { BN } from 'ethereumjs-util';
import { Nullable } from '../../utils';
import type { EthContracts } from '../ethContracts';
import type { EthWeb3Manager } from '../ethWeb3Manager';
import type { IdentityService } from '../identity';
import type { SolanaWeb3Manager } from '../solana';
export declare type ProxyWormholeConfig = {};
/** Singleton state-manager for audius proxy wormhole interaction */
export declare class ProxyWormhole {
    hedgehog: Nullable<Hedgehog>;
    ethWeb3Manager: EthWeb3Manager;
    ethContracts: EthContracts;
    identityService: Nullable<IdentityService>;
    solanaWeb3Manager: SolanaWeb3Manager;
    constructor(hedgehog: Hedgehog | null, ethWeb3Manager: EthWeb3Manager, ethContracts: EthContracts, identityService: IdentityService | null, solanaWeb3Manager: SolanaWeb3Manager);
    /**
     * Locks assets owned by `fromAccount` into the Solana wormhole with a target
     * solanaAccount destination via the provided relayer wallet.
     */
    _getTransferTokensToEthWormholeParams(fromAccount: string, amount: BN, solanaAccount: string): Promise<{
        chainId: number;
        deadline: number;
        recipient: Buffer;
        arbiterFee: BN;
        signedDigest: import("ethereumjs-util").ECDSASignature;
    }>;
    getTransferTokensToEthWormholeMethod(fromAccount: string, amount: BN, solanaAccount: string): Promise<any>;
}
