Message.hx 786 B

1234567891011121314151617181920212223242526272829303132333435
  1. //Under GNU AGPL v3, see LICENCE
  2. package m.room;
  3. import beartek.matrix_im.client.types.enums.Msg_types;
  4. typedef Message = {
  5. var body : String;
  6. var msgtype : Msg_types;
  7. //TODO: URI Type??
  8. @:optional var url : String;
  9. @:optional var info : Info;
  10. @:optional var filename : String;
  11. @:optional var geo_uri : String;
  12. };
  13. typedef Info = {
  14. @:optional var duration: Int;
  15. @:optional var h: Int;
  16. @:optional var w: Int;
  17. //TODO: mimetype instead of string
  18. @:optional var mimetype: String;
  19. @:optional var size: Int;
  20. var thumbnail_url: String;
  21. var thumbnail_info: Thumbnail_info;
  22. };
  23. typedef Thumbnail_info = {
  24. var h: Int;
  25. var w: Int;
  26. //TODO: mimetype instead of string
  27. var mimetype: String;
  28. var size: Int;
  29. };