import { Song } from "./dataTypes"; export declare type StuenMessages = ListenerLeft | ListenerList | ListenerJoined | SendChatMessage | SearchSong | SearchSongResult | Join | QueueSong | CurrentQueue; export declare abstract class StuenMessage { type: string; constructor(type: string); } export declare class Join extends StuenMessage { name: string; constructor(name: string); } export declare class ListenerJoined extends StuenMessage { name: string; constructor(name: string); } export declare class ListenerLeft extends StuenMessage { name: string; constructor(name: string); } export declare class ListenerList extends StuenMessage { names: string[]; constructor(names: string[]); } export declare class SendChatMessage extends StuenMessage { message: string; constructor(message: string); } export declare class ChatMessage extends StuenMessage { name: string; message: string; constructor(name: string, message: string); } export declare class SearchSong extends StuenMessage { query: string; constructor(query: string); } export declare class SearchSongResult extends StuenMessage { result: Song[]; constructor(result: Song[]); } export declare class QueueSong extends StuenMessage { song: Song; constructor(song: Song); } export declare class CurrentQueue extends StuenMessage { songs: Song[]; constructor(songs: Song[]); }