UNPKG

@mojito-inc/core-service

Version:

Mojito Core API service for auction, payment, token

259 lines (258 loc) 11.1 kB
import { Response } from '../data'; import { GetNFTFavoriteListByUserData, AddNFTToFavoriteData, RemoveNFTFromFavoriteData, GetAllRegistryTokensData, GetNFTAttributesRarityData, GetNFTDetailsData, GetNFTHistoryData, InitiateBuyNFTData, UpdateTransactionHashData, GenerateSecondaryInvoiceData, UserOrderActivityData, TransferNFTData, GetAllInvoicesData, GetMyInvoicesData, GeneratePrimaryInvoiceData, FileSignedUrlData, CompleteOnchainBuyData, SaveUserWalletSessionData, TraitsData, GetAllRegistryTokensV2Data, GetRegistryCollectionsData } from './NFTData'; import { QueryOptions } from '../domain'; import { FavoriteListByUserParam, FavoriteParam, GetAllRegistryTokensParam, GetNFTAttributesRarityParam, GetNFTDetailsParam, GetNFTHistoryParam, InitiateBuyNFTParam, UpdateTransactionHashParam, GenerateSecondaryInvoiceParam, GetUserOrderActivityParam, TransferNFTParam, GetAllInvoicesParam, GetMyInvoicesParam, GeneratePrimaryInvoiceParam, FileSignedUrlParam, CompleteOnchainBuyParam, SaveUserWalletSessionParam, GetCollectionTraitParam, GetAllRegistryTokensV2Params, GetRegistriesV1Params } from './NFTParam'; export interface NFTService { /** * Returns favorite NFT list by user * * @remarks * This method is part of NFT service * * @param param - favorite list by user param {@link FavoriteListByUserParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetNFTFavoriteListByUserData} favorite list * */ getNFTFavoriteListByUser: (param: FavoriteListByUserParam, options?: QueryOptions) => Promise<Response<GetNFTFavoriteListByUserData>>; /** * Returns the success message * * @remarks * This method is part of NFT service * * @param param - add favorite param {@link FavoriteParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link AddNFTToFavoriteData} success message * */ addNFTToFavorite: (param: FavoriteParam, options?: QueryOptions) => Promise<Response<AddNFTToFavoriteData>>; /** * Returns the success message * * @remarks * This method is part of NFT service * * @param param - add favorite param {@link FavoriteParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link RemoveNFTFromFavoriteData} success message * */ removeNFTFromFavorite: (param: FavoriteParam, options?: QueryOptions) => Promise<Response<RemoveNFTFromFavoriteData>>; /** * Returns the transaction details * * @remarks * This method is part of NFT service * * @param param - add initiate buy now param {@link InitiateBuyNFTParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link InitiateBuyNFTData} transaction details * */ initiateBuyNFT: (param: InitiateBuyNFTParam, options?: QueryOptions) => Promise<Response<InitiateBuyNFTData>>; /** * Returns the transaction details * * @remarks * This method is part of NFT service * * @param param - update transaction hash param {@link UpdateTransactionHashParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link UpdateTransactionHashData} transaction details * */ updateTransactionHash: (param: UpdateTransactionHashParam, options?: QueryOptions) => Promise<Response<UpdateTransactionHashData>>; /** * Returns pdf url to download the invoice * * @remarks * This method is part of NFT module, fetch invoice details * * @param param - param {@link GenerateSecondaryInvoiceParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GenerateSecondaryInvoiceData} invoice Data * */ generateSecondaryInvoice: (param: GenerateSecondaryInvoiceParam, options?: QueryOptions) => Promise<Response<GenerateSecondaryInvoiceData>>; /** * Returns pdf url to download the primary marketplace invoice * * @remarks * This method is part of NFT module, fetch invoice details * * @param param - param {@link GeneratePrimaryInvoiceParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GeneratePrimaryInvoiceData} invoice Data * */ generatePrimaryInvoice: (param: GeneratePrimaryInvoiceParam, options?: QueryOptions) => Promise<Response<GeneratePrimaryInvoiceData>>; /** * Returns On user order activity Details * * @remarks * This method is part of NFT module, fetch user order activity * * @param param - param {@link GetUserOrderActivityParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link UserOrderActivityData} user order activity data * */ userOrderActivity: (param: GetUserOrderActivityParam, options?: QueryOptions) => Promise<Response<UserOrderActivityData>>; /** * Returns Collections list * * @remarks * This method is part of NFT service * * @param param - Collection list param {@link GetRegistriesV1Params} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetRegistryCollectionsData} NFT list * */ getRegistryCollections: (param: GetRegistriesV1Params, options?: QueryOptions) => Promise<Response<GetRegistryCollectionsData>>; /** * Returns NFT list * * @remarks * This method is part of NFT service * * @param param - NFT list param {@link GetAllRegistryTokensParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetAllRegistryTokensData} NFT list * */ getAllRegistryTokens: (param: GetAllRegistryTokensParam, options?: QueryOptions) => Promise<Response<GetAllRegistryTokensData>>; /** * Returns NFT list * * @remarks * This method is part of NFT service * * @param param - NFT list param {@link GetAllRegistryTokensV2Params} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetAllRegistryTokensV2Data} NFT list * */ getAllRegistryTokensV2: (param: GetAllRegistryTokensV2Params, options?: QueryOptions) => Promise<Response<GetAllRegistryTokensV2Data>>; /** * Returns Traits for the marketplace or organization * * @remarks * This method is part of NFT service * * @param param - collection traits query param {@link GetCollectionTraitParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link TraitsData} Traits data * */ getCollectionTraits: (param: GetCollectionTraitParam, options?: QueryOptions) => Promise<Response<TraitsData>>; /** * Returns NFT details * * @remarks * This method is part of NFT service * * @param param - NFT details param {@link GetNFTDetailsParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetNFTDetailsData} NFT details * */ getNFTDetails: (param: GetNFTDetailsParam, options?: QueryOptions) => Promise<Response<GetNFTDetailsData>>; /** * Returns NFT history list * * @remarks * This method is part of NFT service * * @param param - NFT history param {@link GetNFTHistoryParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetNFTHistoryData} NFT history list * */ getNFTHistory: (param: GetNFTHistoryParam, options?: QueryOptions) => Promise<Response<GetNFTHistoryData>>; /** * Returns NFT traits list * * @remarks * This method is part of NFT service * * @param param - NFT traits param {@link GetNFTAttributesRarityParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetNFTAttributesRarityData} NFT traits list * */ getNFTAttributesRarity: (param: GetNFTAttributesRarityParam, options?: QueryOptions) => Promise<Response<GetNFTAttributesRarityData>>; /** * Returns the success message * * @remarks * This method is part of NFT service * * @param param - add transferNFT param {@link TransferNFTParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link TransferNFTData} success message * */ transferNFT: (param: TransferNFTParam, options?: QueryOptions) => Promise<Response<TransferNFTData>>; /** * Returns On All Invoice Details * * @remarks * This method is part of NFT Service * * @param param - param {@link GetAllInvoicesParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetAllInvoicesData} all invoices data * */ getAllInvoices: (param: GetAllInvoicesParam, options?: QueryOptions) => Promise<Response<GetAllInvoicesData>>; /** * Returns On My Invoice Details * * @remarks * This method is part of NFT Service * * @param param - param {@link GetMyInvoicesParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link GetMyInvoicesData} all invoices data * */ getMyInvoices: (param: GetMyInvoicesParam, options?: QueryOptions) => Promise<Response<GetMyInvoicesData>>; /** * Returns the url data * * @remarks * This method is part of NFT service * * @param param - get FileSignedUrl param {@link FileSignedUrlParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link FileSignedUrlData} FileSigned Url * */ getFileSignedUrl: (param: FileSignedUrlParam, options?: QueryOptions) => Promise<Response<FileSignedUrlData>>; /** * Returns the boolean * * @remarks * This method is part of NFT service * * @param param - completed transaction hash param {@link CompleteOnchainBuyParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link CompleteOnchainBuyData} transaction status * */ completeOnchainBuy: (param: CompleteOnchainBuyParam, options?: QueryOptions) => Promise<Response<CompleteOnchainBuyData>>; /** * Returns the user details * * @remarks * This method is part of NFT service * * @param param - user details param {@link SaveUserWalletSessionParam} * @param options - graphql fetch query options {@link QueryOptions} * @returns {@link SaveUserWalletSessionData} user details * */ saveUserWalletSession: (param: SaveUserWalletSessionParam, options?: QueryOptions) => Promise<Response<SaveUserWalletSessionData>>; }