Charged State Contract (V2)
Charged Particles State Contract. For viewing and setting permissions, approvals, and time locks on Particles.
Get info on time locks, approvals, and permissions.
getDischargeTimelockExpiry
Gets unlock block for Discharge time lock.
function getDischargeTimelockExpiry(
address contractAddress,
uint256 tokenId
) external view returns (uint256 lockExpiry);
The address to the contract of the token (Particle)
The ID of the token (Particle)
Return Value
Description
Type
unlock block for Particle's Charge (interest)
getReleaseTimelockExpiry
Gets unlock block for Release time lock.
function getReleaseTimelockExpiry(
address contractAddress,
uint256 tokenId
) external view returns (uint256 lockExpiry);
The address to the contract of the token (Particle)
The ID of the token (Particle)
Return Value
Description
Type
unlock block for Particle's Mass (principal + interest)
getBreakBondTimelockExpiry
Gets unlock block for restrictions on withdrawing NFTs (Covalent Bonds) from a Particle.
The address to the contract of the token (Particle)
The ID of the token (Particle)
Return Value
Description
Type
unlock block for Particle's Covalent Bonds (nested NFTs)
isApprovedForDischarge
Checks if an operator is allowed to Discharge a specific token (Particle).
The address to the contract of the token (Particle)
The ID of the token (Particle)
address of the operator to check approval for
Return Value
Description
Type
true if operator approved, false if not approved
isApprovedForRelease
Checks if an operator is allowed to Release a specific token (Particle).
The address to the contract of the token (Particle)
The ID of the token (Particle)
address of the operator to check approval for
Return Value
Description
Type
true if operator approved, false if not approved
isApprovedForBreakBond
Checks if an operator is allowed to break Covalent Bonds on a specific token (Particle).
The address to the contract of the token (Particle)
The ID of the token (Particle)
address of the operator to check approval for
Return Value
Description
Type
true if operator approved, false if not approved
isApprovedForTimelock
Checks if an operator is allowed to Timelock a specific token (Particle).
The address to the contract of the token (Particle)
The ID of the token (Particle)
address of the operator to check approval for
Return Value
Description
Type
true if operator approved, false if not approved
isEnergizeRestricted
Checks if energizing a specific Particle is restricted.
The address to the contract of the token (Particle)
The ID of the token (Particle)
Return Value
Description
Type
true if operator approved, false if not approved
isCovalentBondRestricted
Checks if covalent bonding (depositing NFTs into a Particle) for a specific Particle is restricted.
The address to the contract of the token (Particle)
The ID of the token (Particle)
Return Value
Description
Type
true if operator approved, false if not approved
getDischargeState
Gets state of discharge settings / permissions for a Particle.
The address to the contract of the token (Particle)
The ID of the token (Particle)
address of transaction sender
Return Value
Description
Type
whether or not any address can release a Particle
true if operator approved, false if not approved
unlock block for Particle's Charge (interest only)
unlock block for temporary time lock
getReleaseState
Gets state of release settings / permissions for a Particle.
The address to the contract of the token (Particle)
The ID of the token (Particle)
address of transaction sender
Return Value
Description
Type
whether or not any address can release a Particle
true if operator approved, false if not approved
unlock block for Particle's Mass (principal + interest)
unlock block for temporary time lock
getBreakBondState
Gets state of covalent bond breaking (releasing an NFT) settings / permissions for a Particle.
The address to the contract of the token (Particle)
The ID of the token (Particle)
address of transaction sender
Return Value
Description
Type
whether or not any address can release a Particle
true if operator approved, false if not approved
unlock block for Particle's Covalent Bonds (nested NFTs)
unlock block for temporary time lock
Set Permissions + Approvals
Update a Particle's permissions and approvals. Only the owner or operator of an NFT can call these functions.
setDischargeApproval
Sets an operator as approved to Discharge a specific token (Particle); This allows an operator to withdraw the interest-portion only.
The address to the contract of the token (Particle)
The ID of the token (Particle)
setReleaseApproval
Sets an operator as approved to Release a specific token (Particle); This allows an operator to withdraw the principal + interest.
The address to the contract of the token (Particle)
The ID of the token (Particle)
setBreakBondApproval
Sets an operator as approved to break Covalent Bonds on a specific token (Particle); This allows an operator to withdraw NFTs.
The address to the contract of the token (Particle)
The ID of the token (Particle)
setTimelockApproval
Sets an operator as approved to Timelock a specific token (Particle); This allows an operator to timelock the principal or interest.
The address to the contract of the token (Particle)
The ID of the token (Particle)
Sets an operator as approved to Discharge/Release/Timelock a specific token (Particle).
The address to the contract of the token (Particle)
The ID of the token (Particle)
setPermsForRestrictCharge
Updates restrictions on Energizing an NFT.
The address to the contract of the token (Particle)
The ID of the token (Particle)
state of permissions for action
setPermsForAllowDischarge
Updates allowance on Discharging an NFT by anyone.
The address to the contract of the token (Particle)
The ID of the token (Particle)
state of permissions for action
setPermsForAllowRelease
Updates allowance on Discharging an NFT by anyone.
The address to the contract of the token (Particle)
The ID of the token (Particle)
state of permissions for action
setPermsForRestrictBond
Updates restrictions on Covalent Bonds on an NFT.
The address to the contract of the token (Particle)
The ID of the token (Particle)
state of permissions for action
setPermsForAllowBreakBond
Updates allowance on Breaking Covalent Bonds on an NFT by anyone.
The address to the contract of the token (Particle)
The ID of the token (Particle)
state of permissions for action
setDischargeTimelock
Sets a Timelock on the ability to Discharge the interest of a Particle.
The address to the contract of the token (Particle)
The ID of the token (Particle)
unlock block for Discharge time lock (interest only)
setReleaseTimelock
Sets a Timelock on the ability to Release the assets of a Particle.
The address to the contract of the token (Particle)
The ID of the token (Particle)
unlock block for Release time lock (principal + interest)
setBreakBondTimelock
Sets a Timelock on the ability to break the Covalent Bond of a Particle.
The address to the contract of the token (Particle)
The ID of the token (Particle)
unlock block for Covalent Bonds (nested NFTs) time lock
setTemporaryLock
Sets a temporary Timelock on the ability to Release/Discharge the assets of a Particle.
The address to the contract of the token (Particle)
The ID of the token (Particle)