-
Notifications
You must be signed in to change notification settings - Fork 103
/
Copy pathContractManagement.cs
35 lines (32 loc) · 1.5 KB
/
ContractManagement.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Copyright (C) 2015-2024 The Neo Project.
//
// ContractManagement.cs file belongs to the neo project and is free
// software distributed under the MIT software license, see the
// accompanying file LICENSE in the main directory of the
// repository or http://www.opensource.org/licenses/mit-license.php
// for more details.
//
// Redistribution and use in source and binary forms with or without
// modifications are permitted.
#pragma warning disable CS0626
using Neo.SmartContract.Framework.Attributes;
using Neo.SmartContract.Framework.Services;
namespace Neo.SmartContract.Framework.Native
{
[Contract("0xfffdc93764dbaddd97c48f252a53ea4643faa3fd")]
public class ContractManagement
{
[ContractHash]
public static extern UInt160 Hash { get; }
public static extern long GetMinimumDeploymentFee();
public static extern Contract GetContract(UInt160 hash);
public static extern Contract GetContractById(int id);
public static extern Iterator<(int, UInt160)> GetContractHashes();
public static extern bool HasMethod(UInt160 hash, string method, int pcount);
public static extern Contract Deploy(ByteString nefFile, string manifest);
public static extern Contract Deploy(ByteString nefFile, string manifest, object data);
public static extern void Update(ByteString nefFile, string manifest);
public static extern void Update(ByteString nefFile, string manifest, object data);
public static extern void Destroy();
}
}