Classes

DashPlatformProtocol
DashPlatformProtocol
DataContractFacade
DataContractFactory
DataContract
DocumentFacade
DocumentFactory
Document
DataTriggerExecutionContext
DataTriggerExecutionResult
DataTrigger
IdentityFacade
IdentityFacade
IdentityFactory
Identity
IdentityPublicKey
Identifier
StateTransitionFactory
Metadata
StateRepository

StateRepository interface definition

Functions

generateDataContractId(ownerId, entropy)Buffer

Generate data contract id based on owner id and entropy

buildBinaryPropertiesMap(schema, [propertyName])Object

Recursively build properties map

getBinaryPropertiesFromSchema(documentSchema)Object

Construct and get all properties with contentEncoding keyword

getPropertyDefinitionByPathFactory()getPropertyDefinitionByPath
fetchAndValidateDataContractFactory(stateRepository)fetchAndValidateDataContract
generateDocumentId(contractId, ownerId, type, entropy)Buffer

Generates document ID

getDataTriggersFactory()getDataTriggers

Get respective data triggers (factory)

rejectDataTrigger(documentTransition, context)Promise.<DataTriggerExecutionResult>

Data trigger for domain deletion process

createAndValidateIdentifier(name, buffer, result)Identifier

Typedefs

RawDataContract : Object
JsonDataContract : Object
enrichDataContractWithBaseSchemaDataContract
getPropertyDefinitionByPathObject

Get user property definition

RawDocument : Object
JsonDocument : Object
fetchAndValidateDataContractValidationResult
getDataTriggersArray.<DataTrigger>

Get respective data triggers

RawIdentity : Object
JsonIdentity : Object
RawIdentityPublicKey : Object
JsonIdentityPublicKey : Object

DashPlatformProtocol

Kind: global class

new DashPlatformProtocol(options)

ParamType
optionsObject
[options.stateRepository]StateRepository
[options.jsonSchemaValidator]JsonSchemaValidator
[options.protocolVersion]number

dashPlatformProtocol.initialize() ⇒ Promise.<boolean>

Initialize

Kind: instance method of DashPlatformProtocol

dashPlatformProtocol.getJsonSchemaValidator() ⇒ JsonSchemaValidator

Kind: instance method of DashPlatformProtocol

dashPlatformProtocol.getStateRepository() ⇒ StateRepository

Get State Repository

Kind: instance method of DashPlatformProtocol

dashPlatformProtocol.getProtocolVersion() ⇒ number

Get protocol version

Kind: instance method of DashPlatformProtocol

dashPlatformProtocol.setProtocolVersion(version)

Set protocol version

Kind: instance method of DashPlatformProtocol

ParamType
versionnumber

DashPlatformProtocol

Kind: global class

new DashPlatformProtocol(options)

ParamType
optionsObject
[options.stateRepository]StateRepository
[options.jsonSchemaValidator]JsonSchemaValidator
[options.protocolVersion]number

dashPlatformProtocol.initialize() ⇒ Promise.<boolean>

Initialize

Kind: instance method of DashPlatformProtocol

dashPlatformProtocol.getJsonSchemaValidator() ⇒ JsonSchemaValidator

Kind: instance method of DashPlatformProtocol

dashPlatformProtocol.getStateRepository() ⇒ StateRepository

Get State Repository

Kind: instance method of DashPlatformProtocol

dashPlatformProtocol.getProtocolVersion() ⇒ number

Get protocol version

Kind: instance method of DashPlatformProtocol

dashPlatformProtocol.setProtocolVersion(version)

Set protocol version

Kind: instance method of DashPlatformProtocol

ParamType
versionnumber

DataContractFacade

Kind: global class

new DataContractFacade(dpp, RE2)

ParamType
dppDashPlatformProtocol
RE2RE2

dataContractFacade.create(ownerId, documents) ⇒ DataContract

Create Data Contract

Kind: instance method of DataContractFacade

ParamType
ownerIdBuffer
documentsObject

dataContractFacade.createFromObject(rawDataContract, options) ⇒ Promise.<DataContract>

Create Data Contract from plain object

Kind: instance method of DataContractFacade

ParamTypeDefault
rawDataContractRawDataContract
optionsObject
[options.skipValidation]booleanfalse

dataContractFacade.createFromBuffer(buffer, options) ⇒ Promise.<DataContract>

Create Data Contract from buffer

Kind: instance method of DataContractFacade

ParamTypeDefault
bufferBuffer
optionsObject
[options.skipValidation]booleanfalse

dataContractFacade.createStateTransition(dataContract) ⇒ DataContractCreateTransition

Create Data Contract State Transition

Kind: instance method of DataContractFacade

ParamType
dataContractDataContract

dataContractFacade.validate(dataContract) ⇒ Promise.<ValidationResult>

Validate Data Contract

Kind: instance method of DataContractFacade

ParamType
dataContractDataContract | RawDataContract

DataContractFactory

Kind: global class

new DataContractFactory(dpp, validateDataContract, decodeProtocolEntity)

ParamType
dppDashPlatformProtocol
validateDataContractvalidateDataContract
decodeProtocolEntitydecodeProtocolEntity

dataContractFactory.create(ownerId, documents) ⇒ DataContract

Create Data Contract

Kind: instance method of DataContractFactory

ParamType
ownerIdBuffer
documentsObject

dataContractFactory.createFromObject(rawDataContract, options) ⇒ Promise.<DataContract>

Create Data Contract from plain object

Kind: instance method of DataContractFactory

ParamTypeDefault
rawDataContractRawDataContract
optionsObject
[options.skipValidation]booleanfalse

dataContractFactory.createFromBuffer(buffer, options) ⇒ Promise.<DataContract>

Create Data Contract from buffer

Kind: instance method of DataContractFactory

ParamTypeDefault
bufferBuffer
optionsObject
[options.skipValidation]booleanfalse

dataContractFactory.createStateTransition(dataContract) ⇒ DataContractCreateTransition

Create Data Contract State Transition

Kind: instance method of DataContractFactory

ParamType
dataContractDataContract

DataContract

Kind: global class

new DataContract(rawDataContract)

ParamType
rawDataContractRawDataContract

dataContract.getProtocolVersion() ⇒ number

Get Data Contract protocol version

Kind: instance method of DataContract

dataContract.getId() ⇒ Identifier

Get ID

Kind: instance method of DataContract

dataContract.getOwnerId() ⇒ Identifier

Get owner id

Kind: instance method of DataContract

dataContract.getJsonSchemaId() ⇒ string

Get JSON Schema ID

Kind: instance method of DataContract

dataContract.setJsonMetaSchema(schema)

Kind: instance method of DataContract

ParamType
schemastring

dataContract.getJsonMetaSchema() ⇒ string

Kind: instance method of DataContract

dataContract.setDocuments(documents) ⇒ DataContract

Kind: instance method of DataContract

ParamType
documentsObject.<string, Object>

dataContract.getDocuments() ⇒ Object.<string, Object>

Kind: instance method of DataContract

dataContract.isDocumentDefined(type) ⇒ boolean

Returns true if document type is defined

Kind: instance method of DataContract

ParamType
typestring

dataContract.setDocumentSchema(type, schema) ⇒ DataContract

Kind: instance method of DataContract

ParamType
typestring
schemaobject

dataContract.getDocumentSchema(type) ⇒ Object

Kind: instance method of DataContract

ParamType
typestring

dataContract.getDocumentSchemaRef(type) ⇒ Object

Kind: instance method of DataContract

ParamType
typestring

dataContract.setDefinitions($defs) ⇒ DataContract

Kind: instance method of DataContract

ParamType
$defsObject.<string, Object>

dataContract.getDefinitions() ⇒ Object.<string, Object>

Kind: instance method of DataContract

dataContract.setEntropy(entropy) ⇒ DataContract

Set Data Contract entropy

Kind: instance method of DataContract

ParamType
entropyBuffer

dataContract.getEntropy() ⇒ Buffer

Get Data Contract entropy

Kind: instance method of DataContract

dataContract.getBinaryProperties(type) ⇒ Object

Get properties with contentEncoding constraint

Kind: instance method of DataContract

ParamType
typestring

dataContract.setMetadata(metadata)

Set metadata

Kind: instance method of DataContract

ParamType
metadataMetadata

dataContract.getMetadata() ⇒ Metadata | null

Get metadata

Kind: instance method of DataContract

dataContract.toObject([options]) ⇒ RawDataContract

Return Data Contract as plain object

Kind: instance method of DataContract

ParamTypeDefault
[options]Object
[options.skipIdentifiersConversion]booleanfalse

dataContract.toJSON() ⇒ JsonDataContract

Return Data Contract as JSON object

Kind: instance method of DataContract

dataContract.toBuffer() ⇒ Buffer

Return Data Contract as a Buffer

Kind: instance method of DataContract

dataContract.hash() ⇒ Buffer

Returns hex string with Data Contract hash

Kind: instance method of DataContract

DocumentFacade

Kind: global class

new DocumentFacade(dpp)

documentFacade.create(dataContract, ownerId, type, [data]) ⇒ Document

Create Document

Kind: instance method of DocumentFacade

ParamType
dataContractDataContract
ownerIdIdentifier | Buffer
typestring
[data]Object

documentFacade.createFromObject(rawDocument, options) ⇒ Promise.<Document>

Create Document from plain object

Kind: instance method of DocumentFacade

ParamTypeDefault
rawDocumentRawDocument
optionsObject
[options.skipValidation]booleanfalse
[options.action]boolean

documentFacade.createFromBuffer(buffer, options) ⇒ Promise.<Document>

Create Document from buffer

Kind: instance method of DocumentFacade

ParamTypeDefault
bufferBuffer
optionsObject
[options.skipValidation]booleanfalse
[options.action]boolean

documentFacade.createStateTransition(documents) ⇒ DocumentsBatchTransition

Create Documents State Transition

Kind: instance method of DocumentFacade

ParamType
documentsObject
[documents.create]Array.<Document>
[documents.replace]Array.<Document>
[documents.delete]Array.<Document>

documentFacade.validate(document) ⇒ Promise.<ValidationResult>

Validate document

Kind: instance method of DocumentFacade

ParamType
documentDocument | RawDocument

DocumentFactory

Kind: global class

new DocumentFactory(dpp, validateDocument, fetchAndValidateDataContract, decodeProtocolEntity)

ParamType
dppDashPlatformProtocol
validateDocumentvalidateDocument
fetchAndValidateDataContractfetchAndValidateDataContract
decodeProtocolEntitydecodeProtocolEntity

documentFactory.create(dataContract, ownerId, type, [data]) ⇒ Document

Create Document

Kind: instance method of DocumentFactory

ParamType
dataContractDataContract
ownerIdIdentifier | Buffer
typestring
[data]Object

documentFactory.createFromObject(rawDocument, options) ⇒ Document

Create Document from plain object

Kind: instance method of DocumentFactory

ParamTypeDefault
rawDocumentRawDocument
optionsObject
[options.skipValidation]booleanfalse
[options.action]boolean

documentFactory.createFromBuffer(buffer, options) ⇒ Promise.<Document>

Create Document from buffer

Kind: instance method of DocumentFactory

ParamTypeDefault
bufferBuffer
optionsObject
[options.skipValidation]booleanfalse
[options.action]boolean

documentFactory.createStateTransition(documents) ⇒ DocumentsBatchTransition

Create Documents State Transition

Kind: instance method of DocumentFactory

ParamType
documentsObject
[documents.create]Array.<Document>
[documents.replace]Array.<Document>
[documents.delete]Array.<Document>

Document

Kind: global class

new Document(rawDocument, dataContract)

ParamType
rawDocumentRawDocument
dataContractDataContract

document.getProtocolVersion() ⇒ number

Get Document protocol version

Kind: instance method of Document

document.getId() ⇒ Identifier

Get ID

Kind: instance method of Document

document.getType() ⇒ string

Get type

Kind: instance method of Document

document.getDataContractId() ⇒ Identifier

Get Data Contract ID

Kind: instance method of Document

document.getDataContract() ⇒ DataContract

Get Data Contract

Kind: instance method of Document

document.getOwnerId() ⇒ Identifier

Get Owner ID

Kind: instance method of Document

document.setRevision(revision) ⇒

Set revision

Kind: instance method of Document
Returns: Document

ParamType
revisionnumber

document.getRevision() ⇒ number

Get revision

Kind: instance method of Document

document.setEntropy(entropy)

Set entropy

Kind: instance method of Document

ParamType
entropyBuffer

document.getEntropy() ⇒ Buffer

Get entropy

Kind: instance method of Document

document.setData(data) ⇒ Document

Set data

Kind: instance method of Document

ParamType
dataObject

document.getData() ⇒ Object

Get data

Kind: instance method of Document

document.get(path) ⇒ *

Retrieves the field specified by {path}

Kind: instance method of Document

ParamType
pathstring

document.set(path, value) ⇒ Document

Set the field specified by {path}

Kind: instance method of Document

ParamType
pathstring
value*

document.setCreatedAt(date) ⇒ Document

Set document creation date

Kind: instance method of Document

ParamType
dateDate

document.getCreatedAt() ⇒ Date

Get document creation date

Kind: instance method of Document

document.setUpdatedAt(date) ⇒ Document

Set document updated date

Kind: instance method of Document

ParamType
dateDate

document.getUpdatedAt() ⇒ Date

Get document updated date

Kind: instance method of Document

document.setMetadata(metadata)

Set metadata

Kind: instance method of Document

ParamType
metadataMetadata

document.getMetadata() ⇒ Metadata | null

Get metadata

Kind: instance method of Document

document.toObject([options]) ⇒ RawDocument

Return Document as plain object

Kind: instance method of Document

ParamTypeDefault
[options]Object
[options.skipIdentifiersConversion]booleanfalse

document.toJSON() ⇒ JsonDocument

Return Document as JSON object

Kind: instance method of Document

document.toBuffer() ⇒ Buffer

Return serialized Document

Kind: instance method of Document

document.hash() ⇒ Buffer

Returns hex string with object hash

Kind: instance method of Document

DataTriggerExecutionContext

Kind: global class

new DataTriggerExecutionContext(stateRepository, ownerId, dataContract)

ParamType
stateRepositoryStateRepository
ownerIdBuffer | Identifier
dataContractDataContract

dataTriggerExecutionContext.stateRepository : StateRepository

Kind: instance property of DataTriggerExecutionContext

dataTriggerExecutionContext.getStateRepository() ⇒ StateRepository

Kind: instance method of DataTriggerExecutionContext

dataTriggerExecutionContext.getOwnerId() ⇒ Buffer | Identifier

Kind: instance method of DataTriggerExecutionContext

dataTriggerExecutionContext.getDataContract() ⇒ DataContract

Kind: instance method of DataTriggerExecutionContext

DataTriggerExecutionResult

Kind: global class

new DataTriggerExecutionResult(errors)

ParamType
errorsArray.<AbstractDataTriggerError>

dataTriggerExecutionResult.addError(...error)

Add an error to result

Kind: instance method of DataTriggerExecutionResult

ParamType
...errorAbstractDataTriggerError

dataTriggerExecutionResult.getErrors() ⇒ Array.<AbstractDataTriggerError>

Get all data trigger execution errors

Kind: instance method of DataTriggerExecutionResult

dataTriggerExecutionResult.isOk() ⇒ boolean

Check if result have no errors

Kind: instance method of DataTriggerExecutionResult

DataTrigger

Kind: global class

new DataTrigger(dataContractId, documentType, transitionAction, trigger, topLevelIdentity)

ParamType
dataContractIdBuffer | Identifier
documentTypestring
transitionActionnumber
triggerfunction
topLevelIdentityBuffer | Identifier

dataTrigger.isMatchingTriggerForData(dataContractId, documentType, transitionAction) ⇒ boolean

Check this trigger is matching for specified data

Kind: instance method of DataTrigger

ParamType
dataContractIdstring
documentTypestring
transitionActionnumber

dataTrigger.execute(documentTransition, context) ⇒ Promise.<DataTriggerExecutionResult>

Execute data trigger

Kind: instance method of DataTrigger

ParamType
documentTransitionArray.<DocumentCreateTransition> | Array.<DocumentReplaceTransition> | Array.<DocumentDeleteTransition>
contextDataTriggerExecutionContext

IdentityFacade

Kind: global class
Properties

NameType
validateIdentityvalidateIdentity

new IdentityFacade(dpp)

identityFacade.create(assetLockProof, publicKeys) ⇒ Identity

Create Identity

Kind: instance method of IdentityFacade

ParamType
assetLockProofInstantAssetLockProof | ChainAssetLockProof
publicKeysArray.<PublicKey>

identityFacade.createFromObject(rawIdentity, [options]) ⇒ Identity

Create Identity from the plain object

Kind: instance method of IdentityFacade

ParamType
rawIdentityRawIdentity
[options]
[options.skipValidation]boolean

identityFacade.createFromBuffer(buffer, [options]) ⇒ Identity

Create identity from a Buffer

Kind: instance method of IdentityFacade

ParamType
bufferBuffer
[options]
[options.skipValidation]boolean

identityFacade.validate(identity) ⇒ ValidationResult

Validate identity

Kind: instance method of IdentityFacade

ParamType
identityIdentity | RawIdentity

identityFacade.createInstantAssetLockProof(instantLock, assetLockTransaction, outputIndex) ⇒ InstantAssetLockProof

Create Instant Asset Lock proof

Kind: instance method of IdentityFacade

ParamType
instantLockInstantLock
assetLockTransactionTransaction
outputIndexnumber

identityFacade.createChainAssetLockProof(coreChainLockedHeight, outPoint) ⇒ InstantAssetLockProof | ChainAssetLockProof

Create Chain Asset Lock proof

Kind: instance method of IdentityFacade

ParamType
coreChainLockedHeightnumber
outPointBuffer

identityFacade.createIdentityCreateTransition(identity) ⇒ IdentityCreateTransition

Create identity create transition

Kind: instance method of IdentityFacade

ParamType
identityIdentity

identityFacade.createIdentityTopUpTransition(identityId, assetLockProof) ⇒ IdentityTopUpTransition

Create identity top up transition

Kind: instance method of IdentityFacade

ParamTypeDescription
identityIdIdentifier | Buffer | stringidentity to top up
assetLockProofInstantAssetLockProof | ChainAssetLockProof

IdentityFacade

Kind: global class

new IdentityFacade(dpp)

identityFacade.create(assetLockProof, publicKeys) ⇒ Identity

Create Identity

Kind: instance method of IdentityFacade

ParamType
assetLockProofInstantAssetLockProof | ChainAssetLockProof
publicKeysArray.<PublicKey>

identityFacade.createFromObject(rawIdentity, [options]) ⇒ Identity

Create Identity from the plain object

Kind: instance method of IdentityFacade

ParamType
rawIdentityRawIdentity
[options]
[options.skipValidation]boolean

identityFacade.createFromBuffer(buffer, [options]) ⇒ Identity

Create identity from a Buffer

Kind: instance method of IdentityFacade

ParamType
bufferBuffer
[options]
[options.skipValidation]boolean

identityFacade.validate(identity) ⇒ ValidationResult

Validate identity

Kind: instance method of IdentityFacade

ParamType
identityIdentity | RawIdentity

identityFacade.createInstantAssetLockProof(instantLock, assetLockTransaction, outputIndex) ⇒ InstantAssetLockProof

Create Instant Asset Lock proof

Kind: instance method of IdentityFacade

ParamType
instantLockInstantLock
assetLockTransactionTransaction
outputIndexnumber

identityFacade.createChainAssetLockProof(coreChainLockedHeight, outPoint) ⇒ InstantAssetLockProof | ChainAssetLockProof

Create Chain Asset Lock proof

Kind: instance method of IdentityFacade

ParamType
coreChainLockedHeightnumber
outPointBuffer

identityFacade.createIdentityCreateTransition(identity) ⇒ IdentityCreateTransition

Create identity create transition

Kind: instance method of IdentityFacade

ParamType
identityIdentity

identityFacade.createIdentityTopUpTransition(identityId, assetLockProof) ⇒ IdentityTopUpTransition

Create identity top up transition

Kind: instance method of IdentityFacade

ParamTypeDescription
identityIdIdentifier | Buffer | stringidentity to top up
assetLockProofInstantAssetLockProof | ChainAssetLockProof

IdentityFactory

Kind: global class

new IdentityFactory(dpp, validateIdentity, decodeProtocolEntity)

ParamType
dppDashPlatformProtocol
validateIdentityvalidateIdentity
decodeProtocolEntitydecodeProtocolEntity

identityFactory.create(assetLockProof, publicKeys) ⇒ Identity

Create Identity

Kind: instance method of IdentityFactory

ParamType
assetLockProofInstantAssetLockProof
publicKeysArray.<PublicKey>

identityFactory.createFromObject(rawIdentity, [options]) ⇒ Identity

Create identity from a plain object

Kind: instance method of IdentityFactory

ParamType
rawIdentityRawIdentity
[options]
[options.skipValidation]boolean

identityFactory.createFromBuffer(buffer, options) ⇒ Identity

Create Identity from a Buffer

Kind: instance method of IdentityFactory

ParamTypeDefault
bufferBuffer
optionsObject
[options.skipValidation]booleanfalse

identityFactory.createInstantAssetLockProof(instantLock, assetLockTransaction, outputIndex) ⇒ InstantAssetLockProof

Create Instant Asset Lock proof

Kind: instance method of IdentityFactory

ParamType
instantLockInstantLock
assetLockTransactionTransaction
outputIndexnumber

identityFactory.createChainAssetLockProof(coreChainLockedHeight, outPoint) ⇒ InstantAssetLockProof

Create Chain Asset Lock proof

Kind: instance method of IdentityFactory

ParamType
coreChainLockedHeightnumber
outPointBuffer

identityFactory.createIdentityCreateTransition(identity) ⇒ IdentityCreateTransition

Create identity create transition

Kind: instance method of IdentityFactory

ParamType
identityIdentity

identityFactory.createIdentityTopUpTransition(identityId, assetLockProof) ⇒ IdentityTopUpTransition

Create identity top up transition

Kind: instance method of IdentityFactory

ParamTypeDescription
identityIdIdentifier | Buffer | stringidentity to top up
assetLockProofInstantAssetLockProof

Identity

Kind: global class

new Identity(rawIdentity)

ParamType
rawIdentityRawIdentity

identity.getProtocolVersion() ⇒ number

Kind: instance method of Identity

identity.getId() ⇒ Identifier

Kind: instance method of Identity

identity.setPublicKeys(publicKeys) ⇒ Identity

Kind: instance method of Identity

ParamType
publicKeysArray.<IdentityPublicKey>

identity.getPublicKeys() ⇒ Array.<IdentityPublicKey>

Kind: instance method of Identity

identity.getPublicKeyById(keyId) ⇒ IdentityPublicKey

Returns a public key for a given id

Kind: instance method of Identity

ParamType
keyIdnumber

identity.toObject() ⇒ RawIdentity

Get plain object representation

Kind: instance method of Identity

identity.toJSON() ⇒ JsonIdentity

Get JSON representation

Kind: instance method of Identity

identity.toBuffer() ⇒ Buffer

Kind: instance method of Identity

identity.hash() ⇒ Buffer

Kind: instance method of Identity

identity.getBalance() ⇒ number

Returns balance

Kind: instance method of Identity

identity.setBalance(balance) ⇒ Identity

Set Identity balance

Kind: instance method of Identity

ParamType
balancenumber

identity.increaseBalance(amount) ⇒ number

Increase balance

Kind: instance method of Identity

ParamType
amountnumber

identity.reduceBalance(amount) ⇒ number

Reduce balance

Kind: instance method of Identity

ParamType
amountnumber

identity.setAssetLockProof(assetLockProof) ⇒ Identity

Set asset lock proof

Kind: instance method of Identity

ParamType
assetLockProofInstantAssetLockProof | ChainAssetLockProof

identity.getAssetLockProof() ⇒ InstantAssetLockProof | ChainAssetLockProof

Get asset lock proof

Kind: instance method of Identity

identity.getRevision() ⇒ number

Get Identity revision

Kind: instance method of Identity

identity.setRevision(revision) ⇒ Identity

Set Identity revision

Kind: instance method of Identity

ParamType
revisionnumber

identity.setMetadata(metadata)

Set metadata

Kind: instance method of Identity

ParamType
metadataMetadata

identity.getMetadata() ⇒ Metadata | null

Get metadata

Kind: instance method of Identity

IdentityPublicKey

Kind: global class

new IdentityPublicKey([rawIdentityPublicKey])

ParamType
[rawIdentityPublicKey]RawIdentityPublicKey

identityPublicKey.getId() ⇒ number

Get key ID

Kind: instance method of IdentityPublicKey

identityPublicKey.setId(id) ⇒ IdentityPublicKey

Set key ID

Kind: instance method of IdentityPublicKey

ParamType
idnumber

identityPublicKey.getType() ⇒ number

Get key type

Kind: instance method of IdentityPublicKey

identityPublicKey.setType(type) ⇒ IdentityPublicKey

Set key type

Kind: instance method of IdentityPublicKey

ParamType
typenumber

identityPublicKey.setData(data) ⇒ IdentityPublicKey

Set raw public key

Kind: instance method of IdentityPublicKey

ParamType
dataBuffer

identityPublicKey.getData() ⇒ Buffer

Get raw public key

Kind: instance method of IdentityPublicKey

identityPublicKey.hash() ⇒ Buffer

Get original public key hash

Kind: instance method of IdentityPublicKey

identityPublicKey.toObject() ⇒ RawIdentityPublicKey

Get plain object representation

Kind: instance method of IdentityPublicKey

identityPublicKey.toJSON() ⇒ JsonIdentityPublicKey

Get JSON representation

Kind: instance method of IdentityPublicKey

Identifier

Kind: global class

new Identifier(buffer)

ParamType
bufferBuffer

identifier.toBuffer() ⇒ Buffer

Convert to Buffer

Kind: instance method of Identifier

identifier.encodeCBOR(encoder) ⇒ boolean

Encode to CBOR

Kind: instance method of Identifier

ParamType
encoderEncoder

identifier.toJSON() ⇒ string

Convert to JSON

Kind: instance method of Identifier

identifier.toString([encoding]) ⇒ string

Encode to string

Kind: instance method of Identifier

ParamTypeDefault
[encoding]string"base58"

Identifier.from(value, encoding) ⇒ Identifier

Create Identifier from buffer or encoded string

Kind: static method of Identifier

ParamType
valuestring | Buffer
encodingstring

StateTransitionFactory

Kind: global class

new StateTransitionFactory(validateStateTransitionBasic, createStateTransition, dpp, decodeProtocolEntity)

ParamType
validateStateTransitionBasicvalidateStateTransitionBasic
createStateTransitioncreateStateTransition
dppDashPlatformProtocol
decodeProtocolEntitydecodeProtocolEntity

stateTransitionFactory.createFromObject(rawStateTransition, [options]) ⇒ AbstractStateTransition

Create State Transition from plain object

Kind: instance method of StateTransitionFactory

ParamTypeDefault
rawStateTransitionRawStateTransition
[options]Object
[options.skipValidation]booleanfalse

stateTransitionFactory.createFromBuffer(buffer, options) ⇒ RawDataContractCreateTransition | DocumentsBatchTransition

Create State Transition from buffer

Kind: instance method of StateTransitionFactory

ParamTypeDefault
bufferBuffer
optionsObject
[options.skipValidation]booleanfalse

Metadata

Kind: global class

new Metadata(rawMetadata)

ParamType
rawMetadataObject
rawMetadata.blockHeightnumber
rawMetadata.coreChainLockedHeightnumber

metadata.getBlockHeight() ⇒ number

Get block height

Kind: instance method of Metadata

metadata.getCoreChainLockedHeight() ⇒ number

Get core chain-locked height

Kind: instance method of Metadata

StateRepository

StateRepository interface definition

Kind: global class

stateRepository.fetchDataContract(id) ⇒ Promise.<(DataContract|null)>

Fetch Data Contract by ID

Kind: instance method of StateRepository

ParamType
idIdentifier

stateRepository.storeDataContract(dataContract) ⇒ Promise.<void>

Store Data Contract

Kind: instance method of StateRepository

ParamType
dataContractDataContract

stateRepository.fetchDocuments(contractId, type, [options]) ⇒ Promise.<Array.<Document>>

Fetch Documents by Data Contract ID and type

Kind: instance method of StateRepository

ParamType
contractIdIdentifier
typestring
[options]Object

stateRepository.storeDocument(document) ⇒ Promise.<void>

Store document

Kind: instance method of StateRepository

ParamType
documentDocument

stateRepository.removeDocument(contractId, type, id) ⇒ Promise.<void>

Remove document

Kind: instance method of StateRepository

ParamType
contractIdIdentifier
typestring
idIdentifier

stateRepository.fetchTransaction(id) ⇒ Promise.<(Object|null)>

Fetch transaction by ID

Kind: instance method of StateRepository

ParamType
idstring

stateRepository.fetchIdentity(id) ⇒ Promise.<(Identity|null)>

Fetch identity by ID

Kind: instance method of StateRepository

ParamType
idIdentifier

stateRepository.storeIdentity(identity) ⇒ Promise.<void>

Store identity

Kind: instance method of StateRepository

ParamType
identityIdentity

stateRepository.storeIdentityPublicKeyHashes(identityId, publicKeyHashes) ⇒ Promise.<void>

Store public keys hashes and identity id pair

Kind: instance method of StateRepository

ParamType
identityIdIdentifier
publicKeyHashesArray.<Buffer>

stateRepository.fetchIdentityIdsByPublicKeyHashes(publicKeyHashes) ⇒ Promise.<Array.<(Identifier|null)>>

Fetch identity ids by public keys hashes

Kind: instance method of StateRepository

ParamType
publicKeyHashesArray.<Buffer>

stateRepository.fetchLatestPlatformBlockHeader() ⇒ Promise.<abci.IHeader>

Fetch latest platform block header

Kind: instance method of StateRepository

stateRepository.verifyInstantLock(instantLock) ⇒ Promise.<boolean>

Verify Instant Lock

Kind: instance method of StateRepository

ParamType
instantLockInstantLock

stateRepository.isAssetLockTransactionOutPointAlreadyUsed(outPointBuffer) ⇒ Promise.<boolean>

Check if AssetLock Transaction outPoint exists in spent list

Kind: instance method of StateRepository

ParamType
outPointBufferBuffer

stateRepository.markAssetLockTransactionOutPointAsUsed(outPointBuffer) ⇒ Promise.<void>

Store AssetLock Transaction outPoint in spent list

Kind: instance method of StateRepository

ParamType
outPointBufferBuffer

generateDataContractId(ownerId, entropy) ⇒ Buffer

Generate data contract id based on owner id and entropy

Kind: global function

ParamType
ownerIdBuffer
entropyBuffer

buildBinaryPropertiesMap(schema, [propertyName]) ⇒ Object

Recursively build properties map

Kind: global function

ParamType
schemaObject
[propertyName]string

getBinaryPropertiesFromSchema(documentSchema) ⇒ Object

Construct and get all properties with contentEncoding keyword

Kind: global function

ParamType
documentSchemaObject

getPropertyDefinitionByPathFactory() ⇒ getPropertyDefinitionByPath

Kind: global function

fetchAndValidateDataContractFactory(stateRepository) ⇒ fetchAndValidateDataContract

Kind: global function

ParamType
stateRepositoryStateRepository

generateDocumentId(contractId, ownerId, type, entropy) ⇒ Buffer

Generates document ID

Kind: global function

ParamType
contractIdBuffer
ownerIdBuffer
typestring
entropyBuffer

getDataTriggersFactory() ⇒ getDataTriggers

Get respective data triggers (factory)

Kind: global function

rejectDataTrigger(documentTransition, context) ⇒ Promise.<DataTriggerExecutionResult>

Data trigger for domain deletion process

Kind: global function

ParamType
documentTransitionDocumentDeleteTransition
contextDataTriggerExecutionContext

createAndValidateIdentifier(name, buffer, result) ⇒ Identifier

Kind: global function

ParamType
namestring
bufferBuffer
resultValidationResult

RawDataContract : Object

Kind: global typedef
Properties

NameType
protocolVersionnumber
$idBuffer
$schemastring
ownerIdBuffer
documentsObject.<string, Object>
[$defs]Object.<string, Object>

JsonDataContract : Object

Kind: global typedef
Properties

NameType
protocolVersionnumber
$idstring
$schemastring
ownerIdstring
documentsObject.<string, Object>
[$defs]Object.<string, Object>

enrichDataContractWithBaseSchema ⇒ DataContract

Kind: global typedef

ParamType
dataContractDataContract
baseSchemaObject
schemaIdBytePrefixnumber
[excludeProperties]Array.<string>

getPropertyDefinitionByPath ⇒ Object

Get user property definition

Kind: global typedef

ParamType
documentDefinitionObject
pathstring

RawDocument : Object

Kind: global typedef
Properties

NameType
$protocolVersionnumber
$idBuffer
$typestring
$dataContractIdBuffer
$ownerIdBuffer
$revisionnumber
[$createdAt]number
[$updatedAt]number

JsonDocument : Object

Kind: global typedef
Properties

NameType
$protocolVersionnumber
$idstring
$typestring
$dataContractIdstring
$ownerIdstring
$revisionnumber
[$createdAt]number
[$updatedAt]number

fetchAndValidateDataContract ⇒ ValidationResult

Kind: global typedef

ParamType
rawDocumentRawDocument

getDataTriggers ⇒ Array.<DataTrigger>

Get respective data triggers

Kind: global typedef

ParamType
dataContractIdIdentifier | Buffer
documentTypestring
transitionActionnumber

RawIdentity : Object

Kind: global typedef
Properties

NameType
protocolVersionnumber
idBuffer
publicKeysArray.<RawIdentityPublicKey>
balancenumber
revisionnumber

JsonIdentity : Object

Kind: global typedef
Properties

NameType
protocolVersionnumber
idstring
publicKeysArray.<JsonIdentityPublicKey>
balancenumber
revisionnumber

RawIdentityPublicKey : Object

Kind: global typedef
Properties

NameType
idnumber
typenumber
dataBuffer

JsonIdentityPublicKey : Object

Kind: global typedef
Properties

NameType
idnumber
typenumber
datastring