Permissions
Interface: Permissions
Permissions specify how specific aspects of the zkapp account are allowed to be modified. All fields are denominated by a Permission.
Hierarchy
Permissions_
↳
Permissions
Table of contents
Properties
- access
- editActionState
- editState
- incrementNonce
- receive
- send
- setDelegate
- setPermissions
- setTiming
- setTokenSymbol
- setVerificationKey
- setVotingFor
- setZkappUri
Properties
access
• access: AuthRequired
Permission to control the ability to include any account update for this
account in a transaction. Note that this is more restrictive than all other
permissions combined. For normal accounts it can safely be set to none
,
but for token contracts this has to be more restrictive, to prevent
unauthorized token interactions -- for example, it could be
proofOrSignature
.
Overrides
Permissions_.access
Defined in
editActionState
• editActionState: AuthRequired
The Permission corresponding to the ability to emit actions to the account.
Overrides
Permissions_.editActionState
Defined in
editState
• editState: AuthRequired
The Permission corresponding to the 8 state fields associated with an account.
Overrides
Permissions_.editState
Defined in
incrementNonce
• incrementNonce: AuthRequired
Overrides
Permissions_.incrementNonce
Defined in
receive
• receive: AuthRequired
The Permission corresponding to the ability to receive transactions to this account.
Overrides
Permissions_.receive
Defined in
send
• send: AuthRequired
The Permission corresponding to the ability to send transactions from this account.
Overrides
Permissions_.send
Defined in
setDelegate
• setDelegate: AuthRequired
The Permission corresponding to the ability to set the delegate field of the account.
Overrides
Permissions_.setDelegate
Defined in
setPermissions
• setPermissions: AuthRequired
The Permission corresponding to the ability to set the permissions field of the account.
Overrides
Permissions_.setPermissions
Defined in
setTiming
• setTiming: AuthRequired
Overrides
Permissions_.setTiming
Defined in
setTokenSymbol
• setTokenSymbol: AuthRequired
The Permission corresponding to the ability to set the token symbol for this account.
Overrides
Permissions_.setTokenSymbol
Defined in
setVerificationKey
• setVerificationKey: Object
The Permission corresponding to the ability to set the verification key associated with the circuit tied to this account. Effectively "upgradeability" of the smart contract.
Type declaration
Name | Type |
---|---|
auth | AuthRequired |
txnVersion | UInt32 |
Overrides
Permissions_.setVerificationKey
Defined in
setVotingFor
• setVotingFor: AuthRequired
Overrides
Permissions_.setVotingFor
Defined in
setZkappUri
• setZkappUri: AuthRequired
The Permission corresponding to the ability to set the zkapp uri typically pointing to the source code of the smart contract. Usually this should be changed whenever the setVerificationKey is changed. Effectively "upgradeability" of the smart contract.
Overrides
Permissions_.setZkappUri