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
enrichDataContractWithBaseSchema ⇒ DataContract
getPropertyDefinitionByPath ⇒ Object

Get user property definition

RawDocument : Object
JsonDocument : Object
fetchAndValidateDataContract ⇒ ValidationResult
getDataTriggers ⇒ Array.<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