import { ethers } from '@credenza3/core-web-evm-ext';
import { Passport } from '../Passport';
import { Chains } from '../../../utils/enums';
import { TEvmContract, TPaymentReturn } from '../../../utils/types';
import { TAirDrop, TSendNftArgs, TGetAssetsArgs, TGetAssetsResult } from '../utils/types';
export declare function getWeb3Provider(): any;
export declare function getAddress(): Promise<any>;
export declare function switchChain(this: Passport, { chainId }: {
    chainId: Chains;
}): Promise<void>;
export declare function getCREDContract(): Promise<TEvmContract>;
export declare function checkMembership(membershipOwner: string, membershipAddress?: string): Promise<{
    isMember: any;
    meta: any;
}>;
export declare function requestAirDrop({ contractAddress, tokenId, amount, targetAddress }: TAirDrop): Promise<void>;
export declare function sendNft({ contract, recipient, tokenId, amount }: TSendNftArgs): Promise<ethers.TransactionResponse>;
export declare function sendTokens({ address, amount, instance, }: {
    address: string;
    amount: bigint | number;
    instance?: ethers.Contract;
}): Promise<any>;
export declare const getBalance: () => Promise<any>;
export declare const attachMetadataToItems: (items: TPaymentReturn["items"]) => Promise<void>;
export declare function fetchTokenMetadata(contractAddress: string, tokenId: string): Promise<any>;
export declare function getAssets(params: TGetAssetsArgs): Promise<TGetAssetsResult>;
