Creates a new [DelegationNode] from an [IDelegationNode].
Readonly
accountReadonly
hierarchyReadonly
idOptional
Readonly
parentReadonly
permissionsReadonly
revokedSigns the delegation hash from the delegations' property values.
This is required to anchor the delegation node on chain in order to enforce the delegate's consent.
The DID signature over the delegation as a hex string.
The DID of the delegate.
The callback to sign the delegation creation details for the delegate.
Checks on chain whether an identity with the given DID is delegating to the current node.
An object containing a node
owned by the identity if it is delegating, plus the number of steps
traversed. steps
is 0 if the DID is owner of the current node.
Generates the delegation hash from the delegations' property values.
This hash is signed by the delegate and later stored along with the delegation to make sure delegation data (such as permissions) has not been tampered with.
The hash representation of this delegation as a byte array.
Fetches and resolves all attestations attested with this delegation node.
Promise containing all resolved attestations attested with this node.
Fetches the children nodes of this delegation node.
Promise containing the children as an array of DelegationNode, which is empty if there are no children.
Fetches the details of the hierarchy this delegation node belongs to.
Promise containing the IDelegationHierarchyDetails of this delegation node.
Synchronise the delegation node state with the latest state as stored on the blockchain.
An updated instance of the same [DelegationNode] containing the up-to-date state fetched from the chain.
Fetches the parent node of this delegation node.
Promise containing the parent as DelegationNode or [null].
Reclaims the deposit of a delegation and removes the delegation and all its children.
This call can only be successfully executed if the submitter of the transaction is the original payer of the delegation deposit.
A promise containing the unsigned SubmittableExtrinsic (submittable transaction).
Stores the delegation node on chain.
Promise containing an unsigned SubmittableExtrinsic.
Optional
signature: EncodedVerificationKeySignature of the delegate to ensure it is done under the delegate's permission.
Static
fetchThe unique identifier of the desired delegation.
Static
newBuilds a new [DelegationNode] representing a regular delegation node ready to be submitted to the chain for creation.
A new [DelegationNode] with a randomly generated id.
An partial [IDelegationNode] input object.
Static
newBuilds a new [DelegationNode] representing a root delegation node ready to be submitted to the chain for creation.
A new [DelegationNode] with a randomly generated id.
An input object.
Delegation nodes are used within the KILT protocol to construct the trust hierarchy.
Starting from the root node, entities can delegate the right to issue attestations to Claimers for a certain CTYPE and also delegate the right to attest and to delegate further nodes.
A delegation object is stored on-chain, and can be revoked.
A delegation can and may restrict permissions.
Permissions: