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