import type { BaseTransactionOptions } from "../../../transaction/types.js"; import type { NFT } from "../../../utils/nft/parseNft.js"; /** * Parameters for retrieving NFTs. * @extension ERC721 */ export type GetNFTsParams = { /** * Which tokenId to start at. * @default 0 */ start?: number; /** * The number of NFTs to retrieve. * @default 100 */ count?: number; /** * Whether to include the owner of each NFT. * @default false */ includeOwners?: boolean; /** * Whether to check and fetch tokenID by index, in case of non-sequential IDs. * * It should be set to true if it's an ERC721Enumerable contract, and has `tokenByIndex` function. * In this case, the provided tokenId will be considered as token-index and actual tokenId will be fetched from the contract. */ tokenByIndex?: boolean; /** * Whether to use the insight API to fetch the NFTs. * @default true */ useIndexer?: boolean; }; /** * Retrieves an array of NFTs ("ERC721") based on the provided options. * @param options - The options for retrieving the NFTs. * @returns A promise that resolves to an array of NFTs. * @throws An error if the contract requires either `nextTokenIdToMint` or `totalSupply` function to determine the next token ID to mint. * @extension ERC721 * @example * ```ts * import { getNFTs } from "thirdweb/extensions/erc721"; * const nfts = await getNFTs({ * contract, * start: 0, * count: 10, * }); * ``` */ export declare function getNFTs(options: BaseTransactionOptions): Promise; /** * Checks if the `getNFTs` method is supported by the given contract. * @param availableSelectors An array of 4byte function selectors of the contract. You can get this in various ways, such as using "whatsabi" or if you have the ABI of the contract available you can use it to generate the selectors. * @returns A boolean indicating if the `getNFTs` method is supported. * @extension ERC721 * @example * ```ts * import { isGetNFTsSupported } from "thirdweb/extensions/erc721"; * * const supported = isGetNFTsSupported(["0x..."]); * ``` */ export declare function isGetNFTsSupported(availableSelectors: string[]): boolean; //# sourceMappingURL=getNFTs.d.ts.map