Skip to main content

conditions.NFT721HolderCondition

@nevermined-io/nevermined-sdk-js / conditions / NFT721HolderCondition

Class: NFT721HolderCondition

conditions.NFT721HolderCondition

Allows to fulfill a condition to users holding some amount of NFTs for a specific DID.

Hierarchy

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

new NFT721HolderCondition(contractName)

Parameters

NameType
contractNamestring

Inherited from

ConsumerCondition.constructor

Defined in

src/keeper/contracts/ContractBase.ts:32

Properties

contract

contract: Contract = null

Inherited from

ConsumerCondition.contract

Defined in

src/keeper/contracts/ContractBase.ts:24


contractName

contractName: string

Inherited from

ConsumerCondition.contractName

Defined in

src/keeper/contracts/ContractBase.ts:23


events

events: ContractEvent | SubgraphEvent = null

Inherited from

ConsumerCondition.events

Defined in

src/keeper/contracts/ContractBase.ts:25


version

version: string

Inherited from

ConsumerCondition.version

Defined in

src/keeper/contracts/ContractBase.ts:26

Accessors

address

get address(): string

Returns

string

Inherited from

ConsumerCondition.address

Defined in

src/keeper/contracts/ContractBase.ts:28


artifactsFolder

Protected get artifactsFolder(): string

Returns

string

Inherited from

ConsumerCondition.artifactsFolder

Defined in

src/Instantiable.abstract.ts:96


config

Protected get config(): Config

Returns

Config

Inherited from

ConsumerCondition.config

Defined in

src/Instantiable.abstract.ts:80


instanceConfig

Protected get instanceConfig(): InstantiableConfig

Returns

InstantiableConfig

Inherited from

ConsumerCondition.instanceConfig

Defined in

src/Instantiable.abstract.ts:100


instantiableConfig

Protected get instantiableConfig(): InstantiableConfig

Returns

InstantiableConfig

Inherited from

ConsumerCondition.instantiableConfig

Defined in

src/Instantiable.abstract.ts:73


logger

Protected get logger(): Logger

Returns

Logger

Inherited from

ConsumerCondition.logger

Defined in

src/Instantiable.abstract.ts:87


nevermined

Protected get nevermined(): Nevermined

Returns

Nevermined

Inherited from

ConsumerCondition.nevermined

Defined in

src/Instantiable.abstract.ts:33


web3

Protected get web3(): JsonRpcProvider

Returns

JsonRpcProvider

Inherited from

ConsumerCondition.web3

Defined in

src/Instantiable.abstract.ts:63

Methods

abortByTimeOut

abortByTimeOut(agreementId, from?, params?): Promise<ContractReceipt>

Parameters

NameType
agreementIdstring
from?Account
params?TxParameters

Returns

Promise<ContractReceipt>

Inherited from

ConsumerCondition.abortByTimeOut

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:97


addresses

addresses(): Promise<string[]>

Returns

Promise<string[]>

Inherited from

ConsumerCondition.addresses

Defined in

src/Instantiable.abstract.ts:129


call

call<T>(name, args, from?): Promise<T>

Type parameters

Name
T

Parameters

NameType
namestring
argsany[]
from?string

Returns

Promise<T>

Inherited from

ConsumerCondition.call

Defined in

src/keeper/contracts/ContractBase.ts:244


checkExists

Protected checkExists(address): Promise<boolean>

Returns true of contract exists else it throws.

Parameters

NameType
addressstring

Returns

Promise<boolean>

true if the contract exists.

Inherited from

ConsumerCondition.checkExists

Defined in

src/Instantiable.abstract.ts:44


findSigner

findSigner(from): Promise<Signer>

Parameters

NameType
fromstring

Returns

Promise<Signer>

Inherited from

ConsumerCondition.findSigner

Defined in

src/Instantiable.abstract.ts:105


fulfill

fulfill(agreementId, did, holderAddress, nftTokenAddress, from?, params?): Promise<ContractReceipt>

Fulfill requires a validation that holder as enough NFTs for a specific DID.

Parameters

NameTypeDescription
agreementIdstringSEA agreement identifier.
didstringThe Decentralized Identifier of the asset.
holderAddressstringThe contract address where the reward is locked.
nftTokenAddressstringThe contract address of the nft to use.
from?Account
params?TxParameters-

Returns

Promise<ContractReceipt>

condition state

Overrides

ConsumerCondition.fulfill

Defined in

src/keeper/contracts/conditions/NFTs/NFT721HolderCondition.ts:71


fulfillGateway

fulfillGateway(_cond, _additionalParams, _from?, _params?): Promise<void>

Parameters

NameType
_condConditionInstance<Record<string, unknown>>
_additionalParamsRecord<string, unknown>
_from?Account
_params?TxParameters

Returns

Promise<void>

Inherited from

ConsumerCondition.fulfillGateway

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:230


fulfillInstance

fulfillInstance(cond, additionalParams, from?, params?, method?): Promise<ContractReceipt>

Parameters

NameTypeDefault value
condConditionInstance<Record<string, unknown>>undefined
additionalParamsRecord<string, unknown>undefined
from?Accountundefined
params?TxParametersundefined
methodConditionMethod'fulfill'

Returns

Promise<ContractReceipt>

Inherited from

ConsumerCondition.fulfillInstance

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:162


fulfillPlain

fulfillPlain(agreementId, args, from?, params?, method?): Promise<ContractReceipt>

Parameters

NameTypeDefault value
agreementIdstringundefined
argsany[]undefined
from?Accountundefined
params?TxParametersundefined
methodConditionMethod'fulfill'

Returns

Promise<ContractReceipt>

Inherited from

ConsumerCondition.fulfillPlain

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:69


generateId

generateId(agreementId, valueHash): Promise<string>

Parameters

NameType
agreementIdstring
valueHashstring

Returns

Promise<string>

Inherited from

ConsumerCondition.generateId

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:83


generateIdHash

generateIdHash(agreementId, ...values): Promise<string>

Parameters

NameType
agreementIdstring
...valuesany[]

Returns

Promise<string>

Inherited from

ConsumerCondition.generateIdHash

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:79


generateIdWithSeed

generateIdWithSeed(agreementId, valueHash): Promise<[string, string]>

Parameters

NameType
agreementIdstring
valueHashstring

Returns

Promise<[string, string]>

Inherited from

ConsumerCondition.generateIdWithSeed

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:87


getAddress

getAddress(): string

Returns

string

Inherited from

ConsumerCondition.getAddress

Defined in

src/keeper/contracts/ContractBase.ts:41


getConditionFulfilledEvent

getConditionFulfilledEvent(agreementId): EventResult

Parameters

NameType
agreementIdstring

Returns

EventResult

Inherited from

ConsumerCondition.getConditionFulfilledEvent

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:101


getContract

getContract(): Contract

Returns

Contract

Inherited from

ConsumerCondition.getContract

Defined in

src/keeper/contracts/ContractBase.ts:37


getFromAddress

Protected getFromAddress(from?): Promise<string>

Parameters

NameType
from?string

Returns

Promise<string>

Inherited from

ConsumerCondition.getFromAddress

Defined in

src/keeper/contracts/ContractBase.ts:90


getInputsOfMethod

getInputsOfMethod(methodName): any[]

Parameters

NameType
methodNamestring

Returns

any[]

Inherited from

ConsumerCondition.getInputsOfMethod

Defined in

src/keeper/contracts/ContractBase.ts:50


getSignatureOfMethod

getSignatureOfMethod(methodName, args?): string

Parameters

NameTypeDefault value
methodNamestringundefined
argsany[][]

Returns

string

Inherited from

ConsumerCondition.getSignatureOfMethod

Defined in

src/keeper/contracts/ContractBase.ts:45


hashValues

hashValues(...args): Promise<string>

Parameters

NameType
...argsany[]

Returns

Promise<string>

Inherited from

ConsumerCondition.hashValues

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:141


hashValuesPlain

hashValuesPlain(...args): Promise<string>

Parameters

NameType
...argsany[]

Returns

Promise<string>

Inherited from

ConsumerCondition.hashValuesPlain

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:145


init

Protected init(config, optional?): Promise<void>

Parameters

NameTypeDefault value
configInstantiableConfigundefined
optionalbooleanfalse

Returns

Promise<void>

Inherited from

ConsumerCondition.init

Defined in

src/keeper/contracts/ContractBase.ts:55


instance

instance(agreementId, params): Promise<ConditionInstance<Record<string, unknown>>>

Parameters

NameType
agreementIdstring
paramsConditionParameters<Record<string, unknown>>

Returns

Promise<ConditionInstance<Record<string, unknown>>>

Inherited from

ConsumerCondition.instance

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:184


instanceFromDDO

instanceFromDDO(agreementId, ctx, ...args): Promise<ConditionInstance<Record<string, unknown>>>

Parameters

NameType
agreementIdstring
ctxNFT721HolderConditionContext
...argsConditionInstanceSmall[]

Returns

Promise<ConditionInstance<Record<string, unknown>>>

Inherited from

ConsumerCondition.instanceFromDDO

Defined in

src/keeper/contracts/conditions/Condition.abstract.ts:154


nftContractFromService

nftContractFromService(service): string

Parameters

NameType
serviceServiceCommon

Returns

string

Defined in

src/keeper/contracts/conditions/NFTs/NFT721HolderCondition.ts:44


params

params(did, holderAddress, nftTokenAddress): ConditionParameters<Record<string, unknown>>

Generate the hash of condition inputs with the following parameters.

Parameters

NameTypeDescription
didstringThe Decentralized Identifier of the asset.
holderAddressstringThe address of the NFT holder .
nftTokenAddressstringThe address of the nft 721 token to use

Returns

ConditionParameters<Record<string, unknown>>

hash of all the values

Overrides

ConsumerCondition.params

Defined in

src/keeper/contracts/conditions/NFTs/NFT721HolderCondition.ts:35


paramsFromDDO

paramsFromDDO(__namedParameters): Promise<ConditionParameters<Record<string, unknown>>>

Parameters

NameType
__namedParametersNFT721HolderConditionContext

Returns

Promise<ConditionParameters<Record<string, unknown>>>

Overrides

ConsumerCondition.paramsFromDDO

Defined in

src/keeper/contracts/conditions/NFTs/NFT721HolderCondition.ts:50


send

send(name, from, args, params?): Promise<ContractReceipt>

Parameters

NameType
namestring
fromstring
argsany[]
paramsTxParameters

Returns

Promise<ContractReceipt>

Inherited from

ConsumerCondition.send

Defined in

src/keeper/contracts/ContractBase.ts:117


sendFrom

sendFrom(name, args, from?, value?): Promise<ContractReceipt>

Parameters

NameType
namestring
argsany[]
from?Account
value?TxParameters

Returns

Promise<ContractReceipt>

Inherited from

ConsumerCondition.sendFrom

Defined in

src/keeper/contracts/ContractBase.ts:97


setInstanceConfig

Protected setInstanceConfig(config): void

Parameters

NameType
configInstantiableConfig

Returns

void

Inherited from

ConsumerCondition.setInstanceConfig

Defined in

src/Instantiable.abstract.ts:171


addressesStatic

Static addressesStatic(config, web3): Promise<string[]>

Parameters

NameType
configConfig
web3JsonRpcProvider

Returns

Promise<string[]>

Inherited from

ConsumerCondition.addressesStatic

Defined in

src/Instantiable.abstract.ts:142


findSignerStatic

Static findSignerStatic(config, web3, from): Promise<Signer>

Parameters

NameType
configConfig
web3JsonRpcProvider
fromstring

Returns

Promise<Signer>

Inherited from

ConsumerCondition.findSignerStatic

Defined in

src/Instantiable.abstract.ts:115


getInstance

Static getInstance(config): Promise<NFT721HolderCondition>

Parameters

NameType
configInstantiableConfig

Returns

Promise<NFT721HolderCondition>

Overrides

ConsumerCondition.getInstance

Defined in

src/keeper/contracts/conditions/NFTs/NFT721HolderCondition.ts:16


setInstanceConfig

Static Protected setInstanceConfig<T>(instance, instantiableConfig): void

Type parameters

NameType
Textends Instantiable<T>

Parameters

NameType
instanceT
instantiableConfigInstantiableConfig

Returns

void

Inherited from

ConsumerCondition.setInstanceConfig

Defined in

src/Instantiable.abstract.ts:162