From c94dcde7911531813eaa068e928d95e4deb552a3 Mon Sep 17 00:00:00 2001 From: Christiaan Rakowski Date: Wed, 4 Dec 2013 08:58:49 +0100 Subject: [PATCH] straight up copy --- iscroll/iscroll-5-lite.d.ts | 48 +++++++++++++++++++++++ iscroll/iscroll-5-tests.ts | 31 +++++++++++++++ iscroll/iscroll-5.d.ts | 76 +++++++++++++++++++++++++++++++++++++ 3 files changed, 155 insertions(+) create mode 100644 iscroll/iscroll-5-lite.d.ts create mode 100644 iscroll/iscroll-5-tests.ts create mode 100644 iscroll/iscroll-5.d.ts diff --git a/iscroll/iscroll-5-lite.d.ts b/iscroll/iscroll-5-lite.d.ts new file mode 100644 index 000000000..1cd83b1dd --- /dev/null +++ b/iscroll/iscroll-5-lite.d.ts @@ -0,0 +1,48 @@ +// Type definitions for iScroll Lite 4.1 +// Project: http://cubiq.org/iscroll-4 +// Definitions by: Boris Yankov and Christiaan Rakowski +// Definitions: https://github.com/borisyankov/DefinitelyTyped + + +interface iScrollEvent { + (e: Event): void; +} + +interface iScrollOptions { + hScroll?: boolean; + vScroll?: boolean; + x?: number; + y?: number; + bounce?: boolean; + bounceLock?: boolean; + momentum?: boolean; + lockDirection?: boolean; + useTransform?: boolean; + useTransition?: boolean; + + // Events + onRefresh?: iScrollEvent; + onBeforeScrollStart?: iScrollEvent; + onScrollStart?: iScrollEvent; + onBeforeScrollMove?: iScrollEvent; + onScrollMove?: iScrollEvent; + onBeforeScrollEnd?: iScrollEvent; + onScrollEnd?: iScrollEvent; + onTouchEnd?: iScrollEvent; + onDestroy?: iScrollEvent; +} + +declare class iScroll { + + constructor (element: string, options?: iScrollOptions); + constructor (element: HTMLElement, options?: iScrollOptions); + + destroy(): void; + refresh(): void; + scrollTo(x: number, y: number, time?: number, relative?: boolean): void; + scrollToElement(element: string, time?: number): void; + scrollToElement(element: HTMLElement, time?: number): void; + disable(): void; + enable(): void; + stop(): void; +} diff --git a/iscroll/iscroll-5-tests.ts b/iscroll/iscroll-5-tests.ts new file mode 100644 index 000000000..773b62acf --- /dev/null +++ b/iscroll/iscroll-5-tests.ts @@ -0,0 +1,31 @@ +/// + +var myScroll1 = new iScroll('wrapper'); +var myScroll2 = new iScroll('wrapper', { hScrollbar: false, vScrollbar: false }); +var myScroll3= new iScroll('wrapper', { + snap: true, + momentum: false, + hScrollbar: false, + vScrollbar: false +}); +var myScroll4 = new iScroll('wrapper', { + snap: 'li', + momentum: false, + hScrollbar: false, + vScrollbar: false +}); +var myScroll6 = new iScroll('wrapper', { scrollbarClass: 'myScrollbar' }); + +myScroll1.refresh(); +myScroll1.scrollTo(0, 100); +myScroll1.scrollTo(0, 100, 200); +myScroll1.scrollTo(0, 100, 200, true); + +myScroll1.scrollToElement('selectedElement'); +myScroll1.scrollToElement('selectedElement', 250); + +myScroll1.scrollToElement(document.getElementById('selectedElement')); +myScroll1.scrollToElement(document.getElementById('selectedElement'), 250); + +var myScroll7 = new iScroll(document.getElementById('wrapper')); +var myScroll8 = new iScroll(document.getElementById('wrapper'), { scrollbarClass: 'myScrollbar' }); \ No newline at end of file diff --git a/iscroll/iscroll-5.d.ts b/iscroll/iscroll-5.d.ts new file mode 100644 index 000000000..34234c00a --- /dev/null +++ b/iscroll/iscroll-5.d.ts @@ -0,0 +1,76 @@ +// Type definitions for iScroll 4.2 +// Project: http://cubiq.org/iscroll-4 +// Definitions by: Boris Yankov and Christiaan Rakowski +// Definitions: https://github.com/borisyankov/DefinitelyTyped + + +interface iScrollEvent { + (e: Event): void; +} + +interface iScrollOptions { + hScroll?: boolean; + vScroll?: boolean; + x?: number; + y?: number; + bounce?: boolean; + bounceLock?: boolean; + momentum?: boolean; + lockDirection?: boolean; + useTransform?: boolean; + useTransition?: boolean; + topOffset?: number; + checkDOMChanges?: boolean; + handleClick?: boolean; + + // Scrollbar + hScrollbar?: boolean; + vScrollbar?: boolean; + fixedScrollbar?: boolean; + hideScrollbar?: boolean; + fadeScrollbar?: boolean; + scrollbarClass?: string; + + // Zoom + zoom?: boolean; + zoomMin?: number; + zoomMax?: number; + doubleTapZoom?: number; + wheelAction?: string; + + // Snap + snap?: any; + snapThreshold?: number; + + // Events + onRefresh?: iScrollEvent; + onBeforeScrollStart?: iScrollEvent; + onScrollStart?: iScrollEvent; + onBeforeScrollMove?: iScrollEvent; + onScrollMove?: iScrollEvent; + onBeforeScrollEnd?: iScrollEvent; + onScrollEnd?: iScrollEvent; + onTouchEnd?: iScrollEvent; + onDestroy?: iScrollEvent; + onZoomStart?: iScrollEvent; + onZoom?: iScrollEvent; + onZoomEnd?: iScrollEvent; +} + +declare class iScroll { + + constructor (element: string, options?: iScrollOptions); + constructor (element: HTMLElement, options?: iScrollOptions); + + destroy(): void; + refresh(): void; + scrollTo(x: number, y: number, time?: number, relative?: boolean): void; + scrollToElement(element: string, time?: number): void; + scrollToElement(element: HTMLElement, time?: number): void; + scrollToPage(pageX: number, pageY: number, time?: number): void; + disable(): void; + enable(): void; + stop(): void; + zoom(x: number, y: number, scale: number, time?: number): void; + isReady(): boolean; +}