Charged State Contract
Charged Particles State Contract. For viewing and setting permissions, approvals, and time locks on Particles.
Get State Data
Get info on time locks, approvals, and permissions.
getDischargeTimelockExpiry
Gets unlock block for Discharge time lock.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check time lock for |
lockExpiry | unlock block for Particle's Charge (interest) |
getReleaseTimelockExpiry
Gets unlock block for Release time lock.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check time lock for |
lockExpiry | unlock block for Particle's Mass (principal) |
getBreakBondTimelockExpiry
Gets unlock block for restrictions on withdrawing NFTs from a Particle (covalent bonds).
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check time lock for |
lockExpiry | unlock block for Particle's covalent bonds (NFTs) |
isApprovedForDischarge
Checks if an operator is allowed to Discharge a specific Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check approval of |
operator | address of the operator to check |
return | True if operator approved |
isApprovedForRelease
Checks if an operator is allowed to Release a specific Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check approval of |
operator | address of the operator to check |
return | True if operator approved |
isApprovedForBreakBond
Checks if an operator is allowed to Break Covalent Bonds on a specific Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check approval of |
operator | address of the operator to check |
return | True if operator approved |
isApprovedForTimelock
Checks if an operator is allowed to Timelock a specific Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check approval of |
operator | address of the operator to check |
return | True if operator approved |
isEnergizeRestricted
Checks if energizing a specific Particle is restricted.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check restriction of |
return | whether or not energizing restricted |
isCovalentBondRestricted
Checks if covalent bonding (depositing NFTs into a Particle) for a specific Particle is restricted.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check restriction of |
return | whether or not bonding restricted |
getDischargeState
Gets state of discharge settings / permissions for a Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check state of |
sender | address of transaction sender |
allowFromAll | whether or not all can discharge from Particle |
isApproved | discharge approval status |
timelock | unlock block for charge (interest) |
tempLockExpiry | unlock block for temporary time lock |
getReleaseState
Gets state of release settings / permissions for a Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check state of |
sender | address of transaction sender |
allowFromAll | whether or not all can release a Particle |
isApproved | discharge approval status |
timelock | unlock block for mass (principal) |
tempLockExpiry | unlock block for temporary time lock |
getBreakBondState
Gets state of covalent bond breaking (releasing an NFT) settings / permissions for a Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to check state of |
sender | address of transaction sender |
allowFromAll | whether or not all can release an NFT from Particle |
isApproved | discharge approval status |
timelock | unlock block for mass (principal) |
tempLockExpiry | unlock block for temporary time lock |
Set Permissions + Approvals
Update a Particle's permissions and approvals
setDischargeApproval
Sets an Operator as Approved to Discharge a specific Token. This allows an operator to withdraw the interest-portion only.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set approval for |
operator | address of Particle operator |
setReleaseApproval
Sets an Operator as Approved to Release a specific Token. This allows an operator to withdraw the principal + interest.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle set approval for |
operator | address of Particle operator |
setBreakBondApproval
Sets an Operator as Approved to Break Covalent Bonds on a specific Token. This allows an operator to withdraw Basket NFTs.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set approval for |
operator | address of Particle operator |
setTimelockApproval
Sets an Operator as Approved to Timelock a specific Token. This allows an operator to timelock the principal or interest.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set approval for |
operator | address of Particle operator |
setApprovalForAll
Sets an Operator as Approved to Discharge/Release/Timelock a specific Token.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set approval for |
operator | address of Particle operator |
setPermsForRestrictCharge
Updates Restrictions on Energizing an NFT.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set permissions for |
state | state of permissions for action |
setPermsForAllowDischarge
Updates Allowance on Discharging an NFT by Anyone.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set permissions for |
state | state of permissions for action |
setPermsForAllowRelease
Updates Allowance on Releasing an NFT by Anyone.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set permissions for |
state | state of permissions for action |
setPermsForRestrictBond
Updates Restrictions on Covalent Bonds on an NFT.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set permissions for |
state | state of permissions for action |
setPermsForAllowBreakBond
Updates Allowance on Breaking Covalent Bonds on an NFT by Anyone.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set permissions for |
state | state of permissions for action |
Set Timelocks
Update time locks for a particles Mass (principal), Charge (interest), or Bonds (locked NFTs)
setDischargeTimelock
Sets a Timelock on the ability to Discharge the Interest of a Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set time lock for |
state | Ethereum Block-number to Timelock until |
setReleaseTimelock
Sets a Timelock on the ability to Release the Assets of a Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set time lock for |
unlockBlock | Ethereum Block-number to Timelock until |
setBreakBondTimelock
Sets a Timelock on the ability to Break the Covalent Bond of a Particle.
Parameter / Return Value | Description |
contractAddress | address of contract for Particle |
tokenId | id of Particle to set time lock for |
unlockBlock | Ethereum Block-number to Timelock until |
Other
Events
ChargedSettingsSet
DischargeApproval
ReleaseApproval
BreakBondApproval
TimelockApproval
TokenDischargeTimelock
TokenReleaseTimelock
TokenBreakBondTimelock
TokenTempLock
PermsSetForRestrictCharge
PermsSetForAllowDischarge
PermsSetForAllowRelease
PermsSetForRestrictBond
PermsSetForAllowBreakBond
Last updated