/** * The supported networks by Alchemy. Note that some functions are not available * on all networks. Please refer to the Alchemy documentation for which APIs are * available on which networks * {@link https://docs.alchemy.com/alchemy/apis/feature-support-by-chain} * * @public */ export declare enum Network { ETH_MAINNET = "eth-mainnet", ETH_GOERLI = "eth-goerli", OPT_MAINNET = "opt-mainnet", OPT_GOERLI = "opt-goerli", ARB_MAINNET = "arb-mainnet", ARB_GOERLI = "arb-goerli", MATIC_MAINNET = "polygon-mainnet", MATIC_MUMBAI = "polygon-mumbai", ASTAR_MAINNET = "astar-mainnet" } /** * Options object used to configure the Rarity SDK. * * @public */ export interface RaritySettings { network?: Network; alchemyApiKey?: string; } /** * Optional parameters object for the {@link getNftsForContract} and * {@link getNftsForContractIterator} functions. * * This interface is used to fetch NFTs with their associated metadata. To get * Nfts without their associated metadata, use {@link GetBaseNftsForContractOptions}. * * @public */ export interface GetNftsForContractOptions { /** * {@link NftContractNftsResponse}to use for pagination. */ pageKey?: string; /** Optional boolean flag to omit NFT metadata. Defaults to `false`. */ withMetadata?: boolean; /** * Sets the total number of NFTs to return in the response. Defaults to 100. * Maximum page size is 100. */ pageSize?: number; /** * No set timeout by default - When metadata is requested, this parameter is * the timeout (in milliseconds) for the website hosting the metadata to * respond. If you want to only access the cache and not live fetch any * metadata for cache misses then set this value to 0. */ tokenUriTimeoutInMs?: number; } /** * Options object used to get rarity score * @public */ export interface GetNftsRarityScoreOptions { /** * {@link GetNftsForContractOptions}to use for pagination. */ pageKey?: string; /** Return nfts rank in the metadata result */ showRank?: boolean; } /** * The response object for the {@link getNftsForContract} function. The object * contains the NFTs with metadata inside the NFT contract. * @public */ export interface NftContractNftsResponse { /** An array of NFTs with metadata. */ nfts: any[]; /** * Pagination token that can be passed into another request to fetch the next * NFTs. If there is no page key, then there are no more NFTs to fetch. */ pageKey?: string; } /** * Interface for the `getNftsForNftContract` endpoint. The main difference is * that the endpoint has a `startToken` parameter, but the SDK standardizes all * pagination parameters to `pageKey`. * * @internal */ export interface GetNftsForContractAlchemyParams { contractAddress: string; startToken?: string; withMetadata: boolean; limit?: number; tokenUriTimeoutInMs?: number; } /** * Represents Alchemy's HTTP response for `getNftsForNftContract` with metadata. * * @internal */ export interface RawGetNftsForContractResponse { nfts: any[]; nextToken?: string; }