@unloc-xyz/unloc-sdk
Version:
1,097 lines • 31.5 kB
TypeScript
import * as anchor from '@project-serum/anchor';
import { UnlocLoan } from '../types/unloc_loan';
import { Connection, Keypair, PublicKey, TransactionInstruction } from '@solana/web3.js';
import { ArweaveMetadata, IMasterEdition, IMetadata, OnChainMetadata } from './IOfferData';
export declare let program: anchor.Program<UnlocLoan>;
export declare let programProvider: anchor.AnchorProvider;
export declare let programId: anchor.web3.PublicKey;
export declare const initLoanProgram: (wallet: any, connection?: anchor.web3.Connection, pid?: anchor.web3.PublicKey) => void;
export declare const getLoanGlobalState: () => Promise<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
name: "globalState";
type: {
kind: "struct";
fields: [{
name: "superOwner";
type: "publicKey";
}, {
name: "treasuryWallet";
type: "publicKey";
}, {
name: "accruedInterestNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "expireLoanDuration";
type: "u64";
}, {
name: "denominator";
type: "u64";
}, {
name: "rewardPerSol";
type: "u64";
}, {
name: "rewardPerUsdc";
type: "u64";
}, {
name: "lenderRewardsPercentage";
type: "u64";
}, {
name: "unlocStakingPid";
type: "publicKey";
}, {
name: "unlocStakingPoolId";
type: "publicKey";
}, {
name: "votingPid";
type: "publicKey";
}, {
name: "currentVotingNum";
type: "u64";
}, {
name: "tokenMetadataPid";
type: "publicKey";
}, {
name: "reserved";
type: {
array: ["u128", 15];
};
}];
};
} | {
name: "offer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "subOfferCount";
type: "u64";
}, {
name: "startSubOfferNum";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "subOffer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "offerMint";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "offer";
type: "publicKey";
}, {
name: "subOfferNumber";
type: "u64";
}, {
name: "lender";
type: "publicKey";
}, {
name: "offerVault";
type: "publicKey";
}, {
name: "offerAmount";
type: "u64";
}, {
name: "repaidAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}, {
name: "loanStartedTime";
type: "u64";
}, {
name: "loanEndedTime";
type: "u64";
}, {
name: "loanDuration";
type: "u64";
}, {
name: "minRepaidNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "lenderReward";
type: {
kind: "struct";
fields: [{
name: "lender";
type: "publicKey";
}, {
name: "borrower";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "totalPoint";
type: "u128";
}, {
name: "collectionPoint";
type: "u128";
}, {
name: "subOffer";
type: "publicKey";
}, {
name: "loanMint";
type: "publicKey";
}, {
name: "loanMintDecimals";
type: "u8";
}, {
name: "startTime";
type: "u64";
}, {
name: "endTime";
type: "u64";
}, {
name: "lenderLastClaimedTime";
type: "u64";
}, {
name: "borrowerLastClaimedTime";
type: "u64";
}, {
name: "maxDuration";
type: "u64";
}, {
name: "loanAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}];
};
}, anchor.IdlTypes<UnlocLoan>> | null>;
export declare const getCurrentVotingKey: () => Promise<anchor.web3.PublicKey>;
export declare const getLoanOfferList: () => Promise<anchor.ProgramAccount<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
name: "globalState";
type: {
kind: "struct";
fields: [{
name: "superOwner";
type: "publicKey";
}, {
name: "treasuryWallet";
type: "publicKey";
}, {
name: "accruedInterestNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "expireLoanDuration";
type: "u64";
}, {
name: "denominator";
type: "u64";
}, {
name: "rewardPerSol";
type: "u64";
}, {
name: "rewardPerUsdc";
type: "u64";
}, {
name: "lenderRewardsPercentage";
type: "u64";
}, {
name: "unlocStakingPid";
type: "publicKey";
}, {
name: "unlocStakingPoolId";
type: "publicKey";
}, {
name: "votingPid";
type: "publicKey";
}, {
name: "currentVotingNum";
type: "u64";
}, {
name: "tokenMetadataPid";
type: "publicKey";
}, {
name: "reserved";
type: {
array: ["u128", 15];
};
}];
};
} | {
name: "offer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "subOfferCount";
type: "u64";
}, {
name: "startSubOfferNum";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "subOffer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "offerMint";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "offer";
type: "publicKey";
}, {
name: "subOfferNumber";
type: "u64";
}, {
name: "lender";
type: "publicKey";
}, {
name: "offerVault";
type: "publicKey";
}, {
name: "offerAmount";
type: "u64";
}, {
name: "repaidAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}, {
name: "loanStartedTime";
type: "u64";
}, {
name: "loanEndedTime";
type: "u64";
}, {
name: "loanDuration";
type: "u64";
}, {
name: "minRepaidNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "lenderReward";
type: {
kind: "struct";
fields: [{
name: "lender";
type: "publicKey";
}, {
name: "borrower";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "totalPoint";
type: "u128";
}, {
name: "collectionPoint";
type: "u128";
}, {
name: "subOffer";
type: "publicKey";
}, {
name: "loanMint";
type: "publicKey";
}, {
name: "loanMintDecimals";
type: "u8";
}, {
name: "startTime";
type: "u64";
}, {
name: "endTime";
type: "u64";
}, {
name: "lenderLastClaimedTime";
type: "u64";
}, {
name: "borrowerLastClaimedTime";
type: "u64";
}, {
name: "maxDuration";
type: "u64";
}, {
name: "loanAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}];
};
}, anchor.IdlTypes<UnlocLoan>>>[]>;
export declare const getLoanOfferMultiple: (keys: anchor.web3.PublicKey[]) => Promise<(Object | null)[]>;
export declare const getLoanOffer: (key: anchor.web3.PublicKey) => Promise<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
name: "globalState";
type: {
kind: "struct";
fields: [{
name: "superOwner";
type: "publicKey";
}, {
name: "treasuryWallet";
type: "publicKey";
}, {
name: "accruedInterestNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "expireLoanDuration";
type: "u64";
}, {
name: "denominator";
type: "u64";
}, {
name: "rewardPerSol";
type: "u64";
}, {
name: "rewardPerUsdc";
type: "u64";
}, {
name: "lenderRewardsPercentage";
type: "u64";
}, {
name: "unlocStakingPid";
type: "publicKey";
}, {
name: "unlocStakingPoolId";
type: "publicKey";
}, {
name: "votingPid";
type: "publicKey";
}, {
name: "currentVotingNum";
type: "u64";
}, {
name: "tokenMetadataPid";
type: "publicKey";
}, {
name: "reserved";
type: {
array: ["u128", 15];
};
}];
};
} | {
name: "offer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "subOfferCount";
type: "u64";
}, {
name: "startSubOfferNum";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "subOffer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "offerMint";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "offer";
type: "publicKey";
}, {
name: "subOfferNumber";
type: "u64";
}, {
name: "lender";
type: "publicKey";
}, {
name: "offerVault";
type: "publicKey";
}, {
name: "offerAmount";
type: "u64";
}, {
name: "repaidAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}, {
name: "loanStartedTime";
type: "u64";
}, {
name: "loanEndedTime";
type: "u64";
}, {
name: "loanDuration";
type: "u64";
}, {
name: "minRepaidNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "lenderReward";
type: {
kind: "struct";
fields: [{
name: "lender";
type: "publicKey";
}, {
name: "borrower";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "totalPoint";
type: "u128";
}, {
name: "collectionPoint";
type: "u128";
}, {
name: "subOffer";
type: "publicKey";
}, {
name: "loanMint";
type: "publicKey";
}, {
name: "loanMintDecimals";
type: "u8";
}, {
name: "startTime";
type: "u64";
}, {
name: "endTime";
type: "u64";
}, {
name: "lenderLastClaimedTime";
type: "u64";
}, {
name: "borrowerLastClaimedTime";
type: "u64";
}, {
name: "maxDuration";
type: "u64";
}, {
name: "loanAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}];
};
}, anchor.IdlTypes<UnlocLoan>> | null>;
export declare const getLoanOffersBy: (owner?: anchor.web3.PublicKey, nftMint?: anchor.web3.PublicKey, state?: OfferState) => Promise<anchor.ProgramAccount<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
name: "globalState";
type: {
kind: "struct";
fields: [{
name: "superOwner";
type: "publicKey";
}, {
name: "treasuryWallet";
type: "publicKey";
}, {
name: "accruedInterestNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "expireLoanDuration";
type: "u64";
}, {
name: "denominator";
type: "u64";
}, {
name: "rewardPerSol";
type: "u64";
}, {
name: "rewardPerUsdc";
type: "u64";
}, {
name: "lenderRewardsPercentage";
type: "u64";
}, {
name: "unlocStakingPid";
type: "publicKey";
}, {
name: "unlocStakingPoolId";
type: "publicKey";
}, {
name: "votingPid";
type: "publicKey";
}, {
name: "currentVotingNum";
type: "u64";
}, {
name: "tokenMetadataPid";
type: "publicKey";
}, {
name: "reserved";
type: {
array: ["u128", 15];
};
}];
};
} | {
name: "offer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "subOfferCount";
type: "u64";
}, {
name: "startSubOfferNum";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "subOffer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "offerMint";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "offer";
type: "publicKey";
}, {
name: "subOfferNumber";
type: "u64";
}, {
name: "lender";
type: "publicKey";
}, {
name: "offerVault";
type: "publicKey";
}, {
name: "offerAmount";
type: "u64";
}, {
name: "repaidAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}, {
name: "loanStartedTime";
type: "u64";
}, {
name: "loanEndedTime";
type: "u64";
}, {
name: "loanDuration";
type: "u64";
}, {
name: "minRepaidNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "lenderReward";
type: {
kind: "struct";
fields: [{
name: "lender";
type: "publicKey";
}, {
name: "borrower";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "totalPoint";
type: "u128";
}, {
name: "collectionPoint";
type: "u128";
}, {
name: "subOffer";
type: "publicKey";
}, {
name: "loanMint";
type: "publicKey";
}, {
name: "loanMintDecimals";
type: "u8";
}, {
name: "startTime";
type: "u64";
}, {
name: "endTime";
type: "u64";
}, {
name: "lenderLastClaimedTime";
type: "u64";
}, {
name: "borrowerLastClaimedTime";
type: "u64";
}, {
name: "maxDuration";
type: "u64";
}, {
name: "loanAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}];
};
}, anchor.IdlTypes<UnlocLoan>>>[]>;
export declare const getLoanSubOffer: (key: anchor.web3.PublicKey) => Promise<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
name: "globalState";
type: {
kind: "struct";
fields: [{
name: "superOwner";
type: "publicKey";
}, {
name: "treasuryWallet";
type: "publicKey";
}, {
name: "accruedInterestNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "expireLoanDuration";
type: "u64";
}, {
name: "denominator";
type: "u64";
}, {
name: "rewardPerSol";
type: "u64";
}, {
name: "rewardPerUsdc";
type: "u64";
}, {
name: "lenderRewardsPercentage";
type: "u64";
}, {
name: "unlocStakingPid";
type: "publicKey";
}, {
name: "unlocStakingPoolId";
type: "publicKey";
}, {
name: "votingPid";
type: "publicKey";
}, {
name: "currentVotingNum";
type: "u64";
}, {
name: "tokenMetadataPid";
type: "publicKey";
}, {
name: "reserved";
type: {
array: ["u128", 15];
};
}];
};
} | {
name: "offer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "subOfferCount";
type: "u64";
}, {
name: "startSubOfferNum";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "subOffer";
type: {
kind: "struct";
fields: [{
name: "borrower";
type: "publicKey";
}, {
name: "nftMint";
type: "publicKey";
}, {
name: "offerMint";
type: "publicKey";
}, {
name: "state";
type: "u8";
}, {
name: "offer";
type: "publicKey";
}, {
name: "subOfferNumber";
type: "u64";
}, {
name: "lender";
type: "publicKey";
}, {
name: "offerVault";
type: "publicKey";
}, {
name: "offerAmount";
type: "u64";
}, {
name: "repaidAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}, {
name: "loanStartedTime";
type: "u64";
}, {
name: "loanEndedTime";
type: "u64";
}, {
name: "loanDuration";
type: "u64";
}, {
name: "minRepaidNumerator";
type: "u64";
}, {
name: "aprNumerator";
type: "u64";
}, {
name: "creationDate";
type: "u64";
}, {
name: "reserved";
type: {
array: ["u128", 7];
};
}];
};
} | {
name: "lenderReward";
type: {
kind: "struct";
fields: [{
name: "lender";
type: "publicKey";
}, {
name: "borrower";
type: "publicKey";
}, {
name: "collection";
type: "publicKey";
}, {
name: "totalPoint";
type: "u128";
}, {
name: "collectionPoint";
type: "u128";
}, {
name: "subOffer";
type: "publicKey";
}, {
name: "loanMint";
type: "publicKey";
}, {
name: "loanMintDecimals";
type: "u8";
}, {
name: "startTime";
type: "u64";
}, {
name: "endTime";
type: "u64";
}, {
name: "lenderLastClaimedTime";
type: "u64";
}, {
name: "borrowerLastClaimedTime";
type: "u64";
}, {
name: "maxDuration";
type: "u64";
}, {
name: "loanAmount";
type: "u64";
}, {
name: "lenderClaimedAmount";
type: "u64";
}, {
name: "borrowerClaimedAmount";
type: "u64";
}];
};
}, anchor.IdlTypes<UnlocLoan>> | null>;
export declare const getLoanSubOfferList: (offer?: anchor.web3.PublicKey, nftMint?: anchor.web3.PublicKey, state?: SubOfferState) => Promise<any[]>;
export declare const getAllLoanSubOffers: () => Promise<any[]>;
export declare const getLoanSubOfferMultiple: (keys: anchor.web3.PublicKey[], offerState?: number) => Promise<any[]>;
export declare const setLoanGlobalState: (accruedInterestNumerator: anchor.BN, denominator: anchor.BN, aprNumerator: anchor.BN, expireLoanDuration: anchor.BN, rewardPerSol: anchor.BN, rewardPerUsdc: anchor.BN, lenderRewardsPercentage: anchor.BN, rewardMint: anchor.web3.PublicKey, treasury: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const setLoanInternalInfo: (unlocStakingPid: anchor.web3.PublicKey, unlocStakingPoolId: anchor.web3.PublicKey, votingPid: anchor.web3.PublicKey, tokenMetadataPid: anchor.web3.PublicKey, currentVotingNum: anchor.BN, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const depositRewards: (amount: anchor.BN, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const claimRewards: (userReward: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const setLoanOffer: (nftMint: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const cancelLoanOffer: (nftMint: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const createLoanSubOffer: (offerAmount: anchor.BN, loanDuration: anchor.BN, minRepaidNumerator: anchor.BN, aprNumerator: anchor.BN, nftMint: anchor.web3.PublicKey, offerMint: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const createLoanSubOfferByStaking: (offerAmount: anchor.BN, loanDuration: anchor.BN, minRepaidNumerator: anchor.BN, aprNumerator: anchor.BN, nftMint: anchor.web3.PublicKey, offerMint: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const updateLoanSubOffer: (offerAmount: anchor.BN, loanDuration: anchor.BN, minRepaidNumerator: anchor.BN, aprNumerator: anchor.BN, subOffer: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const updateLoanSubOfferByStaking: (offerAmount: anchor.BN, loanDuration: anchor.BN, minRepaidNumerator: anchor.BN, aprNumerator: anchor.BN, subOffer: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const cancelLoanSubOffer: (subOffer: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const acceptLoanOfferByVoting: (subOffer: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const acceptLoanOffer: (subOffer: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const repayLoan: (subOffer: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const claimLoanCollateral: (subOffer: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare const claimExpiredCollateral: (subOffer: anchor.web3.PublicKey, signer?: anchor.web3.PublicKey, signers?: anchor.web3.Keypair[]) => Promise<void>;
export declare enum OfferState {
Proposed = 0,
Accepted = 1,
Expired = 2,
Fulfilled = 3,
NFTClaimed = 4,
Canceled = 5
}
export declare enum SubOfferState {
Proposed = 0,
Accepted = 1,
Expired = 2,
Fulfilled = 3,
LoanPaymentClaimed = 4,
Canceled = 5
}
export declare const getLoanSubOffersKeysByState: (state: SubOfferState[]) => Promise<anchor.web3.PublicKey[] | undefined>;
export declare const addTokenAccountInstruction: (mint: anchor.web3.PublicKey, owner: anchor.web3.PublicKey, instructions: TransactionInstruction[], signer: anchor.web3.PublicKey, signers: anchor.web3.Keypair[], rent?: number) => Promise<anchor.web3.PublicKey>;
export declare const checkWalletATA: (mint: string, connection?: anchor.web3.Connection, walletPubkey?: anchor.web3.PublicKey) => Promise<any>;
export declare const logObject: (title: string, obj: any) => void;
export declare const getOfferBalance: (subOffer: anchor.web3.PublicKey, connection?: anchor.web3.Connection, walletPubkey?: anchor.web3.PublicKey) => Promise<number>;
export declare class MultipleNFT {
mints: anchor.web3.PublicKey[];
metadatas: NFTMetadata[];
constructor(keys: anchor.web3.PublicKey[]);
initialize(): Promise<void>;
getNftMeta(mint: PublicKey): NFTMetadata | null;
initArweavedata(): Promise<void>;
}
export declare class NFTMetadata implements IMetadata {
mint: string;
metadataPDA: string;
onChainMetadata: OnChainMetadata;
arweaveMetadata: ArweaveMetadata;
masterEdition: IMasterEdition;
constructor(mint: anchor.web3.PublicKey, metadataPDA: anchor.web3.PublicKey, onChainMetadata: OnChainMetadata);
getAreaveMetadata(): Promise<ArweaveMetadata>;
currentAreaveMetadata(): ArweaveMetadata;
getMasterEdition(): Promise<IMasterEdition>;
}
export declare const ACCOUNT_LAYOUT: any;
export declare const MINT_LAYOUT: any;
//# sourceMappingURL=index.d.ts.map