Make webvr-api consistent with latest lib.es6.d.ts

This commit is contained in:
efokschaner
2018-04-02 23:54:40 -07:00
parent 8a857d6473
commit 935b20edf3
+58 -9
View File
@@ -3,6 +3,13 @@
// Definitions by: six a <https://github.com/lostfictions>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// Typescript doesn't allow redefinition of type aliases even if they match,
// thus the _dt_alias to signal this being an alias for the use of DefinitelyTyped
type VRDisplayEventReason_dt_alias = "mounted" | "navigation" | "requested" | "unmounted";
// Typescript doesn't allow redefinition of type aliases even if they match,
// thus the _dt_alias to signal this being an alias for the use of DefinitelyTyped
type VREye_dt_alias = "left" | "right";
interface VRDisplay extends EventTarget {
/**
@@ -55,7 +62,7 @@ interface VRDisplay extends EventTarget {
exitPresent(): Promise<void>;
/* Return the current VREyeParameters for the given eye. */
getEyeParameters(whichEye: string): VREyeParameters;
getEyeParameters(whichEye: VREye_dt_alias): VREyeParameters;
/**
* Populates the passed VRFrameData with the information required to render
@@ -69,6 +76,7 @@ interface VRDisplay extends EventTarget {
getLayers(): VRLayer[];
/**
* @deprecated
* Return a VRPose containing the future predicted pose of the VRDisplay
* when the current frame will be presented. The value returned will not
* change until JavaScript has returned control to the browser.
@@ -138,6 +146,11 @@ interface VRDisplayCapabilities {
readonly maxLayers: number;
}
declare var VRDisplayCapabilities: {
prototype: VRDisplayCapabilities;
new(): VRDisplayCapabilities;
};
interface VREyeParameters {
/** @deprecated */
readonly fieldOfView: VRFieldOfView;
@@ -146,6 +159,11 @@ interface VREyeParameters {
readonly renderWidth: number;
}
declare var VREyeParameters: {
prototype: VREyeParameters;
new(): VREyeParameters;
};
interface VRFieldOfView {
readonly downDegrees: number;
readonly leftDegrees: number;
@@ -153,6 +171,11 @@ interface VRFieldOfView {
readonly upDegrees: number;
}
declare var VRFieldOfView: {
prototype: VRFieldOfView;
new(): VRFieldOfView;
};
interface VRFrameData {
readonly leftProjectionMatrix: Float32Array;
readonly leftViewMatrix: Float32Array;
@@ -163,9 +186,9 @@ interface VRFrameData {
}
declare var VRFrameData: {
prototype: VRFrameData
new(): VRFrameData
}
prototype: VRFrameData;
new(): VRFrameData;
};
interface VRPose {
readonly angularAcceleration: Float32Array | null;
@@ -177,6 +200,11 @@ interface VRPose {
readonly timestamp: number;
}
declare var VRPose: {
prototype: VRPose;
new(): VRPose;
};
interface VRStageParameters {
sittingToStandingTransform?: Float32Array;
sizeX?: number;
@@ -188,13 +216,34 @@ interface Navigator {
readonly activeVRDisplays: ReadonlyArray<VRDisplay>;
}
interface VRDisplayEventInit extends EventInit {
display: VRDisplay;
reason?: VRDisplayEventReason_dt_alias;
}
interface VRDisplayEvent extends Event {
readonly display: VRDisplay;
readonly reason: VRDisplayEventReason_dt_alias | null;
}
declare var VRDisplayEvent: {
prototype: VRDisplayEvent;
new(type: string, eventInitDict: VRDisplayEventInit): VRDisplayEvent;
};
interface Window {
onvrdisplayconnected: ((this: Window, ev: Event) => any) | null;
onvrdisplaydisconnected: ((this: Window, ev: Event) => any) | null;
onvrdisplayactivate: ((this: Window, ev: Event) => any) | null;
onvrdisplayblur: ((this: Window, ev: Event) => any) | null;
onvrdisplayconnect: ((this: Window, ev: Event) => any) | null;
onvrdisplaydeactivate: ((this: Window, ev: Event) => any) | null;
onvrdisplaydisconnect: ((this: Window, ev: Event) => any) | null;
onvrdisplayfocus: ((this: Window, ev: Event) => any) | null;
onvrdisplaypointerrestricted: ((this: Window, ev: Event) => any) | null;
onvrdisplaypointerunrestricted: ((this: Window, ev: Event) => any) | null;
onvrdisplaypresentchange: ((this: Window, ev: Event) => any) | null;
addEventListener(type: "vrdisplayconnected", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "vrdisplaydisconnected", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "vrdisplaypresentchange", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "vrdisplayconnect", listener: (this: Window, ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "vrdisplaydisconnect", listener: (this: Window, ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "vrdisplaypresentchange", listener: (this: Window, ev: Event) => any, useCapture?: boolean): void;
}
interface Gamepad {