interface a {
aa: /* comment
*/ string,
bb: /* comment */
number,
cc: // comment
void,
dd:
any,
}
null, <{[key]: () => any}> null
null, <{[key]: () =>{a: number}}> null
// Correctly highlighting regular expressions
dt = ((dt[0] * 1e9 + dt[1]) / 1e6).toFixed(3).replace(/\.?0+$/, '') + 'ms';
(a[0] / 2) / (2)
// Type guards
function isNumber(x: any): x is number {
return typeof x === "number";
}
+
+// Conditional expressions (highlight keywords before ":")
+class C {
+ w = () =>
+ this.a() ? true : this.b() ? false : true;
+ z = () =>
+ this.b() ? hello : k;
+}
diff --git a/autotests/html/test.ts.html b/autotests/html/test.ts.html
index 75aaf5a..d39567c 100644
--- a/autotests/html/test.ts.html
+++ b/autotests/html/test.ts.html
@@ -1,188 +1,196 @@
test.ts
/// <reference types="node" />
// TypeScript Test
class Student {
fullName: string;
constructor(public firstName: string, public middleInitial: string, public lastName: string) {
this.fullName = firstName + " " + middleInitial + " " + lastName;
}
}
interface Person {
firstName: string;
lastName: string;
}
function greeter(person : Person) {
return "Hello, " + person.firstName + " " + person.lastName;
}
let user = new Student("Jane", "M.", "User");
document.body.innerHTML = greeter(user);
JSON.stringify()
console.log("Hello world");
import http = require("http");
import path = require("path");
import URL = url.URL;
import { Readable, Writable } from "stream";
import { isBuffer, isString, isObject } from "util";
const port = 8__88___8;
const baseUrl = new URL(`http://localhost:${port}/`);
const rootDir = path.dirname(__dirname);
const defaultBrowser = os.platform() === "win32" ? "edge" : "chrome";
let browser: "edge" | "chrome" | "none" = defaultBrowser;
let grep: string | undefined;
interface FileBasedTestConfiguration {
[setting: string]: string;
}
function swapCase(s: string): string {
return s.replace(/\w/g, (ch) => {
const up = ch.toUpperCase();
return ch === up ? ch.toLowerCase() : up;
});
}
for (var i in pieces) {
switch (true) {
case /^\"?Accession\"?/.test(pieces[i]):
numeration[0] = i;
break;
}
}
const enum ResponseCode {
Success = 200,
BadRequest = 400
}
// Substitutions
export function isInOpenInterval(start: number, end: number) {
return tersible(a => a > start && a < end, () => `(${start}...${end})`)
}
const bar = `${x} ${y}`;
// readonly
function f1(mt: [number, number], rt: readonly [number, number]) {
}
function f2(ma: string[], ra: readonly string[], mt: [string, string], rt: readonly [string, string]) {
}
type ReadWrite<T> = { -readonly [P in keyof T] : T[P] };
// const assertion
let obj = { x: 10, y: [20, 30], z: { a: { b: 42 } } } as const;
let r2 = { x: 20, y: 10 } as const;
let r2 = {...p} as const;
let p1 = { x: 10, y: 20 as const };
let p2 = { 10 as const, 'foo' as const };
// Definite assignment operator
class Cl {
- one?: string;
+ one?: string;
two!: string;
}
let x! = 1;
// Function with multiple arguments
const children = [].map<Set<Map<number, string>>>(element => {
if (!this.identityProvider) {
return element;
}
return element;
});
// Numerics
var a = 0xA;
var b = 0b1;
var c = 0o7;
var d = 1.1E+3;
var e = 1.E+3;
var f = .1E+3;
var g = 1E+3;
var h = 1.1;
var i = 1.;
var j = .1;
var k = 1;
var l = 1__.e+3_22 | .2____e2 | 0o1_23 | 11__. ;
// Bigint
const binBig = 0b101n;
const octBig = 0o567n;
const hexBig = 0xC0Bn;
const decBig = 123n;
// Types
let a: null = null;
let b: number = 123;
let c: number = 123.456;
let d: string = `Geeks`;
let e: undefined = undefined;
let f: boolean = true;
let g: number = 0b111001; // Binary
let h: number = 0o436; // Octal
let i: number = 0xadf0d; // Hexa-Decimal
const query = query<[number], number>(`
SELECT *
FROM statistics
WHERE unit_id = $1`)
function runQuery() {
const query = createQuery<[number[]], Table<Columns>>(`
some SQL here
`)
return database.execute(query)
}
aa: <sdf/> string ?<ssd/> string
string // Don't highlight
aa: string assa |
string
string ;
string
aa: { string
string } // Don't highlight
aa: [ string
string ]
aa: ( string
string ) // Don't highlight
aa: string <string>
interface a {
aa: /* comment
*/ string,
bb: /* comment */
number,
cc: // comment
void,
dd:
any,
}
null, <{[key]: () => any}> null
null, <{[key]: () =>{a: number}}> null
// Correctly highlighting regular expressions
dt = ((dt[0] * 1e9 + dt[1]) / 1e6).toFixed(3).replace(/\.?0+$/, '') + 'ms';
(a[0] / 2) / (2)
// Type guards
function isNumber(x: any): x is number {
return typeof x === "number";
}
+
+// Conditional expressions (highlight keywords before ":")
+class C {
+ w = () =>
+ this.a() ? true : this.b() ? false : true;
+ z = () =>
+ this.b() ? hello : k;
+}
diff --git a/autotests/input/test.ts b/autotests/input/test.ts
index 8fd0dbe..d92e5f5 100644
--- a/autotests/input/test.ts
+++ b/autotests/input/test.ts
@@ -1,181 +1,189 @@
///
// TypeScript Test
class Student {
fullName: string;
constructor(public firstName: string, public middleInitial: string, public lastName: string) {
this.fullName = firstName + " " + middleInitial + " " + lastName;
}
}
interface Person {
firstName: string;
lastName: string;
}
function greeter(person : Person) {
return "Hello, " + person.firstName + " " + person.lastName;
}
let user = new Student("Jane", "M.", "User");
document.body.innerHTML = greeter(user);
JSON.stringify()
console.log("Hello world");
import http = require("http");
import path = require("path");
import URL = url.URL;
import { Readable, Writable } from "stream";
import { isBuffer, isString, isObject } from "util";
const port = 8__88___8;
const baseUrl = new URL(`http://localhost:${port}/`);
const rootDir = path.dirname(__dirname);
const defaultBrowser = os.platform() === "win32" ? "edge" : "chrome";
let browser: "edge" | "chrome" | "none" = defaultBrowser;
let grep: string | undefined;
interface FileBasedTestConfiguration {
[setting: string]: string;
}
function swapCase(s: string): string {
return s.replace(/\w/g, (ch) => {
const up = ch.toUpperCase();
return ch === up ? ch.toLowerCase() : up;
});
}
for (var i in pieces) {
switch (true) {
case /^\"?Accession\"?/.test(pieces[i]):
numeration[0] = i;
break;
}
}
const enum ResponseCode {
Success = 200,
BadRequest = 400
}
// Substitutions
export function isInOpenInterval(start: number, end: number) {
return tersible(a => a > start && a < end, () => `(${start}...${end})`)
}
const bar = `${x} ${y}`;
// readonly
function f1(mt: [number, number], rt: readonly [number, number]) {
}
function f2(ma: string[], ra: readonly string[], mt: [string, string], rt: readonly [string, string]) {
}
type ReadWrite = { -readonly [P in keyof T] : T[P] };
// const assertion
let obj = { x: 10, y: [20, 30], z: { a: { b: 42 } } } as const;
let r2 = { x: 20, y: 10 } as const;
let r2 = {...p} as const;
let p1 = { x: 10, y: 20 as const };
let p2 = { 10 as const, 'foo' as const };
// Definite assignment operator
class Cl {
one?: string;
two!: string;
}
let x! = 1;
// Function with multiple arguments
const children = [].map>>(element => {
if (!this.identityProvider) {
return element;
}
return element;
});
// Numerics
var a = 0xA;
var b = 0b1;
var c = 0o7;
var d = 1.1E+3;
var e = 1.E+3;
var f = .1E+3;
var g = 1E+3;
var h = 1.1;
var i = 1.;
var j = .1;
var k = 1;
var l = 1__.e+3_22 | .2____e2 | 0o1_23 | 11__. ;
// Bigint
const binBig = 0b101n;
const octBig = 0o567n;
const hexBig = 0xC0Bn;
const decBig = 123n;
// Types
let a: null = null;
let b: number = 123;
let c: number = 123.456;
let d: string = `Geeks`;
let e: undefined = undefined;
let f: boolean = true;
let g: number = 0b111001; // Binary
let h: number = 0o436; // Octal
let i: number = 0xadf0d; // Hexa-Decimal
const query = query<[number], number>(`
SELECT *
FROM statistics
WHERE unit_id = $1`)
function runQuery() {
const query = createQuery<[number[]], Table>(`
some SQL here
`)
return database.execute(query)
}
aa: string ? string
string // Don't highlight
aa: string assa |
string
string ;
string
aa: { string
string } // Don't highlight
aa: [ string
string ]
aa: ( string
string ) // Don't highlight
aa: string
interface a {
aa: /* comment
*/ string,
bb: /* comment */
number,
cc: // comment
void,
dd:
any,
}
null, <{[key]: () => any}> null
null, <{[key]: () =>{a: number}}> null
// Correctly highlighting regular expressions
dt = ((dt[0] * 1e9 + dt[1]) / 1e6).toFixed(3).replace(/\.?0+$/, '') + 'ms';
(a[0] / 2) / (2)
// Type guards
function isNumber(x: any): x is number {
return typeof x === "number";
}
+
+// Conditional expressions (highlight keywords before ":")
+class C {
+ w = () =>
+ this.a() ? true : this.b() ? false : true;
+ z = () =>
+ this.b() ? hello : k;
+}
diff --git a/autotests/reference/test.ts.ref b/autotests/reference/test.ts.ref
index c5ac425..4901cd4 100644
--- a/autotests/reference/test.ts.ref
+++ b/autotests/reference/test.ts.ref
@@ -1,181 +1,189 @@
/// types="node" />
// TypeScript Test
class Student {
fullName: string;
constructor(public firstName: string, public middleInitial: string, public lastName: string) {
this. = firstName + " " + middleInitial + " " + lastName;
}
}
interface Person {
firstName: string;
lastName: string;
}
function greeter(person : Person) {
return "Hello, " + person. + " " + person.;
}
let user = new Student("Jane", "M.", "User");
document.. = greeter(user);
JSON.()
console.("Hello world");
import http = require("http");
import path = require("path");
import URL = url.;
import { Readable, Writable } from "stream";
import { isBuffer, isString, isObject } from "util";
const port = 8__88___8;
const baseUrl = new URL(`http://localhost:${port}/`);
const rootDir = path.dirname(__dirname);
const defaultBrowser = os.platform() === "win32" ? "edge" : "chrome";
let browser: "edge" | "chrome" | "none" = defaultBrowser;
let grep: string | undefined;
interface FileBasedTestConfiguration {
[setting: string]: string;
}
function swapCase(s: string): string {
return s.replace(/\w/g, (ch) => {
const up = ch.toUpperCase();
return ch === up ? ch.toLowerCase() : up;
});
}
for (var i in pieces) {
switch (true) {
case /^\"?Accession\"?/.test(pieces[i]):
numeration[0] = i;
break;
}
}
const enum ResponseCode {
Success = 200,
BadRequest = 400
}
// Substitutions
export function isInOpenInterval(start: number, end: number) {
return tersible(a => a > start && a < end, () => `(${start}...${end})`)
}
const bar = `${x} ${y}`;
// readonly
function f1(mt: [number, number], rt: readonly [number, number]) {
}
function f2(ma: string[], ra: readonly string[], mt: [string, string], rt: readonly [string, string]) {
}
type ReadWrite<T> = { -readonly [P in keyof T] : T[P] };
// const assertion
let obj = { x: 10, y: [20, 30], z: { a: { b: 42 } } } as const;
let r2 = { x: 20, y: 10 } as const;
let r2 = {...p} as const;
let p1 = { x: 10, y: 20 as const };
let p2 = { 10 as const, 'foo' as const };
// Definite assignment operator
class Cl {
- one?: string;
+ one?: string;
two!: string;
}
let x! = 1;
// Function with multiple arguments
const children = [].map<Set<Map<number, string>>>(element => {
if (!this.) {
return element;
}
return element;
});
// Numerics
var a = 0xA;
var b = 0b1;
var c = 0o7;
var d = 1.1E+3;
var e = 1.E+3;
var f = .1E+3;
var g = 1E+3;
var h = 1.1;
var i = 1.;
var j = .1;
var k = 1;
var l = 1__.e+3_22 | .2____e2 | 0o1_23 | 11__. ;
// Bigint
const binBig = 0b101n;
const octBig = 0o567n;
const hexBig = 0xC0Bn;
const decBig = 123n;
// Types
let a: null = null;
let b: number = 123;
let c: number = 123.456;
let d: string = `Geeks`;
let e: undefined = undefined;
let f: boolean = true;
let g: number = 0b111001; // Binary
let h: number = 0o436; // Octal
let i: number = 0xadf0d; // Hexa-Decimal
const query = query<[number], number>(`
SELECT *
FROM statistics
WHERE unit_id = $1`)
function runQuery() {
const query = createQuery<[number[]], Table<Columns>>(`
some SQL here
`)
return database.execute(query)
}
aa: <sdf/> string ?<ssd/> string
string // Don't highlight
aa: string assa |
string
string ;
string
aa: { string
string } // Don't highlight
aa: [ string
string ]
aa: ( string
string ) // Don't highlight
aa: string <string>
interface a {
aa: /* comment
*/ string,
bb: /* comment */
number,
cc: // comment
void,
dd:
any,
}
null, <{[key]: () => any}> null
null, <{[key]: () =>{a: number}}> null
// Correctly highlighting regular expressions
dt = ((dt[0] * 1e9 + dt[1]) / 1e6).toFixed(3).replace(/\.?0+$/, '') + 'ms';
(a[0] / 2) / (2)
// Type guards
function isNumber(x: any): x is number {
return typeof x === "number";
}
+
+// Conditional expressions (highlight keywords before ":")
+class C {
+ w = () =>
+ this.a() ? true : this.b() ? false : true;
+ z = () =>
+ this.b() ? hello : k;
+}
diff --git a/data/syntax/typescript-react.xml b/data/syntax/typescript-react.xml
index 02067b4..f74d2fd 100644
--- a/data/syntax/typescript-react.xml
+++ b/data/syntax/typescript-react.xml
@@ -1,481 +1,488 @@
]>
-
+
+
+
+
+
+
diff --git a/data/syntax/typescript.xml b/data/syntax/typescript.xml
index 1c6171d..d2d1df1 100644
--- a/data/syntax/typescript.xml
+++ b/data/syntax/typescript.xml
@@ -1,2058 +1,2089 @@
]>
controlflow##JavaScript
- goto
keywords##JavaScript
- declare
reserved##JavaScript
- type
- arguments
- readonly
- abstract
- constructor
- get
- set
module##JavaScript
primitives##JavaScript
- object
- namespace
- module
- keyof
- infer
- string
- number
- boolean
- symbol
- any
- void
- never
- unknown
- undefined
- null
- object
- Array
- ArrayBuffer
- Atomics
- Boolean
- DataView
- Date
- Float32Array
- Float64Array
- Function
- Generator
- GeneratorFunction
- Int8Array
- Int16Array
- Int32Array
- Intl
- Map
- Number
- Object
- Proxy
- Reflect
- RegExp
- Set
- SharedArrayBuffer
- SIMD
- String
- Symbol
- TypedArray
- Uint8Array
- Uint16Array
- Uint32Array
- Uint8ClampedArray
- WeakMap
- WeakSet
- Error
- EvalError
- InternalError
- RangeError
- ReferenceError
- SyntaxError
- TypeError
- URIError
- Math
- Promise
- JSON
- console
- process
- AnalyserNode
- ArrayBufferView
- Attr
- AudioBuffer
- AudioBufferSourceNode
- AudioContext
- AudioDestinationNode
- AudioListener
- AudioNode
- AudioParam
- BatteryManager
- BeforeUnloadEvent
- BiquadFilterNode
- Blob
- BufferSource
- ByteString
- CSS
- CSSConditionRule
- CSSCounterStyleRule
- CSSGroupingRule
- CSSMatrix
- CSSMediaRule
- CSSPageRule
- CSSPrimitiveValue
- CSSRule
- CSSRuleList
- CSSStyleDeclaration
- CSSStyleRule
- CSSStyleSheet
- CSSSupportsRule
- CSSValue
- CSSValueList
- CanvasGradient
- CanvasImageSource
- CanvasPattern
- CanvasRenderingContext2D
- ChannelMergerNode
- ChannelSplitterNode
- CharacterData
- ChromeWorker
- CloseEvent
- Comment
- CompositionEvent
- Console
- ConvolverNode
- Coordinates
- Credential
- CredentialsContainer
- Crypto
- CryptoKey
- CustomEvent
- DOMError
- DOMException
- DOMHighResTimeStamp
- DOMImplementation
- DOMString
- DOMStringList
- DOMStringMap
- DOMTimeStamp
- DOMTokenList
- DataTransfer
- DataTransferItem
- DataTransferItemList
- DedicatedWorkerGlobalScope
- DelayNode
- DeviceProximityEvent
- DirectoryEntry
- DirectoryEntrySync
- DirectoryReader
- DirectoryReaderSync
- Document
- DocumentFragment
- DocumentTouch
- DocumentType
- DragEvent
- DynamicsCompressorNode
- Element
- Entry
- EntrySync
- ErrorEvent
- Event
- EventListener
- EventSource
- EventTarget
- FederatedCredential
- FetchEvent
- File
- FileEntry
- FileEntrySync
- FileException
- FileList
- FileReader
- FileReaderSync
- FileSystem
- FileSystemSync
- FontFace
- FormData
- GainNode
- Gamepad
- GamepadButton
- GamepadEvent
- Geolocation
- GlobalEventHandlers
- HTMLAnchorElement
- HTMLAreaElement
- HTMLAudioElement
- HTMLBRElement
- HTMLBaseElement
- HTMLBodyElement
- HTMLButtonElement
- HTMLCanvasElement
- HTMLCollection
- HTMLContentElement
- HTMLDListElement
- HTMLDataElement
- HTMLDataListElement
- HTMLDialogElement
- HTMLDivElement
- HTMLDocument
- HTMLElement
- HTMLEmbedElement
- HTMLFieldSetElement
- HTMLFontElement
- HTMLFormControlsCollection
- HTMLFormElement
- HTMLHRElement
- HTMLHeadElement
- HTMLHeadingElement
- HTMLHtmlElement
- HTMLIFrameElement
- HTMLImageElement
- HTMLInputElement
- HTMLKeygenElement
- HTMLLIElement
- HTMLLabelElement
- HTMLLegendElement
- HTMLLinkElement
- HTMLMapElement
- HTMLMediaElement
- HTMLMetaElement
- HTMLMeterElement
- HTMLModElement
- HTMLOListElement
- HTMLObjectElement
- HTMLOptGroupElement
- HTMLOptionElement
- HTMLOptionsCollection
- HTMLOutputElement
- HTMLParagraphElement
- HTMLParamElement
- HTMLPreElement
- HTMLProgressElement
- HTMLQuoteElement
- HTMLScriptElement
- HTMLSelectElement
- HTMLShadowElement
- HTMLSourceElement
- HTMLSpanElement
- HTMLStyleElement
- HTMLTableCaptionElement
- HTMLTableCellElement
- HTMLTableColElement
- HTMLTableDataCellElement
- HTMLTableElement
- HTMLTableHeaderCellElement
- HTMLTableRowElement
- HTMLTableSectionElement
- HTMLTextAreaElement
- HTMLTimeElement
- HTMLTitleElement
- HTMLTrackElement
- HTMLUListElement
- HTMLUnknownElement
- HTMLVideoElement
- HashChangeEvent
- History
- IDBCursor
- IDBCursorWithValue
- IDBDatabase
- IDBEnvironment
- IDBFactory
- IDBIndex
- IDBKeyRange
- IDBMutableFile
- IDBObjectStore
- IDBOpenDBRequest
- IDBRequest
- IDBTransaction
- IDBVersionChangeEvent
- IIRFilterNode
- IdentityManager
- ImageBitmap
- ImageBitmapFactories
- ImageData
- Index
- InputDeviceCapabilities
- InputEvent
- InstallEvent
- InstallTrigger
- KeyboardEvent
- LinkStyle
- LocalFileSystem
- LocalFileSystemSync
- Location
- MIDIAccess
- MIDIConnectionEvent
- MIDIInput
- MIDIInputMap
- MIDIOutputMap
- MediaElementAudioSourceNode
- MediaError
- MediaKeyMessageEvent
- MediaKeySession
- MediaKeyStatusMap
- MediaKeySystemAccess
- MediaKeySystemConfiguration
- MediaKeys
- MediaRecorder
- MediaStream
- MediaStreamAudioDestinationNode
- MediaStreamAudioSourceNode
- MessageChannel
- MessageEvent
- MessagePort
- MouseEvent
- MutationObserver
- MutationRecord
- NamedNodeMap
- Navigator
- NavigatorConcurrentHardware
- NavigatorGeolocation
- NavigatorID
- NavigatorLanguage
- NavigatorOnLine
- Node
- NodeFilter
- NodeIterator
- NodeList
- NonDocumentTypeChildNode
- Notification
- OfflineAudioCompletionEvent
- OfflineAudioContext
- OscillatorNode
- PageTransitionEvent
- PannerNode
- ParentNode
- PasswordCredential
- Path2D
- PaymentAddress
- PaymentRequest
- PaymentResponse
- Performance
- PerformanceEntry
- PerformanceFrameTiming
- PerformanceMark
- PerformanceMeasure
- PerformanceNavigation
- PerformanceNavigationTiming
- PerformanceObserver
- PerformanceObserverEntryList
- PerformanceResourceTiming
- PerformanceTiming
- PeriodicSyncEvent
- PeriodicWave
- Plugin
- Point
- PointerEvent
- PopStateEvent
- PortCollection
- Position
- PositionError
- PositionOptions
- PresentationConnectionClosedEvent
- PresentationConnectionList
- PresentationReceiver
- ProcessingInstruction
- ProgressEvent
- PromiseRejectionEvent
- PushEvent
- PushRegistrationManager
- RTCCertificate
- RTCConfiguration
- RTCPeerConnection
- RTCSessionDescriptionCallback
- RTCStatsReport
- RadioNodeList
- RandomSource
- Range
- ReadableByteStream
- RenderingContext
- SVGAElement
- SVGAngle
- SVGAnimateColorElement
- SVGAnimateElement
- SVGAnimateMotionElement
- SVGAnimateTransformElement
- SVGAnimatedAngle
- SVGAnimatedBoolean
- SVGAnimatedEnumeration
- SVGAnimatedInteger
- SVGAnimatedLength
- SVGAnimatedLengthList
- SVGAnimatedNumber
- SVGAnimatedNumberList
- SVGAnimatedPoints
- SVGAnimatedPreserveAspectRatio
- SVGAnimatedRect
- SVGAnimatedString
- SVGAnimatedTransformList
- SVGAnimationElement
- SVGCircleElement
- SVGClipPathElement
- SVGCursorElement
- SVGDefsElement
- SVGDescElement
- SVGElement
- SVGEllipseElement
- SVGEvent
- SVGFilterElement
- SVGFontElement
- SVGFontFaceElement
- SVGFontFaceFormatElement
- SVGFontFaceNameElement
- SVGFontFaceSrcElement
- SVGFontFaceUriElement
- SVGForeignObjectElement
- SVGGElement
- SVGGlyphElement
- SVGGradientElement
- SVGHKernElement
- SVGImageElement
- SVGLength
- SVGLengthList
- SVGLineElement
- SVGLinearGradientElement
- SVGMPathElement
- SVGMaskElement
- SVGMatrix
- SVGMissingGlyphElement
- SVGNumber
- SVGNumberList
- SVGPathElement
- SVGPatternElement
- SVGPoint
- SVGPolygonElement
- SVGPolylineElement
- SVGPreserveAspectRatio
- SVGRadialGradientElement
- SVGRect
- SVGRectElement
- SVGSVGElement
- SVGScriptElement
- SVGSetElement
- SVGStopElement
- SVGStringList
- SVGStylable
- SVGStyleElement
- SVGSwitchElement
- SVGSymbolElement
- SVGTRefElement
- SVGTSpanElement
- SVGTests
- SVGTextElement
- SVGTextPositioningElement
- SVGTitleElement
- SVGTransform
- SVGTransformList
- SVGTransformable
- SVGUseElement
- SVGVKernElement
- SVGViewElement
- ServiceWorker
- ServiceWorkerContainer
- ServiceWorkerGlobalScope
- ServiceWorkerRegistration
- ServiceWorkerState
- ShadowRoot
- SharedWorker
- SharedWorkerGlobalScope
- SourceBufferList
- StereoPannerNode
- Storage
- StorageEvent
- StyleSheet
- StyleSheetList
- SubtleCrypto
- SyncEvent
- Text
- TextMetrics
- TimeEvent
- TimeRanges
- Touch
- TouchEvent
- TouchList
- Transferable
- TreeWalker
- UIEvent
- USVString
- VRDisplayCapabilities
- ValidityState
- WaveShaperNode
- WebGL
- WebGLActiveInfo
- WebGLBuffer
- WebGLContextEvent
- WebGLFramebuffer
- WebGLProgram
- WebGLRenderbuffer
- WebGLRenderingContext
- WebGLShader
- WebGLShaderPrecisionFormat
- WebGLTexture
- WebGLTimerQueryEXT
- WebGLTransformFeedback
- WebGLUniformLocation
- WebGLVertexArrayObject
- WebGLVertexArrayObjectOES
- WebSocket
- WebSockets
- WebVTT
- WheelEvent
- Window
- WindowBase64
- WindowEventHandlers
- WindowTimers
- Worker
- WorkerGlobalScope
- WorkerLocation
- WorkerNavigator
- XMLHttpRequest
- XMLHttpRequestEventTarget
- XMLSerializer
- XPathExpression
- XPathResult
- XSLTProcessor
- Buffer
- EventEmitter
- Server
- Pipe
- Socket
- REPLServer
- ReadStream
- WriteStream
- Stream
- Inflate
- Deflate
- InflateRaw
- DeflateRaw
- GZip
- GUnzip
- Unzip
- Zip
- constructor
- length
- prototype
- __proto__
- EPSILON
- MAX_SAFE_INTEGER
- MAX_VALUE
- MIN_SAFE_INTEGER
- MIN_VALUE
- NEGATIVE_INFINITY
- POSITIVE_INFINITY
- clearInterval
- clearTimeout
- decodeURI
- decodeURIComponent
- encodeURI
- encodeURIComponent
- escape
- eval
- isFinite
- isNaN
- parseFloat
- parseInt
- require
- setTimeout
- setInterval
- super
- unescape
- uneval
- abs
- acos
- acosh
- asin
- asinh
- atan
- atan2
- atanh
- cbrt
- ceil
- clz32
- cos
- cosh
- exp
- expm1
- floor
- fround
- hypot
- imul
- log
- log10
- log1p
- log2
- max
- min
- pow
- random
- round
- sign
- sin
- sinh
- sqrt
- tan
- tanh
- trunc
- E
- LN10
- LN2
- LOG10E
- LOG2E
- PI
- SQRT1_2
- SQRT2
- assert
- clear
- count
- debug
- dir
- error
- group
- groupCollapsed
- groupEnd
- info
- log
- profile
- profileEnd
- table
- time
- timeEnd
- timeStamp
- trace
- warn
- parse
- stringify
- global
- GLOBAL
- root
- __dirname
- __filename
- arch
- argv
- config
- connected
- env
- execArgv
- execPath
- exitCode
- mainModule
- pid
- platform
- release
- stderr
- stdin
- stdout
- title
- version
- versions
- abort
- chdir
- cwd
- disconnect
- exit
- setegid
- seteuid
- getegid
- geteuid
- setgid
- setuid
- getgid
- getuid
- send
- setgroups
- getgroups
- initgroups
- kill
- memoryUsage
- nextTick
- umask
- uptime
- hrtime
- all
- catch
- finally
- race
- reject
- resolve
- then
- document
- event
- navigator
- performance
- screen
- window
- ATTRIBUTE_NODE
- CDATA_SECTION_NODE
- COMMENT_NODE
- DOCUMENT_FRAGMENT_NODE
- DOCUMENT_NODE
- DOCUMENT_TYPE_NODE
- DOMSTRING_SIZE_ERR
- ELEMENT_NODE
- ENTITY_NODE
- ENTITY_REFERENCE_NODE
- HIERARCHY_REQUEST_ERR
- INDEX_SIZE_ERR
- INUSE_ATTRIBUTE_ERR
- INVALID_CHARACTER_ERR
- NO_DATA_ALLOWED_ERR
- NO_MODIFICATION_ALLOWED_ERR
- NOT_FOUND_ERR
- NOT_SUPPORTED_ERR
- NOTATION_NODE
- PROCESSING_INSTRUCTION_NODE
- TEXT_NODE
- WRONG_DOCUMENT_ERR
- _content
- x
- y
- z
- abbr
- above
- accept
- acceptCharset
- accessKey
- action
- align
- aLink
- vLink
- aLinkcolor
- vLinkcolor
- all
- alt
- anchors
- appCodeName
- appCore
- applets
- appMinorVersion
- appName
- appVersion
- archive
- areas
- arguments
- attributes
- availHeight
- availLeft
- availTop
- availWidth
- axis
- background
- backgroundColor
- backgroundImage
- below
- bgColor
- body
- border
- borderBottomWidth
- borderColor
- borderLeftWidth
- borderRightWidth
- borderStyle
- borderTopWidth
- borderWidth
- bottom
- bufferDepth
- callee
- caller
- caption
- cellPadding
- cells
- cellSpacing
- ch
- characterSet
- charset
- checked
- childNodes
- chOff
- cite
- classes
- className
- clear
- clientInformation
- clip
- clipBoardData
- closed
- code
- codeBase
- codeType
- color
- colorDepth
- cols
- colSpan
- compact
- complete
- components
- content
- controllers
- cookie
- cookieEnabled
- cords
- cpuClass
- crypto
- current
- data
- dateTime
- declare
- defaultCharset
- defaultChecked
- defaultSelected
- defaultStatus
- defaultValue
- defaultView
- defer
- description
- dialogArguments
- dialogHeight
- dialogLeft
- dialogTop
- dialogWidth
- dir
- directories
- disabled
- display
- docmain
- doctype
- documentElement
- elements
- embeds
- enabledPlugin
- encoding
- enctype
- entities
- event
- expando
- external
- face
- fgColor
- filename
- firstChild
- fontFamily
- fontSize
- fontWeight
- form
- formName
- forms
- frame
- frameBorder
- frameElement
- frames
- hasFocus
- hash
- headers
- height
- history
- host
- hostname
- href
- hreflang
- hspace
- htmlFor
- httpEquiv
- id
- ids
- ignoreCase
- images
- implementation
- index
- innerHeight
- innerWidth
- input
- isMap
- label
- lang
- language
- lastChild
- lastIndex
- lastMatch
- lastModified
- lastParen
- layers
- layerX
- layerY
- left
- leftContext
- lineHeight
- link
- linkColor
- links
- listStyleType
- localName
- location
- locationbar
- longDesc
- lowsrc
- lowSrc
- marginBottom
- marginHeight
- marginLeft
- marginRight
- marginTop
- marginWidth
- maxLength
- media
- menubar
- method
- mimeTypes
- multiline
- multiple
- name
- nameProp
- namespaces
- namespaceURI
- next
- nextSibling
- nodeName
- nodeType
- nodeValue
- noHref
- noResize
- noShade
- notationName
- notations
- noWrap
- object
- offscreenBuffering
- onLine
- onreadystatechange
- opener
- opsProfile
- options
- oscpu
- outerHeight
- outerWidth
- ownerDocument
- paddingBottom
- paddingLeft
- paddingRight
- paddingTop
- pageX
- pageY
- pageXOffset
- pageYOffset
- parent
- parentLayer
- parentNode
- parentWindow
- pathname
- personalbar
- pixelDepth
- pkcs11
- platform
- plugins
- port
- prefix
- previous
- previousDibling
- product
- productSub
- profile
- profileend
- prompt
- prompter
- protocol
- publicId
- readOnly
- readyState
- referrer
- rel
- responseText
- responseXML
- rev
- right
- rightContext
- rowIndex
- rows
- rowSpan
- rules
- scheme
- scope
- screenX
- screenY
- screenLeft
- screenTop
- scripts
- scrollbars
- scrolling
- sectionRowIndex
- security
- securityPolicy
- selected
- selectedIndex
- selection
- self
- shape
- siblingAbove
- siblingBelow
- size
- source
- specified
- standby
- start
- status
- statusbar
- statusText
- style
- styleSheets
- suffixes
- summary
- systemId
- systemLanguage
- tagName
- tags
- target
- tBodies
- text
- textAlign
- textDecoration
- textIndent
- textTransform
- tFoot
- tHead
- title
- toolbar
- top
- type
- undefined
- uniqueID
- updateInterval
- URL
- URLUnencoded
- useMap
- userAgent
- userLanguage
- userProfile
- vAlign
- value
- valueType
- vendor
- vendorSub
- version
- visibility
- vspace
- whiteSpace
- width
- XMLDocument
- XSLDocument
- zIndex
- acceptNode
- add
- addEventListener
- addTextTrack
- adoptNode
- after
- animate
- append
- appendChild
- appendData
- before
- blur
- canPlayType
- captureStream
- caretPositionFromPoint
- caretRangeFromPoint
- checkValidity
- clear
- click
- cloneContents
- cloneNode
- cloneRange
- close
- closest
- collapse
- compareBoundaryPoints
- compareDocumentPosition
- comparePoint
- contains
- convertPointFromNode
- convertQuadFromNode
- convertRectFromNode
- createAttribute
- createAttributeNS
- createCaption
- createCDATASection
- createComment
- createContextualFragment
- createDocument
- createDocumentFragment
- createDocumentType
- createElement
- createElementNS
- createEntityReference
- createEvent
- createExpression
- createHTMLDocument
- createNodeIterator
- createNSResolver
- createProcessingInstruction
- createRange
- createShadowRoot
- createTBody
- createTextNode
- createTFoot
- createTHead
- createTreeWalker
- delete
- deleteCaption
- deleteCell
- deleteContents
- deleteData
- deleteRow
- deleteTFoot
- deleteTHead
- detach
- disconnect
- dispatchEvent
- elementFromPoint
- elementsFromPoint
- enableStyleSheetsForSet
- entries
- evaluate
- execCommand
- exitFullscreen
- exitPointerLock
- expand
- extractContents
- fastSeek
- firstChild
- focus
- forEach
- get
- getAll
- getAnimations
- getAttribute
- getAttributeNames
- getAttributeNode
- getAttributeNodeNS
- getAttributeNS
- getBoundingClientRect
- getBoxQuads
- getClientRects
- getContext
- getDestinationInsertionPoints
- getElementById
- getElementsByClassName
- getElementsByName
- getElementsByTagName
- getElementsByTagNameNS
- getItem
- getNamedItem
- getSelection
- getStartDate
- getVideoPlaybackQuality
- has
- hasAttribute
- hasAttributeNS
- hasAttributes
- hasChildNodes
- hasFeature
- hasFocus
- importNode
- initEvent
- insertAdjacentElement
- insertAdjacentHTML
- insertAdjacentText
- insertBefore
- insertCell
- insertData
- insertNode
- insertRow
- intersectsNode
- isDefaultNamespace
- isEqualNode
- isPointInRange
- isSameNode
- item
- key
- keys
- lastChild
- load
- lookupNamespaceURI
- lookupPrefix
- matches
- move
- moveAttribute
- moveAttributeNode
- moveChild
- moveNamedItem
- namedItem
- nextNode
- nextSibling
- normalize
- observe
- open
- parentNode
- pause
- play
- postMessage
- prepend
- preventDefault
- previousNode
- previousSibling
- probablySupportsContext
- queryCommandEnabled
- queryCommandIndeterm
- queryCommandState
- queryCommandSupported
- queryCommandValue
- querySelector
- querySelectorAll
- registerContentHandler
- registerElement
- registerProtocolHandler
- releaseCapture
- releaseEvents
- remove
- removeAttribute
- removeAttributeNode
- removeAttributeNS
- removeChild
- removeEventListener
- removeItem
- replace
- replaceChild
- replaceData
- replaceWith
- reportValidity
- requestFullscreen
- requestPointerLock
- reset
- scroll
- scrollBy
- scrollIntoView
- scrollTo
- seekToNextFrame
- select
- selectNode
- selectNodeContents
- set
- setAttribute
- setAttributeNode
- setAttributeNodeNS
- setAttributeNS
- setCapture
- setCustomValidity
- setEnd
- setEndAfter
- setEndBefore
- setItem
- setNamedItem
- setRangeText
- setSelectionRange
- setSinkId
- setStart
- setStartAfter
- setStartBefore
- slice
- splitText
- stepDown
- stepUp
- stopImmediatePropagation
- stopPropagation
- submit
- substringData
- supports
- surroundContents
- takeRecords
- terminate
- toBlob
- toDataURL
- toggle
- toString
- values
- write
- writeln
- onRowsinserted
- onRowsdelete
- onRowenter
- onRowexit
- onResize
- onResizestart
- onResizeend
- onReset
- onReadystatechange
- onMouseout
- onMouseover
- onMousedown
- onMouseup
- onMousemove
- onBeforecut
- onBeforedeactivate
- onBeforeunload
- onBeforeupdate
- onBeforepaste
- onBeforeprint
- onBeforeeditfocus
- onBeforeactivate
- onBlur
- onScrolltop
- onSubmit
- onSelect
- onSelectstart
- onSelectionchange
- onHover
- onHelp
- onChange
- onContextmenu
- onControlselect
- onCut
- onCellchange
- onClock
- onClose
- onDeactivate
- onDatasetchanged
- onDatasetcomplete
- onDataavailable
- onDrop
- onDrag
- onDragstart
- onDragover
- onDragdrop
- onDragenter
- onDragend
- onDragleave
- onDblclick
- onUnload
- onPaste
- onPropertychange
- onError
- onErrorupdate
- onKeydown
- onKeyup
- onKeypress
- onFocus
- onLoad
- onActivate
- onAfterupdate
- onAfterprint
- onAbort
- shift
- showModelessDialog
- showModalDialog
- showHelp
- scroll
- scrollX
- scrollByPages
- scrollByLines
- scrollY
- scrollTo
- stop
- strike
- sizeToContent
- sidebar
- signText
- sort
- sup
- sub
- substr
- substring
- splice
- split
- send
- setMilliseconds
- setSeconds
- setMinutes
- setHours
- setMonth
- setYear
- setFullYear
- setDate
- setUTCMilliseconds
- setUTCSeconds
- setUTCMinutes
- setUTCHours
- setUTCMonth
- setUTCFullYear
- setUTCDate
- setTime
- setHotkeys
- setCursor
- setZOptions
- setActive
- setResizable
- setRequestHeader
- search
- slice
- savePreferences
- small
- home
- handleEvent
- navigate
- char
- charCodeAt
- charAt
- concat
- contextual
- confirm
- compile
- clear
- captureEvents
- call
- createStyleSheet
- createPopup
- createEventObject
- toGMTString
- toUTCString
- toString
- toSource
- toUpperCase
- toLowerCase
- toLocaleString
- test
- taint
- taintEnabled
- indexOf
- italics
- disableExternalCapture
- dump
- detachEvent
- unshift
- untaint
- unwatch
- updateCommands
- join
- javaEnabled
- pop
- push
- plugins.refresh
- paddings
- parse
- print
- prompt
- preference
- enableExternalCapture
- exec
- execScript
- valueOf
- UTC
- find
- file
- fileModifiedDate
- fileSize
- fileCreatedDate
- fileUpdatedDate
- fixed
- fontsize
- fontcolor
- forward
- fromCharCode
- watch
- link
- load
- lastIndexOf
- anchor
- attachEvent
- atob
- apply
- alert
- abort
- routeEvents
- resize
- resizeBy
- resizeTo
- recalc
- returnValue
- replace
- reverse
- reload
- releaseCapture
- releaseEvents
- go
- getMilliseconds
- getSeconds
- getMinutes
- getHours
- getMonth
- getDay
- getYear
- getFullYear
- getTime
- getDate
- getTimezoneOffset
- getUTCMilliseconds
- getUTCSeconds
- getUTCMinutes
- getUTCHours
- getUTCDay
- getUTCMonth
- getUTCFullYear
- getUTCDate
- getAttention
- getSelection
- getResponseHeader
- getAllResponseHeaders
- moveBy
- moveBelow
- moveTo
- moveToAbsolute
- moveAbove
- mergeAttributes
- match
- margins
- btoa
- big
- bold
- borderWidths
- blink
- back
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+