diff --git a/CHANGELOG.md b/CHANGELOG.md index 3815d6f2..2b32b8fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ This project adheres to [Semantic Versioning](http://semver.org/). ### Added - Add system notification `MODULE_DOM_CREATED` for notifying each module when their Dom has been fully loaded. +- Add types for module. *This release is scheduled to be released on 2018-04-01.* diff --git a/module-types.ts b/module-types.ts new file mode 100644 index 00000000..3b8825eb --- /dev/null +++ b/module-types.ts @@ -0,0 +1,31 @@ +type ModuleProperties = { + defaults?: object, + start?(): void, + getHeader?(): string, + getTemplate?(): string, + getTemplateData?(): object, + notificationReceived?(notification: string, payload: any, sender: object): void, + socketNotificationReceived?(notification: string, payload: any): void, + suspend?(): void, + resume?(): void, + getDom?(): HTMLElement, + getStyles?(): string[], + [key: string]: any, +}; + +export declare const Module: { + register(moduleName: string, moduleProperties: ModuleProperties): void; +}; + +export declare const Log: { + info(message?: any, ...optionalParams: any[]): void, + log(message?: any, ...optionalParams: any[]): void, + error(message?: any, ...optionalParams: any[]): void, + warn(message?: any, ...optionalParams: any[]): void, + group(groupTitle?: string, ...optionalParams: any[]): void, + groupCollapsed(groupTitle?: string, ...optionalParams: any[]): void, + groupEnd(): void, + time(timerName?: string): void, + timeEnd(timerName?: string): void, + timeStamp(timerName?: string): void, +}; \ No newline at end of file