import Ġio . ktor . locations . Location Ċ import Ġorg . joda . time . DateTime Ċ Ċ class ĠLoc ations Ġ{ ĊĠĠĠ Ġ@ Location ("/ register _ user ") ĊĠĠĠ Ġdata Ġclass ĠRegister ( val Ġusername : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠfirstName : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠlastName : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġemail : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpassword : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠcreatedAt : ĠDateTime ? Ġ= Ġnull ) ĊĊĠĠĠ Ġ@ Location ("/ users ") ĊĠĠĠ Ġdata Ġclass ĠGetAll Users ( val Ġempty : ĠString Ġ= Ġ"") ĊĊĠĠĠ Ġ@ Location ("/ channels ") ĊĠĠĠ Ġdata Ġclass ĠChannels ( val Ġname : ĠString Ġ= Ġ"") ĊĊĠĠĠ Ġ@ Location ("/ channels /{ uuid }") ĊĠĠĠ Ġdata Ġclass ĠGet Channel ( val Ġuuid : ĠString Ġ= Ġ"") ĊĊĠĠĠ Ġ@ Location ("/ channels /{ uuid }/ users ") ĊĠĠĠ Ġdata Ġclass ĠGetAll Users For Channel ( val Ġuuid : ĠString ) ĊĊĠĠĠ Ġ@ Location ("/ channels /{ channelId }/ subscribe /{ userId }") ĊĠĠĠ Ġdata Ġclass ĠCreate Channel Subscription ( val Ġchannel Id : ĠString , Ġval ĠuserId : ĠString ) ĊĊĠĠĠ Ġ@ Location ("/ subscriptions ") ĊĠĠĠ Ġdata Ġclass ĠGetAll Subscriptions ( val Ġtest : ĠString Ġ= Ġ"") ĊĊĠĠĠ Ġ@ Location ("/ teams ") ĊĠĠĠ Ġdata Ġclass ĠTeams ( val Ġname : ĠString Ġ= Ġ"") ĊĊĠĠĠ Ġ@ Location ("/ teams /{ uuid }") ĊĠĠĠ Ġdata Ġclass ĠTeam ( val Ġuuid : ĠString Ġ= Ġ"") ĊĊĠĠĠ Ġ@ Location ("/ messages ") ĊĠĠĠ Ġdata Ġclass ĠCreate Message ( val Ġuuid : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchannel Id : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpayload : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpost Type : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠuserId : ĠString Ġ= Ġ"") ĊĊĠĠĠ Ġ@ Location ("/ messages ") ĊĠĠĠ Ġdata Ġclass ĠDelete Message ( val Ġuuid : ĠString Ġ= Ġ"") Ċ }