typescript
Version:
TypeScript is a language for application scale JavaScript development
1,628 lines (1,458 loc) • 544 kB
TypeScript
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
/// <reference path="lib.core.d.ts" />
/////////////////////////////
/// ECMAScript Internationalization API
/////////////////////////////
declare module Intl {
interface CollatorOptions {
usage?: string;
localeMatcher?: string;
numeric?: boolean;
caseFirst?: string;
sensitivity?: string;
ignorePunctuation?: boolean;
}
interface ResolvedCollatorOptions {
locale: string;
usage: string;
sensitivity: string;
ignorePunctuation: boolean;
collation: string;
caseFirst: string;
numeric: boolean;
}
interface Collator {
compare(x: string, y: string): number;
resolvedOptions(): ResolvedCollatorOptions;
}
var Collator: {
new (locales?: string[], options?: CollatorOptions): Collator;
new (locale?: string, options?: CollatorOptions): Collator;
(locales?: string[], options?: CollatorOptions): Collator;
(locale?: string, options?: CollatorOptions): Collator;
supportedLocalesOf(locales: string[], options?: CollatorOptions): string[];
supportedLocalesOf(locale: string, options?: CollatorOptions): string[];
}
interface NumberFormatOptions {
localeMatcher?: string;
style?: string;
currency?: string;
currencyDisplay?: string;
useGrouping?: boolean;
minimumIntegerDigits?: number;
minimumFractionDigits?: number;
maximumFractionDigits?: number;
minimumSignificantDigits?: number;
maximumSignificantDigits?: number;
}
interface ResolvedNumberFormatOptions {
locale: string;
numberingSystem: string;
style: string;
currency?: string;
currencyDisplay?: string;
minimumIntegerDigits: number;
minimumFractionDigits: number;
maximumFractionDigits: number;
minimumSignificantDigits?: number;
maximumSignificantDigits?: number;
useGrouping: boolean;
}
interface NumberFormat {
format(value: number): string;
resolvedOptions(): ResolvedNumberFormatOptions;
}
var NumberFormat: {
new (locales?: string[], options?: NumberFormatOptions): NumberFormat;
new (locale?: string, options?: NumberFormatOptions): NumberFormat;
(locales?: string[], options?: NumberFormatOptions): NumberFormat;
(locale?: string, options?: NumberFormatOptions): NumberFormat;
supportedLocalesOf(locales: string[], options?: NumberFormatOptions): string[];
supportedLocalesOf(locale: string, options?: NumberFormatOptions): string[];
}
interface DateTimeFormatOptions {
localeMatcher?: string;
weekday?: string;
era?: string;
year?: string;
month?: string;
day?: string;
hour?: string;
minute?: string;
second?: string;
timeZoneName?: string;
formatMatcher?: string;
hour12?: boolean;
timeZone?: string;
}
interface ResolvedDateTimeFormatOptions {
locale: string;
calendar: string;
numberingSystem: string;
timeZone: string;
hour12?: boolean;
weekday?: string;
era?: string;
year?: string;
month?: string;
day?: string;
hour?: string;
minute?: string;
second?: string;
timeZoneName?: string;
}
interface DateTimeFormat {
format(date?: Date | number): string;
resolvedOptions(): ResolvedDateTimeFormatOptions;
}
var DateTimeFormat: {
new (locales?: string[], options?: DateTimeFormatOptions): DateTimeFormat;
new (locale?: string, options?: DateTimeFormatOptions): DateTimeFormat;
(locales?: string[], options?: DateTimeFormatOptions): DateTimeFormat;
(locale?: string, options?: DateTimeFormatOptions): DateTimeFormat;
supportedLocalesOf(locales: string[], options?: DateTimeFormatOptions): string[];
supportedLocalesOf(locale: string, options?: DateTimeFormatOptions): string[];
}
}
interface String {
/**
* Determines whether two strings are equivalent in the current locale.
* @param that String to compare to target string
* @param locales An array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used. This parameter must conform to BCP 47 standards; see the Intl.Collator object for details.
* @param options An object that contains one or more properties that specify comparison options. see the Intl.Collator object for details.
*/
localeCompare(that: string, locales: string[], options?: Intl.CollatorOptions): number;
/**
* Determines whether two strings are equivalent in the current locale.
* @param that String to compare to target string
* @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used. This parameter must conform to BCP 47 standards; see the Intl.Collator object for details.
* @param options An object that contains one or more properties that specify comparison options. see the Intl.Collator object for details.
*/
localeCompare(that: string, locale: string, options?: Intl.CollatorOptions): number;
}
interface Number {
/**
* Converts a number to a string by using the current or specified locale.
* @param locales An array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
* @param options An object that contains one or more properties that specify comparison options.
*/
toLocaleString(locales?: string[], options?: Intl.NumberFormatOptions): string;
/**
* Converts a number to a string by using the current or specified locale.
* @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used.
* @param options An object that contains one or more properties that specify comparison options.
*/
toLocaleString(locale?: string, options?: Intl.NumberFormatOptions): string;
}
interface Date {
/**
* Converts a date and time to a string by using the current or specified locale.
* @param locales An array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
* @param options An object that contains one or more properties that specify comparison options.
*/
toLocaleString(locales?: string[], options?: Intl.DateTimeFormatOptions): string;
/**
* Converts a date to a string by using the current or specified locale.
* @param locales An array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
* @param options An object that contains one or more properties that specify comparison options.
*/
toLocaleDateString(locales?: string[], options?: Intl.DateTimeFormatOptions): string;
/**
* Converts a time to a string by using the current or specified locale.
* @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used.
* @param options An object that contains one or more properties that specify comparison options.
*/
toLocaleTimeString(locale?: string[], options?: Intl.DateTimeFormatOptions): string;
/**
* Converts a date and time to a string by using the current or specified locale.
* @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used.
* @param options An object that contains one or more properties that specify comparison options.
*/
toLocaleString(locale?: string, options?: Intl.DateTimeFormatOptions): string;
/**
* Converts a date to a string by using the current or specified locale.
* @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used.
* @param options An object that contains one or more properties that specify comparison options.
*/
toLocaleDateString(locale?: string, options?: Intl.DateTimeFormatOptions): string;
/**
* Converts a time to a string by using the current or specified locale.
* @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used.
* @param options An object that contains one or more properties that specify comparison options.
*/
toLocaleTimeString(locale?: string, options?: Intl.DateTimeFormatOptions): string;
}
/////////////////////////////
/// IE DOM APIs
/////////////////////////////
interface Algorithm {
name?: string;
}
interface AriaRequestEventInit extends EventInit {
attributeName?: string;
attributeValue?: string;
}
interface ClipboardEventInit extends EventInit {
data?: string;
dataType?: string;
}
interface CommandEventInit extends EventInit {
commandName?: string;
detail?: string;
}
interface CompositionEventInit extends UIEventInit {
data?: string;
}
interface ConfirmSiteSpecificExceptionsInformation extends ExceptionInformation {
arrayOfDomainStrings?: string[];
}
interface CustomEventInit extends EventInit {
detail?: any;
}
interface DeviceAccelerationDict {
x?: number;
y?: number;
z?: number;
}
interface DeviceRotationRateDict {
alpha?: number;
beta?: number;
gamma?: number;
}
interface EventInit {
bubbles?: boolean;
cancelable?: boolean;
}
interface ExceptionInformation {
domain?: string;
}
interface FocusEventInit extends UIEventInit {
relatedTarget?: EventTarget;
}
interface HashChangeEventInit extends EventInit {
newURL?: string;
oldURL?: string;
}
interface KeyAlgorithm {
name?: string;
}
interface KeyboardEventInit extends SharedKeyboardAndMouseEventInit {
key?: string;
location?: number;
repeat?: boolean;
}
interface MouseEventInit extends SharedKeyboardAndMouseEventInit {
screenX?: number;
screenY?: number;
clientX?: number;
clientY?: number;
button?: number;
buttons?: number;
relatedTarget?: EventTarget;
}
interface MsZoomToOptions {
contentX?: number;
contentY?: number;
viewportX?: string;
viewportY?: string;
scaleFactor?: number;
animate?: string;
}
interface MutationObserverInit {
childList?: boolean;
attributes?: boolean;
characterData?: boolean;
subtree?: boolean;
attributeOldValue?: boolean;
characterDataOldValue?: boolean;
attributeFilter?: string[];
}
interface ObjectURLOptions {
oneTimeOnly?: boolean;
}
interface PointerEventInit extends MouseEventInit {
pointerId?: number;
width?: number;
height?: number;
pressure?: number;
tiltX?: number;
tiltY?: number;
pointerType?: string;
isPrimary?: boolean;
}
interface PositionOptions {
enableHighAccuracy?: boolean;
timeout?: number;
maximumAge?: number;
}
interface SharedKeyboardAndMouseEventInit extends UIEventInit {
ctrlKey?: boolean;
shiftKey?: boolean;
altKey?: boolean;
metaKey?: boolean;
keyModifierStateAltGraph?: boolean;
keyModifierStateCapsLock?: boolean;
keyModifierStateFn?: boolean;
keyModifierStateFnLock?: boolean;
keyModifierStateHyper?: boolean;
keyModifierStateNumLock?: boolean;
keyModifierStateOS?: boolean;
keyModifierStateScrollLock?: boolean;
keyModifierStateSuper?: boolean;
keyModifierStateSymbol?: boolean;
keyModifierStateSymbolLock?: boolean;
}
interface StoreExceptionsInformation extends ExceptionInformation {
siteName?: string;
explanationString?: string;
detailURI?: string;
}
interface StoreSiteSpecificExceptionsInformation extends StoreExceptionsInformation {
arrayOfDomainStrings?: string[];
}
interface UIEventInit extends EventInit {
view?: Window;
detail?: number;
}
interface WebGLContextAttributes {
alpha?: boolean;
depth?: boolean;
stencil?: boolean;
antialias?: boolean;
premultipliedAlpha?: boolean;
preserveDrawingBuffer?: boolean;
}
interface WebGLContextEventInit extends EventInit {
statusMessage?: string;
}
interface WheelEventInit extends MouseEventInit {
deltaX?: number;
deltaY?: number;
deltaZ?: number;
deltaMode?: number;
}
interface EventListener {
(evt: Event): void;
}
interface ANGLE_instanced_arrays {
drawArraysInstancedANGLE(mode: number, first: number, count: number, primcount: number): void;
drawElementsInstancedANGLE(mode: number, count: number, type: number, offset: number, primcount: number): void;
vertexAttribDivisorANGLE(index: number, divisor: number): void;
VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE: number;
}
declare var ANGLE_instanced_arrays: {
prototype: ANGLE_instanced_arrays;
new(): ANGLE_instanced_arrays;
VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE: number;
}
interface AnalyserNode extends AudioNode {
fftSize: number;
frequencyBinCount: number;
maxDecibels: number;
minDecibels: number;
smoothingTimeConstant: number;
getByteFrequencyData(array: Uint8Array): void;
getByteTimeDomainData(array: Uint8Array): void;
getFloatFrequencyData(array: Float32Array): void;
getFloatTimeDomainData(array: Float32Array): void;
}
declare var AnalyserNode: {
prototype: AnalyserNode;
new(): AnalyserNode;
}
interface AnimationEvent extends Event {
animationName: string;
elapsedTime: number;
initAnimationEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, animationNameArg: string, elapsedTimeArg: number): void;
}
declare var AnimationEvent: {
prototype: AnimationEvent;
new(): AnimationEvent;
}
interface ApplicationCache extends EventTarget {
oncached: (ev: Event) => any;
onchecking: (ev: Event) => any;
ondownloading: (ev: Event) => any;
onerror: (ev: Event) => any;
onnoupdate: (ev: Event) => any;
onobsolete: (ev: Event) => any;
onprogress: (ev: ProgressEvent) => any;
onupdateready: (ev: Event) => any;
status: number;
abort(): void;
swapCache(): void;
update(): void;
CHECKING: number;
DOWNLOADING: number;
IDLE: number;
OBSOLETE: number;
UNCACHED: number;
UPDATEREADY: number;
addEventListener(type: "cached", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "checking", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "downloading", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;
addEventListener(type: "noupdate", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "obsolete", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;
addEventListener(type: "updateready", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void;
}
declare var ApplicationCache: {
prototype: ApplicationCache;
new(): ApplicationCache;
CHECKING: number;
DOWNLOADING: number;
IDLE: number;
OBSOLETE: number;
UNCACHED: number;
UPDATEREADY: number;
}
interface AriaRequestEvent extends Event {
attributeName: string;
attributeValue: string;
}
declare var AriaRequestEvent: {
prototype: AriaRequestEvent;
new(type: string, eventInitDict?: AriaRequestEventInit): AriaRequestEvent;
}
interface Attr extends Node {
name: string;
ownerElement: Element;
specified: boolean;
value: string;
}
declare var Attr: {
prototype: Attr;
new(): Attr;
}
interface AudioBuffer {
duration: number;
length: number;
numberOfChannels: number;
sampleRate: number;
getChannelData(channel: number): Float32Array;
}
declare var AudioBuffer: {
prototype: AudioBuffer;
new(): AudioBuffer;
}
interface AudioBufferSourceNode extends AudioNode {
buffer: AudioBuffer;
loop: boolean;
loopEnd: number;
loopStart: number;
onended: (ev: Event) => any;
playbackRate: AudioParam;
start(when?: number, offset?: number, duration?: number): void;
stop(when?: number): void;
addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void;
}
declare var AudioBufferSourceNode: {
prototype: AudioBufferSourceNode;
new(): AudioBufferSourceNode;
}
interface AudioContext extends EventTarget {
currentTime: number;
destination: AudioDestinationNode;
listener: AudioListener;
sampleRate: number;
state: string;
createAnalyser(): AnalyserNode;
createBiquadFilter(): BiquadFilterNode;
createBuffer(numberOfChannels: number, length: number, sampleRate: number): AudioBuffer;
createBufferSource(): AudioBufferSourceNode;
createChannelMerger(numberOfInputs?: number): ChannelMergerNode;
createChannelSplitter(numberOfOutputs?: number): ChannelSplitterNode;
createConvolver(): ConvolverNode;
createDelay(maxDelayTime?: number): DelayNode;
createDynamicsCompressor(): DynamicsCompressorNode;
createGain(): GainNode;
createMediaElementSource(mediaElement: HTMLMediaElement): MediaElementAudioSourceNode;
createOscillator(): OscillatorNode;
createPanner(): PannerNode;
createPeriodicWave(real: Float32Array, imag: Float32Array): PeriodicWave;
createScriptProcessor(bufferSize?: number, numberOfInputChannels?: number, numberOfOutputChannels?: number): ScriptProcessorNode;
createStereoPanner(): StereoPannerNode;
createWaveShaper(): WaveShaperNode;
decodeAudioData(audioData: ArrayBuffer, successCallback: DecodeSuccessCallback, errorCallback?: DecodeErrorCallback): void;
}
declare var AudioContext: {
prototype: AudioContext;
new(): AudioContext;
}
interface AudioDestinationNode extends AudioNode {
maxChannelCount: number;
}
declare var AudioDestinationNode: {
prototype: AudioDestinationNode;
new(): AudioDestinationNode;
}
interface AudioListener {
dopplerFactor: number;
speedOfSound: number;
setOrientation(x: number, y: number, z: number, xUp: number, yUp: number, zUp: number): void;
setPosition(x: number, y: number, z: number): void;
setVelocity(x: number, y: number, z: number): void;
}
declare var AudioListener: {
prototype: AudioListener;
new(): AudioListener;
}
interface AudioNode extends EventTarget {
channelCount: number;
channelCountMode: string;
channelInterpretation: string;
context: AudioContext;
numberOfInputs: number;
numberOfOutputs: number;
connect(destination: AudioNode, output?: number, input?: number): void;
disconnect(output?: number): void;
disconnect(destination: AudioNode, output?: number, input?: number): void;
disconnect(destination: AudioParam, output?: number): void;
}
declare var AudioNode: {
prototype: AudioNode;
new(): AudioNode;
}
interface AudioParam {
defaultValue: number;
value: number;
cancelScheduledValues(startTime: number): void;
exponentialRampToValueAtTime(value: number, endTime: number): void;
linearRampToValueAtTime(value: number, endTime: number): void;
setTargetAtTime(target: number, startTime: number, timeConstant: number): void;
setValueAtTime(value: number, startTime: number): void;
setValueCurveAtTime(values: Float32Array, startTime: number, duration: number): void;
}
declare var AudioParam: {
prototype: AudioParam;
new(): AudioParam;
}
interface AudioProcessingEvent extends Event {
inputBuffer: AudioBuffer;
outputBuffer: AudioBuffer;
playbackTime: number;
}
declare var AudioProcessingEvent: {
prototype: AudioProcessingEvent;
new(): AudioProcessingEvent;
}
interface AudioTrack {
enabled: boolean;
id: string;
kind: string;
label: string;
language: string;
sourceBuffer: SourceBuffer;
}
declare var AudioTrack: {
prototype: AudioTrack;
new(): AudioTrack;
}
interface AudioTrackList extends EventTarget {
length: number;
onaddtrack: (ev: TrackEvent) => any;
onchange: (ev: Event) => any;
onremovetrack: (ev: TrackEvent) => any;
getTrackById(id: string): AudioTrack;
item(index: number): AudioTrack;
addEventListener(type: "addtrack", listener: (ev: TrackEvent) => any, useCapture?: boolean): void;
addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;
addEventListener(type: "removetrack", listener: (ev: TrackEvent) => any, useCapture?: boolean): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void;
[index: number]: AudioTrack;
}
declare var AudioTrackList: {
prototype: AudioTrackList;
new(): AudioTrackList;
}
interface BarProp {
visible: boolean;
}
declare var BarProp: {
prototype: BarProp;
new(): BarProp;
}
interface BeforeUnloadEvent extends Event {
returnValue: any;
}
declare var BeforeUnloadEvent: {
prototype: BeforeUnloadEvent;
new(): BeforeUnloadEvent;
}
interface BiquadFilterNode extends AudioNode {
Q: AudioParam;
detune: AudioParam;
frequency: AudioParam;
gain: AudioParam;
type: string;
getFrequencyResponse(frequencyHz: Float32Array, magResponse: Float32Array, phaseResponse: Float32Array): void;
}
declare var BiquadFilterNode: {
prototype: BiquadFilterNode;
new(): BiquadFilterNode;
}
interface Blob {
size: number;
type: string;
msClose(): void;
msDetachStream(): any;
slice(start?: number, end?: number, contentType?: string): Blob;
}
declare var Blob: {
prototype: Blob;
new (blobParts?: any[], options?: BlobPropertyBag): Blob;
}
interface CDATASection extends Text {
}
declare var CDATASection: {
prototype: CDATASection;
new(): CDATASection;
}
interface CSS {
supports(property: string, value?: string): boolean;
}
declare var CSS: CSS;
interface CSSConditionRule extends CSSGroupingRule {
conditionText: string;
}
declare var CSSConditionRule: {
prototype: CSSConditionRule;
new(): CSSConditionRule;
}
interface CSSFontFaceRule extends CSSRule {
style: CSSStyleDeclaration;
}
declare var CSSFontFaceRule: {
prototype: CSSFontFaceRule;
new(): CSSFontFaceRule;
}
interface CSSGroupingRule extends CSSRule {
cssRules: CSSRuleList;
deleteRule(index?: number): void;
insertRule(rule: string, index?: number): number;
}
declare var CSSGroupingRule: {
prototype: CSSGroupingRule;
new(): CSSGroupingRule;
}
interface CSSImportRule extends CSSRule {
href: string;
media: MediaList;
styleSheet: CSSStyleSheet;
}
declare var CSSImportRule: {
prototype: CSSImportRule;
new(): CSSImportRule;
}
interface CSSKeyframeRule extends CSSRule {
keyText: string;
style: CSSStyleDeclaration;
}
declare var CSSKeyframeRule: {
prototype: CSSKeyframeRule;
new(): CSSKeyframeRule;
}
interface CSSKeyframesRule extends CSSRule {
cssRules: CSSRuleList;
name: string;
appendRule(rule: string): void;
deleteRule(rule: string): void;
findRule(rule: string): CSSKeyframeRule;
}
declare var CSSKeyframesRule: {
prototype: CSSKeyframesRule;
new(): CSSKeyframesRule;
}
interface CSSMediaRule extends CSSConditionRule {
media: MediaList;
}
declare var CSSMediaRule: {
prototype: CSSMediaRule;
new(): CSSMediaRule;
}
interface CSSNamespaceRule extends CSSRule {
namespaceURI: string;
prefix: string;
}
declare var CSSNamespaceRule: {
prototype: CSSNamespaceRule;
new(): CSSNamespaceRule;
}
interface CSSPageRule extends CSSRule {
pseudoClass: string;
selector: string;
selectorText: string;
style: CSSStyleDeclaration;
}
declare var CSSPageRule: {
prototype: CSSPageRule;
new(): CSSPageRule;
}
interface CSSRule {
cssText: string;
parentRule: CSSRule;
parentStyleSheet: CSSStyleSheet;
type: number;
CHARSET_RULE: number;
FONT_FACE_RULE: number;
IMPORT_RULE: number;
KEYFRAMES_RULE: number;
KEYFRAME_RULE: number;
MEDIA_RULE: number;
NAMESPACE_RULE: number;
PAGE_RULE: number;
STYLE_RULE: number;
SUPPORTS_RULE: number;
UNKNOWN_RULE: number;
VIEWPORT_RULE: number;
}
declare var CSSRule: {
prototype: CSSRule;
new(): CSSRule;
CHARSET_RULE: number;
FONT_FACE_RULE: number;
IMPORT_RULE: number;
KEYFRAMES_RULE: number;
KEYFRAME_RULE: number;
MEDIA_RULE: number;
NAMESPACE_RULE: number;
PAGE_RULE: number;
STYLE_RULE: number;
SUPPORTS_RULE: number;
UNKNOWN_RULE: number;
VIEWPORT_RULE: number;
}
interface CSSRuleList {
length: number;
item(index: number): CSSRule;
[index: number]: CSSRule;
}
declare var CSSRuleList: {
prototype: CSSRuleList;
new(): CSSRuleList;
}
interface CSSStyleDeclaration {
alignContent: string;
alignItems: string;
alignSelf: string;
alignmentBaseline: string;
animation: string;
animationDelay: string;
animationDirection: string;
animationDuration: string;
animationFillMode: string;
animationIterationCount: string;
animationName: string;
animationPlayState: string;
animationTimingFunction: string;
backfaceVisibility: string;
background: string;
backgroundAttachment: string;
backgroundClip: string;
backgroundColor: string;
backgroundImage: string;
backgroundOrigin: string;
backgroundPosition: string;
backgroundPositionX: string;
backgroundPositionY: string;
backgroundRepeat: string;
backgroundSize: string;
baselineShift: string;
border: string;
borderBottom: string;
borderBottomColor: string;
borderBottomLeftRadius: string;
borderBottomRightRadius: string;
borderBottomStyle: string;
borderBottomWidth: string;
borderCollapse: string;
borderColor: string;
borderImage: string;
borderImageOutset: string;
borderImageRepeat: string;
borderImageSlice: string;
borderImageSource: string;
borderImageWidth: string;
borderLeft: string;
borderLeftColor: string;
borderLeftStyle: string;
borderLeftWidth: string;
borderRadius: string;
borderRight: string;
borderRightColor: string;
borderRightStyle: string;
borderRightWidth: string;
borderSpacing: string;
borderStyle: string;
borderTop: string;
borderTopColor: string;
borderTopLeftRadius: string;
borderTopRightRadius: string;
borderTopStyle: string;
borderTopWidth: string;
borderWidth: string;
bottom: string;
boxShadow: string;
boxSizing: string;
breakAfter: string;
breakBefore: string;
breakInside: string;
captionSide: string;
clear: string;
clip: string;
clipPath: string;
clipRule: string;
color: string;
colorInterpolationFilters: string;
columnCount: any;
columnFill: string;
columnGap: any;
columnRule: string;
columnRuleColor: any;
columnRuleStyle: string;
columnRuleWidth: any;
columnSpan: string;
columnWidth: any;
columns: string;
content: string;
counterIncrement: string;
counterReset: string;
cssFloat: string;
cssText: string;
cursor: string;
direction: string;
display: string;
dominantBaseline: string;
emptyCells: string;
enableBackground: string;
fill: string;
fillOpacity: string;
fillRule: string;
filter: string;
flex: string;
flexBasis: string;
flexDirection: string;
flexFlow: string;
flexGrow: string;
flexShrink: string;
flexWrap: string;
floodColor: string;
floodOpacity: string;
font: string;
fontFamily: string;
fontFeatureSettings: string;
fontSize: string;
fontSizeAdjust: string;
fontStretch: string;
fontStyle: string;
fontVariant: string;
fontWeight: string;
glyphOrientationHorizontal: string;
glyphOrientationVertical: string;
height: string;
imeMode: string;
justifyContent: string;
kerning: string;
left: string;
length: number;
letterSpacing: string;
lightingColor: string;
lineHeight: string;
listStyle: string;
listStyleImage: string;
listStylePosition: string;
listStyleType: string;
margin: string;
marginBottom: string;
marginLeft: string;
marginRight: string;
marginTop: string;
marker: string;
markerEnd: string;
markerMid: string;
markerStart: string;
mask: string;
maxHeight: string;
maxWidth: string;
minHeight: string;
minWidth: string;
msContentZoomChaining: string;
msContentZoomLimit: string;
msContentZoomLimitMax: any;
msContentZoomLimitMin: any;
msContentZoomSnap: string;
msContentZoomSnapPoints: string;
msContentZoomSnapType: string;
msContentZooming: string;
msFlowFrom: string;
msFlowInto: string;
msFontFeatureSettings: string;
msGridColumn: any;
msGridColumnAlign: string;
msGridColumnSpan: any;
msGridColumns: string;
msGridRow: any;
msGridRowAlign: string;
msGridRowSpan: any;
msGridRows: string;
msHighContrastAdjust: string;
msHyphenateLimitChars: string;
msHyphenateLimitLines: any;
msHyphenateLimitZone: any;
msHyphens: string;
msImeAlign: string;
msOverflowStyle: string;
msScrollChaining: string;
msScrollLimit: string;
msScrollLimitXMax: any;
msScrollLimitXMin: any;
msScrollLimitYMax: any;
msScrollLimitYMin: any;
msScrollRails: string;
msScrollSnapPointsX: string;
msScrollSnapPointsY: string;
msScrollSnapType: string;
msScrollSnapX: string;
msScrollSnapY: string;
msScrollTranslation: string;
msTextCombineHorizontal: string;
msTextSizeAdjust: any;
msTouchAction: string;
msTouchSelect: string;
msUserSelect: string;
msWrapFlow: string;
msWrapMargin: any;
msWrapThrough: string;
opacity: string;
order: string;
orphans: string;
outline: string;
outlineColor: string;
outlineStyle: string;
outlineWidth: string;
overflow: string;
overflowX: string;
overflowY: string;
padding: string;
paddingBottom: string;
paddingLeft: string;
paddingRight: string;
paddingTop: string;
pageBreakAfter: string;
pageBreakBefore: string;
pageBreakInside: string;
parentRule: CSSRule;
perspective: string;
perspectiveOrigin: string;
pointerEvents: string;
position: string;
quotes: string;
right: string;
rubyAlign: string;
rubyOverhang: string;
rubyPosition: string;
stopColor: string;
stopOpacity: string;
stroke: string;
strokeDasharray: string;
strokeDashoffset: string;
strokeLinecap: string;
strokeLinejoin: string;
strokeMiterlimit: string;
strokeOpacity: string;
strokeWidth: string;
tableLayout: string;
textAlign: string;
textAlignLast: string;
textAnchor: string;
textDecoration: string;
textFillColor: string;
textIndent: string;
textJustify: string;
textKashida: string;
textKashidaSpace: string;
textOverflow: string;
textShadow: string;
textTransform: string;
textUnderlinePosition: string;
top: string;
touchAction: string;
transform: string;
transformOrigin: string;
transformStyle: string;
transition: string;
transitionDelay: string;
transitionDuration: string;
transitionProperty: string;
transitionTimingFunction: string;
unicodeBidi: string;
verticalAlign: string;
visibility: string;
webkitAlignContent: string;
webkitAlignItems: string;
webkitAlignSelf: string;
webkitAnimation: string;
webkitAnimationDelay: string;
webkitAnimationDirection: string;
webkitAnimationDuration: string;
webkitAnimationFillMode: string;
webkitAnimationIterationCount: string;
webkitAnimationName: string;
webkitAnimationPlayState: string;
webkitAnimationTimingFunction: string;
webkitAppearance: string;
webkitBackfaceVisibility: string;
webkitBackground: string;
webkitBackgroundAttachment: string;
webkitBackgroundClip: string;
webkitBackgroundColor: string;
webkitBackgroundImage: string;
webkitBackgroundOrigin: string;
webkitBackgroundPosition: string;
webkitBackgroundPositionX: string;
webkitBackgroundPositionY: string;
webkitBackgroundRepeat: string;
webkitBackgroundSize: string;
webkitBorderBottomLeftRadius: string;
webkitBorderBottomRightRadius: string;
webkitBorderImage: string;
webkitBorderImageOutset: string;
webkitBorderImageRepeat: string;
webkitBorderImageSlice: string;
webkitBorderImageSource: string;
webkitBorderImageWidth: string;
webkitBorderRadius: string;
webkitBorderTopLeftRadius: string;
webkitBorderTopRightRadius: string;
webkitBoxAlign: string;
webkitBoxDirection: string;
webkitBoxFlex: string;
webkitBoxOrdinalGroup: string;
webkitBoxOrient: string;
webkitBoxPack: string;
webkitBoxSizing: string;
webkitColumnBreakAfter: string;
webkitColumnBreakBefore: string;
webkitColumnBreakInside: string;
webkitColumnCount: any;
webkitColumnGap: any;
webkitColumnRule: string;
webkitColumnRuleColor: any;
webkitColumnRuleStyle: string;
webkitColumnRuleWidth: any;
webkitColumnSpan: string;
webkitColumnWidth: any;
webkitColumns: string;
webkitFilter: string;
webkitFlex: string;
webkitFlexBasis: string;
webkitFlexDirection: string;
webkitFlexFlow: string;
webkitFlexGrow: string;
webkitFlexShrink: string;
webkitFlexWrap: string;
webkitJustifyContent: string;
webkitOrder: string;
webkitPerspective: string;
webkitPerspectiveOrigin: string;
webkitTapHighlightColor: string;
webkitTextFillColor: string;
webkitTextSizeAdjust: any;
webkitTransform: string;
webkitTransformOrigin: string;
webkitTransformStyle: string;
webkitTransition: string;
webkitTransitionDelay: string;
webkitTransitionDuration: string;
webkitTransitionProperty: string;
webkitTransitionTimingFunction: string;
webkitUserSelect: string;
webkitWritingMode: string;
whiteSpace: string;
widows: string;
width: string;
wordBreak: string;
wordSpacing: string;
wordWrap: string;
writingMode: string;
zIndex: string;
zoom: string;
getPropertyPriority(propertyName: string): string;
getPropertyValue(propertyName: string): string;
item(index: number): string;
removeProperty(propertyName: string): string;
setProperty(propertyName: string, value: string, priority?: string): void;
[index: number]: string;
}
declare var CSSStyleDeclaration: {
prototype: CSSStyleDeclaration;
new(): CSSStyleDeclaration;
}
interface CSSStyleRule extends CSSRule {
readOnly: boolean;
selectorText: string;
style: CSSStyleDeclaration;
}
declare var CSSStyleRule: {
prototype: CSSStyleRule;
new(): CSSStyleRule;
}
interface CSSStyleSheet extends StyleSheet {
cssRules: CSSRuleList;
cssText: string;
href: string;
id: string;
imports: StyleSheetList;
isAlternate: boolean;
isPrefAlternate: boolean;
ownerRule: CSSRule;
owningElement: Element;
pages: StyleSheetPageList;
readOnly: boolean;
rules: CSSRuleList;
addImport(bstrURL: string, lIndex?: number): number;
addPageRule(bstrSelector: string, bstrStyle: string, lIndex?: number): number;
addRule(bstrSelector: string, bstrStyle?: string, lIndex?: number): number;
deleteRule(index?: number): void;
insertRule(rule: string, index?: number): number;
removeImport(lIndex: number): void;
removeRule(lIndex: number): void;
}
declare var CSSStyleSheet: {
prototype: CSSStyleSheet;
new(): CSSStyleSheet;
}
interface CSSSupportsRule extends CSSConditionRule {
}
declare var CSSSupportsRule: {
prototype: CSSSupportsRule;
new(): CSSSupportsRule;
}
interface CanvasGradient {
addColorStop(offset: number, color: string): void;
}
declare var CanvasGradient: {
prototype: CanvasGradient;
new(): CanvasGradient;
}
interface CanvasPattern {
}
declare var CanvasPattern: {
prototype: CanvasPattern;
new(): CanvasPattern;
}
interface CanvasRenderingContext2D {
canvas: HTMLCanvasElement;
fillStyle: string | CanvasGradient | CanvasPattern;
font: string;
globalAlpha: number;
globalCompositeOperation: string;
lineCap: string;
lineDashOffset: number;
lineJoin: string;
lineWidth: number;
miterLimit: number;
msFillRule: string;
msImageSmoothingEnabled: boolean;
shadowBlur: number;
shadowColor: string;
shadowOffsetX: number;
shadowOffsetY: number;
strokeStyle: string | CanvasGradient | CanvasPattern;
textAlign: string;
textBaseline: string;
arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, anticlockwise?: boolean): void;
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
beginPath(): void;
bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;
clearRect(x: number, y: number, w: number, h: number): void;
clip(fillRule?: string): void;
closePath(): void;
createImageData(imageDataOrSw: number | ImageData, sh?: number): ImageData;
createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;
createPattern(image: HTMLImageElement | HTMLCanvasElement | HTMLVideoElement, repetition: string): CanvasPattern;
createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
drawImage(image: HTMLImageElement | HTMLCanvasElement | HTMLVideoElement, offsetX: number, offsetY: number, width?: number, height?: number, canvasOffsetX?: number, canvasOffsetY?: number, canvasImageWidth?: number, canvasImageHeight?: number): void;
fill(fillRule?: string): void;
fillRect(x: number, y: number, w: number, h: number): void;
fillText(text: string, x: number, y: number, maxWidth?: number): void;
getImageData(sx: number, sy: number, sw: number, sh: number): ImageData;
getLineDash(): number[];
isPointInPath(x: number, y: number, fillRule?: string): boolean;
lineTo(x: number, y: number): void;
measureText(text: string): TextMetrics;
moveTo(x: number, y: number): void;
putImageData(imagedata: ImageData, dx: number, dy: number, dirtyX?: number, dirtyY?: number, dirtyWidth?: number, dirtyHeight?: number): void;
quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
rect(x: number, y: number, w: number, h: number): void;
restore(): void;
rotate(angle: number): void;
save(): void;
scale(x: number, y: number): void;
setLineDash(segments: number[]): void;
setTransform(m11: number, m12: number, m21: number, m22: number, dx: number, dy: number): void;
stroke(): void;
strokeRect(x: number, y: number, w: number, h: number): void;
strokeText(text: string, x: number, y: number, maxWidth?: number): void;
transform(m11: number, m12: number, m21: number, m22: number, dx: number, dy: number): void;
translate(x: number, y: number): void;
}
declare var CanvasRenderingContext2D: {
prototype: CanvasRenderingContext2D;
new(): CanvasRenderingContext2D;
}
interface ChannelMergerNode extends AudioNode {
}
declare var ChannelMergerNode: {
prototype: ChannelMergerNode;
new(): ChannelMergerNode;
}
interface ChannelSplitterNode extends AudioNode {
}
declare var ChannelSplitterNode: {
prototype: ChannelSplitterNode;
new(): ChannelSplitterNode;
}
interface CharacterData extends Node, ChildNode {
data: string;
length: number;
appendData(arg: string): void;
deleteData(offset: number, count: number): void;
insertData(offset: number, arg: string): void;
replaceData(offset: number, count: number, arg: string): void;
substringData(offset: number, count: number): string;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void;
}
declare var CharacterData: {
prototype: CharacterData;
new(): CharacterData;
}
interface ClientRect {
bottom: number;
height: number;
left: number;
right: number;
top: number;
width: number;
}
declare var ClientRect: {
prototype: ClientRect;
new(): ClientRect;
}
interface ClientRectList {
length: number;
item(index: number): ClientRect;
[index: number]: ClientRect;
}
declare var ClientRectList: {
prototype: ClientRectList;
new(): ClientRectList;
}
interface ClipboardEvent extends Event {
clipboardData: DataTransfer;
}
declare var ClipboardEvent: {
prototype: ClipboardEvent;
new(type: string, eventInitDict?: ClipboardEventInit): ClipboardEvent;
}
interface CloseEvent extends Event {
code: number;
reason: string;
wasClean: boolean;
initCloseEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, wasCleanArg: boolean, codeArg: number, reasonArg: string): void;
}
declare var CloseEvent: {
prototype: CloseEvent;
new(): CloseEvent;
}
interface CommandEvent extends Event {
commandName: string;
detail: string;
}
declare var CommandEvent: {
prototype: CommandEvent;
new(type: string, eventInitDict?: CommandEventInit): CommandEvent;
}
interface Comment extends CharacterData {
text: string;
}
declare var Comment: {
prototype: Comment;
new(): Comment;
}
interface CompositionEvent extends UIEvent {
data: string;
locale: string;
initCompositionEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, dataArg: string, locale: string): void;
}
declare var CompositionEvent: {
prototype: CompositionEvent;
new(typeArg: string, eventInitDict?: CompositionEventInit): CompositionEvent;
}
interface Console {
assert(test?: boolean, message?: string, ...optionalParams: any[]): void;
clear(): void;
count(countTitle?: string): void;
debug(message?: string, ...optionalParams: any[]): void;
dir(value?: any, ...optionalParams: any[]): void;
dirxml(value: any): void;
error(message?: any, ...optionalParams: any[]): void;
group(groupTitle?: string): void;
groupCollapsed(groupTitle?: string): void;
groupEnd(): void;
info(message?: any, ...optionalParams: any[]): void;
log(message?: any, ...optionalParams: any[]): void;
msIsIndependentlyComposed(element: Element): boolean;
profile(reportName?: string): void;
profileEnd(): void;
select(element: Element): void;
time(timerName?: string): void;
timeEnd(timerName?: string): void;
trace(message?: any, ...optionalParams: any[]): void;
warn(message?: any, ...optionalParams: any[]): void;
}
declare var Console: {
prototype: Console;
new(): Console;
}
interface ConvolverNode extends AudioNode {
buffer: AudioBuffer;
normalize: boolean;
}
declare var ConvolverNode: {
prototype: ConvolverNode;
new(): ConvolverNode;
}
interface Coordinates {
accuracy: number;
altitude: number;
altitudeAccuracy: number;
heading: number;
latitude: number;
longitude: number;
speed: number;
}
declare var Coordinates: {
prototype: Coordinates;
new(): Coordinates;
}
interface Crypto extends Object, RandomSource {
subtle: SubtleCrypto;
}
declare var Crypto: {
prototype: Crypto;
new(): Crypto;
}
interface CryptoKey {
algorithm: KeyAlgorithm;
extractable: boolean;
type: string;
usages: string[];
}
declare var CryptoKey: {
prototype: CryptoKey;
new(): CryptoKey;
}
interface CryptoKeyPair {
privateKey: CryptoKey;
publicKey: CryptoKey;
}
declare var CryptoKeyPair: {
prototype: CryptoKeyPair;
new(): CryptoKeyPair;
}
interface CustomEvent extends Event {
detail: any;
initCustomEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, detailArg: any): void;
}
declare var CustomEvent: {
prototype: CustomEvent;
new(typeArg: string, eventInitDict?: CustomEventInit): CustomEvent;
}
interface DOMError {
name: string;
toString(): string;
}
declare var DOMError: {
prototype: DOMError;
new(): DOMError;
}
interface DOMException {
code: number;
message: string;
name: string;
toString(): string;
ABORT_ERR: number;
DATA_CLONE_ERR: number;
DOMSTRING_SIZE_ERR: number;
HIERARCHY_REQUEST_ERR: number;
INDEX_SIZE_ERR: number;
INUSE_ATTRIBUTE_ERR: number;
INVALID_ACCESS_ERR: number;
INVALID_CHARACTER_ERR: number;
INVALID_MODIFICATION_ERR: number;
INVALID_NODE_TYPE_ERR: number;
INVALID_STATE_ERR: number;
NAMESPACE_ERR: number;
NETWORK_ERR: number;
NOT_FOUND_ERR: number;
NOT_SUPPORTED_ERR: number;
NO_DATA_ALLOWED_ERR: number;
NO_MODIFICATION_ALLOWED_ERR: number;
PARSE_ERR: number;
QUOTA_EXCEEDED_ERR: number;
SECURITY_ERR: number;
SERIALIZE_ERR: number;
SYNTAX_ERR: number;
TIMEOUT_ERR: number;
TYPE_MISMATCH_ERR: number;
URL_MISMATCH_ERR: number;
VALIDATION_ERR: number;
WRONG_DOCUMENT_ERR: number;
}
declare var DOMException: {
prototype: DOMException;
new(): DOMException;
ABORT_ERR: number;
DATA_CLONE_ERR: number;
DOMSTRING_SIZE_ERR: number;
HIERARCHY_REQUEST_ERR: number;
INDEX_SIZE_ERR: number;
INUSE_ATTRIBUTE_ERR: number;
INVALID_ACCESS_ERR: number;
INVALID_CHARACTER_ERR: number;
INVALID_MODIFICATION_ERR: number;
INVALID_NODE_TYPE_ERR: number;
INVALID_STATE_ERR: number;
NAMESPACE_ERR: number;
NETWORK_ERR: number;
NOT_FOUND_ERR: number;
NOT_SUPPORTED_ERR: number;
NO_DATA_ALLOWED_ERR: number;
NO_MODIFICATION_ALLOWED_ERR: number;
PARSE_ERR: number;
QUOTA_EXCEEDED_ERR: number;
SECURITY_ERR: number;
SERIALIZE_ERR: number;
SYNTAX_ERR: number;
TIMEOUT_ERR: number;
TYPE_MISMATCH_ERR: number;
URL_MISMATCH_ERR: number;
VALIDATION_ERR: number;
WRONG_DOCUMENT_ERR: number;
}
in