import { BigNumber, Signer, ContractTransaction } from 'ethers';
import { UFOMarketplaceConfig, NFTInfo, UAPClaimInfo } from './types';
export declare class ufoMarketplaceSDK {
    private signer;
    private config;
    private galaticFactory;
    private plasma;
    private wETHToken;
    constructor(_signer: Signer, _config: UFOMarketplaceConfig, _netID: number);
    nftHasApprovalToMarketplace(contractAddr: string, nftId: string): Promise<boolean>;
    approveNftToMarketplace(contractAddr: string, nftId: string): Promise<ContractTransaction>;
    wETHAllowance(amount: string): Promise<boolean>;
    wETHBalance(): Promise<string>;
    mintGalaticNFT(categoryId: number): Promise<ContractTransaction>;
    plasmaAmountPerNFT(): Promise<string>;
    getWETHAllowanceOfNFTFactory(): Promise<string>;
    getWETHAllowanceOfMarketplace(): Promise<string>;
    approveWETHToMarketplace(): Promise<ContractTransaction>;
    hasWETHApprovalOfMarketplace(amount: string): Promise<boolean>;
    hasPlasmaApprovalOfNFTFactory(amount: string): Promise<boolean>;
    approvePlasmaToNFTFactory(): Promise<ContractTransaction>;
    approvePlasmaToMarketplace(): Promise<ContractTransaction>;
    private getPlasmaAllowanceOfNFTFactory;
    getNftAddresses(): Promise<string[]>;
    buyNFT(v: BigNumber, r: string, s: string, data: NFTInfo): Promise<ContractTransaction>;
    claimUAP(v: BigNumber, r: string, s: string, data: UAPClaimInfo): Promise<ContractTransaction>;
}
