import { BigNumberish } from '@ethersproject/bignumber'; import { AlchemyConfig } from '../api/alchemy-config'; import { BaseNft, ComputeRarityResponse, GetBaseNftsForContractOptions, GetBaseNftsForOwnerOptions, GetContractMetadataBatchResponse, GetContractsForOwnerOptions, GetContractsForOwnerResponse, GetFloorPriceResponse, GetMintedNftsOptions, GetNftMetadataBatchResponse, GetNftMetadataOptions, GetNftSalesOptions, GetNftSalesOptionsByContractAddress, GetNftSalesResponse, GetNftsForContractOptions, GetNftsForOwnerOptions, GetOwnersForContractOptions, GetOwnersForContractResponse, GetOwnersForContractWithTokenBalancesOptions, GetOwnersForContractWithTokenBalancesResponse, GetOwnersForNftResponse, GetSpamContractsResponse, GetTransfersForContractOptions, IsSpamContractResponse, Nft, NftAttributesResponse, NftCollection, NftContract, NftContractBaseNftsResponse, NftContractNftsResponse, NftMetadataBatchOptions, NftMetadataBatchToken, OwnedBaseNft, OwnedBaseNftsResponse, OwnedNft, OwnedNftsResponse, SearchContractMetadataResponse, TransfersNftResponse } from '../types/nft-types'; import { AssetTransfersResponse, GetTransfersForOwnerOptions, GetTransfersForOwnerTransferType, RefreshContractResult } from '../types/types'; /** * This file contains the underlying implementations for exposed API surface in * the {@link NftNamespace}. By moving the methods out into a separate file, * other namespaces can access these methods without depending on the entire * NftNamespace. */ /** * Get the NFT metadata for the provided contract address. */ export declare function getNftMetadata(config: AlchemyConfig, contractAddress: string, tokenId: BigNumberish, options?: GetNftMetadataOptions, srcMethod?: string): Promise; export declare function getNftMetadataBatch(config: AlchemyConfig, tokens: Array, options?: NftMetadataBatchOptions): Promise; export declare function getContractMetadata(config: AlchemyConfig, contractAddress: string, srcMethod?: string): Promise; export declare function getContractMetadataBatch(config: AlchemyConfig, contractAddresses: string[]): Promise; export declare function getCollectionMetadata(config: AlchemyConfig, collectionSlug: string, srcMethod?: string): Promise; export declare function getNftsForOwnerIterator(config: AlchemyConfig, owner: string, options?: GetNftsForOwnerOptions | GetBaseNftsForOwnerOptions, srcMethod?: string): AsyncIterable; export declare function getNftsForOwner(config: AlchemyConfig, owner: string, options?: GetNftsForOwnerOptions | GetBaseNftsForOwnerOptions, srcMethod?: string): Promise; export declare function getNftsForContract(config: AlchemyConfig, contractAddress: string, options?: GetBaseNftsForContractOptions | GetNftsForContractOptions, srcMethod?: string): Promise; export declare function getNftsForContractIterator(config: AlchemyConfig, contractAddress: string, options?: GetBaseNftsForContractOptions | GetNftsForContractOptions, srcMethod?: string): AsyncIterable; export declare function getOwnersForContract(config: AlchemyConfig, contractAddress: string, options?: GetOwnersForContractWithTokenBalancesOptions | GetOwnersForContractOptions, srcMethod?: string): Promise; export declare function getContractsForOwner(config: AlchemyConfig, owner: string, options?: GetContractsForOwnerOptions, srcMethod?: string): Promise; export declare function getOwnersForNft(config: AlchemyConfig, contractAddress: string, tokenId: BigNumberish, options?: GetOwnersForContractOptions, srcMethod?: string): Promise; export declare function getMintedNfts(config: AlchemyConfig, owner: string, options?: GetMintedNftsOptions): Promise; export declare function getTransfersForOwner(config: AlchemyConfig, owner: string, transferType: GetTransfersForOwnerTransferType, options?: GetTransfersForOwnerOptions): Promise; export declare function getTransfersForContract(config: AlchemyConfig, contract: string, options?: GetTransfersForContractOptions): Promise; export declare function verifyNftOwnership(config: AlchemyConfig, owner: string, contractAddresses: string | string[], srcMethod?: string): Promise; export declare function isSpamContract(config: AlchemyConfig, contractAddress: string, srcMethod?: string): Promise; export declare function getSpamContracts(config: AlchemyConfig, srcMethod?: string): Promise; export declare function getFloorPrice(config: AlchemyConfig, contractAddress: string, srcMethod?: string): Promise; export declare function getNftSales(config: AlchemyConfig, options?: GetNftSalesOptions | GetNftSalesOptionsByContractAddress, srcMethod?: string): Promise; export declare function computeRarity(config: AlchemyConfig, contractAddress: string, tokenId: BigNumberish, srcMethod?: string): Promise; export declare function searchContractMetadata(config: AlchemyConfig, query: string, srcMethod?: string): Promise; export declare function summarizeNftAttributes(config: AlchemyConfig, contractAddress: string, srcMethod?: string): Promise; export declare function refreshNftMetadata(config: AlchemyConfig, contractAddress: string, tokenId: BigNumberish, srcMethod?: string): Promise; export declare function refreshContract(config: AlchemyConfig, contractAddress: string, srcMethod?: string): Promise; /** * Given an AssetTransfersResponse, fetches the NFTs associated with the * transfers and collates them with transfer metadata. * * VISIBLE FOR TESTING */ export declare function getNftsForTransfers(config: AlchemyConfig, response: AssetTransfersResponse): Promise;