diff options
Diffstat (limited to 'protocol.d.ts')
-rw-r--r-- | protocol.d.ts | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/protocol.d.ts b/protocol.d.ts new file mode 100644 index 0000000..f119045 --- /dev/null +++ b/protocol.d.ts @@ -0,0 +1,66 @@ + +// { type: "handshake", version: "10"} +// { type: "handshake", data: {version: "10"}} +// { "handshake": {version: "10"}} + +export type ServerboundPacket = null +export type ClientboundPacket = Handshake + +interface Handshake { + type: "handshake" + version: string +} + +interface Download { + type: "download", +} +interface DownloadResponse { + type: "download_response", + entries: TodoEntry[] +} + + + +interface TodoEntry { + name: string, + description: string, + + tags: string[], + priority: number, + + completed?: number, + scheduled?: number, + + occurence?: Condition, + deadline?: Condition, +} + +/* + { and: [ + { or: [{ dayofweak: 0 }, { dayofweak: 1 }] }, + { weekofmonth: 0 } + { hour: [11, 13] } + ]} +*/ + +// should only have one property +interface Condition { + from: Condition + to: Condition + + or: Condition[] + and: Condition[] + + year?: [number, number], + monthofyear?: [number, number], + weekofmonth?: [number, number], + dayofyear?: [number, number], + dayofmonth?: [number, number], + dayofweek?: [number, number], + + hour?: [number, number], + minute?: [number, number], + second?: [number, number], + + unix?: [number, number], +} |