enum MessageAck { "Received", "Seen", "Sent", }; dictionary MessagePreview { string sender; string text; timestamp date; MessageAck ack; }; dictionary Dialog { string id; string title; MessagePreview? lastMessage; boolean pinned; }; namespace talaria { void initDatabase(string path); void initClient(); boolean needLogin(); u64 requestLoginCode(string phone); void signIn(u64 tokenPtr, string code); sequence getDialogs(); void sendMessage(string packed, string text); };