Created
October 26, 2015 14:28
-
-
Save oliverw/a3ba9d804d848417fac4 to your computer and use it in GitHub Desktop.
rx-dom Typescript Definition
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
declare module Rx.DOM { | |
export interface AjaxSettings { | |
async?: boolean; | |
body?: string; | |
// This options does not seem to be used in the code yet | |
// contentType?: string; | |
crossDomain?: boolean; | |
headers?: any; | |
method?: string; | |
password?: string; | |
progressObserver?: Rx.Observer<any>; | |
responseType?: string; | |
url?: string; | |
user?: string; | |
} | |
export interface AjaxSuccessResponse { | |
response: any; | |
status: number; | |
responseType: string; | |
xhr: XMLHttpRequest; | |
originalEvent: Event; | |
} | |
export interface AjaxErrorResponse { | |
type: string; | |
status: number; | |
xhr: XMLHttpRequest; | |
originalEvent: Event; | |
} | |
export interface JsonpSettings { | |
async?: boolean; | |
jsonp?: string; | |
jsonpCallback?: string; | |
url?: string; | |
} | |
export interface JsonpSuccessResponse { | |
response: any; | |
status: number; | |
responseType: string; | |
originalEvent: Event; | |
} | |
export interface JsonpErrorResponse { | |
type: string; | |
status: number; | |
originalEvent: Event; | |
} | |
export interface GeolocationOptions { | |
enableHighAccuracy?: boolean; | |
timeout?: number; | |
maximumAge?: number; | |
} | |
// Events | |
function fromEvent<T>(element:any, eventName:string, selector?:Function, useCapture?:boolean):Rx.Observable<T>; | |
function ready():Rx.Observable<any>; | |
// Event Shortcuts | |
function blur(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<FocusEvent>; | |
function change(element: Element, selector?:Function):Rx.Observable<Event>; | |
function click(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function contextmenu(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function dblclick(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function error(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<Event>; | |
function focus(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<FocusEvent>; | |
function focusin(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function focusout(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function keydown(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<KeyboardEvent>; | |
function keypress(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<KeyboardEvent>; | |
function keyup(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<KeyboardEvent>; | |
function load(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<UIEvent>; | |
function mousedown(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function mouseenter(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function mouseleave(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function mousemove(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function mouseout(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function mouseover(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function mouseup(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<MouseEvent>; | |
function resize(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<UIEvent>; | |
function scroll(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<UIEvent>; | |
function select(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<Event>; | |
function submit(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<Event>; | |
function unload(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<Event>; | |
// Pointer Events | |
function pointerdown(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<PointerEvent>; | |
function pointerenter(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<PointerEvent>; | |
function pointerleave(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<PointerEvent>; | |
function pointermove(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<PointerEvent>; | |
function pointerout(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<PointerEvent>; | |
function pointerover(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<PointerEvent>; | |
function pointerup(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<PointerEvent>; | |
// Touch Events | |
function touchcancel(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<TouchEvent>; | |
function touchend(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<TouchEvent>; | |
function touchmove(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<TouchEvent>; | |
function touchstart(element: Element, selector?:Function, useCapture?:boolean):Rx.Observable<TouchEvent>; | |
// Ajax | |
function ajax(url:string):Rx.Observable<AjaxSuccessResponse | AjaxErrorResponse>; | |
function ajax(settings:AjaxSettings):Rx.Observable<AjaxSuccessResponse | AjaxErrorResponse>; | |
function get(url:string):Rx.Observable<AjaxSuccessResponse | AjaxErrorResponse>; | |
function getJSON(url:string):Rx.Observable<string>; | |
function post(url:string, body:any):Rx.Observable<AjaxSuccessResponse | AjaxErrorResponse>; | |
function jsonpRequest(url:string):Rx.Observable<string>; | |
function jsonpRequest(settings:JsonpSettings):Rx.Observable<JsonpSuccessResponse | JsonpErrorResponse>; | |
// Server-Sent Events | |
function fromEventSource<T>(url:string, openObservable?:Rx.Observer<T>):Rx.Observable<T>; | |
// Web Sockets | |
function fromWebSocket(url:string, protocol:string, openObserver?:Rx.Observer<Event>, closingObserver?:Rx.Observer<CloseEvent>):Rx.Subject<MessageEvent>; | |
// Web Workers | |
function fromWebWorker(url:string):Rx.Subject<string>; | |
// Mutation Observers | |
function fromMutationObserver(target:Node, options:MutationObserverInit):Rx.Observable<MutationEvent>; | |
// Geolocation | |
export module geolocation { | |
function getCurrentPosition(geolocationOptions?:GeolocationOptions):Rx.Observable<Position>; | |
function watchPosition(geolocationOptions?:GeolocationOptions):Rx.Observable<Position>; | |
} | |
} | |
declare module "rx.DOM" { | |
export = Rx.DOM; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment