ContractManifest

Interface
A manifest explicitly declares the permissions a Contract will use. Once deployed, it will be limited by its declared list of permissions.
export interface ContractManifest { 
  readonly name: string; 
  readonly groups: readonly ContractGroup[]; 
  readonly supportedStandards: readonly string[]; 
  readonly abi: ContractABI; 
  readonly permissions: readonly ContractPermission[]; 
  readonly trusts: WildcardContainer<ContractPermissionDescriptor>; 
  readonly extra?: JSONObject; 
} 

Properties

name
string
The name of the contract.
groups
readonly ContractGroup[]
A group represents a set of mutually trusted contracts. A contract will trust and allow any contract in the same group to invoke it, and the user interface will not give any warnings.
supportedStandards
readonly string[]
The Neo Enhancement Proposals (NEPs) and other standards that this smart contract supports.
abi
Full specification of the functions and events of a smart contract. Used by the Client APIs to generate the smart contract interface.
permissions
readonly ContractPermission[]
The permissions field is an array containing a set of ContractPermission objects. It describes which contracts may be invoked and which methods are called.
trusts
The trusts field is an array containing a set of contract hashes or group public keys. It can also be assigned with a wildcard *. If it is a wildcard *, then it means that it trusts any contract. If a contract is trusted, the user interface will not give any warnings when called by the contract.
extra
JSONObject
Custom user-defined JSON object.
  • @neo-one/client
  • @neo-one/smart-contract
DOCS
InstallationMain ConceptsAdvanced GuidesAPI ReferenceContributing
CHANNELS
GitHubStack OverflowDiscord ChatTwitterYouTube
COPYRIGHT © 2021 NEO•ONE