diff --git a/README.md b/README.md
index 30a4d73892..83e4ffbca5 100755
--- a/README.md
+++ b/README.md
@@ -111,6 +111,7 @@ List of Definitions
* [jScrollPane](http://jscrollpane.kelvinluck.com) (by [Dániel Tar](https://github.com/qcz))
* [JSDeferred](http://cho45.stfuawsc.com/jsdeferred/) (by [Daisuke Mino](https://github.com/minodisk))
* [JSONEditorOnline](https://github.com/josdejong/jsoneditoronline) (by [Vincent Bortone](https://github.com/vbortone/))
+* [JWPlayer](http://developer.longtailvideo.com/trac/) (by [Martin Duparc](https://github.com/martinduparc/))
* [KeyboardJS](https://github.com/RobertWHurst/KeyboardJS) (by [Vincent Bortone](https://github.com/vbortone/))
* [Knockback](http://kmalakoff.github.com/knockback/) (by [Marcel Binot](https://github.com/docgit))
* [Knockout.js](http://knockoutjs.com/) (by [Boris Yankov](https://github.com/borisyankov))
diff --git a/angularjs/angular-resource.d.ts b/angularjs/angular-resource.d.ts
index 953ce7ef46..37b491d742 100644
--- a/angularjs/angular-resource.d.ts
+++ b/angularjs/angular-resource.d.ts
@@ -9,7 +9,7 @@
///////////////////////////////////////////////////////////////////////////////
// ngResource module (angular-resource.js)
///////////////////////////////////////////////////////////////////////////////
-module ng.resource {
+declare module ng.resource {
///////////////////////////////////////////////////////////////////////////
// ResourceService
@@ -73,7 +73,7 @@ module ng.resource {
}
/** extensions to base ng based on using angular-resource */
-module ng {
+declare module ng {
interface IModule {
/** creating a resource service factory */
diff --git a/jwplayer/jwplayer.d.ts b/jwplayer/jwplayer.d.ts
index 169262ece3..c441b5e320 100644
--- a/jwplayer/jwplayer.d.ts
+++ b/jwplayer/jwplayer.d.ts
@@ -53,6 +53,7 @@ interface JWPlayer {
pause(): void;
play(): void;
playlistItem(index: number): void;
+ remove(): void;
removeButton(id: string): void;
resize(width: number, height: number): void;
seek(position: number): void;
diff --git a/popcorn/popcorn.d.ts b/popcorn/popcorn.d.ts
new file mode 100644
index 0000000000..3aab5d5d7d
--- /dev/null
+++ b/popcorn/popcorn.d.ts
@@ -0,0 +1,129 @@
+// Type definitions for Popcorn 1.3.0
+// Project: https://github.com/mozilla/popcorn-js
+// Definitions by: grapswiz
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+declare var Popcorn:PopcornStatic;
+
+interface PopcornStatic {
+ (callback:Function):PopcornImpl;
+ (selector:string, options?:any):PopcornImpl;
+
+ plugin:{
+ (pluginName:string, info:PopcornPlugin, manifest?:any);
+ debug:boolean;
+ errors:any[];
+ };
+ util:{
+ toSeconds(smpte:string, fps?:number):number;
+ };
+
+ destroy(insntace:PopcornImpl);
+ extend(target:string, source, ...rest:any[]);
+ forEach( object:any, callback:Function, context?:any);
+ getJSONP(url:string, successCallback:Function);
+ getScript(url:string, successCallback:Function);
+ guid(prefix:string);
+ locale: PopcornLocale;
+ parser(parserName, fn, data);
+}
+
+interface PopcornLocale {
+ get():string;
+ set(langRegion:string);
+}
+
+interface PopcornImpl {
+ media:HTMLMediaElement;
+ footnote(data:Footnote);
+
+ autoplay(flag:boolean);
+ buffered():TimeRanges;
+ compose(name:string, definitionObject, manifest?);
+ controls(flag:boolean);
+ cue(time:string, callback:Function);
+ cue(time:number, callback:Function);
+ currentTime(time?:string):number;
+ currentTime(time?:number):number;
+ defaults(pluginName:string, options);
+ destroy();
+ disable(pluginName:string);
+ duration():number;
+ emit(eventName:string, dataObject?);
+ enable(pluginName:string):PopcornImpl;
+ exec(time:string, callback:Function);
+ exec(time:number, callback:Function);
+ listen(eventName:string, callback:Function);
+ load();
+ loop(flag:boolean);
+ mute();
+ muted(flag:boolean);
+ off(eventName:string, callback:Function);
+ on(eventName:string, callback:Function);
+ pause(time ?:number);
+ pause(time ?:string);
+ paused():boolean;
+ play(time?:number);
+ play(time?:string);
+ playbackRate(rate?:number);
+ played():TimeRanges;
+ position():ClientRect;
+ preload(state:string);
+ readyState():number;
+ roundTime():number;
+ seekable():any; // TimeRages?
+ seeking():boolean;
+ toggle(pluginName:string);
+ trigger(eventName:string, dataObject?);
+ unlisten(eventName:string, callback:Function);
+ unmute();
+ volume(value?:number):number;
+
+ getLastTrackEventId():string;
+ removeTrackEvent(id:string);
+}
+
+interface PopcornPlugin {
+ (options:any);
+ _setup?(track?:TrackEvent);
+ _update?(track?:TrackEvent);
+ _teardown?(track?:TrackEvent);
+ start?(event:any, track?:TrackEvent);
+ end?(event:any, track?:TrackEvent);
+ frame?(event:any, track?:TrackEvent);
+ toString?():string;
+
+ manifest?:PopcornManifest;
+}
+
+interface PopcornManifest {
+ about:PopcornManifestAbout;
+ options:PopcornManifestOptions;
+}
+
+interface PopcornManifestAbout {
+ name:string;
+ version:string;
+ author:string;
+ website:string;
+}
+
+interface PopcornManifestOptions {
+ start:PopcornManifestOption;
+ end:PopcornManifestOption;
+ target:string;
+ text:PopcornManifestOption;
+}
+
+interface PopcornManifestOption {
+ elem:string;
+ type:string;
+ label:string;
+}
+
+interface Footnote {
+ start:number;
+ end:number;
+ target:string;
+ text:string;
+}
\ No newline at end of file
diff --git a/reveal/reveal-tests.ts b/reveal/reveal-tests.ts
new file mode 100644
index 0000000000..f71c74318d
--- /dev/null
+++ b/reveal/reveal-tests.ts
@@ -0,0 +1,9 @@
+///
+
+Reveal.initialize({
+ controls: true,
+ progress: true,
+ history: true,
+ center: true,
+ transition: 'linear'
+});
\ No newline at end of file
diff --git a/reveal/reveal.d.ts b/reveal/reveal.d.ts
new file mode 100644
index 0000000000..bfe56bf0be
--- /dev/null
+++ b/reveal/reveal.d.ts
@@ -0,0 +1,81 @@
+// Type definitions for Reveal 1.3.0
+// Project: https://github.com/hakimel/reveal.js/
+// Definitions by: grapswiz
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+declare var Reveal:RevealStatic;
+
+interface RevealStatic {
+ initialize:(config:RevealOptions)=>void;
+ configure:(diff:RevealOptions)=>void;
+
+ // Navigation
+ slide(h:number, v:number, f?:number, o?:number);
+ left():void;
+ right():void;
+ up():void;
+ down():void;
+ prev():void;
+ next():void;
+ prevFragment():boolean;
+ nextFragment():boolean;
+ toggleOverview(override?:boolean):void;
+
+ // Retrieves the previous and current slide elements
+ getPreviousSlide():Element;
+ getCurrentSlide():Element;
+
+ getIndices(slide?:Element):{h:number; v:number;};
+
+ // States
+ addEventListener(type:string, listener:Function, useCapture?:boolean):void;
+ removeEventListener(type:string, listener:Function, useCapture?:boolean):void;
+
+ // undocumented method
+ layout():void;
+ togglePause():void;
+ isOverview():boolean;
+ isPaused():boolean;
+ addEventListeners():void;
+ removeEventListeners():void;
+ getSlide(x:number, y?:number):Element;
+ getScale():number;
+ getConfig():RevealOptions;
+ getQueryHash():any;
+ isFirstSlide():boolean;
+ isLastSlide():boolean;
+}
+
+interface RevealOptions {
+ // Configuration
+ controls?:boolean;
+ progress?:boolean;
+ history?:boolean;
+ keyboard?:boolean;
+ overview?:boolean;
+ center?:boolean;
+ touch?:boolean; // undocumented.
+ loop?:boolean;
+ rtl?:boolean;
+ autoSlide?:number;
+ mouseWheel?:boolean;
+ rollingLinks?:boolean;
+ theme?:string;
+ transition?:string;
+
+ // Presentation Size
+ width?:number;
+ height?:number;
+ margin?:number;
+ minScale?:number;
+ maxScale?:number;
+
+ // Dependencies
+ dependencies?:RevealDependency[];
+}
+
+interface RevealDependency {
+ src:string;
+ condition:()=>boolean;
+ async?:boolean;
+}
\ No newline at end of file