@nevermined-io/sdk - v3.0.44 / NFTsBaseApi
Abstract class providing common NFT methods for different ERC implementations.
↳ NFTsBaseApi
↳↳ NFT1155Api
↳↳ NFT721Api
• new NFTsBaseApi(): NFTsBaseApi
• servicePlugin: Object
▪ [key: string
]: ServicePlugin
<Service
>
src/nevermined/api/RegistryBaseApi.ts:39
• get
artifactsFolder(): undefined
| string
undefined
| string
RegistryBaseApi.artifactsFolder
src/Instantiable.abstract.ts:137
• get
circuitsFolder(): undefined
| string
undefined
| string
RegistryBaseApi.circuitsFolder
src/Instantiable.abstract.ts:141
• get
client(): Web3Clients
RegistryBaseApi.client
src/Instantiable.abstract.ts:89
• get
config(): NeverminedOptions
RegistryBaseApi.config
src/Instantiable.abstract.ts:120
• get
instanceConfig(): InstantiableConfig
RegistryBaseApi.instanceConfig
src/Instantiable.abstract.ts:145
• get
instantiableConfig(): undefined
| InstantiableConfig
undefined
| InstantiableConfig
RegistryBaseApi.instantiableConfig
src/Instantiable.abstract.ts:113
• get
logger(): Logger
Logger
RegistryBaseApi.logger
src/Instantiable.abstract.ts:128
• get
nevermined(): Nevermined
RegistryBaseApi.nevermined
src/Instantiable.abstract.ts:81
• get
publicClient(): Object
Object
Name | Type | Description |
---|---|---|
account |
undefined |
The Account of the Client. |
batch? |
{ multicall? : boolean | { batchSize? : number ; wait? : number } } |
Flags for batch settings. |
batch.multicall? |
boolean | { batchSize? : number ; wait? : number } |
Toggle to enable eth_call multicall aggregation. |
cacheTime |
number |
Time (in ms) that cached data will remain in memory. |
call |
(parameters : CallParameters <undefined | Chain >) => Promise <CallReturnType > |
- |
ccipRead? |
false | { request? : (parameters : CcipRequestParameters ) => Promise <`0x${string}`> } |
CCIP Read configuration. |
chain |
undefined | Chain |
Chain for the client. |
createBlockFilter |
() => Promise <{ id : `0x${string}` ; request : EIP1193RequestFn <readonly [{ Method : "eth_getFilterChanges" ; Parameters : [filterId: `0x${string}`] ; ReturnType : `0x${string}`[] | RpcLog [] }, { Method : "eth_getFilterLogs" ; Parameters : [filterId: `0x${string}`] ; ReturnType : RpcLog [] }, { Method : "eth_uninstallFilter" ; Parameters : [filterId: `0x${string}`] ; ReturnType : boolean }]> ; type : "block" }> |
- |
createContractEventFilter |
<TAbi, TEventName, TArgs, TStrict, TFromBlock, TToBlock>(args : CreateContractEventFilterParameters <TAbi , TEventName , TArgs , TStrict , TFromBlock , TToBlock >) => Promise <CreateContractEventFilterReturnType <TAbi , TEventName , TArgs , TStrict , TFromBlock , TToBlock >> |
- |
createEventFilter |
<TAbiEvent, TAbiEvents, TStrict, TFromBlock, TToBlock, _EventName, _Args>(args? : CreateEventFilterParameters <TAbiEvent , TAbiEvents , TStrict , TFromBlock , TToBlock , _EventName , _Args >) => Promise <{ [K in string | number | symbol]: Filter<“event”, TAbiEvents, _EventName, _Args, TStrict, TFromBlock, TToBlock>[K] }> |
- |
createPendingTransactionFilter |
() => Promise <{ id : `0x${string}` ; request : EIP1193RequestFn <readonly [{ Method : "eth_getFilterChanges" ; Parameters : [filterId: `0x${string}`] ; ReturnType : `0x${string}`[] | RpcLog [] }, { Method : "eth_getFilterLogs" ; Parameters : [filterId: `0x${string}`] ; ReturnType : RpcLog [] }, { Method : "eth_uninstallFilter" ; Parameters : [filterId: `0x${string}`] ; ReturnType : boolean }]> ; type : "transaction" }> |
- |
estimateContractGas |
<TChain, abi, functionName, args>(args : EstimateContractGasParameters <abi , functionName , args , TChain >) => Promise <bigint > |
- |
estimateFeesPerGas |
<TChainOverride, TType>(args? : EstimateFeesPerGasParameters <undefined | Chain , TChainOverride , TType >) => Promise <EstimateFeesPerGasReturnType > |
- |
estimateGas |
(args : EstimateGasParameters <undefined | Chain >) => Promise <bigint > |
- |
estimateMaxPriorityFeePerGas |
<TChainOverride>(args? : { chain : null | TChainOverride }) => Promise <bigint > |
- |
extend |
<client>(fn : (client : Client <Transport , undefined | Chain , undefined , PublicRpcSchema , PublicActions <Transport , undefined | Chain >>) => client ) => Client <Transport , undefined | Chain , undefined , PublicRpcSchema , { [K in string | number | symbol]: client[K] } & PublicActions <Transport , undefined | Chain >> |
- |
getBalance |
(args : GetBalanceParameters ) => Promise <bigint > |
- |
getBlobBaseFee |
() => Promise <bigint > |
- |
getBlock |
<TIncludeTransactions, TBlockTag>(args? : GetBlockParameters <TIncludeTransactions , TBlockTag >) => Promise <{ baseFeePerGas : null | bigint ; blobGasUsed : bigint ; difficulty : bigint ; excessBlobGas : bigint ; extraData : `0x${string}` ; gasLimit : bigint ; gasUsed : bigint ; hash : TBlockTag extends "pending" ? null : `0x${string}` ; logsBloom : TBlockTag extends "pending" ? null : `0x${string}` ; miner : `0x${string}` ; mixHash : `0x${string}` ; nonce : TBlockTag extends "pending" ? null : `0x${string}` ; number : TBlockTag extends "pending" ? null : bigint ; parentHash : `0x${string}` ; receiptsRoot : `0x${string}` ; sealFields : `0x${string}`[] ; sha3Uncles : `0x${string}` ; size : bigint ; stateRoot : `0x${string}` ; timestamp : bigint ; totalDifficulty : null | bigint ; transactions : TIncludeTransactions extends true ? ({ accessList? : undefined ; blobVersionedHashes? : undefined ; blockHash : TBlockTag extends "pending" ? true : false extends true ? null : `0x${string}` ; blockNumber : TBlockTag extends "pending" ? true : false extends true ? null : bigint ; chainId? : number ; from : `0x${string}` ; gas : bigint ; gasPrice : bigint ; hash : `0x${string}` ; input : `0x${string}` ; maxFeePerBlobGas? : undefined ; maxFeePerGas? : undefined ; maxPriorityFeePerGas? : undefined ; nonce : number ; r : `0x${string}` ; s : `0x${string}` ; to : null | `0x${string}` ; transactionIndex : TBlockTag extends "pending" ? true : false extends true ? null : number ; type : "legacy" ; typeHex : null | `0x${string}` ; v : bigint ; value : bigint ; yParity? : undefined } | { accessList : AccessList ; blobVersionedHashes? : undefined ; blockHash : TBlockTag extends "pending" ? true : false extends true ? null : `0x${string}` ; blockNumber : TBlockTag extends "pending" ? true : false extends true ? null : bigint ; chainId : number ; from : `0x${string}` ; gas : bigint ; gasPrice : bigint ; hash : `0x${string}` ; input : `0x${string}` ; maxFeePerBlobGas? : undefined ; maxFeePerGas? : undefined ; maxPriorityFeePerGas? : undefined ; nonce : number ; r : `0x${string}` ; s : `0x${string}` ; to : null | `0x${string}` ; transactionIndex : TBlockTag extends "pending" ? true : false extends true ? null : number ; type : "eip2930" ; typeHex : null | `0x${string}` ; v : bigint ; value : bigint ; yParity : number } | { accessList : AccessList ; blobVersionedHashes? : undefined ; blockHash : TBlockTag extends "pending" ? true : false extends true ? null : `0x${string}` ; blockNumber : TBlockTag extends "pending" ? true : false extends true ? null : bigint ; chainId : number ; from : `0x${string}` ; gas : bigint ; gasPrice? : undefined ; hash : `0x${string}` ; input : `0x${string}` ; maxFeePerBlobGas? : undefined ; maxFeePerGas : bigint ; maxPriorityFeePerGas : bigint ; nonce : number ; r : `0x${string}` ; s : `0x${string}` ; to : null | `0x${string}` ; transactionIndex : TBlockTag extends "pending" ? true : false extends true ? null : number ; type : "eip1559" ; typeHex : null | `0x${string}` ; v : bigint ; value : bigint ; yParity : number } | { accessList : AccessList ; blobVersionedHashes : `0x${string}`[] ; blockHash : TBlockTag extends "pending" ? true : false extends true ? null : `0x${string}` ; blockNumber : TBlockTag extends "pending" ? true : false extends true ? null : bigint ; chainId : number ; from : `0x${string}` ; gas : bigint ; gasPrice? : undefined ; hash : `0x${string}` ; input : `0x${string}` ; maxFeePerBlobGas : bigint ; maxFeePerGas : bigint ; maxPriorityFeePerGas : bigint ; nonce : number ; r : `0x${string}` ; s : `0x${string}` ; to : null | `0x${string}` ; transactionIndex : TBlockTag extends "pending" ? true : false extends true ? null : number ; type : "eip4844" ; typeHex : null | `0x${string}` ; v : bigint ; value : bigint ; yParity : number })[] : `0x${string}`[] ; transactionsRoot : `0x${string}` ; uncles : `0x${string}`[] ; withdrawals? : Withdrawal [] ; withdrawalsRoot? : `0x${string}` }> |
- |
getBlockNumber |
(args? : GetBlockNumberParameters ) => Promise <bigint > |
- |
getBlockTransactionCount |
(args? : GetBlockTransactionCountParameters ) => Promise <number > |
- |
getBytecode |
(args : GetBytecodeParameters ) => Promise <GetBytecodeReturnType > |
- |
getChainId |
() => Promise <number > |
- |
getContractEvents |
<abi, eventName, strict, fromBlock, toBlock>(args : GetContractEventsParameters <abi , eventName , strict , fromBlock , toBlock >) => Promise <GetContractEventsReturnType <abi , eventName , strict , fromBlock , toBlock >> |
- |
getEnsAddress |
(args : { blockNumber? : bigint ; blockTag? : BlockTag ; coinType? : number ; gatewayUrls? : string [] ; name : string ; strict? : boolean ; universalResolverAddress? : `0x${string}` }) => Promise <GetEnsAddressReturnType > |
- |
getEnsAvatar |
(args : { assetGatewayUrls? : AssetGatewayUrls ; blockNumber? : bigint ; blockTag? : BlockTag ; gatewayUrls? : string [] ; name : string ; strict? : boolean ; universalResolverAddress? : `0x${string}` }) => Promise <GetEnsAvatarReturnType > |
- |
getEnsName |
(args : { address : `0x${string}` ; blockNumber? : bigint ; blockTag? : BlockTag ; gatewayUrls? : string [] ; strict? : boolean ; universalResolverAddress? : `0x${string}` }) => Promise <GetEnsNameReturnType > |
- |
getEnsResolver |
(args : { blockNumber? : bigint ; blockTag? : BlockTag ; name : string ; universalResolverAddress? : `0x${string}` }) => Promise <`0x${string}`> |
- |
getEnsText |
(args : { blockNumber? : bigint ; blockTag? : BlockTag ; gatewayUrls? : string [] ; key : string ; name : string ; strict? : boolean ; universalResolverAddress? : `0x${string}` }) => Promise <GetEnsTextReturnType > |
- |
getFeeHistory |
(args : GetFeeHistoryParameters ) => Promise <GetFeeHistoryReturnType > |
- |
getFilterChanges |
<TFilterType, TAbi, TEventName, TStrict, TFromBlock, TToBlock>(args : GetFilterChangesParameters <TFilterType , TAbi , TEventName , TStrict , TFromBlock , TToBlock >) => Promise <GetFilterChangesReturnType <TFilterType , TAbi , TEventName , TStrict , TFromBlock , TToBlock >> |
- |
getFilterLogs |
<TAbi, TEventName, TStrict, TFromBlock, TToBlock>(args : GetFilterLogsParameters <TAbi , TEventName , TStrict , TFromBlock , TToBlock >) => Promise <GetFilterLogsReturnType <TAbi , TEventName , TStrict , TFromBlock , TToBlock >> |
- |
getGasPrice |
() => Promise <bigint > |
- |
getLogs |
<TAbiEvent, TAbiEvents, TStrict, TFromBlock, TToBlock>(args? : GetLogsParameters <TAbiEvent , TAbiEvents , TStrict , TFromBlock , TToBlock >) => Promise <GetLogsReturnType <TAbiEvent , TAbiEvents , TStrict , TFromBlock , TToBlock >> |
- |
getProof |
(args : GetProofParameters ) => Promise <GetProofReturnType > |
- |
getStorageAt |
(args : GetStorageAtParameters ) => Promise <GetStorageAtReturnType > |
- |
getTransaction |
<TBlockTag>(args : GetTransactionParameters <TBlockTag >) => Promise <{ accessList? : undefined ; blobVersionedHashes? : undefined ; blockHash : TBlockTag extends "pending" ? true : false extends true ? null : `0x${string}` ; blockNumber : TBlockTag extends "pending" ? true : false extends true ? null : bigint ; chainId? : number ; from : `0x${string}` ; gas : bigint ; gasPrice : bigint ; hash : `0x${string}` ; input : `0x${string}` ; maxFeePerBlobGas? : undefined ; maxFeePerGas? : undefined ; maxPriorityFeePerGas? : undefined ; nonce : number ; r : `0x${string}` ; s : `0x${string}` ; to : null | `0x${string}` ; transactionIndex : TBlockTag extends "pending" ? true : false extends true ? null : number ; type : "legacy" ; typeHex : null | `0x${string}` ; v : bigint ; value : bigint ; yParity? : undefined } | { accessList : AccessList ; blobVersionedHashes? : undefined ; blockHash : TBlockTag extends "pending" ? true : false extends true ? null : `0x${string}` ; blockNumber : TBlockTag extends "pending" ? true : false extends true ? null : bigint ; chainId : number ; from : `0x${string}` ; gas : bigint ; gasPrice : bigint ; hash : `0x${string}` ; input : `0x${string}` ; maxFeePerBlobGas? : undefined ; maxFeePerGas? : undefined ; maxPriorityFeePerGas? : undefined ; nonce : number ; r : `0x${string}` ; s : `0x${string}` ; to : null | `0x${string}` ; transactionIndex : TBlockTag extends "pending" ? true : false extends true ? null : number ; type : "eip2930" ; typeHex : null | `0x${string}` ; v : bigint ; value : bigint ; yParity : number } | { accessList : AccessList ; blobVersionedHashes? : undefined ; blockHash : TBlockTag extends "pending" ? true : false extends true ? null : `0x${string}` ; blockNumber : TBlockTag extends "pending" ? true : false extends true ? null : bigint ; chainId : number ; from : `0x${string}` ; gas : bigint ; gasPrice? : undefined ; hash : `0x${string}` ; input : `0x${string}` ; maxFeePerBlobGas? : undefined ; maxFeePerGas : bigint ; maxPriorityFeePerGas : bigint ; nonce : number ; r : `0x${string}` ; s : `0x${string}` ; to : null | `0x${string}` ; transactionIndex : TBlockTag extends "pending" ? true : false extends true ? null : number ; type : "eip1559" ; typeHex : null | `0x${string}` ; v : bigint ; value : bigint ; yParity : number } | { accessList : AccessList ; blobVersionedHashes : `0x${string}`[] ; blockHash : TBlockTag extends "pending" ? true : false extends true ? null : `0x${string}` ; blockNumber : TBlockTag extends "pending" ? true : false extends true ? null : bigint ; chainId : number ; from : `0x${string}` ; gas : bigint ; gasPrice? : undefined ; hash : `0x${string}` ; input : `0x${string}` ; maxFeePerBlobGas : bigint ; maxFeePerGas : bigint ; maxPriorityFeePerGas : bigint ; nonce : number ; r : `0x${string}` ; s : `0x${string}` ; to : null | `0x${string}` ; transactionIndex : TBlockTag extends "pending" ? true : false extends true ? null : number ; type : "eip4844" ; typeHex : null | `0x${string}` ; v : bigint ; value : bigint ; yParity : number }> |
- |
getTransactionConfirmations |
(args : GetTransactionConfirmationsParameters <undefined | Chain >) => Promise <bigint > |
- |
getTransactionCount |
(args : GetTransactionCountParameters ) => Promise <number > |
- |
getTransactionReceipt |
(args : GetTransactionReceiptParameters ) => Promise <TransactionReceipt > |
- |
key |
string |
A key for the client. |
multicall |
<contracts, allowFailure>(args : MulticallParameters <contracts , allowFailure >) => Promise <MulticallReturnType <contracts , allowFailure >> |
- |
name |
string |
A name for the client. |
pollingInterval |
number |
Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. |
prepareTransactionRequest |
<TRequest, TChainOverride, TAccountOverride>(args : PrepareTransactionRequestParameters <undefined | Chain , undefined | Account , TChainOverride , TAccountOverride , TRequest >) => Promise <{ [K in string | number | symbol]: (UnionRequiredBy<Extract<UnionOmit<(…), (…)> & ((…) extends (…) ? (…) : (…)) & ((…) extends (…) ? (…) : (…)), IsNever<(…)> extends true ? unknown : ExactPartial<(…)>> & Object, ParameterTypeToParameters<TRequest[“parameters”] extends readonly PrepareTransactionRequestParameterType[] ? any[any][number] : “type” | “gas” | “nonce” | “blobVersionedHashes” | “chainId” | “fees”>> & (unknown extends TRequest[“kzg”] ? Object : Pick<TRequest, “kzg”>))[K] }> |
- |
readContract |
<abi, functionName, args>(args : ReadContractParameters <abi , functionName , args >) => Promise <ReadContractReturnType <abi , functionName , args >> |
- |
request |
EIP1193RequestFn <PublicRpcSchema > |
Request function wrapped with friendly error handling |
sendRawTransaction |
(args : SendRawTransactionParameters ) => Promise <`0x${string}`> |
- |
simulateContract |
<abi, functionName, args, chainOverride, accountOverride>(args : SimulateContractParameters <abi , functionName , args , undefined | Chain , chainOverride , accountOverride >) => Promise <SimulateContractReturnType <abi , functionName , args , undefined | Chain , undefined | Account , chainOverride , accountOverride >> |
- |
transport |
TransportConfig <string , EIP1193RequestFn > & Record <string , any > |
The RPC transport |
type |
string |
The type of client. |
uid |
string |
A unique ID for the client. |
uninstallFilter |
(args : UninstallFilterParameters ) => Promise <boolean > |
- |
verifyMessage |
(args : VerifyMessageParameters ) => Promise <boolean > |
- |
verifyTypedData |
(args : VerifyTypedDataParameters ) => Promise <boolean > |
- |
waitForTransactionReceipt |
(args : WaitForTransactionReceiptParameters <undefined | Chain >) => Promise <TransactionReceipt > |
- |
watchBlockNumber |
(args : WatchBlockNumberParameters ) => WatchBlockNumberReturnType |
- |
watchBlocks |
<TIncludeTransactions, TBlockTag>(args : WatchBlocksParameters <Transport , undefined | Chain , TIncludeTransactions , TBlockTag >) => WatchBlocksReturnType |
- |
watchContractEvent |
<TAbi, TEventName, TStrict>(args : WatchContractEventParameters <TAbi , TEventName , TStrict , Transport >) => WatchContractEventReturnType |
- |
watchEvent |
<TAbiEvent, TAbiEvents, TStrict>(args : WatchEventParameters <TAbiEvent , TAbiEvents , TStrict , Transport >) => WatchEventReturnType |
- |
watchPendingTransactions |
(args : WatchPendingTransactionsParameters <Transport >) => WatchPendingTransactionsReturnType |
- |
RegistryBaseApi.publicClient
src/Instantiable.abstract.ts:97
• get
walletClient(): Object
Object
Name | Type | Description |
---|---|---|
account |
undefined | Account |
The Account of the Client. |
addChain |
(args : AddChainParameters ) => Promise <void > |
- |
batch? |
{ multicall? : boolean | { batchSize? : number ; wait? : number } } |
Flags for batch settings. |
batch.multicall? |
boolean | { batchSize? : number ; wait? : number } |
Toggle to enable eth_call multicall aggregation. |
cacheTime |
number |
Time (in ms) that cached data will remain in memory. |
ccipRead? |
false | { request? : (parameters : CcipRequestParameters ) => Promise <`0x${string}`> } |
CCIP Read configuration. |
chain |
undefined | Chain |
Chain for the client. |
deployContract |
<abi, chainOverride>(args : DeployContractParameters <abi , undefined | Chain , undefined | Account , chainOverride >) => Promise <`0x${string}`> |
- |
extend |
<client>(fn : (client : Client <Transport , undefined | Chain , undefined | Account , WalletRpcSchema , WalletActions <undefined | Chain , undefined | Account >>) => client ) => Client <Transport , undefined | Chain , undefined | Account , WalletRpcSchema , { [K in string | number | symbol]: client[K] } & WalletActions <undefined | Chain , undefined | Account >> |
- |
getAddresses |
() => Promise <GetAddressesReturnType > |
- |
getChainId |
() => Promise <number > |
- |
getPermissions |
() => Promise <GetPermissionsReturnType > |
- |
key |
string |
A key for the client. |
name |
string |
A name for the client. |
pollingInterval |
number |
Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. |
prepareTransactionRequest |
<TRequest, TChainOverride, TAccountOverride>(args : PrepareTransactionRequestParameters <undefined | Chain , undefined | Account , TChainOverride , TAccountOverride , TRequest >) => Promise <{ [K in string | number | symbol]: (UnionRequiredBy<Extract<UnionOmit<(…), (…)> & ((…) extends (…) ? (…) : (…)) & ((…) extends (…) ? (…) : (…)), IsNever<(…)> extends true ? unknown : ExactPartial<(…)>> & Object, ParameterTypeToParameters<TRequest[“parameters”] extends readonly PrepareTransactionRequestParameterType[] ? any[any][number] : “type” | “gas” | “nonce” | “blobVersionedHashes” | “chainId” | “fees”>> & (unknown extends TRequest[“kzg”] ? Object : Pick<TRequest, “kzg”>))[K] }> |
- |
request |
EIP1193RequestFn <WalletRpcSchema > |
Request function wrapped with friendly error handling |
requestAddresses |
() => Promise <RequestAddressesReturnType > |
- |
requestPermissions |
(args : { eth_accounts : Record <string , any > }) => Promise <RequestPermissionsReturnType > |
- |
sendRawTransaction |
(args : SendRawTransactionParameters ) => Promise <`0x${string}`> |
- |
sendTransaction |
<TRequest, TChainOverride>(args : SendTransactionParameters <undefined | Chain , undefined | Account , TChainOverride , TRequest >) => Promise <`0x${string}`> |
- |
signMessage |
(args : SignMessageParameters <undefined | Account >) => Promise <`0x${string}`> |
- |
signTransaction |
<TChainOverride>(args : SignTransactionParameters <undefined | Chain , undefined | Account , TChainOverride >) => Promise <`0x02${string}` | `0x01${string}` | `0x03${string}` | TransactionSerializedLegacy > |
- |
signTypedData |
<TTypedData, TPrimaryType>(args : SignTypedDataParameters <TTypedData , TPrimaryType , undefined | Account >) => Promise <`0x${string}`> |
- |
switchChain |
(args : SwitchChainParameters ) => Promise <void > |
- |
transport |
TransportConfig <string , EIP1193RequestFn > & Record <string , any > |
The RPC transport |
type |
string |
The type of client. |
uid |
string |
A unique ID for the client. |
watchAsset |
(args : WatchAssetParams ) => Promise <boolean > |
- |
writeContract |
<abi, functionName, args, TChainOverride>(args : WriteContractParameters <abi , functionName , args , undefined | Chain , undefined | Account , TChainOverride >) => Promise <`0x${string}`> |
- |
RegistryBaseApi.walletClient
src/Instantiable.abstract.ts:105
▸ _details(did
, ercType
): Promise
<{ blockNumberUpdated
: number
; lastChecksum
: any
; lastUpdatedBy
: any
; mintCap
: bigint
; nftContractAddress
: any
; nftInitialized
: any
; nftSupply
: bigint
; nftURI
: string
; owner
: any
; providers
: any
; royalties
: number
; royaltyScheme
: RoyaltyKind
; url
: any
}>
Get the details of an NFT
Name | Type | Description |
---|---|---|
did |
string |
The Decentralized Identifier of the NFT asset. |
ercType |
ERCType |
The type of NFT used |
Promise
<{ blockNumberUpdated
: number
; lastChecksum
: any
; lastUpdatedBy
: any
; mintCap
: bigint
; nftContractAddress
: any
; nftInitialized
: any
; nftSupply
: bigint
; nftURI
: string
; owner
: any
; providers
: any
; royalties
: number
; royaltyScheme
: RoyaltyKind
; url
: any
}>
The details of the NFT.
Example
const details = await nevermined.nfts1155.details(ddo.id)
// The `details` object includes the NFT information
assert.equal(details.mintCap, 5)
assert.equal(details.nftSupply, 5)
assert.equal(details.royaltyScheme, RoyaltyKind.Standard)
assert.equal(details.royalties, 100000)
assert.equal(details.owner, artist.getId())
src/nevermined/api/nfts/NFTsBaseApi.ts:152
▸ access(did
, from
, destination?
, fileIndex?
, agreementId?
, buyer?
, babysig?
, serviceReference?
): Promise
<boolean
>
Access the files associated with an NFT.
Name | Type | Default value | Description |
---|---|---|---|
did |
string |
undefined |
The Decentralized Identifier of the NFT asset. |
from |
NvmAccount |
undefined |
The user account holding NFTs (after purchase) requesting the access |
destination? |
string |
undefined |
The download destination for the files. |
fileIndex? |
number |
undefined |
The index of the file. If unset will download all the files in the asset. |
agreementId |
string |
'0x' |
The NFT sales agreement id. |
buyer? |
string |
undefined |
Key which represent the buyer |
babysig? |
Babysig |
undefined |
- |
serviceReference |
number | ServiceType |
'nft-access' |
The service reference to use. By default is nft-access. |
Promise
<boolean
>
true if the access was successful or file if isToDownload is false.
Remarks
This function will call the Node that will check if all the access conditions where fulfilled before providing the files.
Example
const result = await nevermined.nfts1155.access(ddo.id, collector, '/tmp/')
src/nevermined/api/nfts/NFTsBaseApi.ts:427
▸ addRating(did
, newRating
, numVotesAdded?
, from
, publishMetadata?
, txParams?
): SubscribablePromise
<UpdateProgressStep
, DDO
>
Given a DID, it adds a vote to the asset curation information.
Name | Type | Default value | Description |
---|---|---|---|
did |
string |
undefined |
Decentralized ID representing the unique id of an asset in a Nevermined network. |
newRating |
number |
undefined |
New average rating of the asset |
numVotesAdded |
number |
1 |
Number of new votes added to the rating, typically just 1 |
from |
NvmAccount |
undefined |
Account of the user updating the metadata |
publishMetadata |
PublishMetadataOptions |
PublishMetadataOptions.OnlyMetadataAPI |
It allows to specify where to store the metadata |
txParams? |
TxParameters |
undefined |
Optional transaction parameters |
SubscribablePromise
<UpdateProgressStep
, DDO
>
DDO The DDO updated
src/nevermined/api/RegistryBaseApi.ts:564
▸ buySecondaryMarketNft(from
, nftAmount?
, agreementIdSeed
, conditionsTimeout?
, txParams?
): Promise
<boolean
>
Buys a number of listed NFTs on secondary markets.
Name | Type | Description |
---|---|---|
from |
NvmAccount |
The account of the buyer/consumer. |
nftAmount |
bigint |
The number of assets to buy. 1 by default. |
agreementIdSeed |
string |
The seed of the initial sales agreement created off-chain. |
conditionsTimeout |
number [] |
The timeout for the conditions. |
txParams? |
TxParameters |
Optional transaction parameters |
Promise
<boolean
>
true if the buy was successful.
Example
const result = await nevermined.nfts1155.buySecondaryMarketNft(collector, 1n, agreementId)
Throws
NFTError Thrown if there is an error buying the NFT.
src/nevermined/api/nfts/NFTsBaseApi.ts:345
▸ claimNFT(agreementId
, nftHolder
, nftReceiver
, numberEditions?
, ercType?
, did?
, serviceIndex?
): Promise
<boolean
>
Claims the transfer of a NFT to the Nevermined Node on behalf of the publisher.
Name | Type | Default value | Description |
---|---|---|---|
agreementId |
string |
undefined |
The NFT sales agreement id. |
nftHolder |
string |
undefined |
The address of the current owner of the NFT. |
nftReceiver |
string |
undefined |
The address where the NFT should be transferred. |
numberEditions |
bigint |
undefined |
The number of NFT editions to transfer. If the NFT is ERC-721 it should be 1 |
ercType |
ERCType |
1155 |
The Type of the NFT ERC (1155 or 721). |
did? |
string |
undefined |
The DID of the asset. |
serviceIndex? |
number |
undefined |
The index of the service in the DDO that will be claimed |
Promise
<boolean
>
true if the transfer was successful.
Remarks
This is useful when the consumer does not want to wait for the publisher to transfer the NFT once the payment is made. Assuming the publisher delegated transfer permissions to the Node.
One example would be a marketplace where the user wants to get access to the NFT as soon as the payment is made
Example
const receipt = await nevermined.nfts721.claim(
agreementId,
editor.getId(),
subscriber.getId(),
nftAmount,
721,
)
Throws
NFTError if Nevermined is not an operator for this NFT
src/nevermined/api/nfts/NFTsBaseApi.ts:52
▸ getSubscriptionToken(did
, from
): Promise
<SubscriptionToken
>
Get a JWT token for an asset associated with a webService
Name | Type | Description |
---|---|---|
did |
string |
The did of the asset with a webService resource and an associated subscription |
from |
NvmAccount |
Account of the user requesting the token |
Promise
<SubscriptionToken
>
Example
const response = await nevermined.nfts721.getSubscriptionToken(serviceDDO.id, subscriber)
assert.isDefined(response.accessToken)
assert.isDefined(response.neverminedProxyUri)
src/nevermined/api/nfts/NFTsBaseApi.ts:490
▸ isOperator(nftContractAddress
, operatorAddress
, ercType?
): Promise
<boolean
>
Check if a particular address is the operator of given a NFT address.
Name | Type | Default value | Description |
---|---|---|---|
nftContractAddress |
string |
undefined |
The DID of the NFT to check |
operatorAddress |
string |
undefined |
The address to check if operator status |
ercType |
ERCType |
1155 |
The erc type of the NFT. |
Promise
<boolean
>
operator status of address as a boolean
src/nevermined/api/nfts/NFTsBaseApi.ts:118
▸ isOperatorOfDID(did
, address
, ercType?
): Promise
<boolean
>
Check if a particular address is the operator of a DID.
Name | Type | Default value | Description |
---|---|---|---|
did |
string |
undefined |
The DID of the NFT to check |
address |
string |
undefined |
The address to check if operator status |
ercType |
ERCType |
1155 |
The erc type of the NFT. |
Promise
<boolean
>
operator status of address as a boolean
src/nevermined/api/nfts/NFTsBaseApi.ts:93
▸ list(did
, list
, from
, publishMetadata?
, txParams?
): SubscribablePromise
<UpdateProgressStep
, DDO
>
Given a DID, updates the metadata associated to the asset allowing to list or unlist it. It also can upload this metadata to a remote decentralized stored depending on the publishMetadata
parameter.
In a Nevermined environment, when an asset is unlisted, it is not possible to be found and accessed by any user.
Name | Type | Default value | Description |
---|---|---|---|
did |
string |
undefined |
Decentralized ID representing the unique id of an asset in a Nevermined network. |
list |
boolean |
undefined |
Needs the asset to be listed or unlisted |
from |
NvmAccount |
undefined |
Account of the user updating the metadata |
publishMetadata |
PublishMetadataOptions |
PublishMetadataOptions.OnlyMetadataAPI |
It allows to specify where to store the metadata |
txParams? |
TxParameters |
undefined |
Optional transaction parameters |
SubscribablePromise
<UpdateProgressStep
, DDO
>
DDO The DDO updated
src/nevermined/api/RegistryBaseApi.ts:512
▸ listOnSecondaryMarkets(ddo
, assetPrice
, nftAmount
, nftTransfer
, provider
, token
, from
): Promise
<string
>
After purchase re-list an NFT to enable secondary market sales.
Name | Type | Description |
---|---|---|
ddo |
DDO |
The DDO of the asset. |
assetPrice |
AssetPrice |
The current setup of asset rewards. |
nftAmount |
bigint |
The number of NFTs put up for secondary sale. |
nftTransfer |
boolean |
- |
provider |
string |
The address that will be the provider of the secondary sale. |
token |
Token |
- |
from |
NvmAccount |
The account of the current owner. |
Promise
<string
>
the agreementId of the secondary sale.
Example
const agreementId = await nevermined.nfts1155.listOnSecondaryMarkets(
ddo,
assetPrice,
numberNFTs,
collector.getId(),
token,
collector.getId(),
)
Throws
NFTError Thrown if there is an error listing the NFT.
src/nevermined/api/nfts/NFTsBaseApi.ts:262
▸ orderAsset(did
, serviceReference
, from
, txParams?
): SubscribablePromise
<OrderProgressStep
, string
>
Start the purchase/order of an asset’s service. Starts by signing the service agreement then sends the request to the publisher via the service endpoint (Node http service).
Name | Type | Description |
---|---|---|
did |
string |
Decentralized ID. |
serviceReference |
number | ServiceType |
Service. |
from |
NvmAccount |
Consumer account. |
txParams? |
TxParameters |
Transaction parameters |
SubscribablePromise
<OrderProgressStep
, string
>
The agreement ID.
src/nevermined/api/RegistryBaseApi.ts:615
▸ registerNeverminedAsset(assetAttributes
, from
, publicationOptions
, nftAttributes?
, txParams?
): SubscribablePromise
<CreateProgressStep
, DDO
>
It registers a new asset in a Nevermined network. This method is protected and not exposed
via the Nevermined APIs directly. It must accessed via the assets
, compute
, and nfts
APIs.
Name | Type | Description |
---|---|---|
assetAttributes |
AssetAttributes |
Attributes describing the asset |
from |
NvmAccount |
The account publishing the asset |
publicationOptions |
AssetPublicationOptions |
Allows to specify the publication options of the off-chain and the on-chain data. |
nftAttributes? |
NFTAttributes |
Attributes describing the NFT (ERC-721) associated to the asset |
txParams? |
TxParameters |
Optional transaction parameters |
SubscribablePromise
<CreateProgressStep
, DDO
>
The metadata of the asset created (DDO)
See
PublishOnChainOptions and PublishMetadataOptions
RegistryBaseApi.registerNeverminedAsset
src/nevermined/api/RegistryBaseApi.ts:52
▸ resolveAsset(did
, policy?
): Promise
<DDO
>
Given an asset DID it returns the metadata of that asset represented by a DDO object. Depending of the resolution policy it prioritize fetching that Metadata from the Marketplace API or Immutable urls (like IPFS).
Name | Type | Default value | Description |
---|---|---|---|
did |
string |
undefined |
Decentralized ID. |
policy |
DIDResolvePolicy |
DIDResolvePolicy.MetadataAPIFirst |
It specifies the resolve policy to apply. It allows to select that priorities during the asset resolution via Metadata API or Immutable URLs (IPFS, Filecoin, etc) |
Promise
<DDO
>
src/nevermined/api/RegistryBaseApi.ts:349
▸ setInstanceConfig(config
): void
Name | Type |
---|---|
config |
InstantiableConfig |
void
RegistryBaseApi.setInstanceConfig
src/Instantiable.abstract.ts:163
▸ updateAsset(did
, metadata
, from
, publishMetadataOptions?
, txParams?
): SubscribablePromise
<UpdateProgressStep
, DDO
>
Given a DID, updates the metadata associated to the asset. It also can upload this metadata to a remote decentralized stored depending on the publishMetadata
parameter.
Name | Type | Default value | Description |
---|---|---|---|
did |
string |
undefined |
Decentralized ID representing the unique id of an asset in a Nevermined network. |
metadata |
MetaData |
undefined |
Metadata describing the asset |
from |
NvmAccount |
undefined |
Account of the user updating the metadata |
publishMetadataOptions |
PublishMetadataOptions |
PublishMetadataOptions.OnlyMetadataAPI |
It allows to specify where to store the metadata |
txParams? |
TxParameters |
undefined |
Optional transaction parameters |
SubscribablePromise
<UpdateProgressStep
, DDO
>
DDO The DDO updated
src/nevermined/api/RegistryBaseApi.ts:392
▸ getInstance(..._args
): any
Name | Type |
---|---|
..._args |
any |
any
src/Instantiable.abstract.ts:150
▸ getNFTContractAddress(ddo
, serviceReference?
): any
Gets the NFT contract address associated with a Nevermined asset from the DDO.
Name | Type | Default value | Description |
---|---|---|---|
ddo |
DDO |
undefined |
The DDO of the asset. |
serviceReference |
number | ServiceType |
'nft-access' |
The service type to look for the contract address |
any
The NFT contract address.
Example
const nftContractAddress = NFT1155Api.getNFTContractAddress(ddo)
src/nevermined/api/nfts/NFTsBaseApi.ts:221
▸ getServicePlugin(config
): Object
Initializes the default Nevermined service plugins and return that instance
Name | Type | Description |
---|---|---|
config |
InstantiableConfig |
Nevermined config |
Object
The Nevermined Service Plugin instance
Name | Type |
---|---|
access |
AccessService |
compute |
EscrowComputeExecutionTemplate |
nft-access |
NFTAccessService |
nft-sales |
NFTSalesService |
RegistryBaseApi.getServicePlugin
src/nevermined/api/RegistryBaseApi.ts:670
▸ setInstanceConfig<T
>(instance
, instantiableConfig
): void
Name | Type |
---|---|
T |
extends Instantiable |
Name | Type |
---|---|
instance |
T |
instantiableConfig |
InstantiableConfig |
void
RegistryBaseApi.setInstanceConfig