import { ConfigurableIframeOptions, ERC721TokenType, FullIframeOptions, LinkParams, LinkResults } from './types'; export declare const getFullIframeOptions: () => FullIframeOptions; export declare const initIframeDom: (fullIframeOptions: FullIframeOptions, url: string, onCloseIframe?: (() => void) | undefined) => { containerDom: HTMLDivElement; iframeDom: HTMLIFrameElement; }; export declare class Link { private webUrl; private iframeOptions; constructor(webUrl?: string, iframeOptions?: ConfigurableIframeOptions); private buildUrl; private openIframeOrWindow; private openIframe; private openWindow; private getLinkDomain; private updateWalletDetailsInStorage; history: (params: {}) => Promise; setup: (params: LinkParams.Setup) => Promise; buy: (params: { orderIds: string[]; } & { fees?: { recipient: string; percentage: number; }[] | undefined; }) => Promise<{ result: { [x: string]: { status: "success"; } | { status: "error"; message: string; }; }; }>; sell: (params: { tokenId: string; tokenAddress: string; } & { amount?: string | undefined; currencyAddress?: string | undefined; expirationTimestamp?: string | undefined; fees?: { recipient: string; percentage: number; }[] | undefined; }) => Promise; deposit: (params?: LinkParams.FlexibleDeposit) => Promise; prepareWithdrawal: (params: { type: ERC721TokenType; tokenId: string; tokenAddress: string; } | ({ type: import("./types").ETHTokenType; } & { amount: string; }) | ({ type: import("./types").ERC20TokenType; tokenAddress: string; symbol: string; } & { amount: string; })) => Promise<{ withdrawalId: number; }>; completeWithdrawal: (params: { type: import("./types").ETHTokenType; } | { type: ERC721TokenType; tokenId: string; tokenAddress: string; } | { type: import("./types").ERC20TokenType; tokenAddress: string; symbol: string; }) => Promise<{ transactionId: string; }>; transfer: (params: (({ type: ERC721TokenType; tokenId: string; tokenAddress: string; } & { toAddress: string; }) | ({ type: import("./types").ETHTokenType; } & { amount: string; } & { toAddress: string; }) | ({ type: import("./types").ERC20TokenType; tokenAddress: string; symbol: string; } & { amount: string; } & { toAddress: string; }))[]) => Promise<{ result: (({ type: ERC721TokenType; tokenId: string; tokenAddress: string; } & { toAddress: string; } & { status: "success"; txId: number; }) | ({ type: ERC721TokenType; tokenId: string; tokenAddress: string; } & { toAddress: string; } & { status: "error"; message: string; }) | ({ type: import("./types").ETHTokenType; } & { amount: string; } & { toAddress: string; } & { status: "success"; txId: number; }) | ({ type: import("./types").ETHTokenType; } & { amount: string; } & { toAddress: string; } & { status: "error"; message: string; }) | ({ type: import("./types").ERC20TokenType; tokenAddress: string; symbol: string; } & { amount: string; } & { toAddress: string; } & { status: "success"; txId: number; }) | ({ type: import("./types").ERC20TokenType; tokenAddress: string; symbol: string; } & { amount: string; } & { toAddress: string; } & { status: "error"; message: string; }))[]; }>; batchNftTransfer: (params: (({ type: ERC721TokenType; tokenId: string; tokenAddress: string; } & { toAddress: string; }) | ({ type: import("./types").ETHTokenType; } & { amount: string; } & { toAddress: string; }) | ({ type: import("./types").ERC20TokenType; tokenAddress: string; symbol: string; } & { amount: string; } & { toAddress: string; }))[]) => Promise<{ result: (({ type: ERC721TokenType; tokenId: string; tokenAddress: string; } & { toAddress: string; } & { status: "success"; txId: number; }) | ({ type: ERC721TokenType; tokenId: string; tokenAddress: string; } & { toAddress: string; } & { status: "error"; message: string; }) | ({ type: import("./types").ETHTokenType; } & { amount: string; } & { toAddress: string; } & { status: "success"; txId: number; }) | ({ type: import("./types").ETHTokenType; } & { amount: string; } & { toAddress: string; } & { status: "error"; message: string; }) | ({ type: import("./types").ERC20TokenType; tokenAddress: string; symbol: string; } & { amount: string; } & { toAddress: string; } & { status: "success"; txId: number; }) | ({ type: import("./types").ERC20TokenType; tokenAddress: string; symbol: string; } & { amount: string; } & { toAddress: string; } & { status: "error"; message: string; }))[]; }>; cancel: (params: { orderId: string; } & { fees?: { recipient: string; percentage: number; }[] | undefined; }) => Promise; claim: () => Promise; onramp: (params: { cryptoCurrencies?: string[] | undefined; provider?: string | undefined; }) => Promise<{ exchangeId: string; }>; offramp: (params: { cryptoCurrencies?: string[] | undefined; amount?: string | undefined; provider?: string | undefined; }) => Promise<{ exchangeId: string; }>; fiatToCrypto: (params: { cryptoCurrencies?: string[] | undefined; }) => Promise<{ exchangeId: string; }>; cryptoToFiat: (params: { cryptoCurrencies?: string[] | undefined; amount?: string | undefined; }) => Promise<{ exchangeId: string; }>; nftCheckoutPrimary: (params: { contractAddress: string; offerId: string; provider: string; }) => Promise<{ transactionId: string; }>; nftCheckoutSecondary: (params: { provider: string; orderId: string; userWalletAddress: string; }) => Promise<{ transactionId: string; }>; makeOffer: (params: LinkParams.MakeOffer) => Promise<{ orderId: string; status: string; }>; cancelOffer: (params: LinkParams.CancelOffer) => Promise; acceptOffer: (params: LinkParams.AcceptOffer) => Promise; sign: (params: { message: string; description: string; }) => Promise<{ result: string; }>; getPublicKey: (params: {}) => Promise<{ result: string; }>; }