import { NFTDetailExtended, CollectionInfo, NFTOptions } from '../../types/nft';
import { ChainConfig } from '../../config/chains';
/**
 * Service for interacting with NFT APIs for individual NFT details
 */
export declare class NFTAPIService {
    private chainConfig;
    private chainId;
    private apiKey?;
    constructor(chainConfig: ChainConfig, chainId: string, apiKey?: string);
    /**
     * Gets detailed NFT information
     * @param contractAddress - NFT contract address
     * @param tokenId - Token ID
     * @param options - Query options
     * @returns Promise resolving to extended NFT detail
     */
    getNFTDetail(contractAddress: string, tokenId: string, options?: NFTOptions): Promise<NFTDetailExtended>;
    /**
     * Gets collection information
     * @param contractAddress - Collection contract address
     * @returns Promise resolving to collection info
     */
    getCollectionInfo(contractAddress: string): Promise<CollectionInfo>;
    /**
     * Gets detailed EVM NFT information
     * @param contractAddress - NFT contract address
     * @param tokenId - Token ID
     * @param options - Query options
     * @returns Promise resolving to extended NFT detail
     */
    private getEVMNFTDetail;
    /**
     * Gets detailed Solana NFT information
     * @param contractAddress - NFT contract address
     * @param tokenId - Token ID
     * @param options - Query options
     * @returns Promise resolving to extended NFT detail
     */
    private getSolanaNFTDetail;
    /**
     * Gets EVM collection information
     * @param contractAddress - Collection contract address
     * @returns Promise resolving to collection info
     */
    private getEVMCollectionInfo;
    /**
     * Gets Solana collection information
     * @param contractAddress - Collection contract address
     * @returns Promise resolving to collection info
     */
    private getSolanaCollectionInfo;
}
