2021-11-22 16:28:30 +00:00
|
|
|
@0xd29582d26b2fb073;
|
|
|
|
|
|
|
|
enum AttachmentState {
|
|
|
|
detached @0;
|
|
|
|
attaching @1;
|
|
|
|
attachedWeak @2;
|
|
|
|
attachedGood @3;
|
|
|
|
attachedStrong @4;
|
|
|
|
fullyAttached @5;
|
|
|
|
overAttached @6;
|
|
|
|
detaching @7;
|
|
|
|
}
|
|
|
|
|
2022-01-18 17:33:14 +00:00
|
|
|
struct Attachment {
|
|
|
|
state @0 :AttachmentState;
|
2021-11-22 16:28:30 +00:00
|
|
|
}
|
|
|
|
|
2022-01-18 17:33:14 +00:00
|
|
|
struct VeilidUpdate {
|
|
|
|
union {
|
|
|
|
attachment @0 :Attachment;
|
|
|
|
dummy @1 :Void;
|
|
|
|
}
|
2021-11-22 16:28:30 +00:00
|
|
|
}
|
|
|
|
|
2022-01-18 17:33:14 +00:00
|
|
|
struct VeilidState {
|
|
|
|
attachment @0 :Attachment;
|
2021-11-22 16:28:30 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
interface Registration {}
|
|
|
|
|
|
|
|
interface VeilidServer {
|
|
|
|
|
2022-01-18 23:28:22 +00:00
|
|
|
register @0 (veilidClient: VeilidClient) -> (registration: Registration, state: VeilidState);
|
2022-01-18 17:33:14 +00:00
|
|
|
debug @1 (what: Text) -> (output: Text);
|
2021-11-22 16:28:30 +00:00
|
|
|
|
2022-01-18 17:33:14 +00:00
|
|
|
attach @2 ();
|
|
|
|
detach @3 ();
|
|
|
|
shutdown @4 ();
|
|
|
|
getState @5 () -> (state: VeilidState);
|
2021-11-22 16:28:30 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
interface VeilidClient {
|
|
|
|
|
2022-01-18 17:33:14 +00:00
|
|
|
update @0 (veilidUpdate: VeilidUpdate);
|
2021-12-11 01:14:33 +00:00
|
|
|
logMessage @1 (message: Text);
|
2021-11-22 16:28:30 +00:00
|
|
|
|
|
|
|
}
|