Skip to main content

templates.AaveCreditTemplate

@nevermined-io/nevermined-sdk-js / templates / AaveCreditTemplate

Class: AaveCreditTemplate

templates.AaveCreditTemplate

Hierarchy

  • BaseTemplate<AaveCreditTemplateParams, ServiceAaveCredit>

    AaveCreditTemplate

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

Protected new AaveCreditTemplate(contractName)

Parameters

NameType
contractNamestring

Inherited from

BaseTemplate.constructor

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:75

Properties

aaveConfig

aaveConfig: AaveConfig

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:52


contract

contract: Contract = null

Inherited from

BaseTemplate.contract

Defined in

src/keeper/contracts/ContractBase.ts:24


contractName

contractName: string

Inherited from

BaseTemplate.contractName

Defined in

src/keeper/contracts/ContractBase.ts:23


events

events: ContractEvent | SubgraphEvent = null

Inherited from

BaseTemplate.events

Defined in

src/keeper/contracts/ContractBase.ts:25


version

version: string

Inherited from

BaseTemplate.version

Defined in

src/keeper/contracts/ContractBase.ts:26

Accessors

address

get address(): string

Returns

string

Inherited from

BaseTemplate.address

Defined in

src/keeper/contracts/ContractBase.ts:28


artifactsFolder

Protected get artifactsFolder(): string

Returns

string

Inherited from

BaseTemplate.artifactsFolder

Defined in

src/Instantiable.abstract.ts:96


config

Protected get config(): Config

Returns

Config

Inherited from

BaseTemplate.config

Defined in

src/Instantiable.abstract.ts:80


instanceConfig

Protected get instanceConfig(): InstantiableConfig

Returns

InstantiableConfig

Inherited from

BaseTemplate.instanceConfig

Defined in

src/Instantiable.abstract.ts:100


instantiableConfig

Protected get instantiableConfig(): InstantiableConfig

Returns

InstantiableConfig

Inherited from

BaseTemplate.instantiableConfig

Defined in

src/Instantiable.abstract.ts:73


logger

Protected get logger(): Logger

Returns

Logger

Inherited from

BaseTemplate.logger

Defined in

src/Instantiable.abstract.ts:87


nevermined

Protected get nevermined(): Nevermined

Returns

Nevermined

Inherited from

BaseTemplate.nevermined

Defined in

src/Instantiable.abstract.ts:33


web3

Protected get web3(): JsonRpcProvider

Returns

JsonRpcProvider

Inherited from

BaseTemplate.web3

Defined in

src/Instantiable.abstract.ts:63

Methods

_createAgreement

Private _createAgreement(agreementIdSeed, ddo, vaultAddress, nftTokenContract, nftAmount, collateralToken, collateralAmount, delegatedToken, delegatedAmount, interestRateMode, timeLocks, timeOuts, txParams?, from?): Promise<[ContractReceipt, AgreementInstance<AaveCreditTemplateParams>]>

Parameters

NameType
agreementIdSeedstring
ddoDDO
vaultAddressstring
nftTokenContractstring
nftAmountnumber
collateralTokenstring
collateralAmountnumber
delegatedTokenstring
delegatedAmountnumber
interestRateModenumber
timeLocksnumber[]
timeOutsnumber[]
txParams?TxParameters
from?Account

Returns

Promise<[ContractReceipt, AgreementInstance<AaveCreditTemplateParams>]>

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:102


accept

accept(_params): Promise<boolean>

Parameters

NameType
_paramsValidationParams

Returns

Promise<boolean>

Inherited from

BaseTemplate.accept

Defined in

src/keeper/contracts/templates/BaseTemplate.abstract.ts:112


addresses

addresses(): Promise<string[]>

Returns

Promise<string[]>

Inherited from

BaseTemplate.addresses

Defined in

src/Instantiable.abstract.ts:129


agreementId

agreementId(agreementIdSeed, creator): Promise<string>

Parameters

NameType
agreementIdSeedstring
creatorstring

Returns

Promise<string>

Inherited from

BaseTemplate.agreementId

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:213


call

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

Type parameters

Name
T

Parameters

NameType
namestring
argsany[]
from?string

Returns

Promise<T>

Inherited from

BaseTemplate.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

BaseTemplate.checkExists

Defined in

src/Instantiable.abstract.ts:44


conditions

conditions(): [NFT721LockCondition, AaveCollateralDepositCondition, AaveBorrowCondition, AaveRepayCondition, AaveCollateralWithdrawCondition, DistributeNFTCollateralCondition]

Returns

[NFT721LockCondition, AaveCollateralDepositCondition, AaveBorrowCondition, AaveRepayCondition, AaveCollateralWithdrawCondition, DistributeNFTCollateralCondition]

Overrides

BaseTemplate.conditions

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:285


createAgreement

createAgreement(agreementId, did, conditionIds, timeLocks, timeOuts, extraArgs, from?, params?): Promise<ContractReceipt>

Parameters

NameType
agreementIdstring
didstring
conditionIdsstring[]
timeLocksnumber[]
timeOutsnumber[]
extraArgsany[]
from?Account
params?TxParameters

Returns

Promise<ContractReceipt>

Inherited from

BaseTemplate.createAgreement

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:99


createAgreementAndDeployVault

createAgreementAndDeployVault(agreementIdSeed, ddo, nftTokenContract, nftAmount, collateralToken, collateralAmount, delegatedToken, delegatedAmount, interestRateMode, borrower, lender, timeLocks, timeOuts, txParams?, from?): Promise<[ContractReceipt, string, AgreementInstance<AaveCreditTemplateParams>]>

Parameters

NameType
agreementIdSeedstring
ddoDDO
nftTokenContractstring
nftAmountnumber
collateralTokenstring
collateralAmountnumber
delegatedTokenstring
delegatedAmountnumber
interestRateModenumber
borrowerstring
lenderstring
timeLocksnumber[]
timeOutsnumber[]
txParams?TxParameters
from?Account

Returns

Promise<[ContractReceipt, string, AgreementInstance<AaveCreditTemplateParams>]>

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:155


createAgreementAndPay

createAgreementAndPay(agreementId, did, conditionIds, timeLocks, timeOuts, accessConsumer, condIdx, rewardAddress, tokenAddress, amounts, receivers, from?, params?): Promise<ContractReceipt>

Parameters

NameType
agreementIdstring
didstring
conditionIdsstring[]
timeLocksnumber[]
timeOutsnumber[]
accessConsumerstring
condIdxnumber
rewardAddressstring
tokenAddressstring
amountsdefault[]
receiversstring[]
from?Account
params?TxParameters

Returns

Promise<ContractReceipt>

Inherited from

BaseTemplate.createAgreementAndPay

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:124


createAgreementFromDDO

createAgreementFromDDO(agreementIdSeed, ddo, parameters, consumer, from, timeOuts?, params?): Promise<string>

Create a new agreement using the data of a DDO.

Parameters

NameTypeDescription
agreementIdSeedstring-
ddoDDODDO.
parametersAaveCreditTemplateParams
consumerAccount-
fromAccount-
timeOuts?number[]-
params?TxParameters-

Returns

Promise<string>

true if the call was successful.

Inherited from

BaseTemplate.createAgreementFromDDO

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:225


createAgreementWithPaymentFromDDO

createAgreementWithPaymentFromDDO(agreementIdSeed, ddo, parameters, consumer, from, timeOuts?, txParams?, observer?): Promise<string>

Parameters

NameType
agreementIdSeedstring
ddoDDO
parametersAaveCreditTemplateParams
consumerAccount
fromAccount
timeOuts?number[]
txParams?TxParameters
observer?(OrderProgressStep: any) => void

Returns

Promise<string>

Inherited from

BaseTemplate.createAgreementWithPaymentFromDDO

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:255


createService

createService(publisher, metadata, assetRewards?, erc20TokenAddress?, priced?): Promise<ServiceAaveCredit>

Parameters

NameTypeDefault value
publisherAccountundefined
metadataMetaDataundefined
assetRewards?defaultundefined
erc20TokenAddress?stringundefined
pricedbooleanfalse

Returns

Promise<ServiceAaveCredit>

Inherited from

BaseTemplate.createService

Defined in

src/keeper/contracts/templates/BaseTemplate.abstract.ts:65


deployVault

deployVault(lendingPool, dataProvider, weth, agreementFee, treasuryAddress, borrower, lender, from): Promise<string>

Deploy a new credit vault that is required to facilitate an Aave credit agreement

Parameters

NameType
lendingPoolstring
dataProviderstring
wethstring
agreementFeenumber
treasuryAddressstring
borrowerstring
lenderstring
fromstring

Returns

Promise<string>

Agreement ID.

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:207


description

description(): string

Returns

string

Overrides

BaseTemplate.description

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:49


extraGen

extraGen(_params): Promise<any>

Parameters

NameType
_paramsValidationParams

Returns

Promise<any>

Inherited from

BaseTemplate.extraGen

Defined in

src/keeper/contracts/templates/BaseTemplate.abstract.ts:108


findSigner

findSigner(from): Promise<Signer>

Parameters

NameType
fromstring

Returns

Promise<Signer>

Inherited from

BaseTemplate.findSigner

Defined in

src/Instantiable.abstract.ts:105


getAddress

getAddress(): string

Returns

string

Inherited from

BaseTemplate.getAddress

Defined in

src/keeper/contracts/ContractBase.ts:41


getAgreementCreatedEvent

getAgreementCreatedEvent(agreementId): Promise<any[]>

Generates and returns the agreement creation event.

Parameters

NameTypeDescription
agreementIdstringAgreement ID.

Returns

Promise<any[]>

Agreement created event.

Inherited from

BaseTemplate.getAgreementCreatedEvent

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:469


getAgreementData

getAgreementData(agreementId): Promise<{ accessConsumer: string ; accessProvider: string }>

Parameters

NameType
agreementIdstring

Returns

Promise<{ accessConsumer: string ; accessProvider: string }>

Inherited from

BaseTemplate.getAgreementData

Defined in

src/keeper/contracts/templates/BaseTemplate.abstract.ts:21


getAgreementDid

getAgreementDid(agreementId): Promise<string>

Parameters

NameType
agreementIdstring

Returns

Promise<string>

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:318


getAgreementIdsFromDDO

getAgreementIdsFromDDO(agreementId, ddo, creator, params): Promise<string[]>

Get agreement conditions IDs.

Parameters

NameTypeDescription
agreementIdstringAgreement ID.
ddoDDODDO.
creatorstring-
paramsAaveCreditTemplateParams-

Returns

Promise<string[]>

The condition IDs.

Inherited from

BaseTemplate.getAgreementIdsFromDDO

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:183


getAgreementStatus

getAgreementStatus(agreementId): Promise<false | AgreementConditionsStatus>

Returns the status of the conditions.

Parameters

NameTypeDescription
agreementIdstringAgreement ID.

Returns

Promise<false | AgreementConditionsStatus>

The conditions status.

Inherited from

BaseTemplate.getAgreementStatus

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:343


getAgreementVaultAddress

getAgreementVaultAddress(agreementId, from): Promise<string>

Parameters

NameType
agreementIdstring
fromstring

Returns

Promise<string>

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:311


getAgreementsForDID

getAgreementsForDID(did): Promise<string[]>

Parameters

NameType
didstring

Returns

Promise<string[]>

Inherited from

BaseTemplate.getAgreementsForDID

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:496


getConditionTypes

getConditionTypes(): Promise<string[]>

Conditions address list.

Returns

Promise<string[]>

A list of condition addresses.

Inherited from

BaseTemplate.getConditionTypes

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:163


getConditions

getConditions(): Promise<ConditionSmall[]>

List of condition contracts.

Returns

Promise<ConditionSmall[]>

A list of condition contracts.

Inherited from

BaseTemplate.getConditions

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:171


getContract

getContract(): Contract

Returns

Contract

Inherited from

BaseTemplate.getContract

Defined in

src/keeper/contracts/ContractBase.ts:37


getFromAddress

Protected getFromAddress(from?): Promise<string>

Parameters

NameType
from?string

Returns

Promise<string>

Inherited from

BaseTemplate.getFromAddress

Defined in

src/keeper/contracts/ContractBase.ts:90


getInputsOfMethod

getInputsOfMethod(methodName): any[]

Parameters

NameType
methodNamestring

Returns

any[]

Inherited from

BaseTemplate.getInputsOfMethod

Defined in

src/keeper/contracts/ContractBase.ts:50


getServiceAgreementTemplate

getServiceAgreementTemplate(): Promise<ServiceAgreementTemplate>

Returns

Promise<ServiceAgreementTemplate>

Overrides

BaseTemplate.getServiceAgreementTemplate

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:98


getServiceAgreementTemplateConditionByRef

getServiceAgreementTemplateConditionByRef(ref): Promise<ConditionSmall>

Parameters

NameType
refstring

Returns

Promise<ConditionSmall>

Inherited from

BaseTemplate.getServiceAgreementTemplateConditionByRef

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:324


getServiceAgreementTemplateConditions

getServiceAgreementTemplateConditions(): Promise<ServiceAgreementTemplateCondition[]>

Returns

Promise<ServiceAgreementTemplateCondition[]>

Inherited from

BaseTemplate.getServiceAgreementTemplateConditions

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:319


getServiceAgreementTemplateDependencies

getServiceAgreementTemplateDependencies(): Promise<{ [condition: string]: string[]; }>

Returns

Promise<{ [condition: string]: string[]; }>

Inherited from

BaseTemplate.getServiceAgreementTemplateDependencies

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:333


getSignatureOfMethod

getSignatureOfMethod(methodName, args?): string

Parameters

NameTypeDefault value
methodNamestringundefined
argsany[][]

Returns

string

Inherited from

BaseTemplate.getSignatureOfMethod

Defined in

src/keeper/contracts/ContractBase.ts:45


init

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

Parameters

NameTypeDefault value
configInstantiableConfigundefined
optionalbooleanfalse

Returns

Promise<void>

Inherited from

BaseTemplate.init

Defined in

src/keeper/contracts/ContractBase.ts:55


instanceFromDDO

instanceFromDDO(agreementIdSeed, ddo, creator, parameters): Promise<AgreementInstance<AaveCreditTemplateParams>>

Parameters

NameType
agreementIdSeedstring
ddoDDO
creatorstring
parametersAaveCreditTemplateParams

Returns

Promise<AgreementInstance<AaveCreditTemplateParams>>

Overrides

BaseTemplate.instanceFromDDO

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:233


lockConditionIndex

lockConditionIndex(): number

Returns

number

Inherited from

BaseTemplate.lockConditionIndex

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:81


lockTokens

lockTokens(tokenAddress, amounts, from, txParams): Promise<void>

Parameters

NameType
tokenAddressany
amountsany
fromAccount
txParamsTxParameters

Returns

Promise<void>

Inherited from

BaseTemplate.lockTokens

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:398


name

name(): string

Returns

string

Overrides

BaseTemplate.name

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:46


params

params(vaultAddress, nftContractAddress, nftAmount, collateralAsset, collateralAmount, delegatedAsset, delegatedAmount, interestRateMode): AaveCreditTemplateParams

Parameters

NameType
vaultAddressstring
nftContractAddressstring
nftAmountnumber
collateralAssetstring
collateralAmountstring
delegatedAssetstring
delegatedAmountstring
interestRateModenumber

Returns

AaveCreditTemplateParams

Overrides

BaseTemplate.params

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:71


paramsGen

paramsGen(_params): Promise<AaveCreditTemplateParams>

Specialize params

Parameters

NameTypeDescription
_paramsValidationParamsGeneric parameters

Returns

Promise<AaveCreditTemplateParams>

Overrides

BaseTemplate.paramsGen

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:43


paymentData

paymentData(service): PaymentData

Parameters

NameType
serviceServiceCommon

Returns

PaymentData

Inherited from

BaseTemplate.paymentData

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:85


printAgreementStatus

printAgreementStatus(agreementId): Promise<void>

Prints the agreement status.

Parameters

NameTypeDescription
agreementIdstringAgreement ID.

Returns

Promise<void>

Inherited from

BaseTemplate.printAgreementStatus

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:439


process

process(params, from, txparams?): Promise<void>

Parameters

NameType
paramsValidationParams
fromAccount
txparams?TxParameters

Returns

Promise<void>

Inherited from

BaseTemplate.process

Defined in

src/keeper/contracts/templates/BaseTemplate.abstract.ts:116


send

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

Parameters

NameType
namestring
fromstring
argsany[]
paramsTxParameters

Returns

Promise<ContractReceipt>

Inherited from

BaseTemplate.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

BaseTemplate.sendFrom

Defined in

src/keeper/contracts/ContractBase.ts:97


service

service(): ServiceType

Returns

ServiceType

Overrides

BaseTemplate.service

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:67


serviceEndpoint

serviceEndpoint(): ServiceType

Returns

ServiceType

Inherited from

BaseTemplate.serviceEndpoint

Defined in

src/keeper/contracts/templates/BaseTemplate.abstract.ts:31


setInstanceConfig

Protected setInstanceConfig(config): void

Parameters

NameType
configInstantiableConfig

Returns

void

Inherited from

BaseTemplate.setInstanceConfig

Defined in

src/Instantiable.abstract.ts:171


standardContext

standardContext(ddo, creator): ConditionContext

Parameters

NameType
ddoDDO
creatorstring

Returns

ConditionContext

Inherited from

BaseTemplate.standardContext

Defined in

src/keeper/contracts/templates/AgreementTemplate.abstract.ts:207


validateAgreement

validateAgreement(agreement_id, did, params, from, extra?, txparams?): Promise<void>

Parameters

NameType
agreement_idstring
didstring
paramsAaveCreditTemplateParams
fromAccount
extraany
txparams?TxParameters

Returns

Promise<void>

Inherited from

BaseTemplate.validateAgreement

Defined in

src/keeper/contracts/templates/BaseTemplate.abstract.ts:131


addressesStatic

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

Parameters

NameType
configConfig
web3JsonRpcProvider

Returns

Promise<string[]>

Inherited from

BaseTemplate.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

BaseTemplate.findSignerStatic

Defined in

src/Instantiable.abstract.ts:115


getInstance

Static getInstance(config): Promise<AaveCreditTemplate>

Parameters

NameType
configInstantiableConfig

Returns

Promise<AaveCreditTemplate>

Overrides

BaseTemplate.getInstance

Defined in

src/keeper/contracts/defi/AaveCreditTemplate.ts:54


setInstanceConfig

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

Type parameters

NameType
Textends Instantiable<T>

Parameters

NameType
instanceT
instantiableConfigInstantiableConfig

Returns

void

Inherited from

BaseTemplate.setInstanceConfig

Defined in

src/Instantiable.abstract.ts:162