-
Notifications
You must be signed in to change notification settings - Fork 0
/
TbcApis.cs
43 lines (31 loc) · 1.08 KB
/
TbcApis.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
36
37
38
39
40
41
42
43
using System.Threading.Tasks;
using Refit;
using Tbc.Core.Models;
namespace Tbc.Core.Apis;
public interface ITbcTarget
{
[Post("/load-assembly")]
Task<Outcome> LoadAssembly(LoadDynamicAssemblyRequest request);
[Post("/eval")]
Task<Outcome> Exec(ExecuteCommandRequest request);
[Post("/synchronize-dependencies")]
Task<Outcome> SynchronizeDependencies(CachedAssemblyState cachedAssemblyState);
}
public interface ITbcHost
{
[Post("/add-assembly-reference")]
Task<Outcome> AddAssemblyReference(AssemblyReference reference);
[Post("/add-assembly-reference")]
Task<Outcome> AddManyAssemblyReferences(ManyAssemblyReferences references);
[Post("/execute-command")]
Task<Outcome> ExecuteCommand(ExecuteCommandRequest request);
[Post("/heartbeat")]
Task<Outcome> Heartbeat(HeartbeatRequest request);
}
public interface ITbcConnectable
{
[Post("/connect")]
Task<ConnectResponse> Connect(ConnectRequest req);
}
public interface ITbcConnectableTarget : ITbcTarget, ITbcConnectable { }
public interface ITbcProtocol : ITbcHost, ITbcTarget {}