/// export declare enum Op { PUSH0 = 0, PUSHBYTES1 = 1, PUSHBYTES2 = 2, PUSHBYTES3 = 3, PUSHBYTES4 = 4, PUSHBYTES5 = 5, PUSHBYTES6 = 6, PUSHBYTES7 = 7, PUSHBYTES8 = 8, PUSHBYTES9 = 9, PUSHBYTES10 = 10, PUSHBYTES11 = 11, PUSHBYTES12 = 12, PUSHBYTES13 = 13, PUSHBYTES14 = 14, PUSHBYTES15 = 15, PUSHBYTES16 = 16, PUSHBYTES17 = 17, PUSHBYTES18 = 18, PUSHBYTES19 = 19, PUSHBYTES20 = 20, PUSHBYTES21 = 21, PUSHBYTES22 = 22, PUSHBYTES23 = 23, PUSHBYTES24 = 24, PUSHBYTES25 = 25, PUSHBYTES26 = 26, PUSHBYTES27 = 27, PUSHBYTES28 = 28, PUSHBYTES29 = 29, PUSHBYTES30 = 30, PUSHBYTES31 = 31, PUSHBYTES32 = 32, PUSHBYTES33 = 33, PUSHBYTES34 = 34, PUSHBYTES35 = 35, PUSHBYTES36 = 36, PUSHBYTES37 = 37, PUSHBYTES38 = 38, PUSHBYTES39 = 39, PUSHBYTES40 = 40, PUSHBYTES41 = 41, PUSHBYTES42 = 42, PUSHBYTES43 = 43, PUSHBYTES44 = 44, PUSHBYTES45 = 45, PUSHBYTES46 = 46, PUSHBYTES47 = 47, PUSHBYTES48 = 48, PUSHBYTES49 = 49, PUSHBYTES50 = 50, PUSHBYTES51 = 51, PUSHBYTES52 = 52, PUSHBYTES53 = 53, PUSHBYTES54 = 54, PUSHBYTES55 = 55, PUSHBYTES56 = 56, PUSHBYTES57 = 57, PUSHBYTES58 = 58, PUSHBYTES59 = 59, PUSHBYTES60 = 60, PUSHBYTES61 = 61, PUSHBYTES62 = 62, PUSHBYTES63 = 63, PUSHBYTES64 = 64, PUSHBYTES65 = 65, PUSHBYTES66 = 66, PUSHBYTES67 = 67, PUSHBYTES68 = 68, PUSHBYTES69 = 69, PUSHBYTES70 = 70, PUSHBYTES71 = 71, PUSHBYTES72 = 72, PUSHBYTES73 = 73, PUSHBYTES74 = 74, PUSHBYTES75 = 75, PUSHDATA1 = 76, PUSHDATA2 = 77, PUSHDATA4 = 78, PUSHM1 = 79, PUSH1 = 81, PUSH2 = 82, PUSH3 = 83, PUSH4 = 84, PUSH5 = 85, PUSH6 = 86, PUSH7 = 87, PUSH8 = 88, PUSH9 = 89, PUSH10 = 90, PUSH11 = 91, PUSH12 = 92, PUSH13 = 93, PUSH14 = 94, PUSH15 = 95, PUSH16 = 96, NOP = 97, JMP = 98, JMPIF = 99, JMPIFNOT = 100, CALL = 101, RET = 102, APPCALL = 103, SYSCALL = 104, TAILCALL = 105, DUPFROMALTSTACK = 106, TOALTSTACK = 107, FROMALTSTACK = 108, XDROP = 109, XSWAP = 114, XTUCK = 115, DEPTH = 116, DROP = 117, DUP = 118, NIP = 119, OVER = 120, PICK = 121, ROLL = 122, ROT = 123, SWAP = 124, TUCK = 125, CAT = 126, SUBSTR = 127, LEFT = 128, RIGHT = 129, SIZE = 130, INVERT = 131, AND = 132, OR = 133, XOR = 134, EQUAL = 135, OP_EQUALVERIFY = 136, OP_RESERVED1 = 137, OP_RESERVED2 = 138, INC = 139, DEC = 140, SIGN = 141, NEGATE = 143, ABS = 144, NOT = 145, NZ = 146, ADD = 147, SUB = 148, MUL = 149, DIV = 150, MOD = 151, SHL = 152, SHR = 153, BOOLAND = 154, BOOLOR = 155, NUMEQUAL = 156, NUMNOTEQUAL = 158, LT = 159, GT = 160, LTE = 161, GTE = 162, MIN = 163, MAX = 164, WITHIN = 165, SHA1 = 167, SHA256 = 168, HASH160 = 169, HASH256 = 170, CHECKSIG = 172, VERIFY = 173, CHECKMULTISIG = 174, ARRAYSIZE = 192, PACK = 193, UNPACK = 194, PICKITEM = 195, SETITEM = 196, NEWARRAY = 197, NEWSTRUCT = 198, NEWMAP = 199, APPEND = 200, REVERSE = 201, REMOVE = 202, HASKEY = 203, KEYS = 204, VALUES = 205, CALL_I = 224, CALL_E = 225, CALL_ED = 226, CALL_ET = 227, CALL_EDT = 228, THROW = 240, THROWIFNOT = 241 } export declare type OpCode = keyof typeof Op; export declare type ByteCode = Op; export declare const Byte: { [K in ByteCode]: OpCode; }; export declare const ByteBuffer: { [K in ByteCode]: Buffer; }; export declare const isByteCode: (value: number) => value is Op; export declare const assertByteCode: (value: number) => Op; export declare enum SysCall { 'System.Runtime.Platform' = "System.Runtime.Platform", 'Neo.Runtime.GetTrigger' = "Neo.Runtime.GetTrigger", 'Neo.Runtime.CheckWitness' = "Neo.Runtime.CheckWitness", 'Neo.Runtime.Notify' = "Neo.Runtime.Notify", 'Neo.Runtime.Log' = "Neo.Runtime.Log", 'Neo.Runtime.GetTime' = "Neo.Runtime.GetTime", 'Neo.Runtime.Serialize' = "Neo.Runtime.Serialize", 'Neo.Runtime.Deserialize' = "Neo.Runtime.Deserialize", 'Neo.Blockchain.GetHeight' = "Neo.Blockchain.GetHeight", 'Neo.Blockchain.GetHeader' = "Neo.Blockchain.GetHeader", 'Neo.Blockchain.GetBlock' = "Neo.Blockchain.GetBlock", 'Neo.Blockchain.GetTransaction' = "Neo.Blockchain.GetTransaction", 'Neo.Blockchain.GetTransactionHeight' = "Neo.Blockchain.GetTransactionHeight", 'Neo.Blockchain.GetAccount' = "Neo.Blockchain.GetAccount", 'Neo.Blockchain.GetValidators' = "Neo.Blockchain.GetValidators", 'Neo.Blockchain.GetAsset' = "Neo.Blockchain.GetAsset", 'Neo.Blockchain.GetContract' = "Neo.Blockchain.GetContract", 'Neo.Header.GetHash' = "Neo.Header.GetHash", 'Neo.Header.GetIndex' = "Neo.Header.GetIndex", 'Neo.Header.GetVersion' = "Neo.Header.GetVersion", 'Neo.Header.GetPrevHash' = "Neo.Header.GetPrevHash", 'Neo.Header.GetMerkleRoot' = "Neo.Header.GetMerkleRoot", 'Neo.Header.GetTimestamp' = "Neo.Header.GetTimestamp", 'Neo.Header.GetConsensusData' = "Neo.Header.GetConsensusData", 'Neo.Header.GetNextConsensus' = "Neo.Header.GetNextConsensus", 'Neo.Block.GetTransactionCount' = "Neo.Block.GetTransactionCount", 'Neo.Block.GetTransactions' = "Neo.Block.GetTransactions", 'Neo.Block.GetTransaction' = "Neo.Block.GetTransaction", 'Neo.Transaction.GetHash' = "Neo.Transaction.GetHash", 'Neo.Transaction.GetType' = "Neo.Transaction.GetType", 'Neo.Transaction.GetAttributes' = "Neo.Transaction.GetAttributes", 'Neo.Transaction.GetInputs' = "Neo.Transaction.GetInputs", 'Neo.Transaction.GetOutputs' = "Neo.Transaction.GetOutputs", 'Neo.Transaction.GetReferences' = "Neo.Transaction.GetReferences", 'Neo.Transaction.GetUnspentCoins' = "Neo.Transaction.GetUnspentCoins", 'Neo.Transaction.GetWitnesses' = "Neo.Transaction.GetWitnesses", 'Neo.InvocationTransaction.GetScript' = "Neo.InvocationTransaction.GetScript", 'Neo.Attribute.GetUsage' = "Neo.Attribute.GetUsage", 'Neo.Attribute.GetData' = "Neo.Attribute.GetData", 'Neo.Input.GetHash' = "Neo.Input.GetHash", 'Neo.Input.GetIndex' = "Neo.Input.GetIndex", 'Neo.Output.GetAssetId' = "Neo.Output.GetAssetId", 'Neo.Output.GetValue' = "Neo.Output.GetValue", 'Neo.Output.GetScriptHash' = "Neo.Output.GetScriptHash", 'Neo.Account.GetScriptHash' = "Neo.Account.GetScriptHash", 'Neo.Account.GetVotes' = "Neo.Account.GetVotes", 'Neo.Account.GetBalance' = "Neo.Account.GetBalance", 'Neo.Account.IsStandard' = "Neo.Account.IsStandard", 'Neo.Asset.GetAssetId' = "Neo.Asset.GetAssetId", 'Neo.Asset.GetAssetType' = "Neo.Asset.GetAssetType", 'Neo.Asset.GetAmount' = "Neo.Asset.GetAmount", 'Neo.Asset.GetAvailable' = "Neo.Asset.GetAvailable", 'Neo.Asset.GetPrecision' = "Neo.Asset.GetPrecision", 'Neo.Asset.GetOwner' = "Neo.Asset.GetOwner", 'Neo.Asset.GetAdmin' = "Neo.Asset.GetAdmin", 'Neo.Asset.GetIssuer' = "Neo.Asset.GetIssuer", 'Neo.Contract.GetScript' = "Neo.Contract.GetScript", 'Neo.Contract.IsPayable' = "Neo.Contract.IsPayable", 'Neo.Storage.GetContext' = "Neo.Storage.GetContext", 'Neo.Storage.GetReadOnlyContext' = "Neo.Storage.GetReadOnlyContext", 'Neo.Storage.Get' = "Neo.Storage.Get", 'Neo.Storage.Find' = "Neo.Storage.Find", 'Neo.StorageContext.AsReadOnly' = "Neo.StorageContext.AsReadOnly", 'Neo.Enumerator.Create' = "Neo.Enumerator.Create", 'Neo.Iterator.Create' = "Neo.Iterator.Create", 'Neo.Enumerator.Next' = "Neo.Enumerator.Next", 'Neo.Iterator.Key' = "Neo.Iterator.Key", 'Neo.Enumerator.Value' = "Neo.Enumerator.Value", 'Neo.Enumerator.Concat' = "Neo.Enumerator.Concat", 'Neo.Iterator.Concat' = "Neo.Iterator.Concat", 'Neo.Iterator.Keys' = "Neo.Iterator.Keys", 'Neo.Iterator.Values' = "Neo.Iterator.Values", 'Neo.Account.SetVotes' = "Neo.Account.SetVotes", 'Neo.Validator.Register' = "Neo.Validator.Register", 'Neo.Asset.Create' = "Neo.Asset.Create", 'Neo.Asset.Renew' = "Neo.Asset.Renew", 'Neo.Contract.Create' = "Neo.Contract.Create", 'Neo.Contract.Migrate' = "Neo.Contract.Migrate", 'Neo.Contract.GetStorageContext' = "Neo.Contract.GetStorageContext", 'Neo.Contract.Destroy' = "Neo.Contract.Destroy", 'Neo.Storage.Put' = "Neo.Storage.Put", 'Neo.Storage.PutEx' = "Neo.Storage.PutEx", 'Neo.Storage.Delete' = "Neo.Storage.Delete", 'Neo.Witness.GetVerificationScript' = "Neo.Witness.GetVerificationScript", 'System.ExecutionEngine.GetScriptContainer' = "System.ExecutionEngine.GetScriptContainer", 'System.ExecutionEngine.GetExecutingScriptHash' = "System.ExecutionEngine.GetExecutingScriptHash", 'System.ExecutionEngine.GetCallingScriptHash' = "System.ExecutionEngine.GetCallingScriptHash", 'System.ExecutionEngine.GetEntryScriptHash' = "System.ExecutionEngine.GetEntryScriptHash" } export declare type SysCallName = keyof typeof SysCall; export declare const assertSysCall: (value: string) => SysCall; export declare enum VMState { None = 0, Halt = 1, Fault = 2, Break = 4 } export declare const assertVMState: (state: number) => VMState; export declare type SysCallHash = number & { readonly __uint256: undefined; }; export declare const sha256: (value: Buffer) => Buffer; export declare const toSysCallHash: (value: SysCall) => SysCallHash;