import { SysCall as SysCallEnum } from '@neo-one/client-common-esnext-esm'; import BN from 'bn.js'; import { ExecutionContext, OpInvoke, SysCall } from './constants'; export interface CreateSysCallArgs { readonly context: ExecutionContext; } export declare type CreateSysCall = (input: CreateSysCallArgs) => SysCall; export declare const createSysCall: ({ name, in: _in, inAlt, out, outAlt, invocation, fee, invoke, }: { readonly name: "System.Runtime.Platform" | "Neo.Runtime.GetTrigger" | "Neo.Runtime.CheckWitness" | "Neo.Runtime.Notify" | "Neo.Runtime.Log" | "Neo.Runtime.GetTime" | "Neo.Runtime.Serialize" | "Neo.Runtime.Deserialize" | "Neo.Blockchain.GetHeight" | "Neo.Blockchain.GetHeader" | "Neo.Blockchain.GetBlock" | "Neo.Blockchain.GetTransaction" | "Neo.Blockchain.GetTransactionHeight" | "Neo.Blockchain.GetAccount" | "Neo.Blockchain.GetValidators" | "Neo.Blockchain.GetAsset" | "Neo.Blockchain.GetContract" | "Neo.Header.GetHash" | "Neo.Header.GetIndex" | "Neo.Header.GetVersion" | "Neo.Header.GetPrevHash" | "Neo.Header.GetMerkleRoot" | "Neo.Header.GetTimestamp" | "Neo.Header.GetConsensusData" | "Neo.Header.GetNextConsensus" | "Neo.Block.GetTransactionCount" | "Neo.Block.GetTransactions" | "Neo.Block.GetTransaction" | "Neo.Transaction.GetHash" | "Neo.Transaction.GetType" | "Neo.Transaction.GetAttributes" | "Neo.Transaction.GetInputs" | "Neo.Transaction.GetOutputs" | "Neo.Transaction.GetReferences" | "Neo.Transaction.GetUnspentCoins" | "Neo.Transaction.GetWitnesses" | "Neo.InvocationTransaction.GetScript" | "Neo.Attribute.GetUsage" | "Neo.Attribute.GetData" | "Neo.Input.GetHash" | "Neo.Input.GetIndex" | "Neo.Output.GetAssetId" | "Neo.Output.GetValue" | "Neo.Output.GetScriptHash" | "Neo.Account.GetScriptHash" | "Neo.Account.GetVotes" | "Neo.Account.GetBalance" | "Neo.Account.IsStandard" | "Neo.Asset.GetAssetId" | "Neo.Asset.GetAssetType" | "Neo.Asset.GetAmount" | "Neo.Asset.GetAvailable" | "Neo.Asset.GetPrecision" | "Neo.Asset.GetOwner" | "Neo.Asset.GetAdmin" | "Neo.Asset.GetIssuer" | "Neo.Contract.GetScript" | "Neo.Contract.IsPayable" | "Neo.Storage.GetContext" | "Neo.Storage.GetReadOnlyContext" | "Neo.Storage.Get" | "Neo.Storage.Find" | "Neo.StorageContext.AsReadOnly" | "Neo.Enumerator.Create" | "Neo.Iterator.Create" | "Neo.Enumerator.Next" | "Neo.Iterator.Key" | "Neo.Enumerator.Value" | "Neo.Enumerator.Concat" | "Neo.Iterator.Concat" | "Neo.Iterator.Keys" | "Neo.Iterator.Values" | "Neo.Account.SetVotes" | "Neo.Validator.Register" | "Neo.Asset.Create" | "Neo.Asset.Renew" | "Neo.Contract.Create" | "Neo.Contract.Migrate" | "Neo.Contract.GetStorageContext" | "Neo.Contract.Destroy" | "Neo.Storage.Put" | "Neo.Storage.PutEx" | "Neo.Storage.Delete" | "Neo.Witness.GetVerificationScript" | "System.ExecutionEngine.GetScriptContainer" | "System.ExecutionEngine.GetExecutingScriptHash" | "System.ExecutionEngine.GetCallingScriptHash" | "System.ExecutionEngine.GetEntryScriptHash"; readonly in?: number | undefined; readonly inAlt?: number | undefined; readonly out?: number | undefined; readonly outAlt?: number | undefined; readonly invocation?: number | undefined; readonly fee?: BN | undefined; readonly invoke: OpInvoke; }) => CreateSysCall; export declare const SYSCALLS: { readonly [K in SysCallEnum]: CreateSysCall; }; export declare const SYSCALL_ALIASES: { readonly [key: string]: string | undefined; }; export declare const lookupSysCall: ({ context }: { readonly context: ExecutionContext; }) => SysCall;