@iota-big3/sdk-blockchain
Version:
Comprehensive blockchain integration platform with multi-chain support, smart contracts, DeFi protocols, NFT infrastructure, Bitcoin support, and seamless SDK ecosystem integration for IOTA Big3
43 lines • 2.02 kB
TypeScript
/**
* @iota-big3/sdk-blockchain - Clean NFT Manager
* NFT minting, trading, and marketplace management
*/
import { EventEmitter } from 'events';
import type { AuctionParams, Bid, BlockchainHealthResult, ChainId, IBlockchainManager, MarketplaceListing, NFT, NFTCollection, NFTMetadata, TransactionReceipt } from '../types';
export declare class NFTManager extends EventEmitter implements IBlockchainManager {
isEnabled: boolean;
private collections;
private nfts;
private listings;
private auctions;
private initialized;
constructor();
initialize(): Promise<void>;
createCollection(name: string, symbol: string, chainId: ChainId, standard?: 'ERC721' | 'ERC1155'): Promise<NFTCollection>;
mintNFT(collectionAddress: string, chainId: ChainId, recipient: string, metadata: NFTMetadata): Promise<NFT>;
transferNFT(nft: NFT, to: string): Promise<TransactionReceipt>;
createListing(nft: NFT, price: string, currency?: string): Promise<MarketplaceListing>;
purchaseNFT(listingId: string, buyer: string): Promise<TransactionReceipt>;
createAuction(params: AuctionParams): Promise<string>;
placeBid(auctionId: string, bidder: string, amount: string): Promise<void>;
getNFT(contractAddress: string, tokenId: string, chainId: ChainId): NFT | undefined;
getCollection(address: string, chainId: ChainId): NFTCollection | undefined;
getListing(listingId: string): MarketplaceListing | undefined;
getAuction(auctionId: string): {
params: AuctionParams;
bids: Bid[];
} | undefined;
getActiveListings(): MarketplaceListing[];
getNFTsByOwner(owner: string): NFT[];
getHealth(): Promise<BlockchainHealthResult>;
getMetrics(): {
totalTransactions: number;
successfulTransactions: number;
failedTransactions: number;
averageGasUsed: string;
totalValueTransferred: string;
activeWallets: number;
};
shutdown(): Promise<void>;
}
//# sourceMappingURL=nft-manager.d.ts.map