I could not find any definitions of the EventSource object that belongs to Server-Sent Events, so I create the definitions. That's how they look like:
declare var EventSource : sse.IEventSourceStatic;
declare module sse {
enum ReadyState {CONNECTING = 0, OPEN = 1, CLOSED = 2}
interface IEventSourceStatic extends EventTarget {
new (url: string, eventSourceInitDict?: IEventSourceInit);
url: string;
withCredentials: boolean;
CONNECTING: ReadyState; // constant, always 0
OPEN: ReadyState; // constant, always 1
CLOSED: ReadyState; // constant, always 2
readyState: ReadyState;
onopen: Function;
onmessage: (event: IOnMessageEvent) => void;
onerror: Function;
close: () => void;
}
interface IEventSourceInit {
withCredentials?: boolean;
}
interface IOnMessageEvent {
data: string;
}
}
Also available on GitHub.
I am new to TypeScript so I wonder if this definition is OK with common best practices and whether it could be improved.
eventSource.on('onmessage', ...)
? (note: I'm also a beginner in TS) – MayaLekova Sep 19 '16 at 11:44