conditions.NFTHolderCondition
@nevermined-io/nevermined-sdk-js / conditions / NFTHolderCondition
Class: NFTHolderCondition
conditions.NFTHolderCondition
Allows to fulfill a condition to users holding some amount of NFTs for a specific DID.
Hierarchy
ConsumerCondition
<NFTHolderConditionContext
>↳
NFTHolderCondition
Table of contents
Constructors
Properties
Accessors
Methods
- abortByTimeOut
- addresses
- amountFromService
- call
- checkExists
- findSigner
- fulfill
- fulfillGateway
- fulfillInstance
- fulfillPlain
- generateId
- generateIdHash
- generateIdWithSeed
- getAddress
- getConditionFulfilledEvent
- getContract
- getFromAddress
- getInputsOfMethod
- getSignatureOfMethod
- hashValues
- hashValuesPlain
- init
- instance
- instanceFromDDO
- params
- paramsFromDDO
- send
- sendFrom
- setInstanceConfig
- addressesStatic
- findSignerStatic
- getInstance
- setInstanceConfig
Constructors
constructor
• new NFTHolderCondition(contractName
)
Parameters
Name | Type |
---|---|
contractName | string |
Inherited from
Defined in
src/keeper/contracts/ContractBase.ts:32
Properties
contract
• contract: Contract
= null
Inherited from
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
Defined in
src/keeper/contracts/ContractBase.ts:25
version
• version: string
Inherited from
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
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
Inherited from
ConsumerCondition.logger
Defined in
src/Instantiable.abstract.ts:87
nevermined
• Protected
get
nevermined(): Nevermined
Returns
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
Name | Type |
---|---|
agreementId | string |
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
Defined in
src/Instantiable.abstract.ts:129
amountFromService
▸ amountFromService(service
): default
Parameters
Name | Type |
---|---|
service | ServiceCommon |
Returns
default
Defined in
src/keeper/contracts/conditions/NFTs/NFTHolderCondition.ts:36
call
▸ call<T
>(name
, args
, from?
): Promise
<T
>
Type parameters
Name |
---|
T |
Parameters
Name | Type |
---|---|
name | string |
args | any [] |
from? | string |
Returns
Promise
<T
>
Inherited from
Defined in
src/keeper/contracts/ContractBase.ts:244
checkExists
▸ Protected
checkExists(address
): Promise
<boolean
>
Returns true of contract exists else it throws.
Parameters
Name | Type |
---|---|
address | string |
Returns
Promise
<boolean
>
true if the contract exists.
Inherited from
Defined in
src/Instantiable.abstract.ts:44
findSigner
▸ findSigner(from
): Promise
<Signer
>
Parameters
Name | Type |
---|---|
from | string |
Returns
Promise
<Signer
>
Inherited from
Defined in
src/Instantiable.abstract.ts:105
fulfill
▸ fulfill(agreementId
, did
, holderAddress
, amount
, from?
, params?
): Promise
<ContractReceipt
>
Fulfill requires a validation that holder as enough NFTs for a specific DID.
Parameters
Name | Type | Description |
---|---|---|
agreementId | string | SEA agreement identifier. |
did | string | The Decentralized Identifier of the asset. |
holderAddress | string | The contract address where the reward is locked. |
amount | default | The amount of NFT to be hold |
from? | Account | |
params? | TxParameters | - |
Returns
Promise
<ContractReceipt
>
condition state
Overrides
Defined in
src/keeper/contracts/conditions/NFTs/NFTHolderCondition.ts:62
fulfillGateway
▸ fulfillGateway(_cond
, _additionalParams
, _from?
, _params?
): Promise
<void
>
Parameters
Name | Type |
---|---|
_cond | ConditionInstance <Record <string , unknown >> |
_additionalParams | Record <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
Name | Type | Default value |
---|---|---|
cond | ConditionInstance <Record <string , unknown >> | undefined |
additionalParams | Record <string , unknown > | undefined |
from? | Account | undefined |
params? | TxParameters | undefined |
method | ConditionMethod | '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
Name | Type | Default value |
---|---|---|
agreementId | string | undefined |
args | any [] | undefined |
from? | Account | undefined |
params? | TxParameters | undefined |
method | ConditionMethod | '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
Name | Type |
---|---|
agreementId | string |
valueHash | string |
Returns
Promise
<string
>
Inherited from
Defined in
src/keeper/contracts/conditions/Condition.abstract.ts:83
generateIdHash
▸ generateIdHash(agreementId
, ...values
): Promise
<string
>
Parameters
Name | Type |
---|---|
agreementId | string |
...values | any [] |
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
Name | Type |
---|---|
agreementId | string |
valueHash | string |
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
Defined in
src/keeper/contracts/ContractBase.ts:41
getConditionFulfilledEvent
▸ getConditionFulfilledEvent(agreementId
): EventResult
Parameters
Name | Type |
---|---|
agreementId | string |
Returns
Inherited from
ConsumerCondition.getConditionFulfilledEvent
Defined in
src/keeper/contracts/conditions/Condition.abstract.ts:101
getContract
▸ getContract(): Contract
Returns
Contract
Inherited from
Defined in
src/keeper/contracts/ContractBase.ts:37
getFromAddress
▸ Protected
getFromAddress(from?
): Promise
<string
>
Parameters
Name | Type |
---|---|
from? | string |
Returns
Promise
<string
>
Inherited from
ConsumerCondition.getFromAddress
Defined in
src/keeper/contracts/ContractBase.ts:90
getInputsOfMethod
▸ getInputsOfMethod(methodName
): any
[]
Parameters
Name | Type |
---|---|
methodName | string |
Returns
any
[]
Inherited from
ConsumerCondition.getInputsOfMethod
Defined in
src/keeper/contracts/ContractBase.ts:50
getSignatureOfMethod
▸ getSignatureOfMethod(methodName
, args?
): string
Parameters
Name | Type | Default value |
---|---|---|
methodName | string | undefined |
args | any [] | [] |
Returns
string
Inherited from
ConsumerCondition.getSignatureOfMethod
Defined in
src/keeper/contracts/ContractBase.ts:45
hashValues
▸ hashValues(...args
): Promise
<string
>
Parameters
Name | Type |
---|---|
...args | any [] |
Returns
Promise
<string
>
Inherited from
Defined in
src/keeper/contracts/conditions/Condition.abstract.ts:141
hashValuesPlain
▸ hashValuesPlain(...args
): Promise
<string
>
Parameters
Name | Type |
---|---|
...args | any [] |
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
Name | Type | Default value |
---|---|---|
config | InstantiableConfig | undefined |
optional | boolean | false |
Returns
Promise
<void
>
Inherited from
Defined in
src/keeper/contracts/ContractBase.ts:55
instance
▸ instance(agreementId
, params
): Promise
<ConditionInstance
<Record
<string
, unknown
>>>
Parameters
Name | Type |
---|---|
agreementId | string |
params | ConditionParameters <Record <string , unknown >> |
Returns
Promise
<ConditionInstance
<Record
<string
, unknown
>>>
Inherited from
Defined in
src/keeper/contracts/conditions/Condition.abstract.ts:184
instanceFromDDO
▸ instanceFromDDO(agreementId
, ctx
, ...args
): Promise
<ConditionInstance
<Record
<string
, unknown
>>>
Parameters
Name | Type |
---|---|
agreementId | string |
ctx | NFTHolderConditionContext |
...args | ConditionInstanceSmall [] |
Returns
Promise
<ConditionInstance
<Record
<string
, unknown
>>>
Inherited from
ConsumerCondition.instanceFromDDO
Defined in
src/keeper/contracts/conditions/Condition.abstract.ts:154
params
▸ params(did
, holderAddress
, amount?
): ConditionParameters
<Record
<string
, unknown
>>
Generate the hash of condition inputs with the following parameters.
Parameters
Name | Type | Description |
---|---|---|
did | string | The Decentralized Identifier of the asset. |
holderAddress | string | The address of the NFT holder . |
amount? | default | The amount of NFTs that need to be hold by the holder |
Returns
ConditionParameters
<Record
<string
, unknown
>>
hash of all the values
Overrides
Defined in
src/keeper/contracts/conditions/NFTs/NFTHolderCondition.ts:32
paramsFromDDO
▸ paramsFromDDO(__namedParameters
): Promise
<ConditionParameters
<Record
<string
, unknown
>>>
Parameters
Name | Type |
---|---|
__namedParameters | NFTHolderConditionContext |
Returns
Promise
<ConditionParameters
<Record
<string
, unknown
>>>
Overrides
ConsumerCondition.paramsFromDDO
Defined in
src/keeper/contracts/conditions/NFTs/NFTHolderCondition.ts:42
send
▸ send(name
, from
, args
, params?
): Promise
<ContractReceipt
>
Parameters
Name | Type |
---|---|
name | string |
from | string |
args | any [] |
params | TxParameters |
Returns
Promise
<ContractReceipt
>
Inherited from
Defined in
src/keeper/contracts/ContractBase.ts:117
sendFrom
▸ sendFrom(name
, args
, from?
, value?
): Promise
<ContractReceipt
>
Parameters
Name | Type |
---|---|
name | string |
args | any [] |
from? | Account |
value? | TxParameters |
Returns
Promise
<ContractReceipt
>
Inherited from
Defined in
src/keeper/contracts/ContractBase.ts:97
setInstanceConfig
▸ Protected
setInstanceConfig(config
): void
Parameters
Name | Type |
---|---|
config | InstantiableConfig |
Returns
void
Inherited from
ConsumerCondition.setInstanceConfig
Defined in
src/Instantiable.abstract.ts:171
addressesStatic
▸ Static
addressesStatic(config
, web3
): Promise
<string
[]>
Parameters
Name | Type |
---|---|
config | Config |
web3 | JsonRpcProvider |
Returns
Promise
<string
[]>
Inherited from
ConsumerCondition.addressesStatic
Defined in
src/Instantiable.abstract.ts:142
findSignerStatic
▸ Static
findSignerStatic(config
, web3
, from
): Promise
<Signer
>
Parameters
Name | Type |
---|---|
config | Config |
web3 | JsonRpcProvider |
from | string |
Returns
Promise
<Signer
>
Inherited from
ConsumerCondition.findSignerStatic
Defined in
src/Instantiable.abstract.ts:115
getInstance
▸ Static
getInstance(config
): Promise
<NFTHolderCondition
>
Parameters
Name | Type |
---|---|
config | InstantiableConfig |
Returns
Promise
<NFTHolderCondition
>
Overrides
Defined in
src/keeper/contracts/conditions/NFTs/NFTHolderCondition.ts:18
setInstanceConfig
▸ Static
Protected
setInstanceConfig<T
>(instance
, instantiableConfig
): void
Type parameters
Name | Type |
---|---|
T | extends Instantiable <T > |
Parameters
Name | Type |
---|---|
instance | T |
instantiableConfig | InstantiableConfig |
Returns
void
Inherited from
ConsumerCondition.setInstanceConfig