1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027 |
- 'use strict';
- var ts = require('./typescript');
- var minimatch = require('minimatch');
- var fs$1 = require('fs');
- var fsp = require('fs/promises');
- var os = require('os');
- var path$2 = require('path');
- var tinyglobby = require('tinyglobby');
- function _interopNamespaceCompat(e) {
- if (e && typeof e === 'object' && 'default' in e) return e;
- var n = Object.create(null);
- if (e) {
- Object.keys(e).forEach(function (k) {
- if (k !== 'default') {
- var d = Object.getOwnPropertyDescriptor(e, k);
- Object.defineProperty(n, k, d.get ? d : {
- enumerable: true,
- get: function () { return e[k]; }
- });
- }
- });
- }
- n.default = e;
- return Object.freeze(n);
- }
- var ts__namespace = /*#__PURE__*/_interopNamespaceCompat(ts);
- var minimatch__namespace = /*#__PURE__*/_interopNamespaceCompat(minimatch);
- var fs__namespace = /*#__PURE__*/_interopNamespaceCompat(fs$1);
- var fsp__namespace = /*#__PURE__*/_interopNamespaceCompat(fsp);
- var os__namespace = /*#__PURE__*/_interopNamespaceCompat(os);
- var path__namespace = /*#__PURE__*/_interopNamespaceCompat(path$2);
- class KeyValueCache {
- #cacheItems = new Map();
- getSize() {
- return this.#cacheItems.size;
- }
- getValues() {
- return this.#cacheItems.values();
- }
- getValuesAsArray() {
- return Array.from(this.getValues());
- }
- getKeys() {
- return this.#cacheItems.keys();
- }
- getEntries() {
- return this.#cacheItems.entries();
- }
- getOrCreate(key, createFunc) {
- let item = this.get(key);
- if (item == null) {
- item = createFunc();
- this.set(key, item);
- }
- return item;
- }
- has(key) {
- return this.#cacheItems.has(key);
- }
- get(key) {
- return this.#cacheItems.get(key);
- }
- set(key, value) {
- this.#cacheItems.set(key, value);
- }
- replaceKey(key, newKey) {
- if (!this.#cacheItems.has(key))
- throw new Error("Key not found.");
- const value = this.#cacheItems.get(key);
- this.#cacheItems.delete(key);
- this.#cacheItems.set(newKey, value);
- }
- removeByKey(key) {
- this.#cacheItems.delete(key);
- }
- clear() {
- this.#cacheItems.clear();
- }
- }
- class ComparerToStoredComparer {
- #comparer;
- #storedValue;
- constructor(comparer, storedValue) {
- this.#comparer = comparer;
- this.#storedValue = storedValue;
- }
- compareTo(value) {
- return this.#comparer.compareTo(this.#storedValue, value);
- }
- }
- class LocaleStringComparer {
- static instance = new LocaleStringComparer();
- compareTo(a, b) {
- const comparisonResult = a.localeCompare(b, "en-us-u-kf-upper");
- if (comparisonResult < 0)
- return -1;
- else if (comparisonResult === 0)
- return 0;
- return 1;
- }
- }
- class PropertyComparer {
- #comparer;
- #getProperty;
- constructor(getProperty, comparer) {
- this.#getProperty = getProperty;
- this.#comparer = comparer;
- }
- compareTo(a, b) {
- return this.#comparer.compareTo(this.#getProperty(a), this.#getProperty(b));
- }
- }
- class PropertyStoredComparer {
- #comparer;
- #getProperty;
- constructor(getProperty, comparer) {
- this.#getProperty = getProperty;
- this.#comparer = comparer;
- }
- compareTo(value) {
- return this.#comparer.compareTo(this.#getProperty(value));
- }
- }
- class ArrayUtils {
- constructor() {
- }
- static isReadonlyArray(a) {
- return a instanceof Array;
- }
- static isNullOrEmpty(a) {
- return !(a instanceof Array) || a.length === 0;
- }
- static getUniqueItems(a) {
- return a.filter((item, index) => a.indexOf(item) === index);
- }
- static removeFirst(a, item) {
- const index = a.indexOf(item);
- if (index === -1)
- return false;
- a.splice(index, 1);
- return true;
- }
- static removeAll(a, isMatch) {
- const removedItems = [];
- for (let i = a.length - 1; i >= 0; i--) {
- if (isMatch(a[i])) {
- removedItems.push(a[i]);
- a.splice(i, 1);
- }
- }
- return removedItems;
- }
- static *toIterator(items) {
- for (const item of items)
- yield item;
- }
- static sortByProperty(items, getProp) {
- items.sort((a, b) => getProp(a) <= getProp(b) ? -1 : 1);
- return items;
- }
- static groupBy(items, getGroup) {
- const result = [];
- const groups = {};
- for (const item of items) {
- const group = getGroup(item).toString();
- if (groups[group] == null) {
- groups[group] = [];
- result.push(groups[group]);
- }
- groups[group].push(item);
- }
- return result;
- }
- static binaryInsertWithOverwrite(items, newItem, comparer) {
- let top = items.length - 1;
- let bottom = 0;
- while (bottom <= top) {
- const mid = Math.floor((top + bottom) / 2);
- if (comparer.compareTo(newItem, items[mid]) < 0)
- top = mid - 1;
- else
- bottom = mid + 1;
- }
- if (items[top] != null && comparer.compareTo(newItem, items[top]) === 0)
- items[top] = newItem;
- else
- items.splice(top + 1, 0, newItem);
- }
- static binarySearch(items, storedComparer) {
- let top = items.length - 1;
- let bottom = 0;
- while (bottom <= top) {
- const mid = Math.floor((top + bottom) / 2);
- const comparisonResult = storedComparer.compareTo(items[mid]);
- if (comparisonResult === 0)
- return mid;
- else if (comparisonResult < 0)
- top = mid - 1;
- else
- bottom = mid + 1;
- }
- return -1;
- }
- static containsSubArray(items, subArray) {
- let findIndex = 0;
- for (const item of items) {
- if (subArray[findIndex] === item) {
- findIndex++;
- if (findIndex === subArray.length)
- return true;
- }
- else {
- findIndex = 0;
- }
- }
- return false;
- }
- }
- function deepClone(objToClone) {
- return clone(objToClone);
- function clone(obj) {
- const newObj = Object.create(obj.constructor.prototype);
- for (const propName of Object.keys(obj))
- newObj[propName] = cloneItem(obj[propName]);
- return newObj;
- }
- function cloneArray(array) {
- return array.map(cloneItem);
- }
- function cloneItem(item) {
- if (item instanceof Array)
- return cloneArray(item);
- else if (typeof item === "object")
- return item === null ? item : clone(item);
- return item;
- }
- }
- class EventContainer {
- #subscriptions = [];
- subscribe(subscription) {
- const index = this.#getIndex(subscription);
- if (index === -1)
- this.#subscriptions.push(subscription);
- }
- unsubscribe(subscription) {
- const index = this.#getIndex(subscription);
- if (index >= 0)
- this.#subscriptions.splice(index, 1);
- }
- fire(arg) {
- for (const subscription of this.#subscriptions)
- subscription(arg);
- }
- #getIndex(subscription) {
- return this.#subscriptions.indexOf(subscription);
- }
- }
- class IterableUtils {
- static find(items, condition) {
- for (const item of items) {
- if (condition(item))
- return item;
- }
- return undefined;
- }
- }
- function nameof(key1, key2) {
- return key2 ?? key1;
- }
- class ObjectUtils {
- constructor() {
- }
- static clone(obj) {
- if (obj == null)
- return undefined;
- if (obj instanceof Array)
- return cloneArray(obj);
- return Object.assign({}, obj);
- function cloneArray(a) {
- return a.map(item => ObjectUtils.clone(item));
- }
- }
- }
- function matchFiles(path, extensions, excludes, includes, useCaseSensitiveFileNames, currentDirectory, depth, getEntries, realpath, directoryExists) {
- return ts__namespace.matchFiles.apply(this, arguments);
- }
- function getFileMatcherPatterns(path, excludes, includes, useCaseSensitiveFileNames, currentDirectory) {
- return ts__namespace.getFileMatcherPatterns.apply(this, arguments);
- }
- function getEmitModuleResolutionKind(compilerOptions) {
- return ts__namespace.getEmitModuleResolutionKind.apply(this, arguments);
- }
- function getSyntaxKindName(kind) {
- return getKindCache()[kind];
- }
- let kindCache = undefined;
- function getKindCache() {
- if (kindCache != null)
- return kindCache;
- kindCache = {};
- for (const name of Object.keys(ts__namespace.SyntaxKind).filter(k => isNaN(parseInt(k, 10)))) {
- const value = ts__namespace.SyntaxKind[name];
- if (kindCache[value] == null)
- kindCache[value] = name;
- }
- return kindCache;
- }
- exports.errors = void 0;
- (function (errors) {
- class BaseError extends Error {
- constructor(message, node) {
- const nodeLocation = node && getPrettyNodeLocation(node);
- const messageWithLocation = nodeLocation ? `${message}\n\n${nodeLocation}` : message;
- super(messageWithLocation);
- this.message = messageWithLocation;
- }
- }
- errors.BaseError = BaseError;
- class ArgumentError extends BaseError {
- constructor(argName, message, node) {
- super(`Argument Error (${argName}): ${message}`, node);
- }
- }
- errors.ArgumentError = ArgumentError;
- class ArgumentNullOrWhitespaceError extends ArgumentError {
- constructor(argName, node) {
- super(argName, "Cannot be null or whitespace.", node);
- }
- }
- errors.ArgumentNullOrWhitespaceError = ArgumentNullOrWhitespaceError;
- class ArgumentOutOfRangeError extends ArgumentError {
- constructor(argName, value, range, node) {
- super(argName, `Range is ${range[0]} to ${range[1]}, but ${value} was provided.`, node);
- }
- }
- errors.ArgumentOutOfRangeError = ArgumentOutOfRangeError;
- class ArgumentTypeError extends ArgumentError {
- constructor(argName, expectedType, actualType, node) {
- super(argName, `Expected type '${expectedType}', but was '${actualType}'.`, node);
- }
- }
- errors.ArgumentTypeError = ArgumentTypeError;
- class PathNotFoundError extends BaseError {
- path;
- constructor(path, prefix = "Path") {
- super(`${prefix} not found: ${path}`);
- this.path = path;
- }
- code = "ENOENT";
- }
- errors.PathNotFoundError = PathNotFoundError;
- class DirectoryNotFoundError extends PathNotFoundError {
- constructor(dirPath) {
- super(dirPath, "Directory");
- }
- }
- errors.DirectoryNotFoundError = DirectoryNotFoundError;
- class FileNotFoundError extends PathNotFoundError {
- constructor(filePath) {
- super(filePath, "File");
- }
- }
- errors.FileNotFoundError = FileNotFoundError;
- class InvalidOperationError extends BaseError {
- constructor(message, node) {
- super(message, node);
- }
- }
- errors.InvalidOperationError = InvalidOperationError;
- class NotImplementedError extends BaseError {
- constructor(message = "Not implemented.", node) {
- super(message, node);
- }
- }
- errors.NotImplementedError = NotImplementedError;
- class NotSupportedError extends BaseError {
- constructor(message) {
- super(message);
- }
- }
- errors.NotSupportedError = NotSupportedError;
- function throwIfNotType(value, expectedType, argName) {
- if (typeof value !== expectedType)
- throw new ArgumentTypeError(argName, expectedType, typeof value);
- }
- errors.throwIfNotType = throwIfNotType;
- function throwIfNotString(value, argName) {
- if (typeof value !== "string")
- throw new ArgumentTypeError(argName, "string", typeof value);
- }
- errors.throwIfNotString = throwIfNotString;
- function throwIfWhitespaceOrNotString(value, argName) {
- throwIfNotString(value, argName);
- if (value.trim().length === 0)
- throw new ArgumentNullOrWhitespaceError(argName);
- }
- errors.throwIfWhitespaceOrNotString = throwIfWhitespaceOrNotString;
- function throwIfOutOfRange(value, range, argName) {
- if (value < range[0] || value > range[1])
- throw new ArgumentOutOfRangeError(argName, value, range);
- }
- errors.throwIfOutOfRange = throwIfOutOfRange;
- function throwIfRangeOutOfRange(actualRange, range, argName) {
- if (actualRange[0] > actualRange[1])
- throw new ArgumentError(argName, `The start of a range must not be greater than the end: [${actualRange[0]}, ${actualRange[1]}]`);
- throwIfOutOfRange(actualRange[0], range, argName);
- throwIfOutOfRange(actualRange[1], range, argName);
- }
- errors.throwIfRangeOutOfRange = throwIfRangeOutOfRange;
- function throwNotImplementedForSyntaxKindError(kind, node) {
- throw new NotImplementedError(`Not implemented feature for syntax kind '${getSyntaxKindName(kind)}'.`, node);
- }
- errors.throwNotImplementedForSyntaxKindError = throwNotImplementedForSyntaxKindError;
- function throwIfNegative(value, argName) {
- if (value < 0)
- throw new ArgumentError(argName, "Expected a non-negative value.");
- }
- errors.throwIfNegative = throwIfNegative;
- function throwIfNullOrUndefined(value, errorMessage, node) {
- if (value == null)
- throw new InvalidOperationError(typeof errorMessage === "string" ? errorMessage : errorMessage(), node);
- return value;
- }
- errors.throwIfNullOrUndefined = throwIfNullOrUndefined;
- function throwNotImplementedForNeverValueError(value, sourceNode) {
- const node = value;
- if (node != null && typeof node.kind === "number")
- return throwNotImplementedForSyntaxKindError(node.kind, sourceNode);
- throw new NotImplementedError(`Not implemented value: ${JSON.stringify(value)}`, sourceNode);
- }
- errors.throwNotImplementedForNeverValueError = throwNotImplementedForNeverValueError;
- function throwIfNotEqual(actual, expected, description) {
- if (actual !== expected)
- throw new InvalidOperationError(`Expected ${actual} to equal ${expected}. ${description}`);
- }
- errors.throwIfNotEqual = throwIfNotEqual;
- function throwIfTrue(value, errorMessage) {
- if (value === true)
- throw new InvalidOperationError(errorMessage);
- }
- errors.throwIfTrue = throwIfTrue;
- })(exports.errors || (exports.errors = {}));
- function getPrettyNodeLocation(node) {
- const source = getSourceLocation(node);
- if (!source)
- return undefined;
- return `${source.filePath}:${source.loc.line}:${source.loc.character}\n`
- + `> ${source.loc.line} | ${source.lineText}`;
- }
- function getSourceLocation(node) {
- if (!isNode(node))
- return;
- const sourceFile = node.getSourceFile();
- const sourceCode = sourceFile.getFullText();
- const start = node.getStart();
- const lineStart = sourceCode.lastIndexOf("\n", start) + 1;
- const nextNewLinePos = sourceCode.indexOf("\n", start);
- const lineEnd = nextNewLinePos === -1 ? sourceCode.length : nextNewLinePos;
- const textStart = (start - lineStart > 40) ? start - 37 : lineStart;
- const textEnd = (lineEnd - textStart > 80) ? textStart + 77 : lineEnd;
- let lineText = "";
- if (textStart !== lineStart)
- lineText += "...";
- lineText += sourceCode.substring(textStart, textEnd);
- if (textEnd !== lineEnd)
- lineText += "...";
- return {
- filePath: sourceFile.getFilePath(),
- loc: {
- line: StringUtils.getLineNumberAtPos(sourceCode, start),
- character: start - lineStart + 1,
- },
- lineText,
- };
- }
- function isNode(node) {
- return typeof node === "object" && node !== null && ("getSourceFile" in node) && ("getStart" in node);
- }
- const CharCodes = {
- ASTERISK: "*".charCodeAt(0),
- NEWLINE: "\n".charCodeAt(0),
- CARRIAGE_RETURN: "\r".charCodeAt(0),
- SPACE: " ".charCodeAt(0),
- TAB: "\t".charCodeAt(0),
- CLOSE_BRACE: "}".charCodeAt(0),
- };
- const regExWhitespaceSet = new Set([" ", "\f", "\n", "\r", "\t", "\v", "\u00A0", "\u2028", "\u2029"].map(c => c.charCodeAt(0)));
- class StringUtils {
- constructor() {
- }
- static isWhitespaceCharCode(charCode) {
- return regExWhitespaceSet.has(charCode);
- }
- static isSpaces(text) {
- if (text == null || text.length === 0)
- return false;
- for (let i = 0; i < text.length; i++) {
- if (text.charCodeAt(i) !== CharCodes.SPACE)
- return false;
- }
- return true;
- }
- static hasBom(text) {
- return text.charCodeAt(0) === 0xFEFF;
- }
- static stripBom(text) {
- if (StringUtils.hasBom(text))
- return text.slice(1);
- return text;
- }
- static stripQuotes(text) {
- if (StringUtils.isQuoted(text))
- return text.substring(1, text.length - 1);
- return text;
- }
- static isQuoted(text) {
- return text.startsWith("'") && text.endsWith("'") || text.startsWith("\"") && text.endsWith("\"");
- }
- static isNullOrWhitespace(str) {
- return typeof str !== "string" || StringUtils.isWhitespace(str);
- }
- static isNullOrEmpty(str) {
- return typeof str !== "string" || str.length === 0;
- }
- static isWhitespace(text) {
- if (text == null)
- return true;
- for (let i = 0; i < text.length; i++) {
- if (!StringUtils.isWhitespaceCharCode(text.charCodeAt(i)))
- return false;
- }
- return true;
- }
- static startsWithNewLine(str) {
- if (str == null)
- return false;
- return str.charCodeAt(0) === CharCodes.NEWLINE || str.charCodeAt(0) === CharCodes.CARRIAGE_RETURN && str.charCodeAt(1) === CharCodes.NEWLINE;
- }
- static endsWithNewLine(str) {
- if (str == null)
- return false;
- return str.charCodeAt(str.length - 1) === CharCodes.NEWLINE;
- }
- static insertAtLastNonWhitespace(str, insertText) {
- let i = str.length;
- while (i > 0 && StringUtils.isWhitespaceCharCode(str.charCodeAt(i - 1)))
- i--;
- return str.substring(0, i) + insertText + str.substring(i);
- }
- static getLineNumberAtPos(str, pos) {
- exports.errors.throwIfOutOfRange(pos, [0, str.length], "pos");
- let count = 0;
- for (let i = 0; i < pos; i++) {
- if (str.charCodeAt(i) === CharCodes.NEWLINE)
- count++;
- }
- return count + 1;
- }
- static getLengthFromLineStartAtPos(str, pos) {
- exports.errors.throwIfOutOfRange(pos, [0, str.length], "pos");
- return pos - StringUtils.getLineStartFromPos(str, pos);
- }
- static getLineStartFromPos(str, pos) {
- exports.errors.throwIfOutOfRange(pos, [0, str.length], "pos");
- while (pos > 0) {
- const previousCharCode = str.charCodeAt(pos - 1);
- if (previousCharCode === CharCodes.NEWLINE || previousCharCode === CharCodes.CARRIAGE_RETURN)
- break;
- pos--;
- }
- return pos;
- }
- static getLineEndFromPos(str, pos) {
- exports.errors.throwIfOutOfRange(pos, [0, str.length], "pos");
- while (pos < str.length) {
- const currentChar = str.charCodeAt(pos);
- if (currentChar === CharCodes.NEWLINE || currentChar === CharCodes.CARRIAGE_RETURN)
- break;
- pos++;
- }
- return pos;
- }
- static escapeForWithinString(str, quoteKind) {
- return StringUtils.escapeChar(str, quoteKind).replace(/(\r?\n)/g, "\\$1");
- }
- static escapeChar(str, char) {
- if (char.length !== 1)
- throw new exports.errors.InvalidOperationError(`Specified char must be one character long.`);
- let result = "";
- for (const currentChar of str) {
- if (currentChar === char)
- result += "\\";
- result += currentChar;
- }
- return result;
- }
- static removeIndentation(str, opts) {
- const { isInStringAtPos, indentSizeInSpaces } = opts;
- const positions = [];
- let minIndentWidth;
- analyze();
- return buildString();
- function analyze() {
- let isAtStartOfLine = str.charCodeAt(0) === CharCodes.SPACE || str.charCodeAt(0) === CharCodes.TAB;
- for (let i = 0; i < str.length; i++) {
- if (!isAtStartOfLine) {
- if (str.charCodeAt(i) === CharCodes.NEWLINE && !isInStringAtPos(i + 1))
- isAtStartOfLine = true;
- continue;
- }
- let startPosition = i;
- let spacesCount = 0;
- let tabsCount = 0;
- while (true) {
- let charCode = str.charCodeAt(i);
- if (charCode === CharCodes.SPACE)
- spacesCount++;
- else if (charCode === CharCodes.TAB)
- tabsCount++;
- else if (charCode === CharCodes.NEWLINE || charCode === CharCodes.CARRIAGE_RETURN && str.charCodeAt(i + 1) === CharCodes.NEWLINE) {
- spacesCount = 0;
- tabsCount = 0;
- positions.push([startPosition, i]);
- if (charCode === CharCodes.CARRIAGE_RETURN) {
- startPosition = i + 2;
- i++;
- }
- else {
- startPosition = i + 1;
- }
- }
- else if (charCode == null)
- break;
- else {
- const indentWidth = Math.ceil(spacesCount / indentSizeInSpaces) * indentSizeInSpaces + tabsCount * indentSizeInSpaces;
- if (minIndentWidth == null || indentWidth < minIndentWidth)
- minIndentWidth = indentWidth;
- positions.push([startPosition, i]);
- isAtStartOfLine = false;
- break;
- }
- i++;
- }
- }
- }
- function buildString() {
- if (positions.length === 0)
- return str;
- if (minIndentWidth == null || minIndentWidth === 0)
- return str;
- const deindentWidth = minIndentWidth;
- let result = "";
- result += str.substring(0, positions[0][0]);
- for (let i = 0; i < positions.length; i++) {
- const [startPosition, endPosition] = positions[i];
- let indentCount = 0;
- let pos;
- for (pos = startPosition; pos < endPosition; pos++) {
- if (indentCount >= deindentWidth)
- break;
- if (str.charCodeAt(pos) === CharCodes.SPACE)
- indentCount++;
- else if (str.charCodeAt(pos) === CharCodes.TAB)
- indentCount += indentSizeInSpaces;
- }
- result += str.substring(pos, positions[i + 1]?.[0] ?? str.length);
- }
- return result;
- }
- }
- static indent(str, times, options) {
- if (times === 0)
- return str;
- const { indentText, indentSizeInSpaces, isInStringAtPos } = options;
- const fullIndentationText = times > 0 ? indentText.repeat(times) : undefined;
- const totalIndentSpaces = Math.abs(times * indentSizeInSpaces);
- let result = "";
- let lineStart = 0;
- let lineEnd = 0;
- for (let i = 0; i < str.length; i++) {
- lineStart = i;
- while (i < str.length && str.charCodeAt(i) !== CharCodes.NEWLINE)
- i++;
- lineEnd = i === str.length ? i : i + 1;
- appendLine();
- }
- return result;
- function appendLine() {
- if (isInStringAtPos(lineStart))
- result += str.substring(lineStart, lineEnd);
- else if (times > 0)
- result += fullIndentationText + str.substring(lineStart, lineEnd);
- else {
- let start = lineStart;
- let indentSpaces = 0;
- for (start = lineStart; start < str.length; start++) {
- if (indentSpaces >= totalIndentSpaces)
- break;
- if (str.charCodeAt(start) === CharCodes.SPACE)
- indentSpaces++;
- else if (str.charCodeAt(start) === CharCodes.TAB)
- indentSpaces += indentSizeInSpaces;
- else
- break;
- }
- result += str.substring(start, lineEnd);
- }
- }
- }
- }
- class SortedKeyValueArray {
- #array = [];
- #getKey;
- #comparer;
- constructor(getKey, comparer) {
- this.#getKey = getKey;
- this.#comparer = comparer;
- }
- set(value) {
- ArrayUtils.binaryInsertWithOverwrite(this.#array, value, new PropertyComparer(this.#getKey, this.#comparer));
- }
- removeByValue(value) {
- this.removeByKey(this.#getKey(value));
- }
- removeByKey(key) {
- const storedComparer = new ComparerToStoredComparer(this.#comparer, key);
- const index = ArrayUtils.binarySearch(this.#array, new PropertyStoredComparer(this.#getKey, storedComparer));
- if (index >= 0)
- this.#array.splice(index, 1);
- }
- getArrayCopy() {
- return [...this.#array];
- }
- hasItems() {
- return this.#array.length > 0;
- }
- *entries() {
- yield* this.#array;
- }
- }
- class WeakCache {
- #cacheItems = new WeakMap();
- getOrCreate(key, createFunc) {
- let item = this.get(key);
- if (item == null) {
- item = createFunc();
- this.set(key, item);
- }
- return item;
- }
- has(key) {
- return this.#cacheItems.has(key);
- }
- get(key) {
- return this.#cacheItems.get(key);
- }
- set(key, value) {
- this.#cacheItems.set(key, value);
- }
- removeByKey(key) {
- this.#cacheItems.delete(key);
- }
- }
- function createCompilerSourceFile(filePath, scriptSnapshot, optionsOrScriptTarget, version, setParentNodes, scriptKind) {
- return ts__namespace.createLanguageServiceSourceFile(filePath, scriptSnapshot, optionsOrScriptTarget ?? ts__namespace.ScriptTarget.Latest, version, setParentNodes, scriptKind);
- }
- function createDocumentCache(files) {
- const cache = new InternalDocumentCache();
- cache._addFiles(files);
- return cache;
- }
- class FileSystemDocumentCache {
- #documentCache;
- #absoluteToOriginalPath = new Map();
- constructor(fileSystem, documentCache) {
- for (const filePath of documentCache._getFilePaths())
- this.#absoluteToOriginalPath.set(fileSystem.getStandardizedAbsolutePath(filePath), filePath);
- this.#documentCache = documentCache;
- }
- getDocumentIfMatch(filePath, scriptSnapshot, scriptTarget, scriptKind) {
- const originalFilePath = this.#absoluteToOriginalPath.get(filePath);
- if (originalFilePath == null)
- return;
- return this.#documentCache._getDocumentIfMatch(originalFilePath, filePath, scriptSnapshot, scriptTarget, scriptKind);
- }
- }
- class InternalDocumentCache {
- __documentCacheBrand;
- #fileTexts = new Map();
- #documents = new Map();
- _addFiles(files) {
- for (const file of files)
- this.#fileTexts.set(file.fileName, file.text);
- }
- _getFilePaths() {
- return this.#fileTexts.keys();
- }
- _getCacheForFileSystem(fileSystem) {
- return new FileSystemDocumentCache(fileSystem, this);
- }
- _getDocumentIfMatch(filePath, absoluteFilePath, scriptSnapshot, scriptTarget, scriptKind) {
- const fileText = this.#fileTexts.get(filePath);
- if (fileText == null)
- return undefined;
- if (fileText !== scriptSnapshot.getText(0, scriptSnapshot.getLength()))
- return undefined;
- return this.#getDocument(filePath, absoluteFilePath, scriptSnapshot, scriptTarget, scriptKind);
- }
- #getDocument(filePath, absoluteFilePath, scriptSnapshot, scriptTarget, scriptKind) {
- const documentKey = this.#getKey(filePath, scriptTarget, scriptKind);
- let document = this.#documents.get(documentKey);
- if (document == null) {
- document = createCompilerSourceFile(absoluteFilePath, scriptSnapshot, scriptTarget, "-1", false, scriptKind);
- this.#documents.set(documentKey, document);
- }
- document = deepClone(document);
- document.fileName = absoluteFilePath;
- return document;
- }
- #getKey(filePath, scriptTarget, scriptKind) {
- return (filePath + (scriptTarget?.toString() ?? "-1") + (scriptKind?.toString() ?? "-1"));
- }
- }
- const libFiles = [{
- fileName: "lib.es2019.object.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015.iterable\" />\ninterface ObjectConstructor{fromEntries<T=any>(entries:Iterable<readonly[PropertyKey,T]>):{[k:string]:T;};fromEntries(entries:Iterable<readonly any[]>):any;}"
- }, {
- fileName: "lib.dom.iterable.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface AbortSignal{any(signals:Iterable<AbortSignal>):AbortSignal;}interface AudioParam{setValueCurveAtTime(values:Iterable<number>,startTime:number,duration:number):AudioParam;}interface AudioParamMap extends ReadonlyMap<string,AudioParam>{}interface BaseAudioContext{createIIRFilter(feedforward:Iterable<number>,feedback:Iterable<number>):IIRFilterNode;createPeriodicWave(real:Iterable<number>,imag:Iterable<number>,constraints?:PeriodicWaveConstraints):PeriodicWave;}interface CSSKeyframesRule{[Symbol.iterator]():ArrayIterator<CSSKeyframeRule>;}interface CSSNumericArray{[Symbol.iterator]():ArrayIterator<CSSNumericValue>;entries():ArrayIterator<[number,CSSNumericValue]>;keys():ArrayIterator<number>;values():ArrayIterator<CSSNumericValue>;}interface CSSRuleList{[Symbol.iterator]():ArrayIterator<CSSRule>;}interface CSSStyleDeclaration{[Symbol.iterator]():ArrayIterator<string>;}interface CSSTransformValue{[Symbol.iterator]():ArrayIterator<CSSTransformComponent>;entries():ArrayIterator<[number,CSSTransformComponent]>;keys():ArrayIterator<number>;values():ArrayIterator<CSSTransformComponent>;}interface CSSUnparsedValue{[Symbol.iterator]():ArrayIterator<CSSUnparsedSegment>;entries():ArrayIterator<[number,CSSUnparsedSegment]>;keys():ArrayIterator<number>;values():ArrayIterator<CSSUnparsedSegment>;}interface Cache{addAll(requests:Iterable<RequestInfo>):Promise<void>;}interface CanvasPath{roundRect(x:number,y:number,w:number,h:number,radii?:number|DOMPointInit|Iterable<number|DOMPointInit>):void;}interface CanvasPathDrawingStyles{setLineDash(segments:Iterable<number>):void;}interface CustomStateSet extends Set<string>{}interface DOMRectList{[Symbol.iterator]():ArrayIterator<DOMRect>;}interface DOMStringList{[Symbol.iterator]():ArrayIterator<string>;}interface DOMTokenList{[Symbol.iterator]():ArrayIterator<string>;entries():ArrayIterator<[number,string]>;keys():ArrayIterator<number>;values():ArrayIterator<string>;}interface DataTransferItemList{[Symbol.iterator]():ArrayIterator<DataTransferItem>;}interface EventCounts extends ReadonlyMap<string,number>{}interface FileList{[Symbol.iterator]():ArrayIterator<File>;}interface FontFaceSet extends Set<FontFace>{}interface FormDataIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():FormDataIterator<T>;}interface FormData{[Symbol.iterator]():FormDataIterator<[string,FormDataEntryValue]>;entries():FormDataIterator<[string,FormDataEntryValue]>;keys():FormDataIterator<string>;values():FormDataIterator<FormDataEntryValue>;}interface HTMLAllCollection{[Symbol.iterator]():ArrayIterator<Element>;}interface HTMLCollectionBase{[Symbol.iterator]():ArrayIterator<Element>;}interface HTMLCollectionOf<T extends Element>{[Symbol.iterator]():ArrayIterator<T>;}interface HTMLFormElement{[Symbol.iterator]():ArrayIterator<Element>;}interface HTMLSelectElement{[Symbol.iterator]():ArrayIterator<HTMLOptionElement>;}interface HeadersIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():HeadersIterator<T>;}interface Headers{[Symbol.iterator]():HeadersIterator<[string,string]>;entries():HeadersIterator<[string,string]>;keys():HeadersIterator<string>;values():HeadersIterator<string>;}interface Highlight extends Set<AbstractRange>{}interface HighlightRegistry extends Map<string,Highlight>{}interface IDBDatabase{transaction(storeNames:string|Iterable<string>,mode?:IDBTransactionMode,options?:IDBTransactionOptions):IDBTransaction;}interface IDBObjectStore{createIndex(name:string,keyPath:string|Iterable<string>,options?:IDBIndexParameters):IDBIndex;}interface MIDIInputMap extends ReadonlyMap<string,MIDIInput>{}interface MIDIOutput{send(data:Iterable<number>,timestamp?:DOMHighResTimeStamp):void;}interface MIDIOutputMap extends ReadonlyMap<string,MIDIOutput>{}interface MediaKeyStatusMapIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():MediaKeyStatusMapIterator<T>;}interface MediaKeyStatusMap{[Symbol.iterator]():MediaKeyStatusMapIterator<[BufferSource,MediaKeyStatus]>;entries():MediaKeyStatusMapIterator<[BufferSource,MediaKeyStatus]>;keys():MediaKeyStatusMapIterator<BufferSource>;values():MediaKeyStatusMapIterator<MediaKeyStatus>;}interface MediaList{[Symbol.iterator]():ArrayIterator<string>;}interface MessageEvent<T=any>{initMessageEvent(type:string,bubbles?:boolean,cancelable?:boolean,data?:any,origin?:string,lastEventId?:string,source?:MessageEventSource|null,ports?:Iterable<MessagePort>):void;}interface MimeTypeArray{[Symbol.iterator]():ArrayIterator<MimeType>;}interface NamedNodeMap{[Symbol.iterator]():ArrayIterator<Attr>;}interface Navigator{requestMediaKeySystemAccess(keySystem:string,supportedConfigurations:Iterable<MediaKeySystemConfiguration>):Promise<MediaKeySystemAccess>;vibrate(pattern:Iterable<number>):boolean;}interface NodeList{[Symbol.iterator]():ArrayIterator<Node>;entries():ArrayIterator<[number,Node]>;keys():ArrayIterator<number>;values():ArrayIterator<Node>;}interface NodeListOf<TNode extends Node>{[Symbol.iterator]():ArrayIterator<TNode>;entries():ArrayIterator<[number,TNode]>;keys():ArrayIterator<number>;values():ArrayIterator<TNode>;}interface Plugin{[Symbol.iterator]():ArrayIterator<MimeType>;}interface PluginArray{[Symbol.iterator]():ArrayIterator<Plugin>;}interface RTCRtpTransceiver{setCodecPreferences(codecs:Iterable<RTCRtpCodec>):void;}interface RTCStatsReport extends ReadonlyMap<string,any>{}interface SVGLengthList{[Symbol.iterator]():ArrayIterator<SVGLength>;}interface SVGNumberList{[Symbol.iterator]():ArrayIterator<SVGNumber>;}interface SVGPointList{[Symbol.iterator]():ArrayIterator<DOMPoint>;}interface SVGStringList{[Symbol.iterator]():ArrayIterator<string>;}interface SVGTransformList{[Symbol.iterator]():ArrayIterator<SVGTransform>;}interface SourceBufferList{[Symbol.iterator]():ArrayIterator<SourceBuffer>;}interface SpeechRecognitionResult{[Symbol.iterator]():ArrayIterator<SpeechRecognitionAlternative>;}interface SpeechRecognitionResultList{[Symbol.iterator]():ArrayIterator<SpeechRecognitionResult>;}interface StylePropertyMapReadOnlyIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():StylePropertyMapReadOnlyIterator<T>;}interface StylePropertyMapReadOnly{[Symbol.iterator]():StylePropertyMapReadOnlyIterator<[string,Iterable<CSSStyleValue>]>;entries():StylePropertyMapReadOnlyIterator<[string,Iterable<CSSStyleValue>]>;keys():StylePropertyMapReadOnlyIterator<string>;values():StylePropertyMapReadOnlyIterator<Iterable<CSSStyleValue>>;}interface StyleSheetList{[Symbol.iterator]():ArrayIterator<CSSStyleSheet>;}interface SubtleCrypto{deriveKey(algorithm:AlgorithmIdentifier|EcdhKeyDeriveParams|HkdfParams|Pbkdf2Params,baseKey:CryptoKey,derivedKeyType:AlgorithmIdentifier|AesDerivedKeyParams|HmacImportParams|HkdfParams|Pbkdf2Params,extractable:boolean,keyUsages:Iterable<KeyUsage>):Promise<CryptoKey>;generateKey(algorithm:\"Ed25519\",extractable:boolean,keyUsages:ReadonlyArray<\"sign\"|\"verify\">):Promise<CryptoKeyPair>;generateKey(algorithm:RsaHashedKeyGenParams|EcKeyGenParams,extractable:boolean,keyUsages:ReadonlyArray<KeyUsage>):Promise<CryptoKeyPair>;generateKey(algorithm:AesKeyGenParams|HmacKeyGenParams|Pbkdf2Params,extractable:boolean,keyUsages:ReadonlyArray<KeyUsage>):Promise<CryptoKey>;generateKey(algorithm:AlgorithmIdentifier,extractable:boolean,keyUsages:Iterable<KeyUsage>):Promise<CryptoKeyPair|CryptoKey>;importKey(format:\"jwk\",keyData:JsonWebKey,algorithm:AlgorithmIdentifier|RsaHashedImportParams|EcKeyImportParams|HmacImportParams|AesKeyAlgorithm,extractable:boolean,keyUsages:ReadonlyArray<KeyUsage>):Promise<CryptoKey>;importKey(format:Exclude<KeyFormat,\"jwk\">,keyData:BufferSource,algorithm:AlgorithmIdentifier|RsaHashedImportParams|EcKeyImportParams|HmacImportParams|AesKeyAlgorithm,extractable:boolean,keyUsages:Iterable<KeyUsage>):Promise<CryptoKey>;unwrapKey(format:KeyFormat,wrappedKey:BufferSource,unwrappingKey:CryptoKey,unwrapAlgorithm:AlgorithmIdentifier|RsaOaepParams|AesCtrParams|AesCbcParams|AesGcmParams,unwrappedKeyAlgorithm:AlgorithmIdentifier|RsaHashedImportParams|EcKeyImportParams|HmacImportParams|AesKeyAlgorithm,extractable:boolean,keyUsages:Iterable<KeyUsage>):Promise<CryptoKey>;}interface TextTrackCueList{[Symbol.iterator]():ArrayIterator<TextTrackCue>;}interface TextTrackList{[Symbol.iterator]():ArrayIterator<TextTrack>;}interface TouchList{[Symbol.iterator]():ArrayIterator<Touch>;}interface URLSearchParamsIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():URLSearchParamsIterator<T>;}interface URLSearchParams{[Symbol.iterator]():URLSearchParamsIterator<[string,string]>;entries():URLSearchParamsIterator<[string,string]>;keys():URLSearchParamsIterator<string>;values():URLSearchParamsIterator<string>;}interface WEBGL_draw_buffers{drawBuffersWEBGL(buffers:Iterable<GLenum>):void;}interface WEBGL_multi_draw{multiDrawArraysInstancedWEBGL(mode:GLenum,firstsList:Int32Array|Iterable<GLint>,firstsOffset:number,countsList:Int32Array|Iterable<GLsizei>,countsOffset:number,instanceCountsList:Int32Array|Iterable<GLsizei>,instanceCountsOffset:number,drawcount:GLsizei):void;multiDrawArraysWEBGL(mode:GLenum,firstsList:Int32Array|Iterable<GLint>,firstsOffset:number,countsList:Int32Array|Iterable<GLsizei>,countsOffset:number,drawcount:GLsizei):void;multiDrawElementsInstancedWEBGL(mode:GLenum,countsList:Int32Array|Iterable<GLsizei>,countsOffset:number,type:GLenum,offsetsList:Int32Array|Iterable<GLsizei>,offsetsOffset:number,instanceCountsList:Int32Array|Iterable<GLsizei>,instanceCountsOffset:number,drawcount:GLsizei):void;multiDrawElementsWEBGL(mode:GLenum,countsList:Int32Array|Iterable<GLsizei>,countsOffset:number,type:GLenum,offsetsList:Int32Array|Iterable<GLsizei>,offsetsOffset:number,drawcount:GLsizei):void;}interface WebGL2RenderingContextBase{clearBufferfv(buffer:GLenum,drawbuffer:GLint,values:Iterable<GLfloat>,srcOffset?:number):void;clearBufferiv(buffer:GLenum,drawbuffer:GLint,values:Iterable<GLint>,srcOffset?:number):void;clearBufferuiv(buffer:GLenum,drawbuffer:GLint,values:Iterable<GLuint>,srcOffset?:number):void;drawBuffers(buffers:Iterable<GLenum>):void;getActiveUniforms(program:WebGLProgram,uniformIndices:Iterable<GLuint>,pname:GLenum):any;getUniformIndices(program:WebGLProgram,uniformNames:Iterable<string>):Iterable<GLuint>|null;invalidateFramebuffer(target:GLenum,attachments:Iterable<GLenum>):void;invalidateSubFramebuffer(target:GLenum,attachments:Iterable<GLenum>,x:GLint,y:GLint,width:GLsizei,height:GLsizei):void;transformFeedbackVaryings(program:WebGLProgram,varyings:Iterable<string>,bufferMode:GLenum):void;uniform1uiv(location:WebGLUniformLocation|null,data:Iterable<GLuint>,srcOffset?:number,srcLength?:GLuint):void;uniform2uiv(location:WebGLUniformLocation|null,data:Iterable<GLuint>,srcOffset?:number,srcLength?:GLuint):void;uniform3uiv(location:WebGLUniformLocation|null,data:Iterable<GLuint>,srcOffset?:number,srcLength?:GLuint):void;uniform4uiv(location:WebGLUniformLocation|null,data:Iterable<GLuint>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix2x3fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix2x4fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix3x2fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix3x4fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix4x2fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix4x3fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;vertexAttribI4iv(index:GLuint,values:Iterable<GLint>):void;vertexAttribI4uiv(index:GLuint,values:Iterable<GLuint>):void;}interface WebGL2RenderingContextOverloads{uniform1fv(location:WebGLUniformLocation|null,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniform1iv(location:WebGLUniformLocation|null,data:Iterable<GLint>,srcOffset?:number,srcLength?:GLuint):void;uniform2fv(location:WebGLUniformLocation|null,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniform2iv(location:WebGLUniformLocation|null,data:Iterable<GLint>,srcOffset?:number,srcLength?:GLuint):void;uniform3fv(location:WebGLUniformLocation|null,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniform3iv(location:WebGLUniformLocation|null,data:Iterable<GLint>,srcOffset?:number,srcLength?:GLuint):void;uniform4fv(location:WebGLUniformLocation|null,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniform4iv(location:WebGLUniformLocation|null,data:Iterable<GLint>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix2fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix3fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;uniformMatrix4fv(location:WebGLUniformLocation|null,transpose:GLboolean,data:Iterable<GLfloat>,srcOffset?:number,srcLength?:GLuint):void;}interface WebGLRenderingContextBase{vertexAttrib1fv(index:GLuint,values:Iterable<GLfloat>):void;vertexAttrib2fv(index:GLuint,values:Iterable<GLfloat>):void;vertexAttrib3fv(index:GLuint,values:Iterable<GLfloat>):void;vertexAttrib4fv(index:GLuint,values:Iterable<GLfloat>):void;}interface WebGLRenderingContextOverloads{uniform1fv(location:WebGLUniformLocation|null,v:Iterable<GLfloat>):void;uniform1iv(location:WebGLUniformLocation|null,v:Iterable<GLint>):void;uniform2fv(location:WebGLUniformLocation|null,v:Iterable<GLfloat>):void;uniform2iv(location:WebGLUniformLocation|null,v:Iterable<GLint>):void;uniform3fv(location:WebGLUniformLocation|null,v:Iterable<GLfloat>):void;uniform3iv(location:WebGLUniformLocation|null,v:Iterable<GLint>):void;uniform4fv(location:WebGLUniformLocation|null,v:Iterable<GLfloat>):void;uniform4iv(location:WebGLUniformLocation|null,v:Iterable<GLint>):void;uniformMatrix2fv(location:WebGLUniformLocation|null,transpose:GLboolean,value:Iterable<GLfloat>):void;uniformMatrix3fv(location:WebGLUniformLocation|null,transpose:GLboolean,value:Iterable<GLfloat>):void;uniformMatrix4fv(location:WebGLUniformLocation|null,transpose:GLboolean,value:Iterable<GLfloat>):void;}"
- }, {
- fileName: "lib.es2018.full.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2018\" />\n/// <reference lib=\"dom\" />\n/// <reference lib=\"webworker.importscripts\" />\n/// <reference lib=\"scripthost\" />\n/// <reference lib=\"dom.iterable\" />\n/// <reference lib=\"dom.asynciterable\" />\n"
- }, {
- fileName: "lib.esnext.collection.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface MapConstructor{groupBy<K,T>(items:Iterable<T>,keySelector:(item:T,index:number)=>K,):Map<K,T[]>;}interface ReadonlySetLike<T>{keys():Iterator<T>;has(value:T):boolean;readonly size:number;}interface Set<T>{union<U>(other:ReadonlySetLike<U>):Set<T|U>;intersection<U>(other:ReadonlySetLike<U>):Set<T&U>;difference<U>(other:ReadonlySetLike<U>):Set<T>;symmetricDifference<U>(other:ReadonlySetLike<U>):Set<T|U>;isSubsetOf(other:ReadonlySetLike<unknown>):boolean;isSupersetOf(other:ReadonlySetLike<unknown>):boolean;isDisjointFrom(other:ReadonlySetLike<unknown>):boolean;}interface ReadonlySet<T>{union<U>(other:ReadonlySetLike<U>):Set<T|U>;intersection<U>(other:ReadonlySetLike<U>):Set<T&U>;difference<U>(other:ReadonlySetLike<U>):Set<T>;symmetricDifference<U>(other:ReadonlySetLike<U>):Set<T|U>;isSubsetOf(other:ReadonlySetLike<unknown>):boolean;isSupersetOf(other:ReadonlySetLike<unknown>):boolean;isDisjointFrom(other:ReadonlySetLike<unknown>):boolean;}"
- }, {
- fileName: "lib.es2015.reflect.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ndeclare namespace Reflect{function apply<T,A extends readonly any[],R>(target:(this:T,...args:A)=>R,thisArgument:T,argumentsList:Readonly<A>,):R;function apply(target:Function,thisArgument:any,argumentsList:ArrayLike<any>):any;function construct<A extends readonly any[],R>(target:new(...args:A)=>R,argumentsList:Readonly<A>,newTarget?:new(...args:any)=>any,):R;function construct(target:Function,argumentsList:ArrayLike<any>,newTarget?:Function):any;function defineProperty(target:object,propertyKey:PropertyKey,attributes:PropertyDescriptor&ThisType<any>):boolean;function deleteProperty(target:object,propertyKey:PropertyKey):boolean;function get<T extends object,P extends PropertyKey>(target:T,propertyKey:P,receiver?:unknown,):P extends keyof T?T[P]:any;function getOwnPropertyDescriptor<T extends object,P extends PropertyKey>(target:T,propertyKey:P,):TypedPropertyDescriptor<P extends keyof T?T[P]:any>|undefined;function getPrototypeOf(target:object):object|null;function has(target:object,propertyKey:PropertyKey):boolean;function isExtensible(target:object):boolean;function ownKeys(target:object):(string|symbol)[];function preventExtensions(target:object):boolean;function set<T extends object,P extends PropertyKey>(target:T,propertyKey:P,value:P extends keyof T?T[P]:any,receiver?:any,):boolean;function set(target:object,propertyKey:PropertyKey,value:any,receiver?:any):boolean;function setPrototypeOf(target:object,proto:object|null):boolean;}"
- }, {
- fileName: "lib.es2019.string.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface String{trimEnd():string;trimStart():string;trimLeft():string;trimRight():string;}"
- }, {
- fileName: "lib.es2017.date.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface DateConstructor{UTC(year:number,monthIndex?:number,date?:number,hours?:number,minutes?:number,seconds?:number,ms?:number):number;}"
- }, {
- fileName: "lib.es2021.intl.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ndeclare namespace Intl{interface DateTimeFormatPartTypesRegistry{fractionalSecond:any;}interface DateTimeFormatOptions{formatMatcher?:\"basic\"|\"best fit\"|\"best fit\"|undefined;dateStyle?:\"full\"|\"long\"|\"medium\"|\"short\"|undefined;timeStyle?:\"full\"|\"long\"|\"medium\"|\"short\"|undefined;dayPeriod?:\"narrow\"|\"short\"|\"long\"|undefined;fractionalSecondDigits?:1|2|3|undefined;}interface DateTimeRangeFormatPart extends DateTimeFormatPart{source:\"startRange\"|\"endRange\"|\"shared\";}interface DateTimeFormat{formatRange(startDate:Date|number|bigint,endDate:Date|number|bigint):string;formatRangeToParts(startDate:Date|number|bigint,endDate:Date|number|bigint):DateTimeRangeFormatPart[];}interface ResolvedDateTimeFormatOptions{formatMatcher?:\"basic\"|\"best fit\"|\"best fit\";dateStyle?:\"full\"|\"long\"|\"medium\"|\"short\";timeStyle?:\"full\"|\"long\"|\"medium\"|\"short\";hourCycle?:\"h11\"|\"h12\"|\"h23\"|\"h24\";dayPeriod?:\"narrow\"|\"short\"|\"long\";fractionalSecondDigits?:1|2|3;}type ListFormatLocaleMatcher=\"lookup\"|\"best fit\";type ListFormatType=\"conjunction\"|\"disjunction\"|\"unit\";type ListFormatStyle=\"long\"|\"short\"|\"narrow\";interface ListFormatOptions{localeMatcher?:ListFormatLocaleMatcher|undefined;type?:ListFormatType|undefined;style?:ListFormatStyle|undefined;}interface ResolvedListFormatOptions{locale:string;style:ListFormatStyle;type:ListFormatType;}interface ListFormat{format(list:Iterable<string>):string;formatToParts(list:Iterable<string>):{type:\"element\"|\"literal\";value:string;}[];resolvedOptions():ResolvedListFormatOptions;}const ListFormat:{prototype:ListFormat;new(locales?:LocalesArgument,options?:ListFormatOptions):ListFormat;supportedLocalesOf(locales:LocalesArgument,options?:Pick<ListFormatOptions,\"localeMatcher\">):UnicodeBCP47LocaleIdentifier[];};}"
- }, {
- fileName: "lib.es2016.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015\" />\n/// <reference lib=\"es2016.array.include\" />\n/// <reference lib=\"es2016.intl\" />\n"
- }, {
- fileName: "lib.es2015.core.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface Array<T>{find<S extends T>(predicate:(value:T,index:number,obj:T[])=>value is S,thisArg?:any):S|undefined;find(predicate:(value:T,index:number,obj:T[])=>unknown,thisArg?:any):T|undefined;findIndex(predicate:(value:T,index:number,obj:T[])=>unknown,thisArg?:any):number;fill(value:T,start?:number,end?:number):this;copyWithin(target:number,start:number,end?:number):this;toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions&Intl.DateTimeFormatOptions):string;}interface ArrayConstructor{from<T>(arrayLike:ArrayLike<T>):T[];from<T,U>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>U,thisArg?:any):U[];of<T>(...items:T[]):T[];}interface DateConstructor{new(value:number|string|Date):Date;}interface Function{readonly name:string;}interface Math{clz32(x:number):number;imul(x:number,y:number):number;sign(x:number):number;log10(x:number):number;log2(x:number):number;log1p(x:number):number;expm1(x:number):number;cosh(x:number):number;sinh(x:number):number;tanh(x:number):number;acosh(x:number):number;asinh(x:number):number;atanh(x:number):number;hypot(...values:number[]):number;trunc(x:number):number;fround(x:number):number;cbrt(x:number):number;}interface NumberConstructor{readonly EPSILON:number;isFinite(number:unknown):boolean;isInteger(number:unknown):boolean;isNaN(number:unknown):boolean;isSafeInteger(number:unknown):boolean;readonly MAX_SAFE_INTEGER:number;readonly MIN_SAFE_INTEGER:number;parseFloat(string:string):number;parseInt(string:string,radix?:number):number;}interface ObjectConstructor{assign<T extends{},U>(target:T,source:U):T&U;assign<T extends{},U,V>(target:T,source1:U,source2:V):T&U&V;assign<T extends{},U,V,W>(target:T,source1:U,source2:V,source3:W):T&U&V&W;assign(target:object,...sources:any[]):any;getOwnPropertySymbols(o:any):symbol[];keys(o:{}):string[];is(value1:any,value2:any):boolean;setPrototypeOf(o:any,proto:object|null):any;}interface ReadonlyArray<T>{find<S extends T>(predicate:(value:T,index:number,obj:readonly T[])=>value is S,thisArg?:any):S|undefined;find(predicate:(value:T,index:number,obj:readonly T[])=>unknown,thisArg?:any):T|undefined;findIndex(predicate:(value:T,index:number,obj:readonly T[])=>unknown,thisArg?:any):number;toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions&Intl.DateTimeFormatOptions):string;}interface RegExp{readonly flags:string;readonly sticky:boolean;readonly unicode:boolean;}interface RegExpConstructor{new(pattern:RegExp|string,flags?:string):RegExp;(pattern:RegExp|string,flags?:string):RegExp;}interface String{codePointAt(pos:number):number|undefined;includes(searchString:string,position?:number):boolean;endsWith(searchString:string,endPosition?:number):boolean;normalize(form:\"NFC\"|\"NFD\"|\"NFKC\"|\"NFKD\"):string;normalize(form?:string):string;repeat(count:number):string;startsWith(searchString:string,position?:number):boolean;anchor(name:string):string;big():string;blink():string;bold():string;fixed():string;fontcolor(color:string):string;fontsize(size:number):string;fontsize(size:string):string;italics():string;link(url:string):string;small():string;strike():string;sub():string;sup():string;}interface StringConstructor{fromCodePoint(...codePoints:number[]):string;raw(template:{raw:readonly string[]|ArrayLike<string>;},...substitutions:any[]):string;}interface Int8Array{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}interface Uint8Array{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}interface Uint8ClampedArray{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}interface Int16Array{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}interface Uint16Array{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}interface Int32Array{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}interface Uint32Array{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}interface Float32Array{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}interface Float64Array{toLocaleString(locales:string|string[],options?:Intl.NumberFormatOptions):string;}"
- }, {
- fileName: "lib.dom.asynciterable.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface FileSystemDirectoryHandleAsyncIterator<T>extends AsyncIteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.asyncIterator]():FileSystemDirectoryHandleAsyncIterator<T>;}interface FileSystemDirectoryHandle{[Symbol.asyncIterator]():FileSystemDirectoryHandleAsyncIterator<[string,FileSystemHandle]>;entries():FileSystemDirectoryHandleAsyncIterator<[string,FileSystemHandle]>;keys():FileSystemDirectoryHandleAsyncIterator<string>;values():FileSystemDirectoryHandleAsyncIterator<FileSystemHandle>;}interface ReadableStreamAsyncIterator<T>extends AsyncIteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.asyncIterator]():ReadableStreamAsyncIterator<T>;}interface ReadableStream<R=any>{[Symbol.asyncIterator](options?:ReadableStreamIteratorOptions):ReadableStreamAsyncIterator<R>;values(options?:ReadableStreamIteratorOptions):ReadableStreamAsyncIterator<R>;}"
- }, {
- fileName: "lib.es2019.intl.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ndeclare namespace Intl{interface DateTimeFormatPartTypesRegistry{unknown:never;}}"
- }, {
- fileName: "lib.es2022.string.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface String{at(index:number):string|undefined;}"
- }, {
- fileName: "lib.es2020.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2019\" />\n/// <reference lib=\"es2020.bigint\" />\n/// <reference lib=\"es2020.date\" />\n/// <reference lib=\"es2020.number\" />\n/// <reference lib=\"es2020.promise\" />\n/// <reference lib=\"es2020.sharedmemory\" />\n/// <reference lib=\"es2020.string\" />\n/// <reference lib=\"es2020.symbol.wellknown\" />\n/// <reference lib=\"es2020.intl\" />\n"
- }, {
- fileName: "lib.es2020.full.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2020\" />\n/// <reference lib=\"dom\" />\n/// <reference lib=\"webworker.importscripts\" />\n/// <reference lib=\"scripthost\" />\n/// <reference lib=\"dom.iterable\" />\n/// <reference lib=\"dom.asynciterable\" />\n"
- }, {
- fileName: "lib.es2022.object.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface ObjectConstructor{hasOwn(o:object,v:PropertyKey):boolean;}"
- }, {
- fileName: "lib.esnext.iterator.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015.iterable\" />\nexport{};declare abstract class Iterator<T,TResult=undefined,TNext=unknown>{abstract next(value?:TNext):IteratorResult<T,TResult>;}interface Iterator<T,TResult,TNext>extends globalThis.IteratorObject<T,TResult,TNext>{}type IteratorObjectConstructor=typeof Iterator;declare global{interface IteratorObject<T,TReturn,TNext>{[Symbol.iterator]():IteratorObject<T,TReturn,TNext>;map<U>(callbackfn:(value:T,index:number)=>U):IteratorObject<U,undefined,unknown>;filter<S extends T>(predicate:(value:T,index:number)=>value is S):IteratorObject<S,undefined,unknown>;filter(predicate:(value:T,index:number)=>unknown):IteratorObject<T,undefined,unknown>;take(limit:number):IteratorObject<T,undefined,unknown>;drop(count:number):IteratorObject<T,undefined,unknown>;flatMap<U>(callback:(value:T,index:number)=>Iterator<U,unknown,undefined>|Iterable<U,unknown,undefined>):IteratorObject<U,undefined,unknown>;reduce(callbackfn:(previousValue:T,currentValue:T,currentIndex:number)=>T):T;reduce(callbackfn:(previousValue:T,currentValue:T,currentIndex:number)=>T,initialValue:T):T;reduce<U>(callbackfn:(previousValue:U,currentValue:T,currentIndex:number)=>U,initialValue:U):U;toArray():T[];forEach(callbackfn:(value:T,index:number)=>void):void;some(predicate:(value:T,index:number)=>unknown):boolean;every(predicate:(value:T,index:number)=>unknown):boolean;find<S extends T>(predicate:(value:T,index:number)=>value is S):S|undefined;find(predicate:(value:T,index:number)=>unknown):T|undefined;readonly[Symbol.toStringTag]:string;}interface IteratorConstructor extends IteratorObjectConstructor{from<T>(value:Iterator<T,unknown,undefined>|Iterable<T,unknown,undefined>):IteratorObject<T,undefined,unknown>;}var Iterator:IteratorConstructor;}"
- }, {
- fileName: "lib.es2015.proxy.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface ProxyHandler<T extends object>{apply?(target:T,thisArg:any,argArray:any[]):any;construct?(target:T,argArray:any[],newTarget:Function):object;defineProperty?(target:T,property:string|symbol,attributes:PropertyDescriptor):boolean;deleteProperty?(target:T,p:string|symbol):boolean;get?(target:T,p:string|symbol,receiver:any):any;getOwnPropertyDescriptor?(target:T,p:string|symbol):PropertyDescriptor|undefined;getPrototypeOf?(target:T):object|null;has?(target:T,p:string|symbol):boolean;isExtensible?(target:T):boolean;ownKeys?(target:T):ArrayLike<string|symbol>;preventExtensions?(target:T):boolean;set?(target:T,p:string|symbol,newValue:any,receiver:any):boolean;setPrototypeOf?(target:T,v:object|null):boolean;}interface ProxyConstructor{revocable<T extends object>(target:T,handler:ProxyHandler<T>):{proxy:T;revoke:()=>void;};new<T extends object>(target:T,handler:ProxyHandler<T>):T;}declare var Proxy:ProxyConstructor;"
- }, {
- fileName: "lib.es2015.generator.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015.iterable\" />\ninterface Generator<T=unknown,TReturn=any,TNext=any>extends IteratorObject<T,TReturn,TNext>{next(...[value]:[]|[TNext]):IteratorResult<T,TReturn>;return(value:TReturn):IteratorResult<T,TReturn>;throw(e:any):IteratorResult<T,TReturn>;[Symbol.iterator]():Generator<T,TReturn,TNext>;}interface GeneratorFunction{new(...args:any[]):Generator;(...args:any[]):Generator;readonly length:number;readonly name:string;readonly prototype:Generator;}interface GeneratorFunctionConstructor{new(...args:string[]):GeneratorFunction;(...args:string[]):GeneratorFunction;readonly length:number;readonly name:string;readonly prototype:GeneratorFunction;}"
- }, {
- fileName: "lib.esnext.promise.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface PromiseWithResolvers<T>{promise:Promise<T>;resolve:(value:T|PromiseLike<T>)=>void;reject:(reason?:any)=>void;}interface PromiseConstructor{withResolvers<T>():PromiseWithResolvers<T>;}"
- }, {
- fileName: "lib.es2021.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2020\" />\n/// <reference lib=\"es2021.promise\" />\n/// <reference lib=\"es2021.string\" />\n/// <reference lib=\"es2021.weakref\" />\n/// <reference lib=\"es2021.intl\" />\n"
- }, {
- fileName: "lib.esnext.disposable.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015.symbol\" />\n/// <reference lib=\"es2015.iterable\" />\n/// <reference lib=\"es2018.asynciterable\" />\ninterface SymbolConstructor{readonly dispose:unique symbol;readonly asyncDispose:unique symbol;}interface Disposable{[Symbol.dispose]():void;}interface AsyncDisposable{[Symbol.asyncDispose]():PromiseLike<void>;}interface SuppressedError extends Error{error:any;suppressed:any;}interface SuppressedErrorConstructor{new(error:any,suppressed:any,message?:string):SuppressedError;(error:any,suppressed:any,message?:string):SuppressedError;readonly prototype:SuppressedError;}declare var SuppressedError:SuppressedErrorConstructor;interface DisposableStack{readonly disposed:boolean;dispose():void;use<T extends Disposable|null|undefined>(value:T):T;adopt<T>(value:T,onDispose:(value:T)=>void):T;defer(onDispose:()=>void):void;move():DisposableStack;[Symbol.dispose]():void;readonly[Symbol.toStringTag]:string;}interface DisposableStackConstructor{new():DisposableStack;readonly prototype:DisposableStack;}declare var DisposableStack:DisposableStackConstructor;interface AsyncDisposableStack{readonly disposed:boolean;disposeAsync():Promise<void>;use<T extends AsyncDisposable|Disposable|null|undefined>(value:T):T;adopt<T>(value:T,onDisposeAsync:(value:T)=>PromiseLike<void>|void):T;defer(onDisposeAsync:()=>PromiseLike<void>|void):void;move():AsyncDisposableStack;[Symbol.asyncDispose]():Promise<void>;readonly[Symbol.toStringTag]:string;}interface AsyncDisposableStackConstructor{new():AsyncDisposableStack;readonly prototype:AsyncDisposableStack;}declare var AsyncDisposableStack:AsyncDisposableStackConstructor;interface IteratorObject<T,TReturn,TNext>extends Disposable{}interface AsyncIteratorObject<T,TReturn,TNext>extends AsyncDisposable{}"
- }, {
- fileName: "lib.es2020.number.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2020.intl\" />\ninterface Number{toLocaleString(locales?:Intl.LocalesArgument,options?:Intl.NumberFormatOptions):string;}"
- }, {
- fileName: "lib.es2017.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2016\" />\n/// <reference lib=\"es2017.object\" />\n/// <reference lib=\"es2017.sharedmemory\" />\n/// <reference lib=\"es2017.string\" />\n/// <reference lib=\"es2017.intl\" />\n/// <reference lib=\"es2017.typedarrays\" />\n/// <reference lib=\"es2017.date\" />\n"
- }, {
- fileName: "lib.es2018.promise.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface Promise<T>{finally(onfinally?:(()=>void)|undefined|null):Promise<T>;}"
- }, {
- fileName: "lib.es2017.typedarrays.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface Int8ArrayConstructor{new():Int8Array;}interface Uint8ArrayConstructor{new():Uint8Array;}interface Uint8ClampedArrayConstructor{new():Uint8ClampedArray;}interface Int16ArrayConstructor{new():Int16Array;}interface Uint16ArrayConstructor{new():Uint16Array;}interface Int32ArrayConstructor{new():Int32Array;}interface Uint32ArrayConstructor{new():Uint32Array;}interface Float32ArrayConstructor{new():Float32Array;}interface Float64ArrayConstructor{new():Float64Array;}"
- }, {
- fileName: "lib.scripthost.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface ActiveXObject{new(s:string):any;}declare var ActiveXObject:ActiveXObject;interface ITextWriter{Write(s:string):void;WriteLine(s:string):void;Close():void;}interface TextStreamBase{Column:number;Line:number;Close():void;}interface TextStreamWriter extends TextStreamBase{Write(s:string):void;WriteBlankLines(intLines:number):void;WriteLine(s:string):void;}interface TextStreamReader extends TextStreamBase{Read(characters:number):string;ReadAll():string;ReadLine():string;Skip(characters:number):void;SkipLine():void;AtEndOfLine:boolean;AtEndOfStream:boolean;}declare var WScript:{Echo(s:any):void;StdErr:TextStreamWriter;StdOut:TextStreamWriter;Arguments:{length:number;Item(n:number):string;};ScriptFullName:string;Quit(exitCode?:number):number;BuildVersion:number;FullName:string;Interactive:boolean;Name:string;Path:string;ScriptName:string;StdIn:TextStreamReader;Version:string;ConnectObject(objEventSource:any,strPrefix:string):void;CreateObject(strProgID:string,strPrefix?:string):any;DisconnectObject(obj:any):void;GetObject(strPathname:string,strProgID?:string,strPrefix?:string):any;Sleep(intTime:number):void;};declare var WSH:typeof WScript;declare class SafeArray<T=any>{private constructor();private SafeArray_typekey:SafeArray<T>;}interface Enumerator<T=any>{atEnd():boolean;item():T;moveFirst():void;moveNext():void;}interface EnumeratorConstructor{new<T=any>(safearray:SafeArray<T>):Enumerator<T>;new<T=any>(collection:{Item(index:any):T;}):Enumerator<T>;new<T=any>(collection:any):Enumerator<T>;}declare var Enumerator:EnumeratorConstructor;interface VBArray<T=any>{dimensions():number;getItem(dimension1Index:number,...dimensionNIndexes:number[]):T;lbound(dimension?:number):number;ubound(dimension?:number):number;toArray():T[];}interface VBArrayConstructor{new<T=any>(safeArray:SafeArray<T>):VBArray<T>;}declare var VBArray:VBArrayConstructor;declare class VarDate{private constructor();private VarDate_typekey:VarDate;}interface DateConstructor{new(vd:VarDate):Date;}interface Date{getVarDate:()=>VarDate;}"
- }, {
- fileName: "lib.es2022.array.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface Array<T>{at(index:number):T|undefined;}interface ReadonlyArray<T>{at(index:number):T|undefined;}interface Int8Array{at(index:number):number|undefined;}interface Uint8Array{at(index:number):number|undefined;}interface Uint8ClampedArray{at(index:number):number|undefined;}interface Int16Array{at(index:number):number|undefined;}interface Uint16Array{at(index:number):number|undefined;}interface Int32Array{at(index:number):number|undefined;}interface Uint32Array{at(index:number):number|undefined;}interface Float32Array{at(index:number):number|undefined;}interface Float64Array{at(index:number):number|undefined;}interface BigInt64Array{at(index:number):bigint|undefined;}interface BigUint64Array{at(index:number):bigint|undefined;}"
- }, {
- fileName: "lib.esnext.decorators.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015.symbol\" />\n/// <reference lib=\"decorators\" />\ninterface SymbolConstructor{readonly metadata:unique symbol;}interface Function{[Symbol.metadata]:DecoratorMetadata|null;}"
- }, {
- fileName: "lib.es2019.full.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2019\" />\n/// <reference lib=\"dom\" />\n/// <reference lib=\"webworker.importscripts\" />\n/// <reference lib=\"scripthost\" />\n/// <reference lib=\"dom.iterable\" />\n/// <reference lib=\"dom.asynciterable\" />\n"
- }, {
- fileName: "lib.es2020.intl.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2018.intl\" />\ndeclare namespace Intl{type UnicodeBCP47LocaleIdentifier=string;type RelativeTimeFormatUnit=|\"year\"|\"years\"|\"quarter\"|\"quarters\"|\"month\"|\"months\"|\"week\"|\"weeks\"|\"day\"|\"days\"|\"hour\"|\"hours\"|\"minute\"|\"minutes\"|\"second\"|\"seconds\";type RelativeTimeFormatUnitSingular=|\"year\"|\"quarter\"|\"month\"|\"week\"|\"day\"|\"hour\"|\"minute\"|\"second\";type RelativeTimeFormatLocaleMatcher=\"lookup\"|\"best fit\";type RelativeTimeFormatNumeric=\"always\"|\"auto\";type RelativeTimeFormatStyle=\"long\"|\"short\"|\"narrow\";type LocalesArgument=UnicodeBCP47LocaleIdentifier|Locale|readonly(UnicodeBCP47LocaleIdentifier|Locale)[]|undefined;interface RelativeTimeFormatOptions{localeMatcher?:RelativeTimeFormatLocaleMatcher;numeric?:RelativeTimeFormatNumeric;style?:RelativeTimeFormatStyle;}interface ResolvedRelativeTimeFormatOptions{locale:UnicodeBCP47LocaleIdentifier;style:RelativeTimeFormatStyle;numeric:RelativeTimeFormatNumeric;numberingSystem:string;}type RelativeTimeFormatPart=|{type:\"literal\";value:string;}|{type:Exclude<NumberFormatPartTypes,\"literal\">;value:string;unit:RelativeTimeFormatUnitSingular;};interface RelativeTimeFormat{format(value:number,unit:RelativeTimeFormatUnit):string;formatToParts(value:number,unit:RelativeTimeFormatUnit):RelativeTimeFormatPart[];resolvedOptions():ResolvedRelativeTimeFormatOptions;}const RelativeTimeFormat:{new(locales?:LocalesArgument,options?:RelativeTimeFormatOptions,):RelativeTimeFormat;supportedLocalesOf(locales?:LocalesArgument,options?:RelativeTimeFormatOptions,):UnicodeBCP47LocaleIdentifier[];};interface NumberFormatOptionsStyleRegistry{unit:never;}interface NumberFormatOptionsCurrencyDisplayRegistry{narrowSymbol:never;}interface NumberFormatOptionsSignDisplayRegistry{auto:never;never:never;always:never;exceptZero:never;}type NumberFormatOptionsSignDisplay=keyof NumberFormatOptionsSignDisplayRegistry;interface NumberFormatOptions{numberingSystem?:string|undefined;compactDisplay?:\"short\"|\"long\"|undefined;notation?:\"standard\"|\"scientific\"|\"engineering\"|\"compact\"|undefined;signDisplay?:NumberFormatOptionsSignDisplay|undefined;unit?:string|undefined;unitDisplay?:\"short\"|\"long\"|\"narrow\"|undefined;currencySign?:\"standard\"|\"accounting\"|undefined;}interface ResolvedNumberFormatOptions{compactDisplay?:\"short\"|\"long\";notation:\"standard\"|\"scientific\"|\"engineering\"|\"compact\";signDisplay:NumberFormatOptionsSignDisplay;unit?:string;unitDisplay?:\"short\"|\"long\"|\"narrow\";currencySign?:\"standard\"|\"accounting\";}interface NumberFormatPartTypeRegistry{compact:never;exponentInteger:never;exponentMinusSign:never;exponentSeparator:never;unit:never;unknown:never;}interface DateTimeFormatOptions{calendar?:string|undefined;dayPeriod?:\"narrow\"|\"short\"|\"long\"|undefined;numberingSystem?:string|undefined;dateStyle?:\"full\"|\"long\"|\"medium\"|\"short\"|undefined;timeStyle?:\"full\"|\"long\"|\"medium\"|\"short\"|undefined;hourCycle?:\"h11\"|\"h12\"|\"h23\"|\"h24\"|undefined;}type LocaleHourCycleKey=\"h12\"|\"h23\"|\"h11\"|\"h24\";type LocaleCollationCaseFirst=\"upper\"|\"lower\"|\"false\";interface LocaleOptions{baseName?:string;calendar?:string;caseFirst?:LocaleCollationCaseFirst;collation?:string;hourCycle?:LocaleHourCycleKey;language?:string;numberingSystem?:string;numeric?:boolean;region?:string;script?:string;}interface Locale extends LocaleOptions{baseName:string;language:string;maximize():Locale;minimize():Locale;toString():UnicodeBCP47LocaleIdentifier;}const Locale:{new(tag:UnicodeBCP47LocaleIdentifier|Locale,options?:LocaleOptions):Locale;};type DisplayNamesFallback=|\"code\"|\"none\";type DisplayNamesType=|\"language\"|\"region\"|\"script\"|\"calendar\"|\"dateTimeField\"|\"currency\";type DisplayNamesLanguageDisplay=|\"dialect\"|\"standard\";interface DisplayNamesOptions{localeMatcher?:RelativeTimeFormatLocaleMatcher;style?:RelativeTimeFormatStyle;type:DisplayNamesType;languageDisplay?:DisplayNamesLanguageDisplay;fallback?:DisplayNamesFallback;}interface ResolvedDisplayNamesOptions{locale:UnicodeBCP47LocaleIdentifier;style:RelativeTimeFormatStyle;type:DisplayNamesType;fallback:DisplayNamesFallback;languageDisplay?:DisplayNamesLanguageDisplay;}interface DisplayNames{of(code:string):string|undefined;resolvedOptions():ResolvedDisplayNamesOptions;}const DisplayNames:{prototype:DisplayNames;new(locales:LocalesArgument,options:DisplayNamesOptions):DisplayNames;supportedLocalesOf(locales?:LocalesArgument,options?:{localeMatcher?:RelativeTimeFormatLocaleMatcher;}):UnicodeBCP47LocaleIdentifier[];};interface CollatorConstructor{new(locales?:LocalesArgument,options?:CollatorOptions):Collator;(locales?:LocalesArgument,options?:CollatorOptions):Collator;supportedLocalesOf(locales:LocalesArgument,options?:CollatorOptions):string[];}interface DateTimeFormatConstructor{new(locales?:LocalesArgument,options?:DateTimeFormatOptions):DateTimeFormat;(locales?:LocalesArgument,options?:DateTimeFormatOptions):DateTimeFormat;supportedLocalesOf(locales:LocalesArgument,options?:DateTimeFormatOptions):string[];}interface NumberFormatConstructor{new(locales?:LocalesArgument,options?:NumberFormatOptions):NumberFormat;(locales?:LocalesArgument,options?:NumberFormatOptions):NumberFormat;supportedLocalesOf(locales:LocalesArgument,options?:NumberFormatOptions):string[];}interface PluralRulesConstructor{new(locales?:LocalesArgument,options?:PluralRulesOptions):PluralRules;(locales?:LocalesArgument,options?:PluralRulesOptions):PluralRules;supportedLocalesOf(locales:LocalesArgument,options?:{localeMatcher?:\"lookup\"|\"best fit\";}):string[];}}"
- }, {
- fileName: "lib.decorators.legacy.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ndeclare type ClassDecorator=<TFunction extends Function>(target:TFunction)=>TFunction|void;declare type PropertyDecorator=(target:Object,propertyKey:string|symbol)=>void;declare type MethodDecorator=<T>(target:Object,propertyKey:string|symbol,descriptor:TypedPropertyDescriptor<T>)=>TypedPropertyDescriptor<T>|void;declare type ParameterDecorator=(target:Object,propertyKey:string|symbol|undefined,parameterIndex:number)=>void;"
- }, {
- fileName: "lib.es2015.promise.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface PromiseConstructor{readonly prototype:Promise<any>;new<T>(executor:(resolve:(value:T|PromiseLike<T>)=>void,reject:(reason?:any)=>void)=>void):Promise<T>;all<T extends readonly unknown[]|[]>(values:T):Promise<{-readonly[P in keyof T]:Awaited<T[P]>;}>;race<T extends readonly unknown[]|[]>(values:T):Promise<Awaited<T[number]>>;reject<T=never>(reason?:any):Promise<T>;resolve():Promise<void>;resolve<T>(value:T):Promise<Awaited<T>>;resolve<T>(value:T|PromiseLike<T>):Promise<Awaited<T>>;}declare var Promise:PromiseConstructor;"
- }, {
- fileName: "lib.es2018.intl.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ndeclare namespace Intl{type LDMLPluralRule=\"zero\"|\"one\"|\"two\"|\"few\"|\"many\"|\"other\";type PluralRuleType=\"cardinal\"|\"ordinal\";interface PluralRulesOptions{localeMatcher?:\"lookup\"|\"best fit\"|undefined;type?:PluralRuleType|undefined;minimumIntegerDigits?:number|undefined;minimumFractionDigits?:number|undefined;maximumFractionDigits?:number|undefined;minimumSignificantDigits?:number|undefined;maximumSignificantDigits?:number|undefined;}interface ResolvedPluralRulesOptions{locale:string;pluralCategories:LDMLPluralRule[];type:PluralRuleType;minimumIntegerDigits:number;minimumFractionDigits:number;maximumFractionDigits:number;minimumSignificantDigits?:number;maximumSignificantDigits?:number;}interface PluralRules{resolvedOptions():ResolvedPluralRulesOptions;select(n:number):LDMLPluralRule;}interface PluralRulesConstructor{new(locales?:string|readonly string[],options?:PluralRulesOptions):PluralRules;(locales?:string|readonly string[],options?:PluralRulesOptions):PluralRules;supportedLocalesOf(locales:string|readonly string[],options?:{localeMatcher?:\"lookup\"|\"best fit\";}):string[];}const PluralRules:PluralRulesConstructor;interface NumberFormatPartTypeRegistry{literal:never;nan:never;infinity:never;percent:never;integer:never;group:never;decimal:never;fraction:never;plusSign:never;minusSign:never;percentSign:never;currency:never;}type NumberFormatPartTypes=keyof NumberFormatPartTypeRegistry;interface NumberFormatPart{type:NumberFormatPartTypes;value:string;}interface NumberFormat{formatToParts(number?:number|bigint):NumberFormatPart[];}}"
- }, {
- fileName: "lib.es2015.symbol.wellknown.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015.symbol\" />\ninterface SymbolConstructor{readonly hasInstance:unique symbol;readonly isConcatSpreadable:unique symbol;readonly match:unique symbol;readonly replace:unique symbol;readonly search:unique symbol;readonly species:unique symbol;readonly split:unique symbol;readonly toPrimitive:unique symbol;readonly toStringTag:unique symbol;readonly unscopables:unique symbol;}interface Symbol{[Symbol.toPrimitive](hint:string):symbol;readonly[Symbol.toStringTag]:string;}interface Array<T>{readonly[Symbol.unscopables]:{[K in keyof any[]]?:boolean;};}interface ReadonlyArray<T>{readonly[Symbol.unscopables]:{[K in keyof readonly any[]]?:boolean;};}interface Date{[Symbol.toPrimitive](hint:\"default\"):string;[Symbol.toPrimitive](hint:\"string\"):string;[Symbol.toPrimitive](hint:\"number\"):number;[Symbol.toPrimitive](hint:string):string|number;}interface Map<K,V>{readonly[Symbol.toStringTag]:string;}interface WeakMap<K extends WeakKey,V>{readonly[Symbol.toStringTag]:string;}interface Set<T>{readonly[Symbol.toStringTag]:string;}interface WeakSet<T extends WeakKey>{readonly[Symbol.toStringTag]:string;}interface JSON{readonly[Symbol.toStringTag]:string;}interface Function{[Symbol.hasInstance](value:any):boolean;}interface GeneratorFunction{readonly[Symbol.toStringTag]:string;}interface Math{readonly[Symbol.toStringTag]:string;}interface Promise<T>{readonly[Symbol.toStringTag]:string;}interface PromiseConstructor{readonly[Symbol.species]:PromiseConstructor;}interface RegExp{[Symbol.match](string:string):RegExpMatchArray|null;[Symbol.replace](string:string,replaceValue:string):string;[Symbol.replace](string:string,replacer:(substring:string,...args:any[])=>string):string;[Symbol.search](string:string):number;[Symbol.split](string:string,limit?:number):string[];}interface RegExpConstructor{readonly[Symbol.species]:RegExpConstructor;}interface String{match(matcher:{[Symbol.match](string:string):RegExpMatchArray|null;}):RegExpMatchArray|null;replace(searchValue:{[Symbol.replace](string:string,replaceValue:string):string;},replaceValue:string):string;replace(searchValue:{[Symbol.replace](string:string,replacer:(substring:string,...args:any[])=>string):string;},replacer:(substring:string,...args:any[])=>string):string;search(searcher:{[Symbol.search](string:string):number;}):number;split(splitter:{[Symbol.split](string:string,limit?:number):string[];},limit?:number):string[];}interface ArrayBuffer{readonly[Symbol.toStringTag]:string;}interface DataView{readonly[Symbol.toStringTag]:string;}interface Int8Array{readonly[Symbol.toStringTag]:\"Int8Array\";}interface Uint8Array{readonly[Symbol.toStringTag]:\"Uint8Array\";}interface Uint8ClampedArray{readonly[Symbol.toStringTag]:\"Uint8ClampedArray\";}interface Int16Array{readonly[Symbol.toStringTag]:\"Int16Array\";}interface Uint16Array{readonly[Symbol.toStringTag]:\"Uint16Array\";}interface Int32Array{readonly[Symbol.toStringTag]:\"Int32Array\";}interface Uint32Array{readonly[Symbol.toStringTag]:\"Uint32Array\";}interface Float32Array{readonly[Symbol.toStringTag]:\"Float32Array\";}interface Float64Array{readonly[Symbol.toStringTag]:\"Float64Array\";}interface ArrayConstructor{readonly[Symbol.species]:ArrayConstructor;}interface MapConstructor{readonly[Symbol.species]:MapConstructor;}interface SetConstructor{readonly[Symbol.species]:SetConstructor;}interface ArrayBufferConstructor{readonly[Symbol.species]:ArrayBufferConstructor;}"
- }, {
- fileName: "lib.esnext.regexp.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface RegExp{readonly unicodeSets:boolean;}"
- }, {
- fileName: "lib.es2021.full.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2021\" />\n/// <reference lib=\"dom\" />\n/// <reference lib=\"webworker.importscripts\" />\n/// <reference lib=\"scripthost\" />\n/// <reference lib=\"dom.iterable\" />\n/// <reference lib=\"dom.asynciterable\" />\n"
- }, {
- fileName: "lib.es2015.iterable.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015.symbol\" />\ninterface SymbolConstructor{readonly iterator:unique symbol;}interface IteratorYieldResult<TYield>{done?:false;value:TYield;}interface IteratorReturnResult<TReturn>{done:true;value:TReturn;}type IteratorResult<T,TReturn=any>=IteratorYieldResult<T>|IteratorReturnResult<TReturn>;interface Iterator<T,TReturn=any,TNext=any>{next(...[value]:[]|[TNext]):IteratorResult<T,TReturn>;return?(value?:TReturn):IteratorResult<T,TReturn>;throw?(e?:any):IteratorResult<T,TReturn>;}interface Iterable<T,TReturn=any,TNext=any>{[Symbol.iterator]():Iterator<T,TReturn,TNext>;}interface IterableIterator<T,TReturn=any,TNext=any>extends Iterator<T,TReturn,TNext>{[Symbol.iterator]():IterableIterator<T,TReturn,TNext>;}interface IteratorObject<T,TReturn=unknown,TNext=unknown>extends Iterator<T,TReturn,TNext>{[Symbol.iterator]():IteratorObject<T,TReturn,TNext>;}type BuiltinIteratorReturn=intrinsic;interface ArrayIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():ArrayIterator<T>;}interface Array<T>{[Symbol.iterator]():ArrayIterator<T>;entries():ArrayIterator<[number,T]>;keys():ArrayIterator<number>;values():ArrayIterator<T>;}interface ArrayConstructor{from<T>(iterable:Iterable<T>|ArrayLike<T>):T[];from<T,U>(iterable:Iterable<T>|ArrayLike<T>,mapfn:(v:T,k:number)=>U,thisArg?:any):U[];}interface ReadonlyArray<T>{[Symbol.iterator]():ArrayIterator<T>;entries():ArrayIterator<[number,T]>;keys():ArrayIterator<number>;values():ArrayIterator<T>;}interface IArguments{[Symbol.iterator]():ArrayIterator<any>;}interface MapIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():MapIterator<T>;}interface Map<K,V>{[Symbol.iterator]():MapIterator<[K,V]>;entries():MapIterator<[K,V]>;keys():MapIterator<K>;values():MapIterator<V>;}interface ReadonlyMap<K,V>{[Symbol.iterator]():MapIterator<[K,V]>;entries():MapIterator<[K,V]>;keys():MapIterator<K>;values():MapIterator<V>;}interface MapConstructor{new():Map<any,any>;new<K,V>(iterable?:Iterable<readonly[K,V]>|null):Map<K,V>;}interface WeakMap<K extends WeakKey,V>{}interface WeakMapConstructor{new<K extends WeakKey,V>(iterable:Iterable<readonly[K,V]>):WeakMap<K,V>;}interface SetIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():SetIterator<T>;}interface Set<T>{[Symbol.iterator]():SetIterator<T>;entries():SetIterator<[T,T]>;keys():SetIterator<T>;values():SetIterator<T>;}interface ReadonlySet<T>{[Symbol.iterator]():SetIterator<T>;entries():SetIterator<[T,T]>;keys():SetIterator<T>;values():SetIterator<T>;}interface SetConstructor{new<T>(iterable?:Iterable<T>|null):Set<T>;}interface WeakSet<T extends WeakKey>{}interface WeakSetConstructor{new<T extends WeakKey=WeakKey>(iterable:Iterable<T>):WeakSet<T>;}interface Promise<T>{}interface PromiseConstructor{all<T>(values:Iterable<T|PromiseLike<T>>):Promise<Awaited<T>[]>;race<T>(values:Iterable<T|PromiseLike<T>>):Promise<Awaited<T>>;}interface StringIterator<T>extends IteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.iterator]():StringIterator<T>;}interface String{[Symbol.iterator]():StringIterator<string>;}interface Int8Array{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Int8ArrayConstructor{new(elements:Iterable<number>):Int8Array;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Int8Array;}interface Uint8Array{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Uint8ArrayConstructor{new(elements:Iterable<number>):Uint8Array;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Uint8Array;}interface Uint8ClampedArray{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Uint8ClampedArrayConstructor{new(elements:Iterable<number>):Uint8ClampedArray;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Uint8ClampedArray;}interface Int16Array{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Int16ArrayConstructor{new(elements:Iterable<number>):Int16Array;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Int16Array;}interface Uint16Array{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Uint16ArrayConstructor{new(elements:Iterable<number>):Uint16Array;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Uint16Array;}interface Int32Array{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Int32ArrayConstructor{new(elements:Iterable<number>):Int32Array;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Int32Array;}interface Uint32Array{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Uint32ArrayConstructor{new(elements:Iterable<number>):Uint32Array;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Uint32Array;}interface Float32Array{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Float32ArrayConstructor{new(elements:Iterable<number>):Float32Array;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Float32Array;}interface Float64Array{[Symbol.iterator]():ArrayIterator<number>;entries():ArrayIterator<[number,number]>;keys():ArrayIterator<number>;values():ArrayIterator<number>;}interface Float64ArrayConstructor{new(elements:Iterable<number>):Float64Array;from(arrayLike:Iterable<number>,mapfn?:(v:number,k:number)=>number,thisArg?:any):Float64Array;}"
- }, {
- fileName: "lib.es2018.regexp.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface RegExpMatchArray{groups?:{[key:string]:string;};}interface RegExpExecArray{groups?:{[key:string]:string;};}interface RegExp{readonly dotAll:boolean;}"
- }, {
- fileName: "lib.decorators.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ntype ClassMemberDecoratorContext=|ClassMethodDecoratorContext|ClassGetterDecoratorContext|ClassSetterDecoratorContext|ClassFieldDecoratorContext|ClassAccessorDecoratorContext;type DecoratorContext=|ClassDecoratorContext|ClassMemberDecoratorContext;type DecoratorMetadataObject=Record<PropertyKey,unknown>&object;type DecoratorMetadata=typeof globalThis extends{Symbol:{readonly metadata:symbol;};}?DecoratorMetadataObject:DecoratorMetadataObject|undefined;interface ClassDecoratorContext<\nClass extends abstract new(...args:any)=>any=abstract new(...args:any)=>any,>{readonly kind:\"class\";readonly name:string|undefined;addInitializer(initializer:(this:Class)=>void):void;readonly metadata:DecoratorMetadata;}interface ClassMethodDecoratorContext<\nThis=unknown,Value extends(this:This,...args:any)=>any=(this:This,...args:any)=>any,>{readonly kind:\"method\";readonly name:string|symbol;readonly static:boolean;readonly private:boolean;readonly access:{has(object:This):boolean;get(object:This):Value;};addInitializer(initializer:(this:This)=>void):void;readonly metadata:DecoratorMetadata;}interface ClassGetterDecoratorContext<\nThis=unknown,Value=unknown,>{readonly kind:\"getter\";readonly name:string|symbol;readonly static:boolean;readonly private:boolean;readonly access:{has(object:This):boolean;get(object:This):Value;};addInitializer(initializer:(this:This)=>void):void;readonly metadata:DecoratorMetadata;}interface ClassSetterDecoratorContext<\nThis=unknown,Value=unknown,>{readonly kind:\"setter\";readonly name:string|symbol;readonly static:boolean;readonly private:boolean;readonly access:{has(object:This):boolean;set(object:This,value:Value):void;};addInitializer(initializer:(this:This)=>void):void;readonly metadata:DecoratorMetadata;}interface ClassAccessorDecoratorContext<\nThis=unknown,Value=unknown,>{readonly kind:\"accessor\";readonly name:string|symbol;readonly static:boolean;readonly private:boolean;readonly access:{has(object:This):boolean;get(object:This):Value;set(object:This,value:Value):void;};addInitializer(initializer:(this:This)=>void):void;readonly metadata:DecoratorMetadata;}interface ClassAccessorDecoratorTarget<This,Value>{get(this:This):Value;set(this:This,value:Value):void;}interface ClassAccessorDecoratorResult<This,Value>{get?(this:This):Value;set?(this:This,value:Value):void;init?(this:This,value:Value):Value;}interface ClassFieldDecoratorContext<\nThis=unknown,Value=unknown,>{readonly kind:\"field\";readonly name:string|symbol;readonly static:boolean;readonly private:boolean;readonly access:{has(object:This):boolean;get(object:This):Value;set(object:This,value:Value):void;};addInitializer(initializer:(this:This)=>void):void;readonly metadata:DecoratorMetadata;}"
- }, {
- fileName: "lib.es2021.string.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface String{replaceAll(searchValue:string|RegExp,replaceValue:string):string;replaceAll(searchValue:string|RegExp,replacer:(substring:string,...args:any[])=>string):string;}"
- }, {
- fileName: "lib.es2018.asynciterable.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015.symbol\" />\n/// <reference lib=\"es2015.iterable\" />\ninterface SymbolConstructor{readonly asyncIterator:unique symbol;}interface AsyncIterator<T,TReturn=any,TNext=any>{next(...[value]:[]|[TNext]):Promise<IteratorResult<T,TReturn>>;return?(value?:TReturn|PromiseLike<TReturn>):Promise<IteratorResult<T,TReturn>>;throw?(e?:any):Promise<IteratorResult<T,TReturn>>;}interface AsyncIterable<T,TReturn=any,TNext=any>{[Symbol.asyncIterator]():AsyncIterator<T,TReturn,TNext>;}interface AsyncIterableIterator<T,TReturn=any,TNext=any>extends AsyncIterator<T,TReturn,TNext>{[Symbol.asyncIterator]():AsyncIterableIterator<T,TReturn,TNext>;}interface AsyncIteratorObject<T,TReturn=unknown,TNext=unknown>extends AsyncIterator<T,TReturn,TNext>{[Symbol.asyncIterator]():AsyncIteratorObject<T,TReturn,TNext>;}"
- }, {
- fileName: "lib.es6.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2015\" />\n/// <reference lib=\"dom\" />\n/// <reference lib=\"dom.iterable\" />\n/// <reference lib=\"webworker.importscripts\" />\n/// <reference lib=\"scripthost\" />\n"
- }, {
- fileName: "lib.es2023.collection.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface WeakKeyTypes{symbol:symbol;}"
- }, {
- fileName: "lib.es2022.error.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface ErrorOptions{cause?:unknown;}interface Error{cause?:unknown;}interface ErrorConstructor{new(message?:string,options?:ErrorOptions):Error;(message?:string,options?:ErrorOptions):Error;}interface EvalErrorConstructor{new(message?:string,options?:ErrorOptions):EvalError;(message?:string,options?:ErrorOptions):EvalError;}interface RangeErrorConstructor{new(message?:string,options?:ErrorOptions):RangeError;(message?:string,options?:ErrorOptions):RangeError;}interface ReferenceErrorConstructor{new(message?:string,options?:ErrorOptions):ReferenceError;(message?:string,options?:ErrorOptions):ReferenceError;}interface SyntaxErrorConstructor{new(message?:string,options?:ErrorOptions):SyntaxError;(message?:string,options?:ErrorOptions):SyntaxError;}interface TypeErrorConstructor{new(message?:string,options?:ErrorOptions):TypeError;(message?:string,options?:ErrorOptions):TypeError;}interface URIErrorConstructor{new(message?:string,options?:ErrorOptions):URIError;(message?:string,options?:ErrorOptions):URIError;}interface AggregateErrorConstructor{new(errors:Iterable<any>,message?:string,options?:ErrorOptions,):AggregateError;(errors:Iterable<any>,message?:string,options?:ErrorOptions,):AggregateError;}"
- }, {
- fileName: "lib.es2016.array.include.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface Array<T>{includes(searchElement:T,fromIndex?:number):boolean;}interface ReadonlyArray<T>{includes(searchElement:T,fromIndex?:number):boolean;}interface Int8Array{includes(searchElement:number,fromIndex?:number):boolean;}interface Uint8Array{includes(searchElement:number,fromIndex?:number):boolean;}interface Uint8ClampedArray{includes(searchElement:number,fromIndex?:number):boolean;}interface Int16Array{includes(searchElement:number,fromIndex?:number):boolean;}interface Uint16Array{includes(searchElement:number,fromIndex?:number):boolean;}interface Int32Array{includes(searchElement:number,fromIndex?:number):boolean;}interface Uint32Array{includes(searchElement:number,fromIndex?:number):boolean;}interface Float32Array{includes(searchElement:number,fromIndex?:number):boolean;}interface Float64Array{includes(searchElement:number,fromIndex?:number):boolean;}"
- }, {
- fileName: "lib.esnext.intl.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ndeclare namespace Intl{}"
- }, {
- fileName: "lib.es5.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"decorators\" />\n/// <reference lib=\"decorators.legacy\" />\ndeclare var NaN:number;declare var Infinity:number;declare function eval(x:string):any;declare function parseInt(string:string,radix?:number):number;declare function parseFloat(string:string):number;declare function isNaN(number:number):boolean;declare function isFinite(number:number):boolean;declare function decodeURI(encodedURI:string):string;declare function decodeURIComponent(encodedURIComponent:string):string;declare function encodeURI(uri:string):string;declare function encodeURIComponent(uriComponent:string|number|boolean):string;declare function escape(string:string):string;declare function unescape(string:string):string;interface Symbol{toString():string;valueOf():symbol;}declare type PropertyKey=string|number|symbol;interface PropertyDescriptor{configurable?:boolean;enumerable?:boolean;value?:any;writable?:boolean;get?():any;set?(v:any):void;}interface PropertyDescriptorMap{[key:PropertyKey]:PropertyDescriptor;}interface Object{constructor:Function;toString():string;toLocaleString():string;valueOf():Object;hasOwnProperty(v:PropertyKey):boolean;isPrototypeOf(v:Object):boolean;propertyIsEnumerable(v:PropertyKey):boolean;}interface ObjectConstructor{new(value?:any):Object;():any;(value:any):any;readonly prototype:Object;getPrototypeOf(o:any):any;getOwnPropertyDescriptor(o:any,p:PropertyKey):PropertyDescriptor|undefined;getOwnPropertyNames(o:any):string[];create(o:object|null):any;create(o:object|null,properties:PropertyDescriptorMap&ThisType<any>):any;defineProperty<T>(o:T,p:PropertyKey,attributes:PropertyDescriptor&ThisType<any>):T;defineProperties<T>(o:T,properties:PropertyDescriptorMap&ThisType<any>):T;seal<T>(o:T):T;freeze<T extends Function>(f:T):T;freeze<T extends{[idx:string]:U|null|undefined|object;},U extends string|bigint|number|boolean|symbol>(o:T):Readonly<T>;freeze<T>(o:T):Readonly<T>;preventExtensions<T>(o:T):T;isSealed(o:any):boolean;isFrozen(o:any):boolean;isExtensible(o:any):boolean;keys(o:object):string[];}declare var Object:ObjectConstructor;interface Function{apply(this:Function,thisArg:any,argArray?:any):any;call(this:Function,thisArg:any,...argArray:any[]):any;bind(this:Function,thisArg:any,...argArray:any[]):any;toString():string;prototype:any;readonly length:number;arguments:any;caller:Function;}interface FunctionConstructor{new(...args:string[]):Function;(...args:string[]):Function;readonly prototype:Function;}declare var Function:FunctionConstructor;type ThisParameterType<T>=T extends(this:infer U,...args:never)=>any?U:unknown;type OmitThisParameter<T>=unknown extends ThisParameterType<T>?T:T extends(...args:infer A)=>infer R?(...args:A)=>R:T;interface CallableFunction extends Function{apply<T,R>(this:(this:T)=>R,thisArg:T):R;apply<T,A extends any[],R>(this:(this:T,...args:A)=>R,thisArg:T,args:A):R;call<T,A extends any[],R>(this:(this:T,...args:A)=>R,thisArg:T,...args:A):R;bind<T>(this:T,thisArg:ThisParameterType<T>):OmitThisParameter<T>;bind<T,A extends any[],B extends any[],R>(this:(this:T,...args:[...A,...B])=>R,thisArg:T,...args:A):(...args:B)=>R;}interface NewableFunction extends Function{apply<T>(this:new()=>T,thisArg:T):void;apply<T,A extends any[]>(this:new(...args:A)=>T,thisArg:T,args:A):void;call<T,A extends any[]>(this:new(...args:A)=>T,thisArg:T,...args:A):void;bind<T>(this:T,thisArg:any):T;bind<A extends any[],B extends any[],R>(this:new(...args:[...A,...B])=>R,thisArg:any,...args:A):new(...args:B)=>R;}interface IArguments{[index:number]:any;length:number;callee:Function;}interface String{toString():string;charAt(pos:number):string;charCodeAt(index:number):number;concat(...strings:string[]):string;indexOf(searchString:string,position?:number):number;lastIndexOf(searchString:string,position?:number):number;localeCompare(that:string):number;match(regexp:string|RegExp):RegExpMatchArray|null;replace(searchValue:string|RegExp,replaceValue:string):string;replace(searchValue:string|RegExp,replacer:(substring:string,...args:any[])=>string):string;search(regexp:string|RegExp):number;slice(start?:number,end?:number):string;split(separator:string|RegExp,limit?:number):string[];substring(start:number,end?:number):string;toLowerCase():string;toLocaleLowerCase(locales?:string|string[]):string;toUpperCase():string;toLocaleUpperCase(locales?:string|string[]):string;trim():string;readonly length:number;substr(from:number,length?:number):string;valueOf():string;readonly[index:number]:string;}interface StringConstructor{new(value?:any):String;(value?:any):string;readonly prototype:String;fromCharCode(...codes:number[]):string;}declare var String:StringConstructor;interface Boolean{valueOf():boolean;}interface BooleanConstructor{new(value?:any):Boolean;<T>(value?:T):boolean;readonly prototype:Boolean;}declare var Boolean:BooleanConstructor;interface Number{toString(radix?:number):string;toFixed(fractionDigits?:number):string;toExponential(fractionDigits?:number):string;toPrecision(precision?:number):string;valueOf():number;}interface NumberConstructor{new(value?:any):Number;(value?:any):number;readonly prototype:Number;readonly MAX_VALUE:number;readonly MIN_VALUE:number;readonly NaN:number;readonly NEGATIVE_INFINITY:number;readonly POSITIVE_INFINITY:number;}declare var Number:NumberConstructor;interface TemplateStringsArray extends ReadonlyArray<string>{readonly raw:readonly string[];}interface ImportMeta{}interface ImportCallOptions{assert?:ImportAssertions;with?:ImportAttributes;}interface ImportAssertions{[key:string]:string;}interface ImportAttributes{[key:string]:string;}interface Math{readonly E:number;readonly LN10:number;readonly LN2:number;readonly LOG2E:number;readonly LOG10E:number;readonly PI:number;readonly SQRT1_2:number;readonly SQRT2:number;abs(x:number):number;acos(x:number):number;asin(x:number):number;atan(x:number):number;atan2(y:number,x:number):number;ceil(x:number):number;cos(x:number):number;exp(x:number):number;floor(x:number):number;log(x:number):number;max(...values:number[]):number;min(...values:number[]):number;pow(x:number,y:number):number;random():number;round(x:number):number;sin(x:number):number;sqrt(x:number):number;tan(x:number):number;}declare var Math:Math;interface Date{toString():string;toDateString():string;toTimeString():string;toLocaleString():string;toLocaleDateString():string;toLocaleTimeString():string;valueOf():number;getTime():number;getFullYear():number;getUTCFullYear():number;getMonth():number;getUTCMonth():number;getDate():number;getUTCDate():number;getDay():number;getUTCDay():number;getHours():number;getUTCHours():number;getMinutes():number;getUTCMinutes():number;getSeconds():number;getUTCSeconds():number;getMilliseconds():number;getUTCMilliseconds():number;getTimezoneOffset():number;setTime(time:number):number;setMilliseconds(ms:number):number;setUTCMilliseconds(ms:number):number;setSeconds(sec:number,ms?:number):number;setUTCSeconds(sec:number,ms?:number):number;setMinutes(min:number,sec?:number,ms?:number):number;setUTCMinutes(min:number,sec?:number,ms?:number):number;setHours(hours:number,min?:number,sec?:number,ms?:number):number;setUTCHours(hours:number,min?:number,sec?:number,ms?:number):number;setDate(date:number):number;setUTCDate(date:number):number;setMonth(month:number,date?:number):number;setUTCMonth(month:number,date?:number):number;setFullYear(year:number,month?:number,date?:number):number;setUTCFullYear(year:number,month?:number,date?:number):number;toUTCString():string;toISOString():string;toJSON(key?:any):string;}interface DateConstructor{new():Date;new(value:number|string):Date;new(year:number,monthIndex:number,date?:number,hours?:number,minutes?:number,seconds?:number,ms?:number):Date;():string;readonly prototype:Date;parse(s:string):number;UTC(year:number,monthIndex:number,date?:number,hours?:number,minutes?:number,seconds?:number,ms?:number):number;now():number;}declare var Date:DateConstructor;interface RegExpMatchArray extends Array<string>{index?:number;input?:string;0:string;}interface RegExpExecArray extends Array<string>{index:number;input:string;0:string;}interface RegExp{exec(string:string):RegExpExecArray|null;test(string:string):boolean;readonly source:string;readonly global:boolean;readonly ignoreCase:boolean;readonly multiline:boolean;lastIndex:number;compile(pattern:string,flags?:string):this;}interface RegExpConstructor{new(pattern:RegExp|string):RegExp;new(pattern:string,flags?:string):RegExp;(pattern:RegExp|string):RegExp;(pattern:string,flags?:string):RegExp;readonly\"prototype\":RegExp;\"$1\":string;\"$2\":string;\"$3\":string;\"$4\":string;\"$5\":string;\"$6\":string;\"$7\":string;\"$8\":string;\"$9\":string;\"input\":string;\"$_\":string;\"lastMatch\":string;\"$&\":string;\"lastParen\":string;\"$+\":string;\"leftContext\":string;\"$`\":string;\"rightContext\":string;\"$'\":string;}declare var RegExp:RegExpConstructor;interface Error{name:string;message:string;stack?:string;}interface ErrorConstructor{new(message?:string):Error;(message?:string):Error;readonly prototype:Error;}declare var Error:ErrorConstructor;interface EvalError extends Error{}interface EvalErrorConstructor extends ErrorConstructor{new(message?:string):EvalError;(message?:string):EvalError;readonly prototype:EvalError;}declare var EvalError:EvalErrorConstructor;interface RangeError extends Error{}interface RangeErrorConstructor extends ErrorConstructor{new(message?:string):RangeError;(message?:string):RangeError;readonly prototype:RangeError;}declare var RangeError:RangeErrorConstructor;interface ReferenceError extends Error{}interface ReferenceErrorConstructor extends ErrorConstructor{new(message?:string):ReferenceError;(message?:string):ReferenceError;readonly prototype:ReferenceError;}declare var ReferenceError:ReferenceErrorConstructor;interface SyntaxError extends Error{}interface SyntaxErrorConstructor extends ErrorConstructor{new(message?:string):SyntaxError;(message?:string):SyntaxError;readonly prototype:SyntaxError;}declare var SyntaxError:SyntaxErrorConstructor;interface TypeError extends Error{}interface TypeErrorConstructor extends ErrorConstructor{new(message?:string):TypeError;(message?:string):TypeError;readonly prototype:TypeError;}declare var TypeError:TypeErrorConstructor;interface URIError extends Error{}interface URIErrorConstructor extends ErrorConstructor{new(message?:string):URIError;(message?:string):URIError;readonly prototype:URIError;}declare var URIError:URIErrorConstructor;interface JSON{parse(text:string,reviver?:(this:any,key:string,value:any)=>any):any;stringify(value:any,replacer?:(this:any,key:string,value:any)=>any,space?:string|number):string;stringify(value:any,replacer?:(number|string)[]|null,space?:string|number):string;}declare var JSON:JSON;interface ReadonlyArray<T>{readonly length:number;toString():string;toLocaleString():string;concat(...items:ConcatArray<T>[]):T[];concat(...items:(T|ConcatArray<T>)[]):T[];join(separator?:string):string;slice(start?:number,end?:number):T[];indexOf(searchElement:T,fromIndex?:number):number;lastIndexOf(searchElement:T,fromIndex?:number):number;every<S extends T>(predicate:(value:T,index:number,array:readonly T[])=>value is S,thisArg?:any):this is readonly S[];every(predicate:(value:T,index:number,array:readonly T[])=>unknown,thisArg?:any):boolean;some(predicate:(value:T,index:number,array:readonly T[])=>unknown,thisArg?:any):boolean;forEach(callbackfn:(value:T,index:number,array:readonly T[])=>void,thisArg?:any):void;map<U>(callbackfn:(value:T,index:number,array:readonly T[])=>U,thisArg?:any):U[];filter<S extends T>(predicate:(value:T,index:number,array:readonly T[])=>value is S,thisArg?:any):S[];filter(predicate:(value:T,index:number,array:readonly T[])=>unknown,thisArg?:any):T[];reduce(callbackfn:(previousValue:T,currentValue:T,currentIndex:number,array:readonly T[])=>T):T;reduce(callbackfn:(previousValue:T,currentValue:T,currentIndex:number,array:readonly T[])=>T,initialValue:T):T;reduce<U>(callbackfn:(previousValue:U,currentValue:T,currentIndex:number,array:readonly T[])=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:T,currentValue:T,currentIndex:number,array:readonly T[])=>T):T;reduceRight(callbackfn:(previousValue:T,currentValue:T,currentIndex:number,array:readonly T[])=>T,initialValue:T):T;reduceRight<U>(callbackfn:(previousValue:U,currentValue:T,currentIndex:number,array:readonly T[])=>U,initialValue:U):U;readonly[n:number]:T;}interface ConcatArray<T>{readonly length:number;readonly[n:number]:T;join(separator?:string):string;slice(start?:number,end?:number):T[];}interface Array<T>{length:number;toString():string;toLocaleString():string;pop():T|undefined;push(...items:T[]):number;concat(...items:ConcatArray<T>[]):T[];concat(...items:(T|ConcatArray<T>)[]):T[];join(separator?:string):string;reverse():T[];shift():T|undefined;slice(start?:number,end?:number):T[];sort(compareFn?:(a:T,b:T)=>number):this;splice(start:number,deleteCount?:number):T[];splice(start:number,deleteCount:number,...items:T[]):T[];unshift(...items:T[]):number;indexOf(searchElement:T,fromIndex?:number):number;lastIndexOf(searchElement:T,fromIndex?:number):number;every<S extends T>(predicate:(value:T,index:number,array:T[])=>value is S,thisArg?:any):this is S[];every(predicate:(value:T,index:number,array:T[])=>unknown,thisArg?:any):boolean;some(predicate:(value:T,index:number,array:T[])=>unknown,thisArg?:any):boolean;forEach(callbackfn:(value:T,index:number,array:T[])=>void,thisArg?:any):void;map<U>(callbackfn:(value:T,index:number,array:T[])=>U,thisArg?:any):U[];filter<S extends T>(predicate:(value:T,index:number,array:T[])=>value is S,thisArg?:any):S[];filter(predicate:(value:T,index:number,array:T[])=>unknown,thisArg?:any):T[];reduce(callbackfn:(previousValue:T,currentValue:T,currentIndex:number,array:T[])=>T):T;reduce(callbackfn:(previousValue:T,currentValue:T,currentIndex:number,array:T[])=>T,initialValue:T):T;reduce<U>(callbackfn:(previousValue:U,currentValue:T,currentIndex:number,array:T[])=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:T,currentValue:T,currentIndex:number,array:T[])=>T):T;reduceRight(callbackfn:(previousValue:T,currentValue:T,currentIndex:number,array:T[])=>T,initialValue:T):T;reduceRight<U>(callbackfn:(previousValue:U,currentValue:T,currentIndex:number,array:T[])=>U,initialValue:U):U;[n:number]:T;}interface ArrayConstructor{new(arrayLength?:number):any[];new<T>(arrayLength:number):T[];new<T>(...items:T[]):T[];(arrayLength?:number):any[];<T>(arrayLength:number):T[];<T>(...items:T[]):T[];isArray(arg:any):arg is any[];readonly prototype:any[];}declare var Array:ArrayConstructor;interface TypedPropertyDescriptor<T>{enumerable?:boolean;configurable?:boolean;writable?:boolean;value?:T;get?:()=>T;set?:(value:T)=>void;}declare type PromiseConstructorLike=new<T>(executor:(resolve:(value:T|PromiseLike<T>)=>void,reject:(reason?:any)=>void)=>void)=>PromiseLike<T>;interface PromiseLike<T>{then<TResult1=T,TResult2=never>(onfulfilled?:((value:T)=>TResult1|PromiseLike<TResult1>)|undefined|null,onrejected?:((reason:any)=>TResult2|PromiseLike<TResult2>)|undefined|null):PromiseLike<TResult1|TResult2>;}interface Promise<T>{then<TResult1=T,TResult2=never>(onfulfilled?:((value:T)=>TResult1|PromiseLike<TResult1>)|undefined|null,onrejected?:((reason:any)=>TResult2|PromiseLike<TResult2>)|undefined|null):Promise<TResult1|TResult2>;catch<TResult=never>(onrejected?:((reason:any)=>TResult|PromiseLike<TResult>)|undefined|null):Promise<T|TResult>;}type Awaited<T>=T extends null|undefined?T:T extends object&{then(onfulfilled:infer F,...args:infer _):any;}?\nF extends((value:infer V,...args:infer _)=>any)?\nAwaited<V>:never:T;interface ArrayLike<T>{readonly length:number;readonly[n:number]:T;}type Partial<T>={[P in keyof T]?:T[P];};type Required<T>={[P in keyof T]-?:T[P];};type Readonly<T>={readonly[P in keyof T]:T[P];};type Pick<T,K extends keyof T>={[P in K]:T[P];};type Record<K extends keyof any,T>={[P in K]:T;};type Exclude<T,U>=T extends U?never:T;type Extract<T,U>=T extends U?T:never;type Omit<T,K extends keyof any>=Pick<T,Exclude<keyof T,K>>;type NonNullable<T>=T&{};type Parameters<T extends(...args:any)=>any>=T extends(...args:infer P)=>any?P:never;type ConstructorParameters<T extends abstract new(...args:any)=>any>=T extends abstract new(...args:infer P)=>any?P:never;type ReturnType<T extends(...args:any)=>any>=T extends(...args:any)=>infer R?R:any;type InstanceType<T extends abstract new(...args:any)=>any>=T extends abstract new(...args:any)=>infer R?R:any;type Uppercase<S extends string>=intrinsic;type Lowercase<S extends string>=intrinsic;type Capitalize<S extends string>=intrinsic;type Uncapitalize<S extends string>=intrinsic;type NoInfer<T>=intrinsic;interface ThisType<T>{}interface WeakKeyTypes{object:object;}type WeakKey=WeakKeyTypes[keyof WeakKeyTypes];interface ArrayBuffer{readonly byteLength:number;slice(begin:number,end?:number):ArrayBuffer;}interface ArrayBufferTypes{ArrayBuffer:ArrayBuffer;}type ArrayBufferLike=ArrayBufferTypes[keyof ArrayBufferTypes];interface ArrayBufferConstructor{readonly prototype:ArrayBuffer;new(byteLength:number):ArrayBuffer;isView(arg:any):arg is ArrayBufferView;}declare var ArrayBuffer:ArrayBufferConstructor;interface ArrayBufferView{buffer:ArrayBufferLike;byteLength:number;byteOffset:number;}interface DataView{readonly buffer:ArrayBuffer;readonly byteLength:number;readonly byteOffset:number;getFloat32(byteOffset:number,littleEndian?:boolean):number;getFloat64(byteOffset:number,littleEndian?:boolean):number;getInt8(byteOffset:number):number;getInt16(byteOffset:number,littleEndian?:boolean):number;getInt32(byteOffset:number,littleEndian?:boolean):number;getUint8(byteOffset:number):number;getUint16(byteOffset:number,littleEndian?:boolean):number;getUint32(byteOffset:number,littleEndian?:boolean):number;setFloat32(byteOffset:number,value:number,littleEndian?:boolean):void;setFloat64(byteOffset:number,value:number,littleEndian?:boolean):void;setInt8(byteOffset:number,value:number):void;setInt16(byteOffset:number,value:number,littleEndian?:boolean):void;setInt32(byteOffset:number,value:number,littleEndian?:boolean):void;setUint8(byteOffset:number,value:number):void;setUint16(byteOffset:number,value:number,littleEndian?:boolean):void;setUint32(byteOffset:number,value:number,littleEndian?:boolean):void;}interface DataViewConstructor{readonly prototype:DataView;new(buffer:ArrayBufferLike&{BYTES_PER_ELEMENT?:never;},byteOffset?:number,byteLength?:number):DataView;}declare var DataView:DataViewConstructor;interface Int8Array{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Int8Array)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Int8Array)=>any,thisArg?:any):Int8Array;find(predicate:(value:number,index:number,obj:Int8Array)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Int8Array)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Int8Array)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Int8Array)=>number,thisArg?:any):Int8Array;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int8Array)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int8Array)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Int8Array)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int8Array)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int8Array)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Int8Array)=>U,initialValue:U):U;reverse():Int8Array;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Int8Array;some(predicate:(value:number,index:number,array:Int8Array)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Int8Array;toLocaleString():string;toString():string;valueOf():Int8Array;[index:number]:number;}interface Int8ArrayConstructor{readonly prototype:Int8Array;new(length:number):Int8Array;new(array:ArrayLike<number>|ArrayBufferLike):Int8Array;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Int8Array;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Int8Array;from(arrayLike:ArrayLike<number>):Int8Array;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Int8Array;}declare var Int8Array:Int8ArrayConstructor;interface Uint8Array{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Uint8Array)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Uint8Array)=>any,thisArg?:any):Uint8Array;find(predicate:(value:number,index:number,obj:Uint8Array)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Uint8Array)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Uint8Array)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Uint8Array)=>number,thisArg?:any):Uint8Array;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint8Array)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint8Array)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Uint8Array)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint8Array)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint8Array)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Uint8Array)=>U,initialValue:U):U;reverse():Uint8Array;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Uint8Array;some(predicate:(value:number,index:number,array:Uint8Array)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Uint8Array;toLocaleString():string;toString():string;valueOf():Uint8Array;[index:number]:number;}interface Uint8ArrayConstructor{readonly prototype:Uint8Array;new(length:number):Uint8Array;new(array:ArrayLike<number>|ArrayBufferLike):Uint8Array;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Uint8Array;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Uint8Array;from(arrayLike:ArrayLike<number>):Uint8Array;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Uint8Array;}declare var Uint8Array:Uint8ArrayConstructor;interface Uint8ClampedArray{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Uint8ClampedArray)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Uint8ClampedArray)=>any,thisArg?:any):Uint8ClampedArray;find(predicate:(value:number,index:number,obj:Uint8ClampedArray)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Uint8ClampedArray)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Uint8ClampedArray)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Uint8ClampedArray)=>number,thisArg?:any):Uint8ClampedArray;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint8ClampedArray)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint8ClampedArray)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Uint8ClampedArray)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint8ClampedArray)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint8ClampedArray)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Uint8ClampedArray)=>U,initialValue:U):U;reverse():Uint8ClampedArray;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Uint8ClampedArray;some(predicate:(value:number,index:number,array:Uint8ClampedArray)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Uint8ClampedArray;toLocaleString():string;toString():string;valueOf():Uint8ClampedArray;[index:number]:number;}interface Uint8ClampedArrayConstructor{readonly prototype:Uint8ClampedArray;new(length:number):Uint8ClampedArray;new(array:ArrayLike<number>|ArrayBufferLike):Uint8ClampedArray;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Uint8ClampedArray;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Uint8ClampedArray;from(arrayLike:ArrayLike<number>):Uint8ClampedArray;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Uint8ClampedArray;}declare var Uint8ClampedArray:Uint8ClampedArrayConstructor;interface Int16Array{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Int16Array)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Int16Array)=>any,thisArg?:any):Int16Array;find(predicate:(value:number,index:number,obj:Int16Array)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Int16Array)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Int16Array)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Int16Array)=>number,thisArg?:any):Int16Array;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int16Array)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int16Array)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Int16Array)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int16Array)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int16Array)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Int16Array)=>U,initialValue:U):U;reverse():Int16Array;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Int16Array;some(predicate:(value:number,index:number,array:Int16Array)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Int16Array;toLocaleString():string;toString():string;valueOf():Int16Array;[index:number]:number;}interface Int16ArrayConstructor{readonly prototype:Int16Array;new(length:number):Int16Array;new(array:ArrayLike<number>|ArrayBufferLike):Int16Array;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Int16Array;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Int16Array;from(arrayLike:ArrayLike<number>):Int16Array;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Int16Array;}declare var Int16Array:Int16ArrayConstructor;interface Uint16Array{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Uint16Array)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Uint16Array)=>any,thisArg?:any):Uint16Array;find(predicate:(value:number,index:number,obj:Uint16Array)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Uint16Array)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Uint16Array)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Uint16Array)=>number,thisArg?:any):Uint16Array;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint16Array)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint16Array)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Uint16Array)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint16Array)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint16Array)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Uint16Array)=>U,initialValue:U):U;reverse():Uint16Array;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Uint16Array;some(predicate:(value:number,index:number,array:Uint16Array)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Uint16Array;toLocaleString():string;toString():string;valueOf():Uint16Array;[index:number]:number;}interface Uint16ArrayConstructor{readonly prototype:Uint16Array;new(length:number):Uint16Array;new(array:ArrayLike<number>|ArrayBufferLike):Uint16Array;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Uint16Array;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Uint16Array;from(arrayLike:ArrayLike<number>):Uint16Array;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Uint16Array;}declare var Uint16Array:Uint16ArrayConstructor;interface Int32Array{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Int32Array)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Int32Array)=>any,thisArg?:any):Int32Array;find(predicate:(value:number,index:number,obj:Int32Array)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Int32Array)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Int32Array)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Int32Array)=>number,thisArg?:any):Int32Array;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int32Array)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int32Array)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Int32Array)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int32Array)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Int32Array)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Int32Array)=>U,initialValue:U):U;reverse():Int32Array;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Int32Array;some(predicate:(value:number,index:number,array:Int32Array)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Int32Array;toLocaleString():string;toString():string;valueOf():Int32Array;[index:number]:number;}interface Int32ArrayConstructor{readonly prototype:Int32Array;new(length:number):Int32Array;new(array:ArrayLike<number>|ArrayBufferLike):Int32Array;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Int32Array;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Int32Array;from(arrayLike:ArrayLike<number>):Int32Array;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Int32Array;}declare var Int32Array:Int32ArrayConstructor;interface Uint32Array{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Uint32Array)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Uint32Array)=>any,thisArg?:any):Uint32Array;find(predicate:(value:number,index:number,obj:Uint32Array)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Uint32Array)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Uint32Array)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Uint32Array)=>number,thisArg?:any):Uint32Array;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint32Array)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint32Array)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Uint32Array)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint32Array)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Uint32Array)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Uint32Array)=>U,initialValue:U):U;reverse():Uint32Array;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Uint32Array;some(predicate:(value:number,index:number,array:Uint32Array)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Uint32Array;toLocaleString():string;toString():string;valueOf():Uint32Array;[index:number]:number;}interface Uint32ArrayConstructor{readonly prototype:Uint32Array;new(length:number):Uint32Array;new(array:ArrayLike<number>|ArrayBufferLike):Uint32Array;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Uint32Array;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Uint32Array;from(arrayLike:ArrayLike<number>):Uint32Array;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Uint32Array;}declare var Uint32Array:Uint32ArrayConstructor;interface Float32Array{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Float32Array)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Float32Array)=>any,thisArg?:any):Float32Array;find(predicate:(value:number,index:number,obj:Float32Array)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Float32Array)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Float32Array)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Float32Array)=>number,thisArg?:any):Float32Array;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Float32Array)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Float32Array)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Float32Array)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Float32Array)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Float32Array)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Float32Array)=>U,initialValue:U):U;reverse():Float32Array;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Float32Array;some(predicate:(value:number,index:number,array:Float32Array)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Float32Array;toLocaleString():string;toString():string;valueOf():Float32Array;[index:number]:number;}interface Float32ArrayConstructor{readonly prototype:Float32Array;new(length:number):Float32Array;new(array:ArrayLike<number>|ArrayBufferLike):Float32Array;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Float32Array;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Float32Array;from(arrayLike:ArrayLike<number>):Float32Array;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Float32Array;}declare var Float32Array:Float32ArrayConstructor;interface Float64Array{readonly BYTES_PER_ELEMENT:number;readonly buffer:ArrayBufferLike;readonly byteLength:number;readonly byteOffset:number;copyWithin(target:number,start:number,end?:number):this;every(predicate:(value:number,index:number,array:Float64Array)=>unknown,thisArg?:any):boolean;fill(value:number,start?:number,end?:number):this;filter(predicate:(value:number,index:number,array:Float64Array)=>any,thisArg?:any):Float64Array;find(predicate:(value:number,index:number,obj:Float64Array)=>boolean,thisArg?:any):number|undefined;findIndex(predicate:(value:number,index:number,obj:Float64Array)=>boolean,thisArg?:any):number;forEach(callbackfn:(value:number,index:number,array:Float64Array)=>void,thisArg?:any):void;indexOf(searchElement:number,fromIndex?:number):number;join(separator?:string):string;lastIndexOf(searchElement:number,fromIndex?:number):number;readonly length:number;map(callbackfn:(value:number,index:number,array:Float64Array)=>number,thisArg?:any):Float64Array;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Float64Array)=>number):number;reduce(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Float64Array)=>number,initialValue:number):number;reduce<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Float64Array)=>U,initialValue:U):U;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Float64Array)=>number):number;reduceRight(callbackfn:(previousValue:number,currentValue:number,currentIndex:number,array:Float64Array)=>number,initialValue:number):number;reduceRight<U>(callbackfn:(previousValue:U,currentValue:number,currentIndex:number,array:Float64Array)=>U,initialValue:U):U;reverse():Float64Array;set(array:ArrayLike<number>,offset?:number):void;slice(start?:number,end?:number):Float64Array;some(predicate:(value:number,index:number,array:Float64Array)=>unknown,thisArg?:any):boolean;sort(compareFn?:(a:number,b:number)=>number):this;subarray(begin?:number,end?:number):Float64Array;toLocaleString():string;toString():string;valueOf():Float64Array;[index:number]:number;}interface Float64ArrayConstructor{readonly prototype:Float64Array;new(length:number):Float64Array;new(array:ArrayLike<number>|ArrayBufferLike):Float64Array;new(buffer:ArrayBufferLike,byteOffset?:number,length?:number):Float64Array;readonly BYTES_PER_ELEMENT:number;of(...items:number[]):Float64Array;from(arrayLike:ArrayLike<number>):Float64Array;from<T>(arrayLike:ArrayLike<T>,mapfn:(v:T,k:number)=>number,thisArg?:any):Float64Array;}declare var Float64Array:Float64ArrayConstructor;declare namespace Intl{interface CollatorOptions{usage?:\"sort\"|\"search\"|undefined;localeMatcher?:\"lookup\"|\"best fit\"|undefined;numeric?:boolean|undefined;caseFirst?:\"upper\"|\"lower\"|\"false\"|undefined;sensitivity?:\"base\"|\"accent\"|\"case\"|\"variant\"|undefined;collation?:\"big5han\"|\"compat\"|\"dict\"|\"direct\"|\"ducet\"|\"emoji\"|\"eor\"|\"gb2312\"|\"phonebk\"|\"phonetic\"|\"pinyin\"|\"reformed\"|\"searchjl\"|\"stroke\"|\"trad\"|\"unihan\"|\"zhuyin\"|undefined;ignorePunctuation?:boolean|undefined;}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;}interface CollatorConstructor{new(locales?:string|string[],options?:CollatorOptions):Collator;(locales?:string|string[],options?:CollatorOptions):Collator;supportedLocalesOf(locales:string|string[],options?:CollatorOptions):string[];}var Collator:CollatorConstructor;interface NumberFormatOptionsStyleRegistry{decimal:never;percent:never;currency:never;}type NumberFormatOptionsStyle=keyof NumberFormatOptionsStyleRegistry;interface NumberFormatOptionsCurrencyDisplayRegistry{code:never;symbol:never;name:never;}type NumberFormatOptionsCurrencyDisplay=keyof NumberFormatOptionsCurrencyDisplayRegistry;interface NumberFormatOptionsUseGroupingRegistry{}type NumberFormatOptionsUseGrouping={}extends NumberFormatOptionsUseGroupingRegistry?boolean:keyof NumberFormatOptionsUseGroupingRegistry|\"true\"|\"false\"|boolean;type ResolvedNumberFormatOptionsUseGrouping={}extends NumberFormatOptionsUseGroupingRegistry?boolean:keyof NumberFormatOptionsUseGroupingRegistry|false;interface NumberFormatOptions{localeMatcher?:\"lookup\"|\"best fit\"|undefined;style?:NumberFormatOptionsStyle|undefined;currency?:string|undefined;currencyDisplay?:NumberFormatOptionsCurrencyDisplay|undefined;useGrouping?:NumberFormatOptionsUseGrouping|undefined;minimumIntegerDigits?:number|undefined;minimumFractionDigits?:number|undefined;maximumFractionDigits?:number|undefined;minimumSignificantDigits?:number|undefined;maximumSignificantDigits?:number|undefined;}interface ResolvedNumberFormatOptions{locale:string;numberingSystem:string;style:NumberFormatOptionsStyle;currency?:string;currencyDisplay?:NumberFormatOptionsCurrencyDisplay;minimumIntegerDigits:number;minimumFractionDigits?:number;maximumFractionDigits?:number;minimumSignificantDigits?:number;maximumSignificantDigits?:number;useGrouping:ResolvedNumberFormatOptionsUseGrouping;}interface NumberFormat{format(value:number):string;resolvedOptions():ResolvedNumberFormatOptions;}interface NumberFormatConstructor{new(locales?:string|string[],options?:NumberFormatOptions):NumberFormat;(locales?:string|string[],options?:NumberFormatOptions):NumberFormat;supportedLocalesOf(locales:string|string[],options?:NumberFormatOptions):string[];readonly prototype:NumberFormat;}var NumberFormat:NumberFormatConstructor;interface DateTimeFormatOptions{localeMatcher?:\"best fit\"|\"lookup\"|undefined;weekday?:\"long\"|\"short\"|\"narrow\"|undefined;era?:\"long\"|\"short\"|\"narrow\"|undefined;year?:\"numeric\"|\"2-digit\"|undefined;month?:\"numeric\"|\"2-digit\"|\"long\"|\"short\"|\"narrow\"|undefined;day?:\"numeric\"|\"2-digit\"|undefined;hour?:\"numeric\"|\"2-digit\"|undefined;minute?:\"numeric\"|\"2-digit\"|undefined;second?:\"numeric\"|\"2-digit\"|undefined;timeZoneName?:\"short\"|\"long\"|\"shortOffset\"|\"longOffset\"|\"shortGeneric\"|\"longGeneric\"|undefined;formatMatcher?:\"best fit\"|\"basic\"|undefined;hour12?:boolean|undefined;timeZone?:string|undefined;}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;}interface DateTimeFormatConstructor{new(locales?:string|string[],options?:DateTimeFormatOptions):DateTimeFormat;(locales?:string|string[],options?:DateTimeFormatOptions):DateTimeFormat;supportedLocalesOf(locales:string|string[],options?:DateTimeFormatOptions):string[];readonly prototype:DateTimeFormat;}var DateTimeFormat:DateTimeFormatConstructor;}interface String{localeCompare(that:string,locales?:string|string[],options?:Intl.CollatorOptions):number;}interface Number{toLocaleString(locales?:string|string[],options?:Intl.NumberFormatOptions):string;}interface Date{toLocaleString(locales?:string|string[],options?:Intl.DateTimeFormatOptions):string;toLocaleDateString(locales?:string|string[],options?:Intl.DateTimeFormatOptions):string;toLocaleTimeString(locales?:string|string[],options?:Intl.DateTimeFormatOptions):string;}"
- }, {
- fileName: "lib.esnext.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2023\" />\n/// <reference lib=\"esnext.intl\" />\n/// <reference lib=\"esnext.decorators\" />\n/// <reference lib=\"esnext.disposable\" />\n/// <reference lib=\"esnext.promise\" />\n/// <reference lib=\"esnext.object\" />\n/// <reference lib=\"esnext.collection\" />\n/// <reference lib=\"esnext.array\" />\n/// <reference lib=\"esnext.regexp\" />\n/// <reference lib=\"esnext.string\" />\n/// <reference lib=\"esnext.iterator\" />\n"
- }, {
- fileName: "lib.es2023.intl.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ndeclare namespace Intl{interface NumberFormatOptionsUseGroupingRegistry{min2:never;auto:never;always:never;}interface NumberFormatOptionsSignDisplayRegistry{negative:never;}interface NumberFormatOptions{roundingPriority?:\"auto\"|\"morePrecision\"|\"lessPrecision\"|undefined;roundingIncrement?:1|2|5|10|20|25|50|100|200|250|500|1000|2000|2500|5000|undefined;roundingMode?:\"ceil\"|\"floor\"|\"expand\"|\"trunc\"|\"halfCeil\"|\"halfFloor\"|\"halfExpand\"|\"halfTrunc\"|\"halfEven\"|undefined;trailingZeroDisplay?:\"auto\"|\"stripIfInteger\"|undefined;}interface ResolvedNumberFormatOptions{roundingPriority:\"auto\"|\"morePrecision\"|\"lessPrecision\";roundingMode:\"ceil\"|\"floor\"|\"expand\"|\"trunc\"|\"halfCeil\"|\"halfFloor\"|\"halfExpand\"|\"halfTrunc\"|\"halfEven\";roundingIncrement:1|2|5|10|20|25|50|100|200|250|500|1000|2000|2500|5000;trailingZeroDisplay:\"auto\"|\"stripIfInteger\";}interface NumberRangeFormatPart extends NumberFormatPart{source:\"startRange\"|\"endRange\"|\"shared\";}type StringNumericLiteral=`${number}` | \"Infinity\" | \"-Infinity\" | \"+Infinity\";\n\n interface NumberFormat {\n format(value: number | bigint | StringNumericLiteral): string;\n formatToParts(value: number | bigint | StringNumericLiteral): NumberFormatPart[];\n formatRange(start: number | bigint | StringNumericLiteral, end: number | bigint | StringNumericLiteral): string;\n formatRangeToParts(start: number | bigint | StringNumericLiteral, end: number | bigint | StringNumericLiteral): NumberRangeFormatPart[];\n }\n}\n"
- }, {
- fileName: "lib.esnext.object.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface ObjectConstructor{groupBy<K extends PropertyKey,T>(items:Iterable<T>,keySelector:(item:T,index:number)=>K,):Partial<Record<K,T[]>>;}"
- }, {
- fileName: "lib.es2019.array.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ntype FlatArray<Arr,Depth extends number>={done:Arr;recur:Arr extends ReadonlyArray<infer InnerArr>?FlatArray<InnerArr,[-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20][Depth]>:Arr;}[Depth extends-1?\"done\":\"recur\"];interface ReadonlyArray<T>{flatMap<U,This=undefined>(callback:(this:This,value:T,index:number,array:T[])=>U|ReadonlyArray<U>,thisArg?:This,):U[];flat<A,D extends number=1>(this:A,depth?:D,):FlatArray<A,D>[];}interface Array<T>{flatMap<U,This=undefined>(callback:(this:This,value:T,index:number,array:T[])=>U|ReadonlyArray<U>,thisArg?:This,):U[];flat<A,D extends number=1>(this:A,depth?:D,):FlatArray<A,D>[];}"
- }, {
- fileName: "lib.esnext.string.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface String{isWellFormed():boolean;toWellFormed():string;}"
- }, {
- fileName: "lib.es2016.intl.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ndeclare namespace Intl{function getCanonicalLocales(locale?:string|readonly string[]):string[];}"
- }, {
- fileName: "lib.es2020.date.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2020.intl\" />\ninterface Date{toLocaleString(locales?:Intl.LocalesArgument,options?:Intl.DateTimeFormatOptions):string;toLocaleDateString(locales?:Intl.LocalesArgument,options?:Intl.DateTimeFormatOptions):string;toLocaleTimeString(locales?:Intl.LocalesArgument,options?:Intl.DateTimeFormatOptions):string;}"
- }, {
- fileName: "lib.webworker.asynciterable.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface FileSystemDirectoryHandleAsyncIterator<T>extends AsyncIteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.asyncIterator]():FileSystemDirectoryHandleAsyncIterator<T>;}interface FileSystemDirectoryHandle{[Symbol.asyncIterator]():FileSystemDirectoryHandleAsyncIterator<[string,FileSystemHandle]>;entries():FileSystemDirectoryHandleAsyncIterator<[string,FileSystemHandle]>;keys():FileSystemDirectoryHandleAsyncIterator<string>;values():FileSystemDirectoryHandleAsyncIterator<FileSystemHandle>;}interface ReadableStreamAsyncIterator<T>extends AsyncIteratorObject<T,BuiltinIteratorReturn,unknown>{[Symbol.asyncIterator]():ReadableStreamAsyncIterator<T>;}interface ReadableStream<R=any>{[Symbol.asyncIterator](options?:ReadableStreamIteratorOptions):ReadableStreamAsyncIterator<R>;values(options?:ReadableStreamIteratorOptions):ReadableStreamAsyncIterator<R>;}"
- }, {
- fileName: "lib.es2022.full.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2022\" />\n/// <reference lib=\"dom\" />\n/// <reference lib=\"webworker.importscripts\" />\n/// <reference lib=\"scripthost\" />\n/// <reference lib=\"dom.iterable\" />\n/// <reference lib=\"dom.asynciterable\" />\n"
- }, {
- fileName: "lib.es2017.full.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\n/// <reference lib=\"es2017\" />\n/// <reference lib=\"dom\" />\n/// <reference lib=\"webworker.importscripts\" />\n/// <reference lib=\"scripthost\" />\n/// <reference lib=\"dom.iterable\" />\n"
- }, {
- fileName: "lib.es2020.promise.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface PromiseFulfilledResult<T>{status:\"fulfilled\";value:T;}interface PromiseRejectedResult{status:\"rejected\";reason:any;}type PromiseSettledResult<T>=PromiseFulfilledResult<T>|PromiseRejectedResult;interface PromiseConstructor{allSettled<T extends readonly unknown[]|[]>(values:T):Promise<{-readonly[P in keyof T]:PromiseSettledResult<Awaited<T[P]>>;}>;allSettled<T>(values:Iterable<T|PromiseLike<T>>):Promise<PromiseSettledResult<Awaited<T>>[]>;}"
- }, {
- fileName: "lib.dom.d.ts",
- text: "/// <reference no-default-lib=\"true\"/>\ninterface AddEventListenerOptions extends EventListenerOptions{once?:boolean;passive?:boolean;signal?:AbortSignal;}interface AesCbcParams extends Algorithm{iv:BufferSource;}interface AesCtrParams extends Algorithm{counter:BufferSource;length:number;}interface AesDerivedKeyParams extends Algorithm{length:number;}interface AesGcmParams extends Algorithm{additionalData?:BufferSource;iv:BufferSource;tagLength?:number;}interface AesKeyAlgorithm extends KeyAlgorithm{length:number;}interface AesKeyGenParams extends Algorithm{length:number;}interface Algorithm{name:string;}interface AnalyserOptions extends AudioNodeOptions{fftSize?:number;maxDecibels?:number;minDecibels?:number;smoothingTimeConstant?:number;}interface AnimationEventInit extends EventInit{animationName?:string;elapsedTime?:number;pseudoElement?:string;}interface AnimationPlaybackEventInit extends EventInit{currentTime?:CSSNumberish|null;timelineTime?:CSSNumberish|null;}interface AssignedNodesOptions{flatten?:boolean;}interface AudioBufferOptions{length:number;numberOfChannels?:number;sampleRate:number;}interface AudioBufferSourceOptions{buffer?:AudioBuffer|null;detune?:number;loop?:boolean;loopEnd?:number;loopStart?:number;playbackRate?:number;}interface AudioConfiguration{bitrate?:number;channels?:string;contentType:string;samplerate?:number;spatialRendering?:boolean;}interface AudioContextOptions{latencyHint?:AudioContextLatencyCategory|number;sampleRate?:number;}interface AudioNodeOptions{channelCount?:number;channelCountMode?:ChannelCountMode;channelInterpretation?:ChannelInterpretation;}interface AudioProcessingEventInit extends EventInit{inputBuffer:AudioBuffer;outputBuffer:AudioBuffer;playbackTime:number;}interface AudioTimestamp{contextTime?:number;performanceTime?:DOMHighResTimeStamp;}interface AudioWorkletNodeOptions extends AudioNodeOptions{numberOfInputs?:number;numberOfOutputs?:number;outputChannelCount?:number[];parameterData?:Record<string,number>;processorOptions?:any;}interface AuthenticationExtensionsClientInputs{appid?:string;credProps?:boolean;hmacCreateSecret?:boolean;minPinLength?:boolean;}interface AuthenticationExtensionsClientOutputs{appid?:boolean;credProps?:CredentialPropertiesOutput;hmacCreateSecret?:boolean;}interface AuthenticatorSelectionCriteria{authenticatorAttachment?:AuthenticatorAttachment;requireResidentKey?:boolean;residentKey?:ResidentKeyRequirement;userVerification?:UserVerificationRequirement;}interface AvcEncoderConfig{format?:AvcBitstreamFormat;}interface BiquadFilterOptions extends AudioNodeOptions{Q?:number;detune?:number;frequency?:number;gain?:number;type?:BiquadFilterType;}interface BlobEventInit{data:Blob;timecode?:DOMHighResTimeStamp;}interface BlobPropertyBag{endings?:EndingType;type?:string;}interface CSSMatrixComponentOptions{is2D?:boolean;}interface CSSNumericType{angle?:number;flex?:number;frequency?:number;length?:number;percent?:number;percentHint?:CSSNumericBaseType;resolution?:number;time?:number;}interface CSSStyleSheetInit{baseURL?:string;disabled?:boolean;media?:MediaList|string;}interface CacheQueryOptions{ignoreMethod?:boolean;ignoreSearch?:boolean;ignoreVary?:boolean;}interface CanvasRenderingContext2DSettings{alpha?:boolean;colorSpace?:PredefinedColorSpace;desynchronized?:boolean;willReadFrequently?:boolean;}interface ChannelMergerOptions extends AudioNodeOptions{numberOfInputs?:number;}interface ChannelSplitterOptions extends AudioNodeOptions{numberOfOutputs?:number;}interface CheckVisibilityOptions{checkOpacity?:boolean;checkVisibilityCSS?:boolean;contentVisibilityAuto?:boolean;opacityProperty?:boolean;visibilityProperty?:boolean;}interface ClientQueryOptions{includeUncontrolled?:boolean;type?:ClientTypes;}interface ClipboardEventInit extends EventInit{clipboardData?:DataTransfer|null;}interface ClipboardItemOptions{presentationStyle?:PresentationStyle;}interface CloseEventInit extends EventInit{code?:number;reason?:string;wasClean?:boolean;}interface CompositionEventInit extends UIEventInit{data?:string;}interface ComputedEffectTiming extends EffectTiming{activeDuration?:CSSNumberish;currentIteration?:number|null;endTime?:CSSNumberish;localTime?:CSSNumberish|null;progress?:number|null;startTime?:CSSNumberish;}interface ComputedKeyframe{composite:CompositeOperationOrAuto;computedOffset:number;easing:string;offset:number|null;[property:string]:string|number|null|undefined;}interface ConstantSourceOptions{offset?:number;}interface ConstrainBooleanParameters{exact?:boolean;ideal?:boolean;}interface ConstrainDOMStringParameters{exact?:string|string[];ideal?:string|string[];}interface ConstrainDoubleRange extends DoubleRange{exact?:number;ideal?:number;}interface ConstrainULongRange extends ULongRange{exact?:number;ideal?:number;}interface ContentVisibilityAutoStateChangeEventInit extends EventInit{skipped?:boolean;}interface ConvolverOptions extends AudioNodeOptions{buffer?:AudioBuffer|null;disableNormalization?:boolean;}interface CredentialCreationOptions{publicKey?:PublicKeyCredentialCreationOptions;signal?:AbortSignal;}interface CredentialPropertiesOutput{rk?:boolean;}interface CredentialRequestOptions{mediation?:CredentialMediationRequirement;publicKey?:PublicKeyCredentialRequestOptions;signal?:AbortSignal;}interface CryptoKeyPair{privateKey:CryptoKey;publicKey:CryptoKey;}interface CustomEventInit<T=any>extends EventInit{detail?:T;}interface DOMMatrix2DInit{a?:number;b?:number;c?:number;d?:number;e?:number;f?:number;m11?:number;m12?:number;m21?:number;m22?:number;m41?:number;m42?:number;}interface DOMMatrixInit extends DOMMatrix2DInit{is2D?:boolean;m13?:number;m14?:number;m23?:number;m24?:number;m31?:number;m32?:number;m33?:number;m34?:number;m43?:number;m44?:number;}interface DOMPointInit{w?:number;x?:number;y?:number;z?:number;}interface DOMQuadInit{p1?:DOMPointInit;p2?:DOMPointInit;p3?:DOMPointInit;p4?:DOMPointInit;}interface DOMRectInit{height?:number;width?:number;x?:number;y?:number;}interface DelayOptions extends AudioNodeOptions{delayTime?:number;maxDelayTime?:number;}interface DeviceMotionEventAccelerationInit{x?:number|null;y?:number|null;z?:number|null;}interface DeviceMotionEventInit extends EventInit{acceleration?:DeviceMotionEventAccelerationInit;accelerationIncludingGravity?:DeviceMotionEventAccelerationInit;interval?:number;rotationRate?:DeviceMotionEventRotationRateInit;}interface DeviceMotionEventRotationRateInit{alpha?:number|null;beta?:number|null;gamma?:number|null;}interface DeviceOrientationEventInit extends EventInit{absolute?:boolean;alpha?:number|null;beta?:number|null;gamma?:number|null;}interface DisplayMediaStreamOptions{audio?:boolean|MediaTrackConstraints;video?:boolean|MediaTrackConstraints;}interface DocumentTimelineOptions{originTime?:DOMHighResTimeStamp;}interface DoubleRange{max?:number;min?:number;}interface DragEventInit extends MouseEventInit{dataTransfer?:DataTransfer|null;}interface DynamicsCompressorOptions extends AudioNodeOptions{attack?:number;knee?:number;ratio?:number;release?:number;threshold?:number;}interface EcKeyAlgorithm extends KeyAlgorithm{namedCurve:NamedCurve;}interface EcKeyGenParams extends Algorithm{namedCurve:NamedCurve;}interface EcKeyImportParams extends Algorithm{namedCurve:NamedCurve;}interface EcdhKeyDeriveParams extends Algorithm{public:CryptoKey;}interface EcdsaParams extends Algorithm{hash:HashAlgorithmIdentifier;}interface EffectTiming{delay?:number;direction?:PlaybackDirection;duration?:number|CSSNumericValue|string;easing?:string;endDelay?:number;fill?:FillMode;iterationStart?:number;iterations?:number;playbackRate?:number;}interface ElementCreationOptions{is?:string;}interface ElementDefinitionOptions{extends?:string;}interface EncodedVideoChunkInit{data:AllowSharedBufferSource;duration?:number;timestamp:number;type:EncodedVideoChunkType;}interface EncodedVideoChunkMetadata{decoderConfig?:VideoDecoderConfig;}interface ErrorEventInit extends EventInit{colno?:number;error?:any;filename?:string;lineno?:number;message?:string;}interface EventInit{bubbles?:boolean;cancelable?:boolean;composed?:boolean;}interface EventListenerOptions{capture?:boolean;}interface EventModifierInit extends UIEventInit{altKey?:boolean;ctrlKey?:boolean;metaKey?:boolean;modifierAltGraph?:boolean;modifierCapsLock?:boolean;modifierFn?:boolean;modifierFnLock?:boolean;modifierHyper?:boolean;modifierNumLock?:boolean;modifierScrollLock?:boolean;modifierSuper?:boolean;modifierSymbol?:boolean;modifierSymbolLock?:boolean;shiftKey?:boolean;}interface EventSourceInit{withCredentials?:boolean;}interface FilePropertyBag extends BlobPropertyBag{lastModified?:number;}interface FileSystemCreateWritableOptions{keepExistingData?:boolean;}interface FileSystemFlags{create?:boolean;exclusive?:boolean;}interface FileSystemGetDirectoryOptions{create?:boolean;}interface FileSystemGetFileOptions{create?:boolean;}interface FileSystemRemoveOptions{recursive?:boolean;}interface FocusEventInit extends UIEventInit{relatedTarget?:EventTarget|null;}interface FocusOptions{preventScroll?:boolean;}interface FontFaceDescriptors{ascentOverride?:string;descentOverride?:string;display?:FontDisplay;featureSettings?:string;lineGapOverride?:string;stretch?:string;style?:string;unicodeRange?:string;weight?:string;}interface FontFaceSetLoadEventInit extends EventInit{fontfaces?:FontFace[];}interface FormDataEventInit extends EventInit{formData:FormData;}interface FullscreenOptions{navigationUI?:FullscreenNavigationUI;}interface GainOptions extends AudioNodeOptions{gain?:number;}interface GamepadEffectParameters{duration?:number;leftTrigger?:number;rightTrigger?:number;startDelay?:number;strongMagnitude?:number;weakMagnitude?:number;}interface GamepadEventInit extends EventInit{gamepad:Gamepad;}interface GetAnimationsOptions{subtree?:boolean;}interface GetHTMLOptions{serializableShadowRoots?:boolean;shadowRoots?:ShadowRoot[];}interface GetNotificationOptions{tag?:string;}interface GetRootNodeOptions{composed?:boolean;}interface HashChangeEventInit extends EventInit{newURL?:string;oldURL?:string;}interface HkdfParams extends Algorithm{hash:HashAlgorithmIdentifier;info:BufferSource;salt:BufferSource;}interface HmacImportParams extends Algorithm{hash:HashAlgorithmIdentifier;length?:number;}interface HmacKeyAlgorithm extends KeyAlgorithm{hash:KeyAlgorithm;length:number;}interface HmacKeyGenParams extends Algorithm{hash:HashAlgorithmIdentifier;length?:number;}interface IDBDatabaseInfo{name?:string;version?:number;}interface IDBIndexParameters{multiEntry?:boolean;unique?:boolean;}interface IDBObjectStoreParameters{autoIncrement?:boolean;keyPath?:string|string[]|null;}interface IDBTransactionOptions{durability?:IDBTransactionDurability;}interface IDBVersionChangeEventInit extends EventInit{newVersion?:number|null;oldVersion?:number;}interface IIRFilterOptions extends AudioNodeOptions{feedback:number[];feedforward:number[];}interface IdleRequestOptions{timeout?:number;}interface ImageBitmapOptions{colorSpaceConversion?:ColorSpaceConversion;imageOrientation?:ImageOrientation;premultiplyAlpha?:PremultiplyAlpha;resizeHeight?:number;resizeQuality?:ResizeQuality;resizeWidth?:number;}interface ImageBitmapRenderingContextSettings{alpha?:boolean;}interface ImageDataSettings{colorSpace?:PredefinedColorSpace;}interface ImageEncodeOptions{quality?:number;type?:string;}interface InputEventInit extends UIEventInit{data?:string|null;dataTransfer?:DataTransfer|null;inputType?:string;isComposing?:boolean;targetRanges?:StaticRange[];}interface IntersectionObserverEntryInit{boundingClientRect:DOMRectInit;intersectionRatio:number;intersectionRect:DOMRectInit;isIntersecting:boolean;rootBounds:DOMRectInit|null;target:Element;time:DOMHighResTimeStamp;}interface IntersectionObserverInit{root?:Element|Document|null;rootMargin?:string;threshold?:number|number[];}interface JsonWebKey{alg?:string;crv?:string;d?:string;dp?:string;dq?:string;e?:string;ext?:boolean;k?:string;key_ops?:string[];kty?:string;n?:string;oth?:RsaOtherPrimesInfo[];p?:string;q?:string;qi?:string;use?:string;x?:string;y?:string;}interface KeyAlgorithm{name:string;}interface KeyboardEventInit extends EventModifierInit{charCode?:number;code?:string;isComposing?:boolean;key?:string;keyCode?:number;location?:number;repeat?:boolean;}interface Keyframe{composite?:CompositeOperationOrAuto;easing?:string;offset?:number|null;[property:string]:string|number|null|undefined;}interface KeyframeAnimationOptions extends KeyframeEffectOptions{id?:string;timeline?:AnimationTimeline|null;}interface KeyframeEffectOptions extends EffectTiming{composite?:CompositeOperation;iterationComposite?:IterationCompositeOperation;pseudoElement?:string|null;}interface LockInfo{clientId?:string;mode?:LockMode;name?:string;}interface LockManagerSnapshot{held?:LockInfo[];pending?:LockInfo[];}interface LockOptions{ifAvailable?:boolean;mode?:LockMode;signal?:AbortSignal;steal?:boolean;}interface MIDIConnectionEventInit extends EventInit{port?:MIDIPort;}interface MIDIMessageEventInit extends EventInit{data?:Uint8Array;}interface MIDIOptions{software?:boolean;sysex?:boolean;}interface MediaCapabilitiesDecodingInfo extends MediaCapabilitiesInfo{configuration?:MediaDecodingConfiguration;}interface MediaCapabilitiesEncodingInfo extends MediaCapabilitiesInfo{configuration?:MediaEncodingConfiguration;}interface MediaCapabilitiesInfo{powerEfficient:boolean;smooth:boolean;supported:boolean;}interface MediaConfiguration{audio?:AudioConfiguration;video?:VideoConfiguration;}interface MediaDecodingConfiguration extends MediaConfiguration{type:MediaDecodingType;}interface MediaElementAudioSourceOptions{mediaElement:HTMLMediaElement;}interface MediaEncodingConfiguration extends MediaConfiguration{type:MediaEncodingType;}interface MediaEncryptedEventInit extends EventInit{initData?:ArrayBuffer|null;initDataType?:string;}interface MediaImage{sizes?:string;src:string;type?:string;}interface MediaKeyMessageEventInit extends EventInit{message:ArrayBuffer;messageType:MediaKeyMessageType;}interface MediaKeySystemConfiguration{audioCapabilities?:MediaKeySystemMediaCapability[];distinctiveIdentifier?:MediaKeysRequirement;initDataTypes?:string[];label?:string;persistentState?:MediaKeysRequirement;sessionTypes?:string[];videoCapabilities?:MediaKeySystemMediaCapability[];}interface MediaKeySystemMediaCapability{contentType?:string;encryptionScheme?:string|null;robustness?:string;}interface MediaKeysPolicy{minHdcpVersion?:string;}interface MediaMetadataInit{album?:string;artist?:string;artwork?:MediaImage[];title?:string;}interface MediaPositionState{duration?:number;playbackRate?:number;position?:number;}interface MediaQueryListEventInit extends EventInit{matches?:boolean;media?:string;}interface MediaRecorderOptions{audioBitsPerSecond?:number;bitsPerSecond?:number;mimeType?:string;videoBitsPerSecond?:number;}interface MediaSessionActionDetails{action:MediaSessionAction;fastSeek?:boolean;seekOffset?:number;seekTime?:number;}interface MediaStreamAudioSourceOptions{mediaStream:MediaStream;}interface MediaStreamConstraints{audio?:boolean|MediaTrackConstraints;peerIdentity?:string;preferCurrentTab?:boolean;video?:boolean|MediaTrackConstraints;}interface MediaStreamTrackEventInit extends EventInit{track:MediaStreamTrack;}interface MediaTrackCapabilities{aspectRatio?:DoubleRange;autoGainControl?:boolean[];channelCount?:ULongRange;deviceId?:string;displaySurface?:string;echoCancellation?:boolean[];facingMode?:string[];frameRate?:DoubleRange;groupId?:string;height?:ULongRange;noiseSuppression?:boolean[];sampleRate?:ULongRange;sampleSize?:ULongRange;width?:ULongRange;}interface MediaTrackConstraintSet{aspectRatio?:ConstrainDouble;autoGainControl?:ConstrainBoolean;channelCount?:ConstrainULong;deviceId?:ConstrainDOMString;displaySurface?:ConstrainDOMString;echoCancellation?:ConstrainBoolean;facingMode?:ConstrainDOMString;frameRate?:ConstrainDouble;groupId?:ConstrainDOMString;height?:ConstrainULong;noiseSuppression?:ConstrainBoolean;sampleRate?:ConstrainULong;sampleSize?:ConstrainULong;width?:ConstrainULong;}interface MediaTrackConstraints extends MediaTrackConstraintSet{advanced?:MediaTrackConstraintSet[];}interface MediaTrackSettings{aspectRatio?:number;autoGainControl?:boolean;channelCount?:number;deviceId?:string;displaySurface?:string;echoCancellation?:boolean;facingMode?:string;frameRate?:number;groupId?:string;height?:number;noiseSuppression?:boolean;sampleRate?:number;sampleSize?:number;width?:number;}interface MediaTrackSupportedConstraints{aspectRatio?:boolean;autoGainControl?:boolean;channelCount?:boolean;deviceId?:boolean;displaySurface?:boolean;echoCancellation?:boolean;facingMode?:boolean;frameRate?:boolean;groupId?:boolean;height?:boolean;noiseSuppression?:boolean;sampleRate?:boolean;sampleSize?:boolean;width?:boolean;}interface MessageEventInit<T=any>extends EventInit{data?:T;lastEventId?:string;origin?:string;ports?:MessagePort[];source?:MessageEventSource|null;}interface MouseEventInit extends EventModifierInit{button?:number;buttons?:number;clientX?:number;clientY?:number;movementX?:number;movementY?:number;relatedTarget?:EventTarget|null;screenX?:number;screenY?:number;}interface MultiCacheQueryOptions extends CacheQueryOptions{cacheName?:string;}interface MutationObserverInit{attributeFilter?:string[];attributeOldValue?:boolean;attributes?:boolean;characterData?:boolean;characterDataOldValue?:boolean;childList?:boolean;subtree?:boolean;}interface NavigationPreloadState{enabled?:boolean;headerValue?:string;}interface NotificationOptions{badge?:string;body?:string;data?:any;dir?:NotificationDirection;icon?:string;lang?:string;requireInteraction?:boolean;silent?:boolean|null;tag?:string;}interface OfflineAudioCompletionEventInit extends EventInit{renderedBuffer:AudioBuffer;}interface OfflineAudioContextOptions{length:number;numberOfChannels?:number;sampleRate:number;}interface OptionalEffectTiming{delay?:number;direction?:PlaybackDirection;duration?:number|string;easing?:string;endDelay?:number;fill?:FillMode;iterationStart?:number;iterations?:number;playbackRate?:number;}interface OscillatorOptions extends AudioNodeOptions{detune?:number;frequency?:number;periodicWave?:PeriodicWave;type?:OscillatorType;}interface PageTransitionEventInit extends EventInit{persisted?:boolean;}interface PannerOptions extends AudioNodeOptions{coneInnerAngle?:number;coneOuterAngle?:number;coneOuterGain?:number;distanceModel?:DistanceModelType;maxDistance?:number;orientationX?:number;orientationY?:number;orientationZ?:number;panningModel?:PanningModelType;positionX?:number;positionY?:number;positionZ?:number;refDistance?:number;rolloffFactor?:number;}interface PaymentCurrencyAmount{currency:string;value:string;}interface PaymentDetailsBase{displayItems?:PaymentItem[];modifiers?:PaymentDetailsModifier[];}interface PaymentDetailsInit extends PaymentDetailsBase{id?:string;total:PaymentItem;}interface PaymentDetailsModifier{additionalDisplayItems?:PaymentItem[];data?:any;supportedMethods:string;total?:PaymentItem;}interface PaymentDetailsUpdate extends PaymentDetailsBase{paymentMethodErrors?:any;total?:PaymentItem;}interface PaymentItem{amount:PaymentCurrencyAmount;label:string;pending?:boolean;}interface PaymentMethodChangeEventInit extends PaymentRequestUpdateEventInit{methodDetails?:any;methodName?:string;}interface PaymentMethodData{data?:any;supportedMethods:string;}interface PaymentRequestUpdateEventInit extends EventInit{}interface PaymentValidationErrors{error?:string;paymentMethod?:any;}interface Pbkdf2Params extends Algorithm{hash:HashAlgorithmIdentifier;iterations:number;salt:BufferSource;}interface PerformanceMarkOptions{detail?:any;startTime?:DOMHighResTimeStamp;}interface PerformanceMeasureOptions{detail?:any;duration?:DOMHighResTimeStamp;end?:string|DOMHighResTimeStamp;start?:string|DOMHighResTimeStamp;}interface PerformanceObserverInit{buffered?:boolean;entryTypes?:string[];type?:string;}interface PeriodicWaveConstraints{disableNormalization?:boolean;}interface PeriodicWaveOptions extends PeriodicWaveConstraints{imag?:number[]|Float32Array;real?:number[]|Float32Array;}interface PermissionDescriptor{name:PermissionName;}interface PictureInPictureEventInit extends EventInit{pictureInPictureWindow:PictureInPictureWindow;}interface PlaneLayout{offset:number;stride:number;}interface PointerEventInit extends MouseEventInit{coalescedEvents?:PointerEvent[];height?:number;isPrimary?:boolean;pointerId?:number;pointerType?:string;predictedEvents?:PointerEvent[];pressure?:number;tangentialPressure?:number;tiltX?:number;tiltY?:number;twist?:number;width?:number;}interface PointerLockOptions{unadjustedMovement?:boolean;}interface PopStateEventInit extends EventInit{state?:any;}interface PositionOptions{enableHighAccuracy?:boolean;maximumAge?:number;timeout?:number;}interface ProgressEventInit extends EventInit{lengthComputable?:boolean;loaded?:number;total?:number;}interface PromiseRejectionEventInit extends EventInit{promise:Promise<any>;reason?:any;}interface PropertyDefinition{inherits:boolean;initialValue?:string;name:string;syntax?:string;}interface PropertyIndexedKeyframes{composite?:CompositeOperationOrAuto|CompositeOperationOrAuto[];easing?:string|string[];offset?:number|(number|null)[];[property:string]:string|string[]|number|null|(number|null)[]|undefined;}interface PublicKeyCredentialCreationOptions{attestation?:AttestationConveyancePreference;authenticatorSelection?:AuthenticatorSelectionCriteria;challenge:BufferSource;excludeCredentials?:PublicKeyCredentialDescriptor[];extensions?:AuthenticationExtensionsClientInputs;pubKeyCredParams:PublicKeyCredentialParameters[];rp:PublicKeyCredentialRpEntity;timeout?:number;user:PublicKeyCredentialUserEntity;}interface PublicKeyCredentialDescriptor{id:BufferSource;transports?:AuthenticatorTransport[];type:PublicKeyCredentialType;}interface PublicKeyCredentialEntity{name:string;}interface PublicKeyCredentialParameters{alg:COSEAlgorithmIdentifier;type:PublicKeyCredentialType;}interface PublicKeyCredentialRequestOptions{allowCredentials?:PublicKeyCredentialDescriptor[];challenge:BufferSource;extensions?:AuthenticationExtensionsClientInputs;rpId?:string;timeout?:number;userVerification?:UserVerificationRequirement;}interface PublicKeyCredentialRpEntity extends PublicKeyCredentialEntity{id?:string;}interface PublicKeyCredentialUserEntity extends PublicKeyCredentialEntity{displayName:string;id:BufferSource;}interface PushSubscriptionJSON{endpoint?:string;expirationTime?:EpochTimeStamp|null;keys?:Record<string,string>;}interface PushSubscriptionOptionsInit{applicationServerKey?:BufferSource|string|null;userVisibleOnly?:boolean;}interface QueuingStrategy<T=any>{highWaterMark?:number;size?:QueuingStrategySize<T>;}interface QueuingStrategyInit{highWaterMark:number;}interface RTCAnswerOptions extends RTCOfferAnswerOptions{}interface RTCCertificateExpiration{expires?:number;}interface RTCConfiguration{bundlePolicy?:RTCBundlePolicy;certificates?:RTCCertificate[];iceCandidatePoolSize?:number;iceServers?:RTCIceServer[];iceTransportPolicy?:RTCIceTransportPolicy;rtcpMuxPolicy?:RTCRtcpMuxPolicy;}interface RTCDTMFToneChangeEventInit extends EventInit{tone?:string;}interface RTCDataChannelEventInit extends EventInit{channel:RTCDataChannel;}interface RTCDataChannelInit{id?:number;maxPacketLifeTime?:number;maxRetransmits?:number;negotiated?:boolean;ordered?:boolean;protocol?:string;}interface RTCDtlsFingerprint{algorithm?:string;value?:string;}interface RTCEncodedAudioFrameMetadata{contributingSources?:number[];payloadType?:number;sequenceNumber?:number;synchronizationSource?:number;}interface RTCEncodedVideoFrameMetadata{contributingSources?:number[];dependencies?:number[];frameId?:number;height?:number;payloadType?:number;spatialIndex?:number;synchronizationSource?:number;temporalIndex?:number;timestamp?:number;width?:number;}interface RTCErrorEventInit extends EventInit{error:RTCError;}interface RTCErrorInit{errorDetail:RTCErrorDetailType;httpRequestStatusCode?:number;receivedAlert?:number;sctpCauseCode?:number;sdpLineNumber?:number;sentAlert?:number;}interface RTCIceCandidateInit{candidate?:string;sdpMLineIndex?:number|null;sdpMid?:string|null;usernameFragment?:string|null;}interface RTCIceCandidatePairStats extends RTCStats{availableIncomingBitrate?:number;availableOutgoingBitrate?:number;bytesReceived?:number;bytesSent?:number;currentRoundTripTime?:number;lastPacketReceivedTimestamp?:DOMHighResTimeStamp;lastPacketSentTimestamp?:DOMHighResTimeStamp;localCandidateId:string;nominated?:boolean;remoteCandidateId:string;requestsReceived?:number;requestsSent?:number;responsesReceived?:number;responsesSent?:number;state:RTCStatsIceCandidatePairState;totalRoundTripTime?:number;transportId:string;}interface RTCIceServer{credential?:string;urls:string|string[];username?:string;}interface RTCInboundRtpStreamStats extends RTCReceivedRtpStreamStats{audioLevel?:number;bytesReceived?:number;concealedSamples?:number;concealmentEvents?:number;decoderImplementation?:string;estimatedPlayoutTimestamp?:DOMHighResTimeStamp;fecPacketsDiscarded?:number;fecPacketsReceived?:number;firCount?:number;frameHeight?:number;frameWidth?:number;framesDecoded?:number;framesDropped?:number;framesPerSecond?:number;framesReceived?:number;headerBytesReceived?:number;insertedSamplesForDeceleration?:number;jitterBufferDelay?:number;jitterBufferEmittedCount?:number;keyFramesDecoded?:number;lastPacketReceivedTimestamp?:DOMHighResTimeStamp;mid?:string;nackCount?:number;packetsDiscarded?:number;pliCount?:number;qpSum?:number;remoteId?:string;removedSamplesForAcceleration?:number;silentConcealedSamples?:number;totalAudioEnergy?:number;totalDecodeTime?:number;totalInterFrameDelay?:number;totalProcessingDelay?:number;totalSamplesDuration?:number;totalSamplesReceived?:number;totalSquaredInterFrameDelay?:number;trackIdentifier:string;}interface RTCLocalSessionDescriptionInit{sdp?:string;type?:RTCSdpType;}interface RTCOfferAnswerOptions{}interface RTCOfferOptions extends RTCOfferAnswerOptions{iceRestart?:boolean;offerToReceiveAudio?:boolean;offerToReceiveVideo?:boolean;}interface RTCOutboundRtpStreamStats extends RTCSentRtpStreamStats{firCount?:number;frameHeight?:number;frameWidth?:number;framesEncoded?:number;framesPerSecond?:number;framesSent?:number;headerBytesSent?:number;hugeFramesSent?:number;keyFramesEncoded?:number;mediaSourceId?:string;nackCount?:number;pliCount?:number;qpSum?:number;qualityLimitationResolutionChanges?:number;remoteId?:string;retransmittedBytesSent?:number;retransmittedPacketsSent?:number;rid?:string;rtxSsrc?:number;targetBitrate?:number;totalEncodeTime?:number;totalEncodedBytesTarget?:number;totalPacketSendDelay?:number;}interface RTCPeerConnectionIceErrorEventInit extends EventInit{address?:string|null;errorCode:number;errorText?:string;port?:number|null;url?:string;}interface RTCPeerConnectionIceEventInit extends EventInit{candidate?:RTCIceCandidate|null;url?:string|null;}interface RTCReceivedRtpStreamStats extends RTCRtpStreamStats{jitter?:number;packetsLost?:number;packetsReceived?:number;}interface RTCRtcpParameters{cname?:string;reducedSize?:boolean;}interface RTCRtpCapabilities{codecs:RTCRtpCodec[];headerExtensions:RTCRtpHeaderExtensionCapability[];}interface RTCRtpCodec{channels?:number;clockRate:number;mimeType:string;sdpFmtpLine?:string;}interface RTCRtpCodecParameters extends RTCRtpCodec{payloadType:number;}interface RTCRtpCodingParameters{rid?:string;}interface RTCRtpContributingSource{audioLevel?:number;rtpTimestamp:number;source:number;timestamp:DOMHighResTimeStamp;}interface RTCRtpEncodingParameters extends RTCRtpCodingParameters{active?:boolean;maxBitrate?:number;maxFramerate?:number;networkPriority?:RTCPriorityType;priority?:RTCPriorityType;scaleResolutionDownBy?:number;}interface RTCRtpHeaderExtensionCapability{uri:string;}interface RTCRtpHeaderExtensionParameters{encrypted?:boolean;id:number;uri:string;}interface RTCRtpParameters{codecs:RTCRtpCodecParameters[];headerExtensions:RTCRtpHeaderExtensionParameters[];rtcp:RTCRtcpParameters;}interface RTCRtpReceiveParameters extends RTCRtpParameters{}interface RTCRtpSendParameters extends RTCRtpParameters{degradationPreference?:RTCDegradationPreference;encodings:RTCRtpEncodingParameters[];transactionId:string;}interface RTCRtpStreamStats extends RTCStats{codecId?:string;kind:string;ssrc:number;transportId?:string;}interface RTCRtpSynchronizationSource extends RTCRtpContributingSource{}interface RTCRtpTransceiverInit{direction?:RTCRtpTransceiverDirection;sendEncodings?:RTCRtpEncodingParameters[];streams?:MediaStream[];}interface RTCSentRtpStreamStats extends RTCRtpStreamStats{bytesSent?:number;packetsSent?:number;}interface RTCSessionDescriptionInit{sdp?:string;type:RTCSdpType;}interface RTCSetParameterOptions{}interface RTCStats{id:string;timestamp:DOMHighResTimeStamp;type:RTCStatsType;}interface RTCTrackEventInit extends EventInit{receiver:RTCRtpReceiver;streams?:MediaStream[];track:MediaStreamTrack;transceiver:RTCRtpTransceiver;}interface RTCTransportStats extends RTCStats{bytesReceived?:number;bytesSent?:number;dtlsCipher?:string;dtlsState:RTCDtlsTransportState;localCertificateId?:string;remoteCertificateId?:string;selectedCandidatePairId?:string;srtpCipher?:string;tlsVersion?:string;}interface ReadableStreamGetReaderOptions{mode?:ReadableStreamReaderMode;}interface ReadableStreamIteratorOptions{preventCancel?:boolean;}interface ReadableStreamReadDoneResult<T>{done:true;value?:T;}interface ReadableStreamReadValueResult<T>{done:false;value:T;}interface ReadableWritablePair<R=any,W=any>{readable:ReadableStream<R>;writable:WritableStream<W>;}interface RegistrationOptions{scope?:string;type?:WorkerType;updateViaCache?:ServiceWorkerUpdateViaCache;}interface ReportingObserverOptions{buffered?:boolean;types?:string[];}interface RequestInit{body?:BodyInit|null;cache?:RequestCache;credentials?:RequestCredentials;headers?:HeadersInit;integrity?:string;keepalive?:boolean;method?:string;mode?:RequestMode;priority?:RequestPriority;redirect?:RequestRedirect;referrer?:string;referrerPolicy?:ReferrerPolicy;signal?:AbortSignal|null;window?:null;}interface ResizeObserverOptions{box?:ResizeObserverBoxOptions;}interface ResponseInit{headers?:HeadersInit;status?:number;statusText?:string;}interface RsaHashedImportParams extends Algorithm{hash:HashAlgorithmIdentifier;}interface RsaHashedKeyAlgorithm extends RsaKeyAlgorithm{hash:KeyAlgorithm;}interface RsaHashedKeyGenParams extends RsaKeyGenParams{hash:HashAlgorithmIdentifier;}interface RsaKeyAlgorithm extends KeyAlgorithm{modulusLength:number;publicExponent:BigInteger;}interface RsaKeyGenParams extends Algorithm{modulusLength:number;publicExponent:BigInteger;}interface RsaOaepParams extends Algorithm{label?:BufferSource;}interface RsaOtherPrimesInfo{d?:string;r?:string;t?:string;}interface RsaPssParams extends Algorithm{saltLength:number;}interface SVGBoundingBoxOptions{clipped?:boolean;fill?:boolean;markers?:boolean;stroke?:boolean;}interface ScrollIntoViewOptions extends ScrollOptions{block?:ScrollLogicalPosition;inline?:ScrollLogicalPosition;}interface ScrollOptions{behavior?:ScrollBehavior;}interface ScrollToOptions extends ScrollOptions{left?:number;top?:number;}interface SecurityPolicyViolationEventInit extends EventInit{blockedURI?:string;columnNumber?:number;disposition?:SecurityPolicyViolationEventDisposition;documentURI?:string;effectiveDirective?:string;lineNumber?:number;originalPolicy?:string;referrer?:string;sample?:string;sourceFile?:string;statusCode?:number;violatedDirective?:string;}interface ShadowRootInit{delegatesFocus?:boolean;mode:ShadowRootMode;serializable?:boolean;slotAssignment?:SlotAssignmentMode;}interface ShareData{files?:File[];text?:string;title?:string;url?:string;}interface SpeechSynthesisErrorEventInit extends SpeechSynthesisEventInit{error:SpeechSynthesisErrorCode;}interface SpeechSynthesisEventInit extends EventInit{charIndex?:number;charLength?:number;elapsedTime?:number;name?:string;utterance:SpeechSynthesisUtterance;}interface StaticRangeInit{endContainer:Node;endOffset:number;startContainer:Node;startOffset:number;}interface StereoPannerOptions extends AudioNodeOptions{pan?:number;}interface StorageEstimate{quota?:number;usage?:number;}interface StorageEventInit extends EventInit{key?:string|null;newValue?:string|null;oldValue?:string|null;storageArea?:Storage|null;url?:string;}interface StreamPipeOptions{preventAbort?:boolean;preventCancel?:boolean;preventClose?:boolean;signal?:AbortSignal;}interface StructuredSerializeOptions{transfer?:Transferable[];}interface SubmitEventInit extends EventInit{submitter?:HTMLElement|null;}interface TextDecodeOptions{stream?:boolean;}interface TextDecoderOptions{fatal?:boolean;ignoreBOM?:boolean;}interface TextEncoderEncodeIntoResult{read:number;written:number;}interface ToggleEventInit extends EventInit{newState?:string;oldState?:string;}interface TouchEventInit extends EventModifierInit{changedTouches?:Touch[];targetTouches?:Touch[];touches?:Touch[];}interface TouchInit{altitudeAngle?:number;azimuthAngle?:number;clientX?:number;clientY?:number;force?:number;identifier:number;pageX?:number;pageY?:number;radiusX?:number;radiusY?:number;rotationAngle?:number;screenX?:number;screenY?:number;target:EventTarget;touchType?:TouchType;}interface TrackEventInit extends EventInit{track?:TextTrack|null;}interface Transformer<I=any,O=any>{flush?:TransformerFlushCallback<O>;readableType?:undefined;start?:TransformerStartCallback<O>;transform?:TransformerTransformCallback<I,O>;writableType?:undefined;}interface TransitionEventInit extends EventInit{elapsedTime?:number;propertyName?:string;pseudoElement?:string;}interface UIEventInit extends EventInit{detail?:number;view?:Window|null;which?:number;}interface ULongRange{max?:number;min?:number;}interface UnderlyingByteSource{autoAllocateChunkSize?:number;cancel?:UnderlyingSourceCancelCallback;pull?:(controller:ReadableByteStreamController)=>void|PromiseLike<void>;start?:(controller:ReadableByteStreamController)=>any;type:\"bytes\";}interface UnderlyingDefaultSource<R=any>{cancel?:UnderlyingSourceCancelCallback;pull?:(controller:ReadableStreamDefaultController<R>)=>void|PromiseLike<void>;start?:(controller:ReadableStreamDefaultController<R>)=>any;type?:undefined;}interface UnderlyingSink<W=any>{abort?:UnderlyingSinkAbortCallback;close?:UnderlyingSinkCloseCallback;start?:UnderlyingSinkStartCallback;type?:undefined;write?:UnderlyingSinkWriteCallback<W>;}interface UnderlyingSource<R=any>{autoAllocateChunkSize?:number;cancel?:UnderlyingSourceCancelCallback;pull?:UnderlyingSourcePullCallback<R>;start?:UnderlyingSourceStartCallback<R>;type?:ReadableStreamType;}interface ValidityStateFlags{badInput?:boolean;customError?:boolean;patternMismatch?:boolean;rangeOverflow?:boolean;rangeUnderflow?:boolean;stepMismatch?:boolean;tooLong?:boolean;tooShort?:boolean;typeMismatch?:boolean;valueMissing?:boolean;}interface VideoColorSpaceInit{fullRange?:boolean|null;matrix?:VideoMatrixCoefficients|null;primaries?:VideoColorPrimaries|null;transfer?:VideoTransferCharacteristics|null;}interface VideoConfiguration{bitrate:number;colorGamut?:ColorGamut;contentType:string;framerate:number;hdrMetadataType?:HdrMetadataType;height:number;scalabilityMode?:string;transferFunction?:TransferFunction;width:number;}interface VideoDecoderConfig{codec:string;codedHeight?:number;codedWidth?:number;colorSpace?:VideoColorSpaceInit;description?:AllowSharedBufferSource;displayAspectHeight?:number;displayAspectWidth?:number;hardwareAcceleration?:HardwareAcceleration;optimizeForLatency?:boolean;}interface VideoDecoderInit{error:WebCodecsErrorCallback;output:VideoFrameOutputCallback;}interface VideoDecoderSupport{config?:VideoDecoderConfig;supported?:boolean;}interface VideoEncoderConfig{alpha?:AlphaOption;avc?:AvcEncoderConfig;bitrate?:number;bitrateMode?:VideoEncoderBitrateMode;codec:string;displayHeight?:number;displayWidth?:number;framerate?:number;hardwareAcceleration?:HardwareAcceleration;height:number;latencyMode?:LatencyMode;scalabilityMode?:string;width:number;}interface VideoEncoderEncodeOptions{keyFrame?:boolean;}interface VideoEncoderInit{error:WebCodecsErrorCallback;output:EncodedVideoChunkOutputCallback;}interface VideoEncoderSupport{config?:VideoEncoderConfig;supported?:boolean;}interface VideoFrameBufferInit{codedHeight:number;codedWidth:number;colorSpace?:VideoColorSpaceInit;displayHeight?:number;displayWidth?:number;duration?:number;format:VideoPixelFormat;layout?:PlaneLayout[];timestamp:number;visibleRect?:DOMRectInit;}interface VideoFrameCallbackMetadata{captureTime?:DOMHighResTimeStamp;expectedDisplayTime:DOMHighResTimeStamp;height:number;mediaTime:number;presentationTime:DOMHighResTimeStamp;presentedFrames:number;processingDuration?:number;receiveTime?:DOMHighResTimeStamp;rtpTimestamp?:number;width:number;}interface VideoFrameCopyToOptions{layout?:PlaneLayout[];rect?:DOMRectInit;}interface VideoFrameInit{alpha?:AlphaOption;displayHeight?:number;displayWidth?:number;duration?:number;timestamp?:number;visibleRect?:DOMRectInit;}interface WaveShaperOptions extends AudioNodeOptions{curve?:number[]|Float32Array;oversample?:OverSampleType;}interface WebGLContextAttributes{alpha?:boolean;antialias?:boolean;depth?:boolean;desynchronized?:boolean;failIfMajorPerformanceCaveat?:boolean;powerPreference?:WebGLPowerPreference;premultipliedAlpha?:boolean;preserveDrawingBuffer?:boolean;stencil?:boolean;}interface WebGLContextEventInit extends EventInit{statusMessage?:string;}interface WebTransportCloseInfo{closeCode?:number;reason?:string;}interface WebTransportErrorOptions{source?:WebTransportErrorSource;streamErrorCode?:number|null;}interface WebTransportHash{algorithm?:string;value?:BufferSource;}interface WebTransportOptions{allowPooling?:boolean;congestionControl?:WebTransportCongestionControl;requireUnreliable?:boolean;serverCertificateHashes?:WebTransportHash[];}interface WebTransportSendStreamOptions{sendOrder?:number;}interface WheelEventInit extends MouseEventInit{deltaMode?:number;deltaX?:number;deltaY?:number;deltaZ?:number;}interface WindowPostMessageOptions extends StructuredSerializeOptions{targetOrigin?:string;}interface WorkerOptions{credentials?:RequestCredentials;name?:string;type?:WorkerType;}interface WorkletOptions{credentials?:RequestCredentials;}interface WriteParams{data?:BufferSource|Blob|string|null;position?:number|null;size?:number|null;type:WriteCommandType;}type NodeFilter=((node:Node)=>number)|{acceptNode(node:Node):number;};declare var NodeFilter:{readonly FILTER_ACCEPT:1;readonly FILTER_REJECT:2;readonly FILTER_SKIP:3;readonly SHOW_ALL:0xFFFFFFFF;readonly SHOW_ELEMENT:0x1;readonly SHOW_ATTRIBUTE:0x2;readonly SHOW_TEXT:0x4;readonly SHOW_CDATA_SECTION:0x8;readonly SHOW_ENTITY_REFERENCE:0x10;readonly SHOW_ENTITY:0x20;readonly SHOW_PROCESSING_INSTRUCTION:0x40;readonly SHOW_COMMENT:0x80;readonly SHOW_DOCUMENT:0x100;readonly SHOW_DOCUMENT_TYPE:0x200;readonly SHOW_DOCUMENT_FRAGMENT:0x400;readonly SHOW_NOTATION:0x800;};type XPathNSResolver=((prefix:string|null)=>string|null)|{lookupNamespaceURI(prefix:string|null):string|null;};interface ANGLE_instanced_arrays{drawArraysInstancedANGLE(mode:GLenum,first:GLint,count:GLsizei,primcount:GLsizei):void;drawElementsInstancedANGLE(mode:GLenum,count:GLsizei,type:GLenum,offset:GLintptr,primcount:GLsizei):void;vertexAttribDivisorANGLE(index:GLuint,divisor:GLuint):void;readonly VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE:0x88FE;}interface ARIAMixin{ariaAtomic:string|null;ariaAutoComplete:string|null;ariaBrailleLabel:string|null;ariaBrailleRoleDescription:string|null;ariaBusy:string|null;ariaChecked:string|null;ariaColCount:string|null;ariaColIndex:string|null;ariaColSpan:string|null;ariaCurrent:string|null;ariaDescription:string|null;ariaDisabled:string|null;ariaExpanded:string|null;ariaHasPopup:string|null;ariaHidden:string|null;ariaInvalid:string|null;ariaKeyShortcuts:string|null;ariaLabel:string|null;ariaLevel:string|null;ariaLive:string|null;ariaModal:string|null;ariaMultiLine:string|null;ariaMultiSelectable:string|null;ariaOrientation:string|null;ariaPlaceholder:string|null;ariaPosInSet:string|null;ariaPressed:string|null;ariaReadOnly:string|null;ariaRequired:string|null;ariaRoleDescription:string|null;ariaRowCount:string|null;ariaRowIndex:string|null;ariaRowSpan:string|null;ariaSelected:string|null;ariaSetSize:string|null;ariaSort:string|null;ariaValueMax:string|null;ariaValueMin:string|null;ariaValueNow:string|null;ariaValueText:string|null;role:string|null;}interface AbortController{readonly signal:AbortSignal;abort(reason?:any):void;}declare var AbortController:{prototype:AbortController;new():AbortController;};interface AbortSignalEventMap{\"abort\":Event;}interface AbortSignal extends EventTarget{readonly aborted:boolean;onabort:((this:AbortSignal,ev:Event)=>any)|null;readonly reason:any;throwIfAborted():void;addEventListener<K extends keyof AbortSignalEventMap>(type:K,listener:(this:AbortSignal,ev:AbortSignalEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AbortSignalEventMap>(type:K,listener:(this:AbortSignal,ev:AbortSignalEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var AbortSignal:{prototype:AbortSignal;new():AbortSignal;abort(reason?:any):AbortSignal;any(signals:AbortSignal[]):AbortSignal;timeout(milliseconds:number):AbortSignal;};interface AbstractRange{readonly collapsed:boolean;readonly endContainer:Node;readonly endOffset:number;readonly startContainer:Node;readonly startOffset:number;}declare var AbstractRange:{prototype:AbstractRange;new():AbstractRange;};interface AbstractWorkerEventMap{\"error\":ErrorEvent;}interface AbstractWorker{onerror:((this:AbstractWorker,ev:ErrorEvent)=>any)|null;addEventListener<K extends keyof AbstractWorkerEventMap>(type:K,listener:(this:AbstractWorker,ev:AbstractWorkerEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AbstractWorkerEventMap>(type:K,listener:(this:AbstractWorker,ev:AbstractWorkerEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}interface AnalyserNode extends AudioNode{fftSize:number;readonly 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(context:BaseAudioContext,options?:AnalyserOptions):AnalyserNode;};interface Animatable{animate(keyframes:Keyframe[]|PropertyIndexedKeyframes|null,options?:number|KeyframeAnimationOptions):Animation;getAnimations(options?:GetAnimationsOptions):Animation[];}interface AnimationEventMap{\"cancel\":AnimationPlaybackEvent;\"finish\":AnimationPlaybackEvent;\"remove\":Event;}interface Animation extends EventTarget{currentTime:CSSNumberish|null;effect:AnimationEffect|null;readonly finished:Promise<Animation>;id:string;oncancel:((this:Animation,ev:AnimationPlaybackEvent)=>any)|null;onfinish:((this:Animation,ev:AnimationPlaybackEvent)=>any)|null;onremove:((this:Animation,ev:Event)=>any)|null;readonly pending:boolean;readonly playState:AnimationPlayState;playbackRate:number;readonly ready:Promise<Animation>;readonly replaceState:AnimationReplaceState;startTime:CSSNumberish|null;timeline:AnimationTimeline|null;cancel():void;commitStyles():void;finish():void;pause():void;persist():void;play():void;reverse():void;updatePlaybackRate(playbackRate:number):void;addEventListener<K extends keyof AnimationEventMap>(type:K,listener:(this:Animation,ev:AnimationEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AnimationEventMap>(type:K,listener:(this:Animation,ev:AnimationEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var Animation:{prototype:Animation;new(effect?:AnimationEffect|null,timeline?:AnimationTimeline|null):Animation;};interface AnimationEffect{getComputedTiming():ComputedEffectTiming;getTiming():EffectTiming;updateTiming(timing?:OptionalEffectTiming):void;}declare var AnimationEffect:{prototype:AnimationEffect;new():AnimationEffect;};interface AnimationEvent extends Event{readonly animationName:string;readonly elapsedTime:number;readonly pseudoElement:string;}declare var AnimationEvent:{prototype:AnimationEvent;new(type:string,animationEventInitDict?:AnimationEventInit):AnimationEvent;};interface AnimationFrameProvider{cancelAnimationFrame(handle:number):void;requestAnimationFrame(callback:FrameRequestCallback):number;}interface AnimationPlaybackEvent extends Event{readonly currentTime:CSSNumberish|null;readonly timelineTime:CSSNumberish|null;}declare var AnimationPlaybackEvent:{prototype:AnimationPlaybackEvent;new(type:string,eventInitDict?:AnimationPlaybackEventInit):AnimationPlaybackEvent;};interface AnimationTimeline{readonly currentTime:CSSNumberish|null;}declare var AnimationTimeline:{prototype:AnimationTimeline;new():AnimationTimeline;};interface Attr extends Node{readonly localName:string;readonly name:string;readonly namespaceURI:string|null;readonly ownerDocument:Document;readonly ownerElement:Element|null;readonly prefix:string|null;readonly specified:boolean;value:string;}declare var Attr:{prototype:Attr;new():Attr;};interface AudioBuffer{readonly duration:number;readonly length:number;readonly numberOfChannels:number;readonly sampleRate:number;copyFromChannel(destination:Float32Array,channelNumber:number,bufferOffset?:number):void;copyToChannel(source:Float32Array,channelNumber:number,bufferOffset?:number):void;getChannelData(channel:number):Float32Array;}declare var AudioBuffer:{prototype:AudioBuffer;new(options:AudioBufferOptions):AudioBuffer;};interface AudioBufferSourceNode extends AudioScheduledSourceNode{buffer:AudioBuffer|null;readonly detune:AudioParam;loop:boolean;loopEnd:number;loopStart:number;readonly playbackRate:AudioParam;start(when?:number,offset?:number,duration?:number):void;addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type:K,listener:(this:AudioBufferSourceNode,ev:AudioScheduledSourceNodeEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type:K,listener:(this:AudioBufferSourceNode,ev:AudioScheduledSourceNodeEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var AudioBufferSourceNode:{prototype:AudioBufferSourceNode;new(context:BaseAudioContext,options?:AudioBufferSourceOptions):AudioBufferSourceNode;};interface AudioContext extends BaseAudioContext{readonly baseLatency:number;readonly outputLatency:number;close():Promise<void>;createMediaElementSource(mediaElement:HTMLMediaElement):MediaElementAudioSourceNode;createMediaStreamDestination():MediaStreamAudioDestinationNode;createMediaStreamSource(mediaStream:MediaStream):MediaStreamAudioSourceNode;getOutputTimestamp():AudioTimestamp;resume():Promise<void>;suspend():Promise<void>;addEventListener<K extends keyof BaseAudioContextEventMap>(type:K,listener:(this:AudioContext,ev:BaseAudioContextEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof BaseAudioContextEventMap>(type:K,listener:(this:AudioContext,ev:BaseAudioContextEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var AudioContext:{prototype:AudioContext;new(contextOptions?:AudioContextOptions):AudioContext;};interface AudioDestinationNode extends AudioNode{readonly maxChannelCount:number;}declare var AudioDestinationNode:{prototype:AudioDestinationNode;new():AudioDestinationNode;};interface AudioListener{readonly forwardX:AudioParam;readonly forwardY:AudioParam;readonly forwardZ:AudioParam;readonly positionX:AudioParam;readonly positionY:AudioParam;readonly positionZ:AudioParam;readonly upX:AudioParam;readonly upY:AudioParam;readonly upZ:AudioParam;setOrientation(x:number,y:number,z:number,xUp:number,yUp:number,zUp:number):void;setPosition(x:number,y:number,z:number):void;}declare var AudioListener:{prototype:AudioListener;new():AudioListener;};interface AudioNode extends EventTarget{channelCount:number;channelCountMode:ChannelCountMode;channelInterpretation:ChannelInterpretation;readonly context:BaseAudioContext;readonly numberOfInputs:number;readonly numberOfOutputs:number;connect(destinationNode:AudioNode,output?:number,input?:number):AudioNode;connect(destinationParam:AudioParam,output?:number):void;disconnect():void;disconnect(output:number):void;disconnect(destinationNode:AudioNode):void;disconnect(destinationNode:AudioNode,output:number):void;disconnect(destinationNode:AudioNode,output:number,input:number):void;disconnect(destinationParam:AudioParam):void;disconnect(destinationParam:AudioParam,output:number):void;}declare var AudioNode:{prototype:AudioNode;new():AudioNode;};interface AudioParam{automationRate:AutomationRate;readonly defaultValue:number;readonly maxValue:number;readonly minValue:number;value:number;cancelAndHoldAtTime(cancelTime:number):AudioParam;cancelScheduledValues(cancelTime:number):AudioParam;exponentialRampToValueAtTime(value:number,endTime:number):AudioParam;linearRampToValueAtTime(value:number,endTime:number):AudioParam;setTargetAtTime(target:number,startTime:number,timeConstant:number):AudioParam;setValueAtTime(value:number,startTime:number):AudioParam;setValueCurveAtTime(values:number[]|Float32Array,startTime:number,duration:number):AudioParam;}declare var AudioParam:{prototype:AudioParam;new():AudioParam;};interface AudioParamMap{forEach(callbackfn:(value:AudioParam,key:string,parent:AudioParamMap)=>void,thisArg?:any):void;}declare var AudioParamMap:{prototype:AudioParamMap;new():AudioParamMap;};interface AudioProcessingEvent extends Event{readonly inputBuffer:AudioBuffer;readonly outputBuffer:AudioBuffer;readonly playbackTime:number;}declare var AudioProcessingEvent:{prototype:AudioProcessingEvent;new(type:string,eventInitDict:AudioProcessingEventInit):AudioProcessingEvent;};interface AudioScheduledSourceNodeEventMap{\"ended\":Event;}interface AudioScheduledSourceNode extends AudioNode{onended:((this:AudioScheduledSourceNode,ev:Event)=>any)|null;start(when?:number):void;stop(when?:number):void;addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type:K,listener:(this:AudioScheduledSourceNode,ev:AudioScheduledSourceNodeEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type:K,listener:(this:AudioScheduledSourceNode,ev:AudioScheduledSourceNodeEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var AudioScheduledSourceNode:{prototype:AudioScheduledSourceNode;new():AudioScheduledSourceNode;};interface AudioWorklet extends Worklet{}declare var AudioWorklet:{prototype:AudioWorklet;new():AudioWorklet;};interface AudioWorkletNodeEventMap{\"processorerror\":Event;}interface AudioWorkletNode extends AudioNode{onprocessorerror:((this:AudioWorkletNode,ev:Event)=>any)|null;readonly parameters:AudioParamMap;readonly port:MessagePort;addEventListener<K extends keyof AudioWorkletNodeEventMap>(type:K,listener:(this:AudioWorkletNode,ev:AudioWorkletNodeEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AudioWorkletNodeEventMap>(type:K,listener:(this:AudioWorkletNode,ev:AudioWorkletNodeEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var AudioWorkletNode:{prototype:AudioWorkletNode;new(context:BaseAudioContext,name:string,options?:AudioWorkletNodeOptions):AudioWorkletNode;};interface AuthenticatorAssertionResponse extends AuthenticatorResponse{readonly authenticatorData:ArrayBuffer;readonly signature:ArrayBuffer;readonly userHandle:ArrayBuffer|null;}declare var AuthenticatorAssertionResponse:{prototype:AuthenticatorAssertionResponse;new():AuthenticatorAssertionResponse;};interface AuthenticatorAttestationResponse extends AuthenticatorResponse{readonly attestationObject:ArrayBuffer;getAuthenticatorData():ArrayBuffer;getPublicKey():ArrayBuffer|null;getPublicKeyAlgorithm():COSEAlgorithmIdentifier;getTransports():string[];}declare var AuthenticatorAttestationResponse:{prototype:AuthenticatorAttestationResponse;new():AuthenticatorAttestationResponse;};interface AuthenticatorResponse{readonly clientDataJSON:ArrayBuffer;}declare var AuthenticatorResponse:{prototype:AuthenticatorResponse;new():AuthenticatorResponse;};interface BarProp{readonly visible:boolean;}declare var BarProp:{prototype:BarProp;new():BarProp;};interface BaseAudioContextEventMap{\"statechange\":Event;}interface BaseAudioContext extends EventTarget{readonly audioWorklet:AudioWorklet;readonly currentTime:number;readonly destination:AudioDestinationNode;readonly listener:AudioListener;onstatechange:((this:BaseAudioContext,ev:Event)=>any)|null;readonly sampleRate:number;readonly state:AudioContextState;createAnalyser():AnalyserNode;createBiquadFilter():BiquadFilterNode;createBuffer(numberOfChannels:number,length:number,sampleRate:number):AudioBuffer;createBufferSource():AudioBufferSourceNode;createChannelMerger(numberOfInputs?:number):ChannelMergerNode;createChannelSplitter(numberOfOutputs?:number):ChannelSplitterNode;createConstantSource():ConstantSourceNode;createConvolver():ConvolverNode;createDelay(maxDelayTime?:number):DelayNode;createDynamicsCompressor():DynamicsCompressorNode;createGain():GainNode;createIIRFilter(feedforward:number[],feedback:number[]):IIRFilterNode;createOscillator():OscillatorNode;createPanner():PannerNode;createPeriodicWave(real:number[]|Float32Array,imag:number[]|Float32Array,constraints?:PeriodicWaveConstraints):PeriodicWave;createScriptProcessor(bufferSize?:number,numberOfInputChannels?:number,numberOfOutputChannels?:number):ScriptProcessorNode;createStereoPanner():StereoPannerNode;createWaveShaper():WaveShaperNode;decodeAudioData(audioData:ArrayBuffer,successCallback?:DecodeSuccessCallback|null,errorCallback?:DecodeErrorCallback|null):Promise<AudioBuffer>;addEventListener<K extends keyof BaseAudioContextEventMap>(type:K,listener:(this:BaseAudioContext,ev:BaseAudioContextEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof BaseAudioContextEventMap>(type:K,listener:(this:BaseAudioContext,ev:BaseAudioContextEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var BaseAudioContext:{prototype:BaseAudioContext;new():BaseAudioContext;};interface BeforeUnloadEvent extends Event{returnValue:any;}declare var BeforeUnloadEvent:{prototype:BeforeUnloadEvent;new():BeforeUnloadEvent;};interface BiquadFilterNode extends AudioNode{readonly Q:AudioParam;readonly detune:AudioParam;readonly frequency:AudioParam;readonly gain:AudioParam;type:BiquadFilterType;getFrequencyResponse(frequencyHz:Float32Array,magResponse:Float32Array,phaseResponse:Float32Array):void;}declare var BiquadFilterNode:{prototype:BiquadFilterNode;new(context:BaseAudioContext,options?:BiquadFilterOptions):BiquadFilterNode;};interface Blob{readonly size:number;readonly type:string;arrayBuffer():Promise<ArrayBuffer>;slice(start?:number,end?:number,contentType?:string):Blob;stream():ReadableStream<Uint8Array>;text():Promise<string>;}declare var Blob:{prototype:Blob;new(blobParts?:BlobPart[],options?:BlobPropertyBag):Blob;};interface BlobEvent extends Event{readonly data:Blob;readonly timecode:DOMHighResTimeStamp;}declare var BlobEvent:{prototype:BlobEvent;new(type:string,eventInitDict:BlobEventInit):BlobEvent;};interface Body{readonly body:ReadableStream<Uint8Array>|null;readonly bodyUsed:boolean;arrayBuffer():Promise<ArrayBuffer>;blob():Promise<Blob>;formData():Promise<FormData>;json():Promise<any>;text():Promise<string>;}interface BroadcastChannelEventMap{\"message\":MessageEvent;\"messageerror\":MessageEvent;}interface BroadcastChannel extends EventTarget{readonly name:string;onmessage:((this:BroadcastChannel,ev:MessageEvent)=>any)|null;onmessageerror:((this:BroadcastChannel,ev:MessageEvent)=>any)|null;close():void;postMessage(message:any):void;addEventListener<K extends keyof BroadcastChannelEventMap>(type:K,listener:(this:BroadcastChannel,ev:BroadcastChannelEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof BroadcastChannelEventMap>(type:K,listener:(this:BroadcastChannel,ev:BroadcastChannelEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var BroadcastChannel:{prototype:BroadcastChannel;new(name:string):BroadcastChannel;};interface ByteLengthQueuingStrategy extends QueuingStrategy<ArrayBufferView>{readonly highWaterMark:number;readonly size:QueuingStrategySize<ArrayBufferView>;}declare var ByteLengthQueuingStrategy:{prototype:ByteLengthQueuingStrategy;new(init:QueuingStrategyInit):ByteLengthQueuingStrategy;};interface CDATASection extends Text{}declare var CDATASection:{prototype:CDATASection;new():CDATASection;};interface CSSAnimation extends Animation{readonly animationName:string;addEventListener<K extends keyof AnimationEventMap>(type:K,listener:(this:CSSAnimation,ev:AnimationEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AnimationEventMap>(type:K,listener:(this:CSSAnimation,ev:AnimationEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var CSSAnimation:{prototype:CSSAnimation;new():CSSAnimation;};interface CSSConditionRule extends CSSGroupingRule{readonly conditionText:string;}declare var CSSConditionRule:{prototype:CSSConditionRule;new():CSSConditionRule;};interface CSSContainerRule extends CSSConditionRule{readonly containerName:string;readonly containerQuery:string;}declare var CSSContainerRule:{prototype:CSSContainerRule;new():CSSContainerRule;};interface CSSCounterStyleRule extends CSSRule{additiveSymbols:string;fallback:string;name:string;negative:string;pad:string;prefix:string;range:string;speakAs:string;suffix:string;symbols:string;system:string;}declare var CSSCounterStyleRule:{prototype:CSSCounterStyleRule;new():CSSCounterStyleRule;};interface CSSFontFaceRule extends CSSRule{readonly style:CSSStyleDeclaration;}declare var CSSFontFaceRule:{prototype:CSSFontFaceRule;new():CSSFontFaceRule;};interface CSSFontFeatureValuesRule extends CSSRule{fontFamily:string;}declare var CSSFontFeatureValuesRule:{prototype:CSSFontFeatureValuesRule;new():CSSFontFeatureValuesRule;};interface CSSFontPaletteValuesRule extends CSSRule{readonly basePalette:string;readonly fontFamily:string;readonly name:string;readonly overrideColors:string;}declare var CSSFontPaletteValuesRule:{prototype:CSSFontPaletteValuesRule;new():CSSFontPaletteValuesRule;};interface CSSGroupingRule extends CSSRule{readonly cssRules:CSSRuleList;deleteRule(index:number):void;insertRule(rule:string,index?:number):number;}declare var CSSGroupingRule:{prototype:CSSGroupingRule;new():CSSGroupingRule;};interface CSSImageValue extends CSSStyleValue{}declare var CSSImageValue:{prototype:CSSImageValue;new():CSSImageValue;};interface CSSImportRule extends CSSRule{readonly href:string;readonly layerName:string|null;readonly media:MediaList;readonly styleSheet:CSSStyleSheet|null;readonly supportsText:string|null;}declare var CSSImportRule:{prototype:CSSImportRule;new():CSSImportRule;};interface CSSKeyframeRule extends CSSRule{keyText:string;readonly style:CSSStyleDeclaration;}declare var CSSKeyframeRule:{prototype:CSSKeyframeRule;new():CSSKeyframeRule;};interface CSSKeyframesRule extends CSSRule{readonly cssRules:CSSRuleList;readonly length:number;name:string;appendRule(rule:string):void;deleteRule(select:string):void;findRule(select:string):CSSKeyframeRule|null;[index:number]:CSSKeyframeRule;}declare var CSSKeyframesRule:{prototype:CSSKeyframesRule;new():CSSKeyframesRule;};interface CSSKeywordValue extends CSSStyleValue{value:string;}declare var CSSKeywordValue:{prototype:CSSKeywordValue;new(value:string):CSSKeywordValue;};interface CSSLayerBlockRule extends CSSGroupingRule{readonly name:string;}declare var CSSLayerBlockRule:{prototype:CSSLayerBlockRule;new():CSSLayerBlockRule;};interface CSSLayerStatementRule extends CSSRule{readonly nameList:ReadonlyArray<string>;}declare var CSSLayerStatementRule:{prototype:CSSLayerStatementRule;new():CSSLayerStatementRule;};interface CSSMathClamp extends CSSMathValue{readonly lower:CSSNumericValue;readonly upper:CSSNumericValue;readonly value:CSSNumericValue;}declare var CSSMathClamp:{prototype:CSSMathClamp;new(lower:CSSNumberish,value:CSSNumberish,upper:CSSNumberish):CSSMathClamp;};interface CSSMathInvert extends CSSMathValue{readonly value:CSSNumericValue;}declare var CSSMathInvert:{prototype:CSSMathInvert;new(arg:CSSNumberish):CSSMathInvert;};interface CSSMathMax extends CSSMathValue{readonly values:CSSNumericArray;}declare var CSSMathMax:{prototype:CSSMathMax;new(...args:CSSNumberish[]):CSSMathMax;};interface CSSMathMin extends CSSMathValue{readonly values:CSSNumericArray;}declare var CSSMathMin:{prototype:CSSMathMin;new(...args:CSSNumberish[]):CSSMathMin;};interface CSSMathNegate extends CSSMathValue{readonly value:CSSNumericValue;}declare var CSSMathNegate:{prototype:CSSMathNegate;new(arg:CSSNumberish):CSSMathNegate;};interface CSSMathProduct extends CSSMathValue{readonly values:CSSNumericArray;}declare var CSSMathProduct:{prototype:CSSMathProduct;new(...args:CSSNumberish[]):CSSMathProduct;};interface CSSMathSum extends CSSMathValue{readonly values:CSSNumericArray;}declare var CSSMathSum:{prototype:CSSMathSum;new(...args:CSSNumberish[]):CSSMathSum;};interface CSSMathValue extends CSSNumericValue{readonly operator:CSSMathOperator;}declare var CSSMathValue:{prototype:CSSMathValue;new():CSSMathValue;};interface CSSMatrixComponent extends CSSTransformComponent{matrix:DOMMatrix;}declare var CSSMatrixComponent:{prototype:CSSMatrixComponent;new(matrix:DOMMatrixReadOnly,options?:CSSMatrixComponentOptions):CSSMatrixComponent;};interface CSSMediaRule extends CSSConditionRule{readonly media:MediaList;}declare var CSSMediaRule:{prototype:CSSMediaRule;new():CSSMediaRule;};interface CSSNamespaceRule extends CSSRule{readonly namespaceURI:string;readonly prefix:string;}declare var CSSNamespaceRule:{prototype:CSSNamespaceRule;new():CSSNamespaceRule;};interface CSSNumericArray{readonly length:number;forEach(callbackfn:(value:CSSNumericValue,key:number,parent:CSSNumericArray)=>void,thisArg?:any):void;[index:number]:CSSNumericValue;}declare var CSSNumericArray:{prototype:CSSNumericArray;new():CSSNumericArray;};interface CSSNumericValue extends CSSStyleValue{add(...values:CSSNumberish[]):CSSNumericValue;div(...values:CSSNumberish[]):CSSNumericValue;equals(...value:CSSNumberish[]):boolean;max(...values:CSSNumberish[]):CSSNumericValue;min(...values:CSSNumberish[]):CSSNumericValue;mul(...values:CSSNumberish[]):CSSNumericValue;sub(...values:CSSNumberish[]):CSSNumericValue;to(unit:string):CSSUnitValue;toSum(...units:string[]):CSSMathSum;type():CSSNumericType;}declare var CSSNumericValue:{prototype:CSSNumericValue;new():CSSNumericValue;parse(cssText:string):CSSNumericValue;};interface CSSPageRule extends CSSGroupingRule{selectorText:string;readonly style:CSSStyleDeclaration;}declare var CSSPageRule:{prototype:CSSPageRule;new():CSSPageRule;};interface CSSPerspective extends CSSTransformComponent{length:CSSPerspectiveValue;}declare var CSSPerspective:{prototype:CSSPerspective;new(length:CSSPerspectiveValue):CSSPerspective;};interface CSSPropertyRule extends CSSRule{readonly inherits:boolean;readonly initialValue:string|null;readonly name:string;readonly syntax:string;}declare var CSSPropertyRule:{prototype:CSSPropertyRule;new():CSSPropertyRule;};interface CSSRotate extends CSSTransformComponent{angle:CSSNumericValue;x:CSSNumberish;y:CSSNumberish;z:CSSNumberish;}declare var CSSRotate:{prototype:CSSRotate;new(angle:CSSNumericValue):CSSRotate;new(x:CSSNumberish,y:CSSNumberish,z:CSSNumberish,angle:CSSNumericValue):CSSRotate;};interface CSSRule{cssText:string;readonly parentRule:CSSRule|null;readonly parentStyleSheet:CSSStyleSheet|null;readonly type:number;readonly STYLE_RULE:1;readonly CHARSET_RULE:2;readonly IMPORT_RULE:3;readonly MEDIA_RULE:4;readonly FONT_FACE_RULE:5;readonly PAGE_RULE:6;readonly NAMESPACE_RULE:10;readonly KEYFRAMES_RULE:7;readonly KEYFRAME_RULE:8;readonly SUPPORTS_RULE:12;readonly COUNTER_STYLE_RULE:11;readonly FONT_FEATURE_VALUES_RULE:14;}declare var CSSRule:{prototype:CSSRule;new():CSSRule;readonly STYLE_RULE:1;readonly CHARSET_RULE:2;readonly IMPORT_RULE:3;readonly MEDIA_RULE:4;readonly FONT_FACE_RULE:5;readonly PAGE_RULE:6;readonly NAMESPACE_RULE:10;readonly KEYFRAMES_RULE:7;readonly KEYFRAME_RULE:8;readonly SUPPORTS_RULE:12;readonly COUNTER_STYLE_RULE:11;readonly FONT_FEATURE_VALUES_RULE:14;};interface CSSRuleList{readonly length:number;item(index:number):CSSRule|null;[index:number]:CSSRule;}declare var CSSRuleList:{prototype:CSSRuleList;new():CSSRuleList;};interface CSSScale extends CSSTransformComponent{x:CSSNumberish;y:CSSNumberish;z:CSSNumberish;}declare var CSSScale:{prototype:CSSScale;new(x:CSSNumberish,y:CSSNumberish,z?:CSSNumberish):CSSScale;};interface CSSScopeRule extends CSSGroupingRule{readonly end:string|null;readonly start:string|null;}declare var CSSScopeRule:{prototype:CSSScopeRule;new():CSSScopeRule;};interface CSSSkew extends CSSTransformComponent{ax:CSSNumericValue;ay:CSSNumericValue;}declare var CSSSkew:{prototype:CSSSkew;new(ax:CSSNumericValue,ay:CSSNumericValue):CSSSkew;};interface CSSSkewX extends CSSTransformComponent{ax:CSSNumericValue;}declare var CSSSkewX:{prototype:CSSSkewX;new(ax:CSSNumericValue):CSSSkewX;};interface CSSSkewY extends CSSTransformComponent{ay:CSSNumericValue;}declare var CSSSkewY:{prototype:CSSSkewY;new(ay:CSSNumericValue):CSSSkewY;};interface CSSStartingStyleRule extends CSSGroupingRule{}declare var CSSStartingStyleRule:{prototype:CSSStartingStyleRule;new():CSSStartingStyleRule;};interface CSSStyleDeclaration{accentColor:string;alignContent:string;alignItems:string;alignSelf:string;alignmentBaseline:string;all:string;animation:string;animationComposition:string;animationDelay:string;animationDirection:string;animationDuration:string;animationFillMode:string;animationIterationCount:string;animationName:string;animationPlayState:string;animationTimingFunction:string;appearance:string;aspectRatio:string;backdropFilter:string;backfaceVisibility:string;background:string;backgroundAttachment:string;backgroundBlendMode:string;backgroundClip:string;backgroundColor:string;backgroundImage:string;backgroundOrigin:string;backgroundPosition:string;backgroundPositionX:string;backgroundPositionY:string;backgroundRepeat:string;backgroundSize:string;baselineShift:string;baselineSource:string;blockSize:string;border:string;borderBlock:string;borderBlockColor:string;borderBlockEnd:string;borderBlockEndColor:string;borderBlockEndStyle:string;borderBlockEndWidth:string;borderBlockStart:string;borderBlockStartColor:string;borderBlockStartStyle:string;borderBlockStartWidth:string;borderBlockStyle:string;borderBlockWidth:string;borderBottom:string;borderBottomColor:string;borderBottomLeftRadius:string;borderBottomRightRadius:string;borderBottomStyle:string;borderBottomWidth:string;borderCollapse:string;borderColor:string;borderEndEndRadius:string;borderEndStartRadius:string;borderImage:string;borderImageOutset:string;borderImageRepeat:string;borderImageSlice:string;borderImageSource:string;borderImageWidth:string;borderInline:string;borderInlineColor:string;borderInlineEnd:string;borderInlineEndColor:string;borderInlineEndStyle:string;borderInlineEndWidth:string;borderInlineStart:string;borderInlineStartColor:string;borderInlineStartStyle:string;borderInlineStartWidth:string;borderInlineStyle:string;borderInlineWidth:string;borderLeft:string;borderLeftColor:string;borderLeftStyle:string;borderLeftWidth:string;borderRadius:string;borderRight:string;borderRightColor:string;borderRightStyle:string;borderRightWidth:string;borderSpacing:string;borderStartEndRadius:string;borderStartStartRadius: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;caretColor:string;clear:string;clip:string;clipPath:string;clipRule:string;color:string;colorInterpolation:string;colorInterpolationFilters:string;colorScheme:string;columnCount:string;columnFill:string;columnGap:string;columnRule:string;columnRuleColor:string;columnRuleStyle:string;columnRuleWidth:string;columnSpan:string;columnWidth:string;columns:string;contain:string;containIntrinsicBlockSize:string;containIntrinsicHeight:string;containIntrinsicInlineSize:string;containIntrinsicSize:string;containIntrinsicWidth:string;container:string;containerName:string;containerType:string;content:string;contentVisibility:string;counterIncrement:string;counterReset:string;counterSet:string;cssFloat:string;cssText:string;cursor:string;cx:string;cy:string;d:string;direction:string;display:string;dominantBaseline:string;emptyCells:string;fill:string;fillOpacity:string;fillRule:string;filter:string;flex:string;flexBasis:string;flexDirection:string;flexFlow:string;flexGrow:string;flexShrink:string;flexWrap:string;float:string;floodColor:string;floodOpacity:string;font:string;fontFamily:string;fontFeatureSettings:string;fontKerning:string;fontOpticalSizing:string;fontPalette:string;fontSize:string;fontSizeAdjust:string;fontStretch:string;fontStyle:string;fontSynthesis:string;fontSynthesisSmallCaps:string;fontSynthesisStyle:string;fontSynthesisWeight:string;fontVariant:string;fontVariantAlternates:string;fontVariantCaps:string;fontVariantEastAsian:string;fontVariantLigatures:string;fontVariantNumeric:string;fontVariantPosition:string;fontVariationSettings:string;fontWeight:string;forcedColorAdjust:string;gap:string;grid:string;gridArea:string;gridAutoColumns:string;gridAutoFlow:string;gridAutoRows:string;gridColumn:string;gridColumnEnd:string;gridColumnGap:string;gridColumnStart:string;gridGap:string;gridRow:string;gridRowEnd:string;gridRowGap:string;gridRowStart:string;gridTemplate:string;gridTemplateAreas:string;gridTemplateColumns:string;gridTemplateRows:string;height:string;hyphenateCharacter:string;hyphens:string;imageOrientation:string;imageRendering:string;inlineSize:string;inset:string;insetBlock:string;insetBlockEnd:string;insetBlockStart:string;insetInline:string;insetInlineEnd:string;insetInlineStart:string;isolation:string;justifyContent:string;justifyItems:string;justifySelf:string;left:string;readonly length:number;letterSpacing:string;lightingColor:string;lineBreak:string;lineHeight:string;listStyle:string;listStyleImage:string;listStylePosition:string;listStyleType:string;margin:string;marginBlock:string;marginBlockEnd:string;marginBlockStart:string;marginBottom:string;marginInline:string;marginInlineEnd:string;marginInlineStart:string;marginLeft:string;marginRight:string;marginTop:string;marker:string;markerEnd:string;markerMid:string;markerStart:string;mask:string;maskClip:string;maskComposite:string;maskImage:string;maskMode:string;maskOrigin:string;maskPosition:string;maskRepeat:string;maskSize:string;maskType:string;mathDepth:string;mathStyle:string;maxBlockSize:string;maxHeight:string;maxInlineSize:string;maxWidth:string;minBlockSize:string;minHeight:string;minInlineSize:string;minWidth:string;mixBlendMode:string;objectFit:string;objectPosition:string;offset:string;offsetAnchor:string;offsetDistance:string;offsetPath:string;offsetPosition:string;offsetRotate:string;opacity:string;order:string;orphans:string;outline:string;outlineColor:string;outlineOffset:string;outlineStyle:string;outlineWidth:string;overflow:string;overflowAnchor:string;overflowClipMargin:string;overflowWrap:string;overflowX:string;overflowY:string;overscrollBehavior:string;overscrollBehaviorBlock:string;overscrollBehaviorInline:string;overscrollBehaviorX:string;overscrollBehaviorY:string;padding:string;paddingBlock:string;paddingBlockEnd:string;paddingBlockStart:string;paddingBottom:string;paddingInline:string;paddingInlineEnd:string;paddingInlineStart:string;paddingLeft:string;paddingRight:string;paddingTop:string;page:string;pageBreakAfter:string;pageBreakBefore:string;pageBreakInside:string;paintOrder:string;readonly parentRule:CSSRule|null;perspective:string;perspectiveOrigin:string;placeContent:string;placeItems:string;placeSelf:string;pointerEvents:string;position:string;printColorAdjust:string;quotes:string;r:string;resize:string;right:string;rotate:string;rowGap:string;rubyPosition:string;rx:string;ry:string;scale:string;scrollBehavior:string;scrollMargin:string;scrollMarginBlock:string;scrollMarginBlockEnd:string;scrollMarginBlockStart:string;scrollMarginBottom:string;scrollMarginInline:string;scrollMarginInlineEnd:string;scrollMarginInlineStart:string;scrollMarginLeft:string;scrollMarginRight:string;scrollMarginTop:string;scrollPadding:string;scrollPaddingBlock:string;scrollPaddingBlockEnd:string;scrollPaddingBlockStart:string;scrollPaddingBottom:string;scrollPaddingInline:string;scrollPaddingInlineEnd:string;scrollPaddingInlineStart:string;scrollPaddingLeft:string;scrollPaddingRight:string;scrollPaddingTop:string;scrollSnapAlign:string;scrollSnapStop:string;scrollSnapType:string;scrollbarColor:string;scrollbarGutter:string;scrollbarWidth:string;shapeImageThreshold:string;shapeMargin:string;shapeOutside:string;shapeRendering:string;stopColor:string;stopOpacity:string;stroke:string;strokeDasharray:string;strokeDashoffset:string;strokeLinecap:string;strokeLinejoin:string;strokeMiterlimit:string;strokeOpacity:string;strokeWidth:string;tabSize:string;tableLayout:string;textAlign:string;textAlignLast:string;textAnchor:string;textCombineUpright:string;textDecoration:string;textDecorationColor:string;textDecorationLine:string;textDecorationSkipInk:string;textDecorationStyle:string;textDecorationThickness:string;textEmphasis:string;textEmphasisColor:string;textEmphasisPosition:string;textEmphasisStyle:string;textIndent:string;textOrientation:string;textOverflow:string;textRendering:string;textShadow:string;textTransform:string;textUnderlineOffset:string;textUnderlinePosition:string;textWrap:string;textWrapMode:string;textWrapStyle:string;top:string;touchAction:string;transform:string;transformBox:string;transformOrigin:string;transformStyle:string;transition:string;transitionBehavior:string;transitionDelay:string;transitionDuration:string;transitionProperty:string;transitionTimingFunction:string;translate:string;unicodeBidi:string;userSelect:string;vectorEffect:string;verticalAlign:string;viewTransitionName: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;webkitBackgroundClip:string;webkitBackgroundOrigin:string;webkitBackgroundSize:string;webkitBorderBottomLeftRadius:string;webkitBorderBottomRightRadius:string;webkitBorderRadius:string;webkitBorderTopLeftRadius:string;webkitBorderTopRightRadius:string;webkitBoxAlign:string;webkitBoxFlex:string;webkitBoxOrdinalGroup:string;webkitBoxOrient:string;webkitBoxPack:string;webkitBoxShadow:string;webkitBoxSizing:string;webkitFilter:string;webkitFlex:string;webkitFlexBasis:string;webkitFlexDirection:string;webkitFlexFlow:string;webkitFlexGrow:string;webkitFlexShrink:string;webkitFlexWrap:string;webkitJustifyContent:string;webkitLineClamp:string;webkitMask:string;webkitMaskBoxImage:string;webkitMaskBoxImageOutset:string;webkitMaskBoxImageRepeat:string;webkitMaskBoxImageSlice:string;webkitMaskBoxImageSource:string;webkitMaskBoxImageWidth:string;webkitMaskClip:string;webkitMaskComposite:string;webkitMaskImage:string;webkitMaskOrigin:string;webkitMaskPosition:string;webkitMaskRepeat:string;webkitMaskSize:string;webkitOrder:string;webkitPerspective:string;webkitPerspectiveOrigin:string;webkitTextFillColor:string;webkitTextSizeAdjust:string;webkitTextStroke:string;webkitTextStrokeColor:string;webkitTextStrokeWidth:string;webkitTransform:string;webkitTransformOrigin:string;webkitTransformStyle:string;webkitTransition:string;webkitTransitionDelay:string;webkitTransitionDuration:string;webkitTransitionProperty:string;webkitTransitionTimingFunction:string;webkitUserSelect:string;whiteSpace:string;whiteSpaceCollapse:string;widows:string;width:string;willChange:string;wordBreak:string;wordSpacing:string;wordWrap:string;writingMode:string;x:string;y:string;zIndex:string;zoom:string;getPropertyPriority(property:string):string;getPropertyValue(property:string):string;item(index:number):string;removeProperty(property:string):string;setProperty(property:string,value:string|null,priority?:string):void;[index:number]:string;}declare var CSSStyleDeclaration:{prototype:CSSStyleDeclaration;new():CSSStyleDeclaration;};interface CSSStyleRule extends CSSGroupingRule{selectorText:string;readonly style:CSSStyleDeclaration;readonly styleMap:StylePropertyMap;}declare var CSSStyleRule:{prototype:CSSStyleRule;new():CSSStyleRule;};interface CSSStyleSheet extends StyleSheet{readonly cssRules:CSSRuleList;readonly ownerRule:CSSRule|null;readonly rules:CSSRuleList;addRule(selector?:string,style?:string,index?:number):number;deleteRule(index:number):void;insertRule(rule:string,index?:number):number;removeRule(index?:number):void;replace(text:string):Promise<CSSStyleSheet>;replaceSync(text:string):void;}declare var CSSStyleSheet:{prototype:CSSStyleSheet;new(options?:CSSStyleSheetInit):CSSStyleSheet;};interface CSSStyleValue{toString():string;}declare var CSSStyleValue:{prototype:CSSStyleValue;new():CSSStyleValue;parse(property:string,cssText:string):CSSStyleValue;parseAll(property:string,cssText:string):CSSStyleValue[];};interface CSSSupportsRule extends CSSConditionRule{}declare var CSSSupportsRule:{prototype:CSSSupportsRule;new():CSSSupportsRule;};interface CSSTransformComponent{is2D:boolean;toMatrix():DOMMatrix;toString():string;}declare var CSSTransformComponent:{prototype:CSSTransformComponent;new():CSSTransformComponent;};interface CSSTransformValue extends CSSStyleValue{readonly is2D:boolean;readonly length:number;toMatrix():DOMMatrix;forEach(callbackfn:(value:CSSTransformComponent,key:number,parent:CSSTransformValue)=>void,thisArg?:any):void;[index:number]:CSSTransformComponent;}declare var CSSTransformValue:{prototype:CSSTransformValue;new(transforms:CSSTransformComponent[]):CSSTransformValue;};interface CSSTransition extends Animation{readonly transitionProperty:string;addEventListener<K extends keyof AnimationEventMap>(type:K,listener:(this:CSSTransition,ev:AnimationEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AnimationEventMap>(type:K,listener:(this:CSSTransition,ev:AnimationEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var CSSTransition:{prototype:CSSTransition;new():CSSTransition;};interface CSSTranslate extends CSSTransformComponent{x:CSSNumericValue;y:CSSNumericValue;z:CSSNumericValue;}declare var CSSTranslate:{prototype:CSSTranslate;new(x:CSSNumericValue,y:CSSNumericValue,z?:CSSNumericValue):CSSTranslate;};interface CSSUnitValue extends CSSNumericValue{readonly unit:string;value:number;}declare var CSSUnitValue:{prototype:CSSUnitValue;new(value:number,unit:string):CSSUnitValue;};interface CSSUnparsedValue extends CSSStyleValue{readonly length:number;forEach(callbackfn:(value:CSSUnparsedSegment,key:number,parent:CSSUnparsedValue)=>void,thisArg?:any):void;[index:number]:CSSUnparsedSegment;}declare var CSSUnparsedValue:{prototype:CSSUnparsedValue;new(members:CSSUnparsedSegment[]):CSSUnparsedValue;};interface CSSVariableReferenceValue{readonly fallback:CSSUnparsedValue|null;variable:string;}declare var CSSVariableReferenceValue:{prototype:CSSVariableReferenceValue;new(variable:string,fallback?:CSSUnparsedValue|null):CSSVariableReferenceValue;};interface Cache{add(request:RequestInfo|URL):Promise<void>;addAll(requests:RequestInfo[]):Promise<void>;delete(request:RequestInfo|URL,options?:CacheQueryOptions):Promise<boolean>;keys(request?:RequestInfo|URL,options?:CacheQueryOptions):Promise<ReadonlyArray<Request>>;match(request:RequestInfo|URL,options?:CacheQueryOptions):Promise<Response|undefined>;matchAll(request?:RequestInfo|URL,options?:CacheQueryOptions):Promise<ReadonlyArray<Response>>;put(request:RequestInfo|URL,response:Response):Promise<void>;}declare var Cache:{prototype:Cache;new():Cache;};interface CacheStorage{delete(cacheName:string):Promise<boolean>;has(cacheName:string):Promise<boolean>;keys():Promise<string[]>;match(request:RequestInfo|URL,options?:MultiCacheQueryOptions):Promise<Response|undefined>;open(cacheName:string):Promise<Cache>;}declare var CacheStorage:{prototype:CacheStorage;new():CacheStorage;};interface CanvasCaptureMediaStreamTrack extends MediaStreamTrack{readonly canvas:HTMLCanvasElement;requestFrame():void;addEventListener<K extends keyof MediaStreamTrackEventMap>(type:K,listener:(this:CanvasCaptureMediaStreamTrack,ev:MediaStreamTrackEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof MediaStreamTrackEventMap>(type:K,listener:(this:CanvasCaptureMediaStreamTrack,ev:MediaStreamTrackEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var CanvasCaptureMediaStreamTrack:{prototype:CanvasCaptureMediaStreamTrack;new():CanvasCaptureMediaStreamTrack;};interface CanvasCompositing{globalAlpha:number;globalCompositeOperation:GlobalCompositeOperation;}interface CanvasDrawImage{drawImage(image:CanvasImageSource,dx:number,dy:number):void;drawImage(image:CanvasImageSource,dx:number,dy:number,dw:number,dh:number):void;drawImage(image:CanvasImageSource,sx:number,sy:number,sw:number,sh:number,dx:number,dy:number,dw:number,dh:number):void;}interface CanvasDrawPath{beginPath():void;clip(fillRule?:CanvasFillRule):void;clip(path:Path2D,fillRule?:CanvasFillRule):void;fill(fillRule?:CanvasFillRule):void;fill(path:Path2D,fillRule?:CanvasFillRule):void;isPointInPath(x:number,y:number,fillRule?:CanvasFillRule):boolean;isPointInPath(path:Path2D,x:number,y:number,fillRule?:CanvasFillRule):boolean;isPointInStroke(x:number,y:number):boolean;isPointInStroke(path:Path2D,x:number,y:number):boolean;stroke():void;stroke(path:Path2D):void;}interface CanvasFillStrokeStyles{fillStyle:string|CanvasGradient|CanvasPattern;strokeStyle:string|CanvasGradient|CanvasPattern;createConicGradient(startAngle:number,x:number,y:number):CanvasGradient;createLinearGradient(x0:number,y0:number,x1:number,y1:number):CanvasGradient;createPattern(image:CanvasImageSource,repetition:string|null):CanvasPattern|null;createRadialGradient(x0:number,y0:number,r0:number,x1:number,y1:number,r1:number):CanvasGradient;}interface CanvasFilters{filter:string;}interface CanvasGradient{addColorStop(offset:number,color:string):void;}declare var CanvasGradient:{prototype:CanvasGradient;new():CanvasGradient;};interface CanvasImageData{createImageData(sw:number,sh:number,settings?:ImageDataSettings):ImageData;createImageData(imagedata:ImageData):ImageData;getImageData(sx:number,sy:number,sw:number,sh:number,settings?:ImageDataSettings):ImageData;putImageData(imagedata:ImageData,dx:number,dy:number):void;putImageData(imagedata:ImageData,dx:number,dy:number,dirtyX:number,dirtyY:number,dirtyWidth:number,dirtyHeight:number):void;}interface CanvasImageSmoothing{imageSmoothingEnabled:boolean;imageSmoothingQuality:ImageSmoothingQuality;}interface CanvasPath{arc(x:number,y:number,radius:number,startAngle:number,endAngle:number,counterclockwise?:boolean):void;arcTo(x1:number,y1:number,x2:number,y2:number,radius:number):void;bezierCurveTo(cp1x:number,cp1y:number,cp2x:number,cp2y:number,x:number,y:number):void;closePath():void;ellipse(x:number,y:number,radiusX:number,radiusY:number,rotation:number,startAngle:number,endAngle:number,counterclockwise?:boolean):void;lineTo(x:number,y:number):void;moveTo(x:number,y:number):void;quadraticCurveTo(cpx:number,cpy:number,x:number,y:number):void;rect(x:number,y:number,w:number,h:number):void;roundRect(x:number,y:number,w:number,h:number,radii?:number|DOMPointInit|(number|DOMPointInit)[]):void;}interface CanvasPathDrawingStyles{lineCap:CanvasLineCap;lineDashOffset:number;lineJoin:CanvasLineJoin;lineWidth:number;miterLimit:number;getLineDash():number[];setLineDash(segments:number[]):void;}interface CanvasPattern{setTransform(transform?:DOMMatrix2DInit):void;}declare var CanvasPattern:{prototype:CanvasPattern;new():CanvasPattern;};interface CanvasRect{clearRect(x:number,y:number,w:number,h:number):void;fillRect(x:number,y:number,w:number,h:number):void;strokeRect(x:number,y:number,w:number,h:number):void;}interface CanvasRenderingContext2D extends CanvasCompositing,CanvasDrawImage,CanvasDrawPath,CanvasFillStrokeStyles,CanvasFilters,CanvasImageData,CanvasImageSmoothing,CanvasPath,CanvasPathDrawingStyles,CanvasRect,CanvasShadowStyles,CanvasState,CanvasText,CanvasTextDrawingStyles,CanvasTransform,CanvasUserInterface{readonly canvas:HTMLCanvasElement;getContextAttributes():CanvasRenderingContext2DSettings;}declare var CanvasRenderingContext2D:{prototype:CanvasRenderingContext2D;new():CanvasRenderingContext2D;};interface CanvasShadowStyles{shadowBlur:number;shadowColor:string;shadowOffsetX:number;shadowOffsetY:number;}interface CanvasState{isContextLost():boolean;reset():void;restore():void;save():void;}interface CanvasText{fillText(text:string,x:number,y:number,maxWidth?:number):void;measureText(text:string):TextMetrics;strokeText(text:string,x:number,y:number,maxWidth?:number):void;}interface CanvasTextDrawingStyles{direction:CanvasDirection;font:string;fontKerning:CanvasFontKerning;fontStretch:CanvasFontStretch;fontVariantCaps:CanvasFontVariantCaps;letterSpacing:string;textAlign:CanvasTextAlign;textBaseline:CanvasTextBaseline;textRendering:CanvasTextRendering;wordSpacing:string;}interface CanvasTransform{getTransform():DOMMatrix;resetTransform():void;rotate(angle:number):void;scale(x:number,y:number):void;setTransform(a:number,b:number,c:number,d:number,e:number,f:number):void;setTransform(transform?:DOMMatrix2DInit):void;transform(a:number,b:number,c:number,d:number,e:number,f:number):void;translate(x:number,y:number):void;}interface CanvasUserInterface{drawFocusIfNeeded(element:Element):void;drawFocusIfNeeded(path:Path2D,element:Element):void;}interface ChannelMergerNode extends AudioNode{}declare var ChannelMergerNode:{prototype:ChannelMergerNode;new(context:BaseAudioContext,options?:ChannelMergerOptions):ChannelMergerNode;};interface ChannelSplitterNode extends AudioNode{}declare var ChannelSplitterNode:{prototype:ChannelSplitterNode;new(context:BaseAudioContext,options?:ChannelSplitterOptions):ChannelSplitterNode;};interface CharacterData extends Node,ChildNode,NonDocumentTypeChildNode{data:string;readonly length:number;readonly ownerDocument:Document;appendData(data:string):void;deleteData(offset:number,count:number):void;insertData(offset:number,data:string):void;replaceData(offset:number,count:number,data:string):void;substringData(offset:number,count:number):string;}declare var CharacterData:{prototype:CharacterData;new():CharacterData;};interface ChildNode extends Node{after(...nodes:(Node|string)[]):void;before(...nodes:(Node|string)[]):void;remove():void;replaceWith(...nodes:(Node|string)[]):void;}interface ClientRect extends DOMRect{}interface Clipboard extends EventTarget{read():Promise<ClipboardItems>;readText():Promise<string>;write(data:ClipboardItems):Promise<void>;writeText(data:string):Promise<void>;}declare var Clipboard:{prototype:Clipboard;new():Clipboard;};interface ClipboardEvent extends Event{readonly clipboardData:DataTransfer|null;}declare var ClipboardEvent:{prototype:ClipboardEvent;new(type:string,eventInitDict?:ClipboardEventInit):ClipboardEvent;};interface ClipboardItem{readonly presentationStyle:PresentationStyle;readonly types:ReadonlyArray<string>;getType(type:string):Promise<Blob>;}declare var ClipboardItem:{prototype:ClipboardItem;new(items:Record<string,string|Blob|PromiseLike<string|Blob>>,options?:ClipboardItemOptions):ClipboardItem;supports(type:string):boolean;};interface CloseEvent extends Event{readonly code:number;readonly reason:string;readonly wasClean:boolean;}declare var CloseEvent:{prototype:CloseEvent;new(type:string,eventInitDict?:CloseEventInit):CloseEvent;};interface Comment extends CharacterData{}declare var Comment:{prototype:Comment;new(data?:string):Comment;};interface CompositionEvent extends UIEvent{readonly data:string;initCompositionEvent(typeArg:string,bubblesArg?:boolean,cancelableArg?:boolean,viewArg?:WindowProxy|null,dataArg?:string):void;}declare var CompositionEvent:{prototype:CompositionEvent;new(type:string,eventInitDict?:CompositionEventInit):CompositionEvent;};interface CompressionStream extends GenericTransformStream{}declare var CompressionStream:{prototype:CompressionStream;new(format:CompressionFormat):CompressionStream;};interface ConstantSourceNode extends AudioScheduledSourceNode{readonly offset:AudioParam;addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type:K,listener:(this:ConstantSourceNode,ev:AudioScheduledSourceNodeEventMap[K])=>any,options?:boolean|AddEventListenerOptions):void;addEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|AddEventListenerOptions):void;removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type:K,listener:(this:ConstantSourceNode,ev:AudioScheduledSourceNodeEventMap[K])=>any,options?:boolean|EventListenerOptions):void;removeEventListener(type:string,listener:EventListenerOrEventListenerObject,options?:boolean|EventListenerOptions):void;}declare var ConstantSourceNode:{prototype:ConstantSourceNode;new(context:BaseAudioContext,options?:ConstantSourceOptions):ConstantSourceNode;};interface ContentVisibilityAutoStateChangeEvent extends Event{readonly skipped:boolean;}declare var ContentVisibilityAutoStateChangeEvent:{prototype:ContentVisibilityAutoStateChangeEvent;new(type:string,eventInitDict?:ContentVisibilityAutoStateChangeEventInit):ContentVisibilityAutoStateChangeEvent;};interface ConvolverNode extends AudioNode{buffer:AudioBuffer|null;normalize:boolean;}declare var ConvolverNode:{prototype:ConvolverNode;new(context:BaseAudioContext,options?:ConvolverOptions):ConvolverNode;};interface CountQueuingStrategy extends QueuingStrategy{readonly highWaterMark:number;readonly size:QueuingStrategySize;}declare var CountQueuingStrategy:{prototype:CountQueuingStrategy;new(init:QueuingStrategyInit):CountQueuingStrategy;};interface Credential{readonly id:string;readonly type:string;}declare var Credential:{prototype:Credential;new():Credential;};interface CredentialsContainer{create(options?:CredentialCreationOptions):Promise<Credential|null>;get(options?:CredentialRequestOptions):Promise<Credential|null>;preventSilentAccess():Promise<void>;store(credential:Credential):Promise<void>;}declare var CredentialsContainer:{prototype:CredentialsContainer;new():CredentialsContainer;};interface Crypto{readonly subtle:SubtleCrypto;getRandomValues<T extends ArrayBufferView|null>(array:T):T;randomUUID():`${string}-${string}-${string}-${string}-${string}`;\n}\n\ndeclare var Crypto: {\n prototype: Crypto;\n new(): Crypto;\n};\n\n/**\n * The CryptoKey dictionary of the Web Crypto API represents a cryptographic key.\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey)\n */\ninterface CryptoKey {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/algorithm) */\n readonly algorithm: KeyAlgorithm;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/extractable) */\n readonly extractable: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/type) */\n readonly type: KeyType;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/usages) */\n readonly usages: KeyUsage[];\n}\n\ndeclare var CryptoKey: {\n prototype: CryptoKey;\n new(): CryptoKey;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry) */\ninterface CustomElementRegistry {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/define) */\n define(name: string, constructor: CustomElementConstructor, options?: ElementDefinitionOptions): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/get) */\n get(name: string): CustomElementConstructor | undefined;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/getName) */\n getName(constructor: CustomElementConstructor): string | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/upgrade) */\n upgrade(root: Node): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/whenDefined) */\n whenDefined(name: string): Promise<CustomElementConstructor>;\n}\n\ndeclare var CustomElementRegistry: {\n prototype: CustomElementRegistry;\n new(): CustomElementRegistry;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent) */\ninterface CustomEvent<T = any> extends Event {\n /**\n * Returns any custom data event was created with. Typically used for synthetic events.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/detail)\n */\n readonly detail: T;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/initCustomEvent)\n */\n initCustomEvent(type: string, bubbles?: boolean, cancelable?: boolean, detail?: T): void;\n}\n\ndeclare var CustomEvent: {\n prototype: CustomEvent;\n new<T>(type: string, eventInitDict?: CustomEventInit<T>): CustomEvent<T>;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomStateSet) */\ninterface CustomStateSet {\n forEach(callbackfn: (value: string, key: string, parent: CustomStateSet) => void, thisArg?: any): void;\n}\n\ndeclare var CustomStateSet: {\n prototype: CustomStateSet;\n new(): CustomStateSet;\n};\n\n/**\n * An abnormal event (called an exception) which occurs as a result of calling a method or accessing a property of a web API.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException)\n */\ninterface DOMException extends Error {\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/code)\n */\n readonly code: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/message) */\n readonly message: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/name) */\n readonly name: string;\n readonly INDEX_SIZE_ERR: 1;\n readonly DOMSTRING_SIZE_ERR: 2;\n readonly HIERARCHY_REQUEST_ERR: 3;\n readonly WRONG_DOCUMENT_ERR: 4;\n readonly INVALID_CHARACTER_ERR: 5;\n readonly NO_DATA_ALLOWED_ERR: 6;\n readonly NO_MODIFICATION_ALLOWED_ERR: 7;\n readonly NOT_FOUND_ERR: 8;\n readonly NOT_SUPPORTED_ERR: 9;\n readonly INUSE_ATTRIBUTE_ERR: 10;\n readonly INVALID_STATE_ERR: 11;\n readonly SYNTAX_ERR: 12;\n readonly INVALID_MODIFICATION_ERR: 13;\n readonly NAMESPACE_ERR: 14;\n readonly INVALID_ACCESS_ERR: 15;\n readonly VALIDATION_ERR: 16;\n readonly TYPE_MISMATCH_ERR: 17;\n readonly SECURITY_ERR: 18;\n readonly NETWORK_ERR: 19;\n readonly ABORT_ERR: 20;\n readonly URL_MISMATCH_ERR: 21;\n readonly QUOTA_EXCEEDED_ERR: 22;\n readonly TIMEOUT_ERR: 23;\n readonly INVALID_NODE_TYPE_ERR: 24;\n readonly DATA_CLONE_ERR: 25;\n}\n\ndeclare var DOMException: {\n prototype: DOMException;\n new(message?: string, name?: string): DOMException;\n readonly INDEX_SIZE_ERR: 1;\n readonly DOMSTRING_SIZE_ERR: 2;\n readonly HIERARCHY_REQUEST_ERR: 3;\n readonly WRONG_DOCUMENT_ERR: 4;\n readonly INVALID_CHARACTER_ERR: 5;\n readonly NO_DATA_ALLOWED_ERR: 6;\n readonly NO_MODIFICATION_ALLOWED_ERR: 7;\n readonly NOT_FOUND_ERR: 8;\n readonly NOT_SUPPORTED_ERR: 9;\n readonly INUSE_ATTRIBUTE_ERR: 10;\n readonly INVALID_STATE_ERR: 11;\n readonly SYNTAX_ERR: 12;\n readonly INVALID_MODIFICATION_ERR: 13;\n readonly NAMESPACE_ERR: 14;\n readonly INVALID_ACCESS_ERR: 15;\n readonly VALIDATION_ERR: 16;\n readonly TYPE_MISMATCH_ERR: 17;\n readonly SECURITY_ERR: 18;\n readonly NETWORK_ERR: 19;\n readonly ABORT_ERR: 20;\n readonly URL_MISMATCH_ERR: 21;\n readonly QUOTA_EXCEEDED_ERR: 22;\n readonly TIMEOUT_ERR: 23;\n readonly INVALID_NODE_TYPE_ERR: 24;\n readonly DATA_CLONE_ERR: 25;\n};\n\n/**\n * An object providing methods which are not dependent on any particular document. Such an object is returned by the Document.implementation property.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation)\n */\ninterface DOMImplementation {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createDocument) */\n createDocument(namespace: string | null, qualifiedName: string | null, doctype?: DocumentType | null): XMLDocument;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createDocumentType) */\n createDocumentType(qualifiedName: string, publicId: string, systemId: string): DocumentType;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createHTMLDocument) */\n createHTMLDocument(title?: string): Document;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/hasFeature)\n */\n hasFeature(...args: any[]): true;\n}\n\ndeclare var DOMImplementation: {\n prototype: DOMImplementation;\n new(): DOMImplementation;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix) */\ninterface DOMMatrix extends DOMMatrixReadOnly {\n a: number;\n b: number;\n c: number;\n d: number;\n e: number;\n f: number;\n m11: number;\n m12: number;\n m13: number;\n m14: number;\n m21: number;\n m22: number;\n m23: number;\n m24: number;\n m31: number;\n m32: number;\n m33: number;\n m34: number;\n m41: number;\n m42: number;\n m43: number;\n m44: number;\n invertSelf(): DOMMatrix;\n multiplySelf(other?: DOMMatrixInit): DOMMatrix;\n preMultiplySelf(other?: DOMMatrixInit): DOMMatrix;\n rotateAxisAngleSelf(x?: number, y?: number, z?: number, angle?: number): DOMMatrix;\n rotateFromVectorSelf(x?: number, y?: number): DOMMatrix;\n rotateSelf(rotX?: number, rotY?: number, rotZ?: number): DOMMatrix;\n scale3dSelf(scale?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;\n scaleSelf(scaleX?: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;\n setMatrixValue(transformList: string): DOMMatrix;\n skewXSelf(sx?: number): DOMMatrix;\n skewYSelf(sy?: number): DOMMatrix;\n translateSelf(tx?: number, ty?: number, tz?: number): DOMMatrix;\n}\n\ndeclare var DOMMatrix: {\n prototype: DOMMatrix;\n new(init?: string | number[]): DOMMatrix;\n fromFloat32Array(array32: Float32Array): DOMMatrix;\n fromFloat64Array(array64: Float64Array): DOMMatrix;\n fromMatrix(other?: DOMMatrixInit): DOMMatrix;\n};\n\ntype SVGMatrix = DOMMatrix;\ndeclare var SVGMatrix: typeof DOMMatrix;\n\ntype WebKitCSSMatrix = DOMMatrix;\ndeclare var WebKitCSSMatrix: typeof DOMMatrix;\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly) */\ninterface DOMMatrixReadOnly {\n readonly a: number;\n readonly b: number;\n readonly c: number;\n readonly d: number;\n readonly e: number;\n readonly f: number;\n readonly is2D: boolean;\n readonly isIdentity: boolean;\n readonly m11: number;\n readonly m12: number;\n readonly m13: number;\n readonly m14: number;\n readonly m21: number;\n readonly m22: number;\n readonly m23: number;\n readonly m24: number;\n readonly m31: number;\n readonly m32: number;\n readonly m33: number;\n readonly m34: number;\n readonly m41: number;\n readonly m42: number;\n readonly m43: number;\n readonly m44: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/flipX) */\n flipX(): DOMMatrix;\n flipY(): DOMMatrix;\n inverse(): DOMMatrix;\n multiply(other?: DOMMatrixInit): DOMMatrix;\n rotate(rotX?: number, rotY?: number, rotZ?: number): DOMMatrix;\n rotateAxisAngle(x?: number, y?: number, z?: number, angle?: number): DOMMatrix;\n rotateFromVector(x?: number, y?: number): DOMMatrix;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scale) */\n scale(scaleX?: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;\n scale3d(scale?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;\n /** @deprecated */\n scaleNonUniform(scaleX?: number, scaleY?: number): DOMMatrix;\n skewX(sx?: number): DOMMatrix;\n skewY(sy?: number): DOMMatrix;\n toFloat32Array(): Float32Array;\n toFloat64Array(): Float64Array;\n toJSON(): any;\n transformPoint(point?: DOMPointInit): DOMPoint;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/translate) */\n translate(tx?: number, ty?: number, tz?: number): DOMMatrix;\n toString(): string;\n}\n\ndeclare var DOMMatrixReadOnly: {\n prototype: DOMMatrixReadOnly;\n new(init?: string | number[]): DOMMatrixReadOnly;\n fromFloat32Array(array32: Float32Array): DOMMatrixReadOnly;\n fromFloat64Array(array64: Float64Array): DOMMatrixReadOnly;\n fromMatrix(other?: DOMMatrixInit): DOMMatrixReadOnly;\n};\n\n/**\n * Provides the ability to parse XML or HTML source code from a string into a DOM Document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMParser)\n */\ninterface DOMParser {\n /**\n * Parses string using either the HTML or XML parser, according to type, and returns the resulting Document. type can be \"text/html\" (which will invoke the HTML parser), or any of \"text/xml\", \"application/xml\", \"application/xhtml+xml\", or \"image/svg+xml\" (which will invoke the XML parser).\n *\n * For the XML parser, if string cannot be parsed, then the returned Document will contain elements describing the resulting error.\n *\n * Note that script elements are not evaluated during parsing, and the resulting document's encoding will always be UTF-8.\n *\n * Values other than the above for type will cause a TypeError exception to be thrown.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMParser/parseFromString)\n */\n parseFromString(string: string, type: DOMParserSupportedType): Document;\n}\n\ndeclare var DOMParser: {\n prototype: DOMParser;\n new(): DOMParser;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint) */\ninterface DOMPoint extends DOMPointReadOnly {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/w) */\n w: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/x) */\n x: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/y) */\n y: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/z) */\n z: number;\n}\n\ndeclare var DOMPoint: {\n prototype: DOMPoint;\n new(x?: number, y?: number, z?: number, w?: number): DOMPoint;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint_static) */\n fromPoint(other?: DOMPointInit): DOMPoint;\n};\n\ntype SVGPoint = DOMPoint;\ndeclare var SVGPoint: typeof DOMPoint;\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly) */\ninterface DOMPointReadOnly {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/w) */\n readonly w: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/x) */\n readonly x: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/y) */\n readonly y: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/z) */\n readonly z: number;\n matrixTransform(matrix?: DOMMatrixInit): DOMPoint;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/toJSON) */\n toJSON(): any;\n}\n\ndeclare var DOMPointReadOnly: {\n prototype: DOMPointReadOnly;\n new(x?: number, y?: number, z?: number, w?: number): DOMPointReadOnly;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static) */\n fromPoint(other?: DOMPointInit): DOMPointReadOnly;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad) */\ninterface DOMQuad {\n readonly p1: DOMPoint;\n readonly p2: DOMPoint;\n readonly p3: DOMPoint;\n readonly p4: DOMPoint;\n getBounds(): DOMRect;\n toJSON(): any;\n}\n\ndeclare var DOMQuad: {\n prototype: DOMQuad;\n new(p1?: DOMPointInit, p2?: DOMPointInit, p3?: DOMPointInit, p4?: DOMPointInit): DOMQuad;\n fromQuad(other?: DOMQuadInit): DOMQuad;\n fromRect(other?: DOMRectInit): DOMQuad;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRect) */\ninterface DOMRect extends DOMRectReadOnly {\n height: number;\n width: number;\n x: number;\n y: number;\n}\n\ndeclare var DOMRect: {\n prototype: DOMRect;\n new(x?: number, y?: number, width?: number, height?: number): DOMRect;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRect/fromRect_static) */\n fromRect(other?: DOMRectInit): DOMRect;\n};\n\ntype SVGRect = DOMRect;\ndeclare var SVGRect: typeof DOMRect;\n\ninterface DOMRectList {\n readonly length: number;\n item(index: number): DOMRect | null;\n [index: number]: DOMRect;\n}\n\ndeclare var DOMRectList: {\n prototype: DOMRectList;\n new(): DOMRectList;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly) */\ninterface DOMRectReadOnly {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/bottom) */\n readonly bottom: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/height) */\n readonly height: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/left) */\n readonly left: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/right) */\n readonly right: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/top) */\n readonly top: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/width) */\n readonly width: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/x) */\n readonly x: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/y) */\n readonly y: number;\n toJSON(): any;\n}\n\ndeclare var DOMRectReadOnly: {\n prototype: DOMRectReadOnly;\n new(x?: number, y?: number, width?: number, height?: number): DOMRectReadOnly;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static) */\n fromRect(other?: DOMRectInit): DOMRectReadOnly;\n};\n\n/**\n * A type returned by some APIs which contains a list of DOMString (strings).\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList)\n */\ninterface DOMStringList {\n /**\n * Returns the number of strings in strings.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/length)\n */\n readonly length: number;\n /**\n * Returns true if strings contains string, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/contains)\n */\n contains(string: string): boolean;\n /**\n * Returns the string with index index from strings.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/item)\n */\n item(index: number): string | null;\n [index: number]: string;\n}\n\ndeclare var DOMStringList: {\n prototype: DOMStringList;\n new(): DOMStringList;\n};\n\n/**\n * Used by the dataset HTML attribute to represent data for custom attributes added to elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringMap)\n */\ninterface DOMStringMap {\n [name: string]: string | undefined;\n}\n\ndeclare var DOMStringMap: {\n prototype: DOMStringMap;\n new(): DOMStringMap;\n};\n\n/**\n * A set of space-separated tokens. Such a set is returned by Element.classList, HTMLLinkElement.relList, HTMLAnchorElement.relList, HTMLAreaElement.relList, HTMLIframeElement.sandbox, or HTMLOutputElement.htmlFor. It is indexed beginning with 0 as with JavaScript Array objects. DOMTokenList is always case-sensitive.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList)\n */\ninterface DOMTokenList {\n /**\n * Returns the number of tokens.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/length)\n */\n readonly length: number;\n /**\n * Returns the associated set as string.\n *\n * Can be set, to change the associated attribute.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/value)\n */\n value: string;\n toString(): string;\n /**\n * Adds all arguments passed, except those already present.\n *\n * Throws a \"SyntaxError\" DOMException if one of the arguments is the empty string.\n *\n * Throws an \"InvalidCharacterError\" DOMException if one of the arguments contains any ASCII whitespace.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/add)\n */\n add(...tokens: string[]): void;\n /**\n * Returns true if token is present, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/contains)\n */\n contains(token: string): boolean;\n /**\n * Returns the token with index index.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/item)\n */\n item(index: number): string | null;\n /**\n * Removes arguments passed, if they are present.\n *\n * Throws a \"SyntaxError\" DOMException if one of the arguments is the empty string.\n *\n * Throws an \"InvalidCharacterError\" DOMException if one of the arguments contains any ASCII whitespace.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/remove)\n */\n remove(...tokens: string[]): void;\n /**\n * Replaces token with newToken.\n *\n * Returns true if token was replaced with newToken, and false otherwise.\n *\n * Throws a \"SyntaxError\" DOMException if one of the arguments is the empty string.\n *\n * Throws an \"InvalidCharacterError\" DOMException if one of the arguments contains any ASCII whitespace.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/replace)\n */\n replace(token: string, newToken: string): boolean;\n /**\n * Returns true if token is in the associated attribute's supported tokens. Returns false otherwise.\n *\n * Throws a TypeError if the associated attribute has no supported tokens defined.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/supports)\n */\n supports(token: string): boolean;\n /**\n * If force is not given, \"toggles\" token, removing it if it's present and adding it if it's not present. If force is true, adds token (same as add()). If force is false, removes token (same as remove()).\n *\n * Returns true if token is now present, and false otherwise.\n *\n * Throws a \"SyntaxError\" DOMException if token is empty.\n *\n * Throws an \"InvalidCharacterError\" DOMException if token contains any spaces.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/toggle)\n */\n toggle(token: string, force?: boolean): boolean;\n forEach(callbackfn: (value: string, key: number, parent: DOMTokenList) => void, thisArg?: any): void;\n [index: number]: string;\n}\n\ndeclare var DOMTokenList: {\n prototype: DOMTokenList;\n new(): DOMTokenList;\n};\n\n/**\n * Used to hold the data that is being dragged during a drag and drop operation. It may hold one or more data items, each of one or more data types. For more information about drag and drop, see HTML Drag and Drop API.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer)\n */\ninterface DataTransfer {\n /**\n * Returns the kind of operation that is currently selected. If the kind of operation isn't one of those that is allowed by the effectAllowed attribute, then the operation will fail.\n *\n * Can be set, to change the selected operation.\n *\n * The possible values are \"none\", \"copy\", \"link\", and \"move\".\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/dropEffect)\n */\n dropEffect: \"none\" | \"copy\" | \"link\" | \"move\";\n /**\n * Returns the kinds of operations that are to be allowed.\n *\n * Can be set (during the dragstart event), to change the allowed operations.\n *\n * The possible values are \"none\", \"copy\", \"copyLink\", \"copyMove\", \"link\", \"linkMove\", \"move\", \"all\", and \"uninitialized\",\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/effectAllowed)\n */\n effectAllowed: \"none\" | \"copy\" | \"copyLink\" | \"copyMove\" | \"link\" | \"linkMove\" | \"move\" | \"all\" | \"uninitialized\";\n /**\n * Returns a FileList of the files being dragged, if any.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/files)\n */\n readonly files: FileList;\n /**\n * Returns a DataTransferItemList object, with the drag data.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/items)\n */\n readonly items: DataTransferItemList;\n /**\n * Returns a frozen array listing the formats that were set in the dragstart event. In addition, if any files are being dragged, then one of the types will be the string \"Files\".\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/types)\n */\n readonly types: ReadonlyArray<string>;\n /**\n * Removes the data of the specified formats. Removes all data if the argument is omitted.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/clearData)\n */\n clearData(format?: string): void;\n /**\n * Returns the specified data. If there is no such data, returns the empty string.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/getData)\n */\n getData(format: string): string;\n /**\n * Adds the specified data.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/setData)\n */\n setData(format: string, data: string): void;\n /**\n * Uses the given element to update the drag feedback, replacing any previously specified feedback.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/setDragImage)\n */\n setDragImage(image: Element, x: number, y: number): void;\n}\n\ndeclare var DataTransfer: {\n prototype: DataTransfer;\n new(): DataTransfer;\n};\n\n/**\n * One drag data item. During a drag operation, each drag event has a dataTransfer property which contains a list of drag data items. Each item in the list is a DataTransferItem object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem)\n */\ninterface DataTransferItem {\n /**\n * Returns the drag data item kind, one of: \"string\", \"file\".\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/kind)\n */\n readonly kind: string;\n /**\n * Returns the drag data item type string.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/type)\n */\n readonly type: string;\n /**\n * Returns a File object, if the drag data item kind is File.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/getAsFile)\n */\n getAsFile(): File | null;\n /**\n * Invokes the callback with the string data as the argument, if the drag data item kind is text.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/getAsString)\n */\n getAsString(callback: FunctionStringCallback | null): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/webkitGetAsEntry) */\n webkitGetAsEntry(): FileSystemEntry | null;\n}\n\ndeclare var DataTransferItem: {\n prototype: DataTransferItem;\n new(): DataTransferItem;\n};\n\n/**\n * A list of DataTransferItem objects representing items being dragged. During a drag operation, each DragEvent has a dataTransfer property and that property is a DataTransferItemList.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList)\n */\ninterface DataTransferItemList {\n /**\n * Returns the number of items in the drag data store.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/length)\n */\n readonly length: number;\n /**\n * Adds a new entry for the given data to the drag data store. If the data is plain text then a type string has to be provided also.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/add)\n */\n add(data: string, type: string): DataTransferItem | null;\n add(data: File): DataTransferItem | null;\n /**\n * Removes all the entries in the drag data store.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/clear)\n */\n clear(): void;\n /**\n * Removes the indexth entry in the drag data store.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/remove)\n */\n remove(index: number): void;\n [index: number]: DataTransferItem;\n}\n\ndeclare var DataTransferItemList: {\n prototype: DataTransferItemList;\n new(): DataTransferItemList;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DecompressionStream) */\ninterface DecompressionStream extends GenericTransformStream {\n}\n\ndeclare var DecompressionStream: {\n prototype: DecompressionStream;\n new(format: CompressionFormat): DecompressionStream;\n};\n\n/**\n * A delay-line; an AudioNode audio-processing module that causes a delay between the arrival of an input data and its propagation to the output.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DelayNode)\n */\ninterface DelayNode extends AudioNode {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DelayNode/delayTime) */\n readonly delayTime: AudioParam;\n}\n\ndeclare var DelayNode: {\n prototype: DelayNode;\n new(context: BaseAudioContext, options?: DelayOptions): DelayNode;\n};\n\n/**\n * The DeviceMotionEvent provides web developers with information about the speed of changes for the device's position and orientation.\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent)\n */\ninterface DeviceMotionEvent extends Event {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/acceleration) */\n readonly acceleration: DeviceMotionEventAcceleration | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/accelerationIncludingGravity) */\n readonly accelerationIncludingGravity: DeviceMotionEventAcceleration | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/interval) */\n readonly interval: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/rotationRate) */\n readonly rotationRate: DeviceMotionEventRotationRate | null;\n}\n\ndeclare var DeviceMotionEvent: {\n prototype: DeviceMotionEvent;\n new(type: string, eventInitDict?: DeviceMotionEventInit): DeviceMotionEvent;\n};\n\n/**\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventAcceleration)\n */\ninterface DeviceMotionEventAcceleration {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventAcceleration/x) */\n readonly x: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventAcceleration/y) */\n readonly y: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventAcceleration/z) */\n readonly z: number | null;\n}\n\n/**\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventRotationRate)\n */\ninterface DeviceMotionEventRotationRate {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventRotationRate/alpha) */\n readonly alpha: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventRotationRate/beta) */\n readonly beta: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventRotationRate/gamma) */\n readonly gamma: number | null;\n}\n\n/**\n * The DeviceOrientationEvent provides web developers with information from the physical orientation of the device running the web page.\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent)\n */\ninterface DeviceOrientationEvent extends Event {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/absolute) */\n readonly absolute: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/alpha) */\n readonly alpha: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/beta) */\n readonly beta: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/gamma) */\n readonly gamma: number | null;\n}\n\ndeclare var DeviceOrientationEvent: {\n prototype: DeviceOrientationEvent;\n new(type: string, eventInitDict?: DeviceOrientationEventInit): DeviceOrientationEvent;\n};\n\ninterface DocumentEventMap extends GlobalEventHandlersEventMap {\n \"DOMContentLoaded\": Event;\n \"fullscreenchange\": Event;\n \"fullscreenerror\": Event;\n \"pointerlockchange\": Event;\n \"pointerlockerror\": Event;\n \"readystatechange\": Event;\n \"visibilitychange\": Event;\n}\n\n/**\n * Any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document)\n */\ninterface Document extends Node, DocumentOrShadowRoot, FontFaceSource, GlobalEventHandlers, NonElementParentNode, ParentNode, XPathEvaluatorBase {\n /**\n * Sets or gets the URL for the current document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/URL)\n */\n readonly URL: string;\n /**\n * Sets or gets the color of all active links in the document.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/alinkColor)\n */\n alinkColor: string;\n /**\n * Returns a reference to the collection of elements contained by the object.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/all)\n */\n readonly all: HTMLAllCollection;\n /**\n * Retrieves a collection of all a objects that have a name and/or id property. Objects in this collection are in HTML source order.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/anchors)\n */\n readonly anchors: HTMLCollectionOf<HTMLAnchorElement>;\n /**\n * Retrieves a collection of all applet objects in the document.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/applets)\n */\n readonly applets: HTMLCollection;\n /**\n * Deprecated. Sets or retrieves a value that indicates the background color behind the object.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/bgColor)\n */\n bgColor: string;\n /**\n * Specifies the beginning and end of the document body.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/body)\n */\n body: HTMLElement;\n /**\n * Returns document's encoding.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet)\n */\n readonly characterSet: string;\n /**\n * Gets or sets the character set used to encode the object.\n * @deprecated This is a legacy alias of `characterSet`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet)\n */\n readonly charset: string;\n /**\n * Gets a value that indicates whether standards-compliant mode is switched on for the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/compatMode)\n */\n readonly compatMode: string;\n /**\n * Returns document's content type.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/contentType)\n */\n readonly contentType: string;\n /**\n * Returns the HTTP cookies that apply to the Document. If there are no cookies or cookies can't be applied to this resource, the empty string will be returned.\n *\n * Can be set, to add a new cookie to the element's set of HTTP cookies.\n *\n * If the contents are sandboxed into a unique origin (e.g. in an iframe with the sandbox attribute), a \"SecurityError\" DOMException will be thrown on getting and setting.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/cookie)\n */\n cookie: string;\n /**\n * Returns the script element, or the SVG script element, that is currently executing, as long as the element represents a classic script. In the case of reentrant script execution, returns the one that most recently started executing amongst those that have not yet finished executing.\n *\n * Returns null if the Document is not currently executing a script or SVG script element (e.g., because the running script is an event handler, or a timeout), or if the currently executing script or SVG script element represents a module script.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/currentScript)\n */\n readonly currentScript: HTMLOrSVGScriptElement | null;\n /**\n * Returns the Window object of the active document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/defaultView)\n */\n readonly defaultView: (WindowProxy & typeof globalThis) | null;\n /**\n * Sets or gets a value that indicates whether the document can be edited.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/designMode)\n */\n designMode: string;\n /**\n * Sets or retrieves a value that indicates the reading order of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/dir)\n */\n dir: string;\n /**\n * Gets an object representing the document type declaration associated with the current document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/doctype)\n */\n readonly doctype: DocumentType | null;\n /**\n * Gets a reference to the root node of the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/documentElement)\n */\n readonly documentElement: HTMLElement;\n /**\n * Returns document's URL.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/documentURI)\n */\n readonly documentURI: string;\n /**\n * Sets or gets the security domain of the document.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/domain)\n */\n domain: string;\n /**\n * Retrieves a collection of all embed objects in the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/embeds)\n */\n readonly embeds: HTMLCollectionOf<HTMLEmbedElement>;\n /**\n * Sets or gets the foreground (text) color of the document.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fgColor)\n */\n fgColor: string;\n /**\n * Retrieves a collection, in source order, of all form objects in the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/forms)\n */\n readonly forms: HTMLCollectionOf<HTMLFormElement>;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreen)\n */\n readonly fullscreen: boolean;\n /**\n * Returns true if document has the ability to display elements fullscreen and fullscreen is supported, or false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenEnabled)\n */\n readonly fullscreenEnabled: boolean;\n /**\n * Returns the head element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/head)\n */\n readonly head: HTMLHeadElement;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hidden) */\n readonly hidden: boolean;\n /**\n * Retrieves a collection, in source order, of img objects in the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/images)\n */\n readonly images: HTMLCollectionOf<HTMLImageElement>;\n /**\n * Gets the implementation object of the current document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/implementation)\n */\n readonly implementation: DOMImplementation;\n /**\n * Returns the character encoding used to create the webpage that is loaded into the document object.\n * @deprecated This is a legacy alias of `characterSet`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet)\n */\n readonly inputEncoding: string;\n /**\n * Gets the date that the page was last modified, if the page supplies one.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/lastModified)\n */\n readonly lastModified: string;\n /**\n * Sets or gets the color of the document links.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/linkColor)\n */\n linkColor: string;\n /**\n * Retrieves a collection of all a objects that specify the href property and all area objects in the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/links)\n */\n readonly links: HTMLCollectionOf<HTMLAnchorElement | HTMLAreaElement>;\n /**\n * Contains information about the current URL.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/location)\n */\n get location(): Location;\n set location(href: string | Location);\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenchange_event) */\n onfullscreenchange: ((this: Document, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenerror_event) */\n onfullscreenerror: ((this: Document, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerlockchange_event) */\n onpointerlockchange: ((this: Document, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerlockerror_event) */\n onpointerlockerror: ((this: Document, ev: Event) => any) | null;\n /**\n * Fires when the state of the object has changed.\n * @param ev The event\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/readystatechange_event)\n */\n onreadystatechange: ((this: Document, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/visibilitychange_event) */\n onvisibilitychange: ((this: Document, ev: Event) => any) | null;\n readonly ownerDocument: null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pictureInPictureEnabled) */\n readonly pictureInPictureEnabled: boolean;\n /**\n * Return an HTMLCollection of the embed elements in the Document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/plugins)\n */\n readonly plugins: HTMLCollectionOf<HTMLEmbedElement>;\n /**\n * Retrieves a value that indicates the current state of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/readyState)\n */\n readonly readyState: DocumentReadyState;\n /**\n * Gets the URL of the location that referred the user to the current page.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/referrer)\n */\n readonly referrer: string;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/rootElement)\n */\n readonly rootElement: SVGSVGElement | null;\n /**\n * Retrieves a collection of all script objects in the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scripts)\n */\n readonly scripts: HTMLCollectionOf<HTMLScriptElement>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scrollingElement) */\n readonly scrollingElement: Element | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/timeline) */\n readonly timeline: DocumentTimeline;\n /**\n * Contains the title of the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/title)\n */\n title: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/visibilityState) */\n readonly visibilityState: DocumentVisibilityState;\n /**\n * Sets or gets the color of the links that the user has visited.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/vlinkColor)\n */\n vlinkColor: string;\n /**\n * Moves node from another document and returns it.\n *\n * If node is a document, throws a \"NotSupportedError\" DOMException or, if node is a shadow root, throws a \"HierarchyRequestError\" DOMException.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/adoptNode)\n */\n adoptNode<T extends Node>(node: T): T;\n /** @deprecated */\n captureEvents(): void;\n /** @deprecated */\n caretRangeFromPoint(x: number, y: number): Range | null;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/clear)\n */\n clear(): void;\n /**\n * Closes an output stream and forces the sent data to display.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/close)\n */\n close(): void;\n /**\n * Creates an attribute object with a specified name.\n * @param name String that sets the attribute object's name.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createAttribute)\n */\n createAttribute(localName: string): Attr;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createAttributeNS) */\n createAttributeNS(namespace: string | null, qualifiedName: string): Attr;\n /**\n * Returns a CDATASection node whose data is data.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createCDATASection)\n */\n createCDATASection(data: string): CDATASection;\n /**\n * Creates a comment object with the specified data.\n * @param data Sets the comment object's data.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createComment)\n */\n createComment(data: string): Comment;\n /**\n * Creates a new document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createDocumentFragment)\n */\n createDocumentFragment(): DocumentFragment;\n /**\n * Creates an instance of the element for the specified tag.\n * @param tagName The name of an element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createElement)\n */\n createElement<K extends keyof HTMLElementTagNameMap>(tagName: K, options?: ElementCreationOptions): HTMLElementTagNameMap[K];\n /** @deprecated */\n createElement<K extends keyof HTMLElementDeprecatedTagNameMap>(tagName: K, options?: ElementCreationOptions): HTMLElementDeprecatedTagNameMap[K];\n createElement(tagName: string, options?: ElementCreationOptions): HTMLElement;\n /**\n * Returns an element with namespace namespace. Its namespace prefix will be everything before \":\" (U+003E) in qualifiedName or null. Its local name will be everything after \":\" (U+003E) in qualifiedName or qualifiedName.\n *\n * If localName does not match the Name production an \"InvalidCharacterError\" DOMException will be thrown.\n *\n * If one of the following conditions is true a \"NamespaceError\" DOMException will be thrown:\n *\n * localName does not match the QName production.\n * Namespace prefix is not null and namespace is the empty string.\n * Namespace prefix is \"xml\" and namespace is not the XML namespace.\n * qualifiedName or namespace prefix is \"xmlns\" and namespace is not the XMLNS namespace.\n * namespace is the XMLNS namespace and neither qualifiedName nor namespace prefix is \"xmlns\".\n *\n * When supplied, options's is can be used to create a customized built-in element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createElementNS)\n */\n createElementNS(namespaceURI: \"http://www.w3.org/1999/xhtml\", qualifiedName: string): HTMLElement;\n createElementNS<K extends keyof SVGElementTagNameMap>(namespaceURI: \"http://www.w3.org/2000/svg\", qualifiedName: K): SVGElementTagNameMap[K];\n createElementNS(namespaceURI: \"http://www.w3.org/2000/svg\", qualifiedName: string): SVGElement;\n createElementNS<K extends keyof MathMLElementTagNameMap>(namespaceURI: \"http://www.w3.org/1998/Math/MathML\", qualifiedName: K): MathMLElementTagNameMap[K];\n createElementNS(namespaceURI: \"http://www.w3.org/1998/Math/MathML\", qualifiedName: string): MathMLElement;\n createElementNS(namespaceURI: string | null, qualifiedName: string, options?: ElementCreationOptions): Element;\n createElementNS(namespace: string | null, qualifiedName: string, options?: string | ElementCreationOptions): Element;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createEvent) */\n createEvent(eventInterface: \"AnimationEvent\"): AnimationEvent;\n createEvent(eventInterface: \"AnimationPlaybackEvent\"): AnimationPlaybackEvent;\n createEvent(eventInterface: \"AudioProcessingEvent\"): AudioProcessingEvent;\n createEvent(eventInterface: \"BeforeUnloadEvent\"): BeforeUnloadEvent;\n createEvent(eventInterface: \"BlobEvent\"): BlobEvent;\n createEvent(eventInterface: \"ClipboardEvent\"): ClipboardEvent;\n createEvent(eventInterface: \"CloseEvent\"): CloseEvent;\n createEvent(eventInterface: \"CompositionEvent\"): CompositionEvent;\n createEvent(eventInterface: \"ContentVisibilityAutoStateChangeEvent\"): ContentVisibilityAutoStateChangeEvent;\n createEvent(eventInterface: \"CustomEvent\"): CustomEvent;\n createEvent(eventInterface: \"DeviceMotionEvent\"): DeviceMotionEvent;\n createEvent(eventInterface: \"DeviceOrientationEvent\"): DeviceOrientationEvent;\n createEvent(eventInterface: \"DragEvent\"): DragEvent;\n createEvent(eventInterface: \"ErrorEvent\"): ErrorEvent;\n createEvent(eventInterface: \"Event\"): Event;\n createEvent(eventInterface: \"Events\"): Event;\n createEvent(eventInterface: \"FocusEvent\"): FocusEvent;\n createEvent(eventInterface: \"FontFaceSetLoadEvent\"): FontFaceSetLoadEvent;\n createEvent(eventInterface: \"FormDataEvent\"): FormDataEvent;\n createEvent(eventInterface: \"GamepadEvent\"): GamepadEvent;\n createEvent(eventInterface: \"HashChangeEvent\"): HashChangeEvent;\n createEvent(eventInterface: \"IDBVersionChangeEvent\"): IDBVersionChangeEvent;\n createEvent(eventInterface: \"InputEvent\"): InputEvent;\n createEvent(eventInterface: \"KeyboardEvent\"): KeyboardEvent;\n createEvent(eventInterface: \"MIDIConnectionEvent\"): MIDIConnectionEvent;\n createEvent(eventInterface: \"MIDIMessageEvent\"): MIDIMessageEvent;\n createEvent(eventInterface: \"MediaEncryptedEvent\"): MediaEncryptedEvent;\n createEvent(eventInterface: \"MediaKeyMessageEvent\"): MediaKeyMessageEvent;\n createEvent(eventInterface: \"MediaQueryListEvent\"): MediaQueryListEvent;\n createEvent(eventInterface: \"MediaStreamTrackEvent\"): MediaStreamTrackEvent;\n createEvent(eventInterface: \"MessageEvent\"): MessageEvent;\n createEvent(eventInterface: \"MouseEvent\"): MouseEvent;\n createEvent(eventInterface: \"MouseEvents\"): MouseEvent;\n createEvent(eventInterface: \"MutationEvent\"): MutationEvent;\n createEvent(eventInterface: \"MutationEvents\"): MutationEvent;\n createEvent(eventInterface: \"OfflineAudioCompletionEvent\"): OfflineAudioCompletionEvent;\n createEvent(eventInterface: \"PageTransitionEvent\"): PageTransitionEvent;\n createEvent(eventInterface: \"PaymentMethodChangeEvent\"): PaymentMethodChangeEvent;\n createEvent(eventInterface: \"PaymentRequestUpdateEvent\"): PaymentRequestUpdateEvent;\n createEvent(eventInterface: \"PictureInPictureEvent\"): PictureInPictureEvent;\n createEvent(eventInterface: \"PointerEvent\"): PointerEvent;\n createEvent(eventInterface: \"PopStateEvent\"): PopStateEvent;\n createEvent(eventInterface: \"ProgressEvent\"): ProgressEvent;\n createEvent(eventInterface: \"PromiseRejectionEvent\"): PromiseRejectionEvent;\n createEvent(eventInterface: \"RTCDTMFToneChangeEvent\"): RTCDTMFToneChangeEvent;\n createEvent(eventInterface: \"RTCDataChannelEvent\"): RTCDataChannelEvent;\n createEvent(eventInterface: \"RTCErrorEvent\"): RTCErrorEvent;\n createEvent(eventInterface: \"RTCPeerConnectionIceErrorEvent\"): RTCPeerConnectionIceErrorEvent;\n createEvent(eventInterface: \"RTCPeerConnectionIceEvent\"): RTCPeerConnectionIceEvent;\n createEvent(eventInterface: \"RTCTrackEvent\"): RTCTrackEvent;\n createEvent(eventInterface: \"SecurityPolicyViolationEvent\"): SecurityPolicyViolationEvent;\n createEvent(eventInterface: \"SpeechSynthesisErrorEvent\"): SpeechSynthesisErrorEvent;\n createEvent(eventInterface: \"SpeechSynthesisEvent\"): SpeechSynthesisEvent;\n createEvent(eventInterface: \"StorageEvent\"): StorageEvent;\n createEvent(eventInterface: \"SubmitEvent\"): SubmitEvent;\n createEvent(eventInterface: \"TextEvent\"): TextEvent;\n createEvent(eventInterface: \"ToggleEvent\"): ToggleEvent;\n createEvent(eventInterface: \"TouchEvent\"): TouchEvent;\n createEvent(eventInterface: \"TrackEvent\"): TrackEvent;\n createEvent(eventInterface: \"TransitionEvent\"): TransitionEvent;\n createEvent(eventInterface: \"UIEvent\"): UIEvent;\n createEvent(eventInterface: \"UIEvents\"): UIEvent;\n createEvent(eventInterface: \"WebGLContextEvent\"): WebGLContextEvent;\n createEvent(eventInterface: \"WheelEvent\"): WheelEvent;\n createEvent(eventInterface: string): Event;\n /**\n * Creates a NodeIterator object that you can use to traverse filtered lists of nodes or elements in a document.\n * @param root The root element or node to start traversing on.\n * @param whatToShow The type of nodes or elements to appear in the node list\n * @param filter A custom NodeFilter function to use. For more information, see filter. Use null for no filter.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createNodeIterator)\n */\n createNodeIterator(root: Node, whatToShow?: number, filter?: NodeFilter | null): NodeIterator;\n /**\n * Returns a ProcessingInstruction node whose target is target and data is data. If target does not match the Name production an \"InvalidCharacterError\" DOMException will be thrown. If data contains \"?>\" an \"InvalidCharacterError\" DOMException will be thrown.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createProcessingInstruction)\n */\n createProcessingInstruction(target: string, data: string): ProcessingInstruction;\n /**\n * Returns an empty range object that has both of its boundary points positioned at the beginning of the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createRange)\n */\n createRange(): Range;\n /**\n * Creates a text string from the specified value.\n * @param data String that specifies the nodeValue property of the text node.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createTextNode)\n */\n createTextNode(data: string): Text;\n /**\n * Creates a TreeWalker object that you can use to traverse filtered lists of nodes or elements in a document.\n * @param root The root element or node to start traversing on.\n * @param whatToShow The type of nodes or elements to appear in the node list. For more information, see whatToShow.\n * @param filter A custom NodeFilter function to use.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createTreeWalker)\n */\n createTreeWalker(root: Node, whatToShow?: number, filter?: NodeFilter | null): TreeWalker;\n /**\n * Executes a command on the current document, current selection, or the given range.\n * @param commandId String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.\n * @param showUI Display the user interface, defaults to false.\n * @param value Value to assign.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/execCommand)\n */\n execCommand(commandId: string, showUI?: boolean, value?: string): boolean;\n /**\n * Stops document's fullscreen element from being displayed fullscreen and resolves promise when done.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitFullscreen)\n */\n exitFullscreen(): Promise<void>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitPictureInPicture) */\n exitPictureInPicture(): Promise<void>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitPointerLock) */\n exitPointerLock(): void;\n /**\n * Returns a reference to the first object with the specified value of the ID attribute.\n * @param elementId String that specifies the ID value.\n */\n getElementById(elementId: string): HTMLElement | null;\n /**\n * Returns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByClassName)\n */\n getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;\n /**\n * Gets a collection of objects based on the value of the NAME or ID attribute.\n * @param elementName Gets a collection of objects based on the value of the NAME or ID attribute.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByName)\n */\n getElementsByName(elementName: string): NodeListOf<HTMLElement>;\n /**\n * Retrieves a collection of objects based on the specified element name.\n * @param name Specifies the name of an element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByTagName)\n */\n getElementsByTagName<K extends keyof HTMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;\n getElementsByTagName<K extends keyof SVGElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;\n getElementsByTagName<K extends keyof MathMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;\n /** @deprecated */\n getElementsByTagName<K extends keyof HTMLElementDeprecatedTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;\n getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;\n /**\n * If namespace and localName are \"*\" returns a HTMLCollection of all descendant elements.\n *\n * If only namespace is \"*\" returns a HTMLCollection of all descendant elements whose local name is localName.\n *\n * If only localName is \"*\" returns a HTMLCollection of all descendant elements whose namespace is namespace.\n *\n * Otherwise, returns a HTMLCollection of all descendant elements whose namespace is namespace and local name is localName.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByTagNameNS)\n */\n getElementsByTagNameNS(namespaceURI: \"http://www.w3.org/1999/xhtml\", localName: string): HTMLCollectionOf<HTMLElement>;\n getElementsByTagNameNS(namespaceURI: \"http://www.w3.org/2000/svg\", localName: string): HTMLCollectionOf<SVGElement>;\n getElementsByTagNameNS(namespaceURI: \"http://www.w3.org/1998/Math/MathML\", localName: string): HTMLCollectionOf<MathMLElement>;\n getElementsByTagNameNS(namespace: string | null, localName: string): HTMLCollectionOf<Element>;\n /**\n * Returns an object representing the current selection of the document that is loaded into the object displaying a webpage.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getSelection)\n */\n getSelection(): Selection | null;\n /**\n * Gets a value indicating whether the object currently has focus.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hasFocus)\n */\n hasFocus(): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hasStorageAccess) */\n hasStorageAccess(): Promise<boolean>;\n /**\n * Returns a copy of node. If deep is true, the copy also includes the node's descendants.\n *\n * If node is a document or a shadow root, throws a \"NotSupportedError\" DOMException.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/importNode)\n */\n importNode<T extends Node>(node: T, deep?: boolean): T;\n /**\n * Opens a new window and loads a document specified by a given URL. Also, opens a new window that uses the url parameter and the name parameter to collect the output of the write method and the writeln method.\n * @param url Specifies a MIME type for the document.\n * @param name Specifies the name of the window. This name is used as the value for the TARGET attribute on a form or an anchor element.\n * @param features Contains a list of items separated by commas. Each item consists of an option and a value, separated by an equals sign (for example, \"fullscreen=yes, toolbar=yes\"). The following values are supported.\n * @param replace Specifies whether the existing entry for the document is replaced in the history list.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/open)\n */\n open(unused1?: string, unused2?: string): Document;\n open(url: string | URL, name: string, features: string): WindowProxy | null;\n /**\n * Returns a Boolean value that indicates whether a specified command can be successfully executed using execCommand, given the current state of the document.\n * @param commandId Specifies a command identifier.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandEnabled)\n */\n queryCommandEnabled(commandId: string): boolean;\n /**\n * Returns a Boolean value that indicates whether the specified command is in the indeterminate state.\n * @param commandId String that specifies a command identifier.\n * @deprecated\n */\n queryCommandIndeterm(commandId: string): boolean;\n /**\n * Returns a Boolean value that indicates the current state of the command.\n * @param commandId String that specifies a command identifier.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandState)\n */\n queryCommandState(commandId: string): boolean;\n /**\n * Returns a Boolean value that indicates whether the current command is supported on the current range.\n * @param commandId Specifies a command identifier.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandSupported)\n */\n queryCommandSupported(commandId: string): boolean;\n /**\n * Returns the current value of the document, range, or current selection for the given command.\n * @param commandId String that specifies a command identifier.\n * @deprecated\n */\n queryCommandValue(commandId: string): string;\n /** @deprecated */\n releaseEvents(): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/requestStorageAccess) */\n requestStorageAccess(): Promise<void>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/startViewTransition) */\n startViewTransition(callbackOptions?: UpdateCallback): ViewTransition;\n /**\n * Writes one or more HTML expressions to a document in the specified window.\n * @param content Specifies the text and HTML tags to write.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/write)\n */\n write(...text: string[]): void;\n /**\n * Writes one or more HTML expressions, followed by a carriage return, to a document in the specified window.\n * @param content The text and HTML tags to write.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/writeln)\n */\n writeln(...text: string[]): void;\n addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var Document: {\n prototype: Document;\n new(): Document;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/parseHTMLUnsafe_static) */\n parseHTMLUnsafe(html: string): Document;\n};\n\n/**\n * A minimal document object that has no parent. It is used as a lightweight version of Document that stores a segment of a document structure comprised of nodes just like a standard document. The key difference is that because the document fragment isn't part of the active document tree structure, changes made to the fragment don't affect the document, cause reflow, or incur any performance impact that can occur when changes are made.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentFragment)\n */\ninterface DocumentFragment extends Node, NonElementParentNode, ParentNode {\n readonly ownerDocument: Document;\n getElementById(elementId: string): HTMLElement | null;\n}\n\ndeclare var DocumentFragment: {\n prototype: DocumentFragment;\n new(): DocumentFragment;\n};\n\ninterface DocumentOrShadowRoot {\n /**\n * Returns the deepest element in the document through which or to which key events are being routed. This is, roughly speaking, the focused element in the document.\n *\n * For the purposes of this API, when a child browsing context is focused, its container is focused in the parent browsing context. For example, if the user moves the focus to a text control in an iframe, the iframe is the element returned by the activeElement API in the iframe's node document.\n *\n * Similarly, when the focused element is in a different node tree than documentOrShadowRoot, the element returned will be the host that's located in the same node tree as documentOrShadowRoot if documentOrShadowRoot is a shadow-including inclusive ancestor of the focused element, and null if not.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/activeElement)\n */\n readonly activeElement: Element | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/adoptedStyleSheets) */\n adoptedStyleSheets: CSSStyleSheet[];\n /**\n * Returns document's fullscreen element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenElement)\n */\n readonly fullscreenElement: Element | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pictureInPictureElement) */\n readonly pictureInPictureElement: Element | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerLockElement) */\n readonly pointerLockElement: Element | null;\n /**\n * Retrieves a collection of styleSheet objects representing the style sheets that correspond to each instance of a link or style object in the document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/styleSheets)\n */\n readonly styleSheets: StyleSheetList;\n /**\n * Returns the element for the specified x coordinate and the specified y coordinate.\n * @param x The x-offset\n * @param y The y-offset\n */\n elementFromPoint(x: number, y: number): Element | null;\n elementsFromPoint(x: number, y: number): Element[];\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getAnimations) */\n getAnimations(): Animation[];\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentTimeline) */\ninterface DocumentTimeline extends AnimationTimeline {\n}\n\ndeclare var DocumentTimeline: {\n prototype: DocumentTimeline;\n new(options?: DocumentTimelineOptions): DocumentTimeline;\n};\n\n/**\n * A Node containing a doctype.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType)\n */\ninterface DocumentType extends Node, ChildNode {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/name) */\n readonly name: string;\n readonly ownerDocument: Document;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/publicId) */\n readonly publicId: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/systemId) */\n readonly systemId: string;\n}\n\ndeclare var DocumentType: {\n prototype: DocumentType;\n new(): DocumentType;\n};\n\n/**\n * A DOM event that represents a drag and drop interaction. The user initiates a drag by placing a pointer device (such as a mouse) on the touch surface and then dragging the pointer to a new location (such as another DOM element). Applications are free to interpret a drag and drop interaction in an application-specific way.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DragEvent)\n */\ninterface DragEvent extends MouseEvent {\n /**\n * Returns the DataTransfer object for the event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DragEvent/dataTransfer)\n */\n readonly dataTransfer: DataTransfer | null;\n}\n\ndeclare var DragEvent: {\n prototype: DragEvent;\n new(type: string, eventInitDict?: DragEventInit): DragEvent;\n};\n\n/**\n * Inherits properties from its parent, AudioNode.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode)\n */\ninterface DynamicsCompressorNode extends AudioNode {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/attack) */\n readonly attack: AudioParam;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/knee) */\n readonly knee: AudioParam;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/ratio) */\n readonly ratio: AudioParam;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/reduction) */\n readonly reduction: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/release) */\n readonly release: AudioParam;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/threshold) */\n readonly threshold: AudioParam;\n}\n\ndeclare var DynamicsCompressorNode: {\n prototype: DynamicsCompressorNode;\n new(context: BaseAudioContext, options?: DynamicsCompressorOptions): DynamicsCompressorNode;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_blend_minmax) */\ninterface EXT_blend_minmax {\n readonly MIN_EXT: 0x8007;\n readonly MAX_EXT: 0x8008;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_color_buffer_float) */\ninterface EXT_color_buffer_float {\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_color_buffer_half_float) */\ninterface EXT_color_buffer_half_float {\n readonly RGBA16F_EXT: 0x881A;\n readonly RGB16F_EXT: 0x881B;\n readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT: 0x8211;\n readonly UNSIGNED_NORMALIZED_EXT: 0x8C17;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_float_blend) */\ninterface EXT_float_blend {\n}\n\n/**\n * The EXT_frag_depth extension is part of the WebGL API and enables to set a depth value of a fragment from within the fragment shader.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_frag_depth)\n */\ninterface EXT_frag_depth {\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_sRGB) */\ninterface EXT_sRGB {\n readonly SRGB_EXT: 0x8C40;\n readonly SRGB_ALPHA_EXT: 0x8C42;\n readonly SRGB8_ALPHA8_EXT: 0x8C43;\n readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT: 0x8210;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_shader_texture_lod) */\ninterface EXT_shader_texture_lod {\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_compression_bptc) */\ninterface EXT_texture_compression_bptc {\n readonly COMPRESSED_RGBA_BPTC_UNORM_EXT: 0x8E8C;\n readonly COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT: 0x8E8D;\n readonly COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT: 0x8E8E;\n readonly COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT: 0x8E8F;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_compression_rgtc) */\ninterface EXT_texture_compression_rgtc {\n readonly COMPRESSED_RED_RGTC1_EXT: 0x8DBB;\n readonly COMPRESSED_SIGNED_RED_RGTC1_EXT: 0x8DBC;\n readonly COMPRESSED_RED_GREEN_RGTC2_EXT: 0x8DBD;\n readonly COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 0x8DBE;\n}\n\n/**\n * The EXT_texture_filter_anisotropic extension is part of the WebGL API and exposes two constants for anisotropic filtering (AF).\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_filter_anisotropic)\n */\ninterface EXT_texture_filter_anisotropic {\n readonly TEXTURE_MAX_ANISOTROPY_EXT: 0x84FE;\n readonly MAX_TEXTURE_MAX_ANISOTROPY_EXT: 0x84FF;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_norm16) */\ninterface EXT_texture_norm16 {\n readonly R16_EXT: 0x822A;\n readonly RG16_EXT: 0x822C;\n readonly RGB16_EXT: 0x8054;\n readonly RGBA16_EXT: 0x805B;\n readonly R16_SNORM_EXT: 0x8F98;\n readonly RG16_SNORM_EXT: 0x8F99;\n readonly RGB16_SNORM_EXT: 0x8F9A;\n readonly RGBA16_SNORM_EXT: 0x8F9B;\n}\n\ninterface ElementEventMap {\n \"fullscreenchange\": Event;\n \"fullscreenerror\": Event;\n}\n\n/**\n * Element is the most general base class from which all objects in a Document inherit. It only has methods and properties common to all kinds of elements. More specific classes inherit from Element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element)\n */\ninterface Element extends Node, ARIAMixin, Animatable, ChildNode, NonDocumentTypeChildNode, ParentNode, Slottable {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/attributes) */\n readonly attributes: NamedNodeMap;\n /**\n * Allows for manipulation of element's class content attribute as a set of whitespace-separated tokens through a DOMTokenList object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/classList)\n */\n readonly classList: DOMTokenList;\n /**\n * Returns the value of element's class content attribute. Can be set to change it.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/className)\n */\n className: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientHeight) */\n readonly clientHeight: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientLeft) */\n readonly clientLeft: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientTop) */\n readonly clientTop: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientWidth) */\n readonly clientWidth: number;\n /**\n * Returns the value of element's id content attribute. Can be set to change it.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/id)\n */\n id: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/innerHTML) */\n innerHTML: string;\n /**\n * Returns the local name.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/localName)\n */\n readonly localName: string;\n /**\n * Returns the namespace.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/namespaceURI)\n */\n readonly namespaceURI: string | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/fullscreenchange_event) */\n onfullscreenchange: ((this: Element, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/fullscreenerror_event) */\n onfullscreenerror: ((this: Element, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/outerHTML) */\n outerHTML: string;\n readonly ownerDocument: Document;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/part) */\n readonly part: DOMTokenList;\n /**\n * Returns the namespace prefix.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/prefix)\n */\n readonly prefix: string | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollHeight) */\n readonly scrollHeight: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollLeft) */\n scrollLeft: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollTop) */\n scrollTop: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollWidth) */\n readonly scrollWidth: number;\n /**\n * Returns element's shadow root, if any, and if shadow root's mode is \"open\", and null otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/shadowRoot)\n */\n readonly shadowRoot: ShadowRoot | null;\n /**\n * Returns the value of element's slot content attribute. Can be set to change it.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/slot)\n */\n slot: string;\n /**\n * Returns the HTML-uppercased qualified name.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/tagName)\n */\n readonly tagName: string;\n /**\n * Creates a shadow root for element and returns it.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/attachShadow)\n */\n attachShadow(init: ShadowRootInit): ShadowRoot;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/checkVisibility) */\n checkVisibility(options?: CheckVisibilityOptions): boolean;\n /**\n * Returns the first (starting at element) inclusive ancestor that matches selectors, and null otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/closest)\n */\n closest<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K] | null;\n closest<K extends keyof SVGElementTagNameMap>(selector: K): SVGElementTagNameMap[K] | null;\n closest<K extends keyof MathMLElementTagNameMap>(selector: K): MathMLElementTagNameMap[K] | null;\n closest<E extends Element = Element>(selectors: string): E | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/computedStyleMap) */\n computedStyleMap(): StylePropertyMapReadOnly;\n /**\n * Returns element's first attribute whose qualified name is qualifiedName, and null if there is no such attribute otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttribute)\n */\n getAttribute(qualifiedName: string): string | null;\n /**\n * Returns element's attribute whose namespace is namespace and local name is localName, and null if there is no such attribute otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNS)\n */\n getAttributeNS(namespace: string | null, localName: string): string | null;\n /**\n * Returns the qualified names of all element's attributes. Can contain duplicates.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNames)\n */\n getAttributeNames(): string[];\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNode) */\n getAttributeNode(qualifiedName: string): Attr | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNodeNS) */\n getAttributeNodeNS(namespace: string | null, localName: string): Attr | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getBoundingClientRect) */\n getBoundingClientRect(): DOMRect;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getClientRects) */\n getClientRects(): DOMRectList;\n /**\n * Returns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByClassName)\n */\n getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByTagName) */\n getElementsByTagName<K extends keyof HTMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;\n getElementsByTagName<K extends keyof SVGElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;\n getElementsByTagName<K extends keyof MathMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;\n /** @deprecated */\n getElementsByTagName<K extends keyof HTMLElementDeprecatedTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;\n getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByTagNameNS) */\n getElementsByTagNameNS(namespaceURI: \"http://www.w3.org/1999/xhtml\", localName: string): HTMLCollectionOf<HTMLElement>;\n getElementsByTagNameNS(namespaceURI: \"http://www.w3.org/2000/svg\", localName: string): HTMLCollectionOf<SVGElement>;\n getElementsByTagNameNS(namespaceURI: \"http://www.w3.org/1998/Math/MathML\", localName: string): HTMLCollectionOf<MathMLElement>;\n getElementsByTagNameNS(namespace: string | null, localName: string): HTMLCollectionOf<Element>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getHTML) */\n getHTML(options?: GetHTMLOptions): string;\n /**\n * Returns true if element has an attribute whose qualified name is qualifiedName, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttribute)\n */\n hasAttribute(qualifiedName: string): boolean;\n /**\n * Returns true if element has an attribute whose namespace is namespace and local name is localName.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttributeNS)\n */\n hasAttributeNS(namespace: string | null, localName: string): boolean;\n /**\n * Returns true if element has attributes, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttributes)\n */\n hasAttributes(): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasPointerCapture) */\n hasPointerCapture(pointerId: number): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentElement) */\n insertAdjacentElement(where: InsertPosition, element: Element): Element | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentHTML) */\n insertAdjacentHTML(position: InsertPosition, string: string): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentText) */\n insertAdjacentText(where: InsertPosition, data: string): void;\n /**\n * Returns true if matching selectors against element's root yields element, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/matches)\n */\n matches(selectors: string): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture) */\n releasePointerCapture(pointerId: number): void;\n /**\n * Removes element's first attribute whose qualified name is qualifiedName.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttribute)\n */\n removeAttribute(qualifiedName: string): void;\n /**\n * Removes element's attribute whose namespace is namespace and local name is localName.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttributeNS)\n */\n removeAttributeNS(namespace: string | null, localName: string): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttributeNode) */\n removeAttributeNode(attr: Attr): Attr;\n /**\n * Displays element fullscreen and resolves promise when done.\n *\n * When supplied, options's navigationUI member indicates whether showing navigation UI while in fullscreen is preferred or not. If set to \"show\", navigation simplicity is preferred over screen space, and if set to \"hide\", more screen space is preferred. User agents are always free to honor user preference over the application's. The default value \"auto\" indicates no application preference.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/requestFullscreen)\n */\n requestFullscreen(options?: FullscreenOptions): Promise<void>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/requestPointerLock) */\n requestPointerLock(options?: PointerLockOptions): Promise<void>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scroll) */\n scroll(options?: ScrollToOptions): void;\n scroll(x: number, y: number): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollBy) */\n scrollBy(options?: ScrollToOptions): void;\n scrollBy(x: number, y: number): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollIntoView) */\n scrollIntoView(arg?: boolean | ScrollIntoViewOptions): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollTo) */\n scrollTo(options?: ScrollToOptions): void;\n scrollTo(x: number, y: number): void;\n /**\n * Sets the value of element's first attribute whose qualified name is qualifiedName to value.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttribute)\n */\n setAttribute(qualifiedName: string, value: string): void;\n /**\n * Sets the value of element's attribute whose namespace is namespace and local name is localName to value.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNS)\n */\n setAttributeNS(namespace: string | null, qualifiedName: string, value: string): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNode) */\n setAttributeNode(attr: Attr): Attr | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNodeNS) */\n setAttributeNodeNS(attr: Attr): Attr | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setHTMLUnsafe) */\n setHTMLUnsafe(html: string): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setPointerCapture) */\n setPointerCapture(pointerId: number): void;\n /**\n * If force is not given, \"toggles\" qualifiedName, removing it if it is present and adding it if it is not present. If force is true, adds qualifiedName. If force is false, removes qualifiedName.\n *\n * Returns true if qualifiedName is now present, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/toggleAttribute)\n */\n toggleAttribute(qualifiedName: string, force?: boolean): boolean;\n /**\n * @deprecated This is a legacy alias of `matches`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/matches)\n */\n webkitMatchesSelector(selectors: string): boolean;\n addEventListener<K extends keyof ElementEventMap>(type: K, listener: (this: Element, ev: ElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof ElementEventMap>(type: K, listener: (this: Element, ev: ElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var Element: {\n prototype: Element;\n new(): Element;\n};\n\ninterface ElementCSSInlineStyle {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/attributeStyleMap) */\n readonly attributeStyleMap: StylePropertyMap;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/style) */\n readonly style: CSSStyleDeclaration;\n}\n\ninterface ElementContentEditable {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/contentEditable) */\n contentEditable: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/enterKeyHint) */\n enterKeyHint: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/inputMode) */\n inputMode: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/isContentEditable) */\n readonly isContentEditable: boolean;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals) */\ninterface ElementInternals extends ARIAMixin {\n /**\n * Returns the form owner of internals's target element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/form)\n */\n readonly form: HTMLFormElement | null;\n /**\n * Returns a NodeList of all the label elements that internals's target element is associated with.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/labels)\n */\n readonly labels: NodeList;\n /**\n * Returns the ShadowRoot for internals's target element, if the target element is a shadow host, or null otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/shadowRoot)\n */\n readonly shadowRoot: ShadowRoot | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/states) */\n readonly states: CustomStateSet;\n /**\n * Returns the error message that would be shown to the user if internals's target element was to be checked for validity.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/validationMessage)\n */\n readonly validationMessage: string;\n /**\n * Returns the ValidityState object for internals's target element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/validity)\n */\n readonly validity: ValidityState;\n /**\n * Returns true if internals's target element will be validated when the form is submitted; false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/willValidate)\n */\n readonly willValidate: boolean;\n /**\n * Returns true if internals's target element has no validity problems; false otherwise. Fires an invalid event at the element in the latter case.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/checkValidity)\n */\n checkValidity(): boolean;\n /**\n * Returns true if internals's target element has no validity problems; otherwise, returns false, fires an invalid event at the element, and (if the event isn't canceled) reports the problem to the user.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/reportValidity)\n */\n reportValidity(): boolean;\n /**\n * Sets both the state and submission value of internals's target element to value.\n *\n * If value is null, the element won't participate in form submission.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/setFormValue)\n */\n setFormValue(value: File | string | FormData | null, state?: File | string | FormData | null): void;\n /**\n * Marks internals's target element as suffering from the constraints indicated by the flags argument, and sets the element's validation message to message. If anchor is specified, the user agent might use it to indicate problems with the constraints of internals's target element when the form owner is validated interactively or reportValidity() is called.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/setValidity)\n */\n setValidity(flags?: ValidityStateFlags, message?: string, anchor?: HTMLElement): void;\n}\n\ndeclare var ElementInternals: {\n prototype: ElementInternals;\n new(): ElementInternals;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk) */\ninterface EncodedVideoChunk {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/byteLength) */\n readonly byteLength: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/duration) */\n readonly duration: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/timestamp) */\n readonly timestamp: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/type) */\n readonly type: EncodedVideoChunkType;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/copyTo) */\n copyTo(destination: AllowSharedBufferSource): void;\n}\n\ndeclare var EncodedVideoChunk: {\n prototype: EncodedVideoChunk;\n new(init: EncodedVideoChunkInit): EncodedVideoChunk;\n};\n\n/**\n * Events providing information related to errors in scripts or in files.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent)\n */\ninterface ErrorEvent extends Event {\n readonly colno: number;\n readonly error: any;\n readonly filename: string;\n readonly lineno: number;\n readonly message: string;\n}\n\ndeclare var ErrorEvent: {\n prototype: ErrorEvent;\n new(type: string, eventInitDict?: ErrorEventInit): ErrorEvent;\n};\n\n/**\n * An event which takes place in the DOM.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event)\n */\ninterface Event {\n /**\n * Returns true or false depending on how event was initialized. True if event goes through its target's ancestors in reverse tree order, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/bubbles)\n */\n readonly bubbles: boolean;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelBubble)\n */\n cancelBubble: boolean;\n /**\n * Returns true or false depending on how event was initialized. Its return value does not always carry meaning, but true can indicate that part of the operation during which event was dispatched, can be canceled by invoking the preventDefault() method.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelable)\n */\n readonly cancelable: boolean;\n /**\n * Returns true or false depending on how event was initialized. True if event invokes listeners past a ShadowRoot node that is the root of its target, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composed)\n */\n readonly composed: boolean;\n /**\n * Returns the object whose event listener's callback is currently being invoked.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/currentTarget)\n */\n readonly currentTarget: EventTarget | null;\n /**\n * Returns true if preventDefault() was invoked successfully to indicate cancelation, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/defaultPrevented)\n */\n readonly defaultPrevented: boolean;\n /**\n * Returns the event's phase, which is one of NONE, CAPTURING_PHASE, AT_TARGET, and BUBBLING_PHASE.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/eventPhase)\n */\n readonly eventPhase: number;\n /**\n * Returns true if event was dispatched by the user agent, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/isTrusted)\n */\n readonly isTrusted: boolean;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/returnValue)\n */\n returnValue: boolean;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/srcElement)\n */\n readonly srcElement: EventTarget | null;\n /**\n * Returns the object to which event is dispatched (its target).\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/target)\n */\n readonly target: EventTarget | null;\n /**\n * Returns the event's timestamp as the number of milliseconds measured relative to the time origin.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/timeStamp)\n */\n readonly timeStamp: DOMHighResTimeStamp;\n /**\n * Returns the type of event, e.g. \"click\", \"hashchange\", or \"submit\".\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/type)\n */\n readonly type: string;\n /**\n * Returns the invocation target objects of event's path (objects on which listeners will be invoked), except for any nodes in shadow trees of which the shadow root's mode is \"closed\" that are not reachable from event's currentTarget.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composedPath)\n */\n composedPath(): EventTarget[];\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/initEvent)\n */\n initEvent(type: string, bubbles?: boolean, cancelable?: boolean): void;\n /**\n * If invoked when the cancelable attribute value is true, and while executing a listener for the event with passive set to false, signals to the operation that caused event to be dispatched that it needs to be canceled.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/preventDefault)\n */\n preventDefault(): void;\n /**\n * Invoking this method prevents event from reaching any registered event listeners after the current one finishes running and, when dispatched in a tree, also prevents event from reaching any other objects.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopImmediatePropagation)\n */\n stopImmediatePropagation(): void;\n /**\n * When dispatched in a tree, invoking this method prevents event from reaching any objects other than the current object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopPropagation)\n */\n stopPropagation(): void;\n readonly NONE: 0;\n readonly CAPTURING_PHASE: 1;\n readonly AT_TARGET: 2;\n readonly BUBBLING_PHASE: 3;\n}\n\ndeclare var Event: {\n prototype: Event;\n new(type: string, eventInitDict?: EventInit): Event;\n readonly NONE: 0;\n readonly CAPTURING_PHASE: 1;\n readonly AT_TARGET: 2;\n readonly BUBBLING_PHASE: 3;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventCounts) */\ninterface EventCounts {\n forEach(callbackfn: (value: number, key: string, parent: EventCounts) => void, thisArg?: any): void;\n}\n\ndeclare var EventCounts: {\n prototype: EventCounts;\n new(): EventCounts;\n};\n\ninterface EventListener {\n (evt: Event): void;\n}\n\ninterface EventListenerObject {\n handleEvent(object: Event): void;\n}\n\ninterface EventSourceEventMap {\n \"error\": Event;\n \"message\": MessageEvent;\n \"open\": Event;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource) */\ninterface EventSource extends EventTarget {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/error_event) */\n onerror: ((this: EventSource, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/message_event) */\n onmessage: ((this: EventSource, ev: MessageEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/open_event) */\n onopen: ((this: EventSource, ev: Event) => any) | null;\n /**\n * Returns the state of this EventSource object's connection. It can have the values described below.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/readyState)\n */\n readonly readyState: number;\n /**\n * Returns the URL providing the event stream.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/url)\n */\n readonly url: string;\n /**\n * Returns true if the credentials mode for connection requests to the URL providing the event stream is set to \"include\", and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/withCredentials)\n */\n readonly withCredentials: boolean;\n /**\n * Aborts any instances of the fetch algorithm started for this EventSource object, and sets the readyState attribute to CLOSED.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/close)\n */\n close(): void;\n readonly CONNECTING: 0;\n readonly OPEN: 1;\n readonly CLOSED: 2;\n addEventListener<K extends keyof EventSourceEventMap>(type: K, listener: (this: EventSource, ev: EventSourceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: (this: EventSource, event: MessageEvent) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof EventSourceEventMap>(type: K, listener: (this: EventSource, ev: EventSourceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: (this: EventSource, event: MessageEvent) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var EventSource: {\n prototype: EventSource;\n new(url: string | URL, eventSourceInitDict?: EventSourceInit): EventSource;\n readonly CONNECTING: 0;\n readonly OPEN: 1;\n readonly CLOSED: 2;\n};\n\n/**\n * EventTarget is a DOM interface implemented by objects that can receive events and may have listeners for them.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget)\n */\ninterface EventTarget {\n /**\n * Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.\n *\n * The options argument sets listener-specific options. For compatibility this can be a boolean, in which case the method behaves exactly as if the value was specified as options's capture.\n *\n * When set to true, options's capture prevents callback from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE. When false (or not present), callback will not be invoked when event's eventPhase attribute value is CAPTURING_PHASE. Either way, callback will be invoked if event's eventPhase attribute value is AT_TARGET.\n *\n * When set to true, options's passive indicates that the callback will not cancel the event by invoking preventDefault(). This is used to enable performance optimizations described in § 2.8 Observing event listeners.\n *\n * When set to true, options's once indicates that the callback will only be invoked once after which the event listener will be removed.\n *\n * If an AbortSignal is passed for options's signal, then the event listener will be removed when signal is aborted.\n *\n * The event listener is appended to target's event listener list and is not appended if it has the same type, callback, and capture.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/addEventListener)\n */\n addEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: AddEventListenerOptions | boolean): void;\n /**\n * Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent)\n */\n dispatchEvent(event: Event): boolean;\n /**\n * Removes the event listener in target's event listener list with the same type, callback, and options.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/removeEventListener)\n */\n removeEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: EventListenerOptions | boolean): void;\n}\n\ndeclare var EventTarget: {\n prototype: EventTarget;\n new(): EventTarget;\n};\n\n/** @deprecated */\ninterface External {\n /** @deprecated */\n AddSearchProvider(): void;\n /** @deprecated */\n IsSearchProviderInstalled(): void;\n}\n\n/** @deprecated */\ndeclare var External: {\n prototype: External;\n new(): External;\n};\n\n/**\n * Provides information about files and allows JavaScript in a web page to access their content.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/File)\n */\ninterface File extends Blob {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/lastModified) */\n readonly lastModified: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/name) */\n readonly name: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/webkitRelativePath) */\n readonly webkitRelativePath: string;\n}\n\ndeclare var File: {\n prototype: File;\n new(fileBits: BlobPart[], fileName: string, options?: FilePropertyBag): File;\n};\n\n/**\n * An object of this type is returned by the files property of the HTML <input> element; this lets you access the list of files selected with the <input type=\"file\"> element. It's also used for a list of files dropped into web content when using the drag and drop API; see the DataTransfer object for details on this usage.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList)\n */\ninterface FileList {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList/length) */\n readonly length: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList/item) */\n item(index: number): File | null;\n [index: number]: File;\n}\n\ndeclare var FileList: {\n prototype: FileList;\n new(): FileList;\n};\n\ninterface FileReaderEventMap {\n \"abort\": ProgressEvent<FileReader>;\n \"error\": ProgressEvent<FileReader>;\n \"load\": ProgressEvent<FileReader>;\n \"loadend\": ProgressEvent<FileReader>;\n \"loadstart\": ProgressEvent<FileReader>;\n \"progress\": ProgressEvent<FileReader>;\n}\n\n/**\n * Lets web applications asynchronously read the contents of files (or raw data buffers) stored on the user's computer, using File or Blob objects to specify the file or data to read.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader)\n */\ninterface FileReader extends EventTarget {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/error) */\n readonly error: DOMException | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/abort_event) */\n onabort: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/error_event) */\n onerror: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/load_event) */\n onload: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/loadend_event) */\n onloadend: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/loadstart_event) */\n onloadstart: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/progress_event) */\n onprogress: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */\n readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/result) */\n readonly result: string | ArrayBuffer | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/abort) */\n abort(): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsArrayBuffer) */\n readAsArrayBuffer(blob: Blob): void;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsBinaryString)\n */\n readAsBinaryString(blob: Blob): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsDataURL) */\n readAsDataURL(blob: Blob): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsText) */\n readAsText(blob: Blob, encoding?: string): void;\n readonly EMPTY: 0;\n readonly LOADING: 1;\n readonly DONE: 2;\n addEventListener<K extends keyof FileReaderEventMap>(type: K, listener: (this: FileReader, ev: FileReaderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof FileReaderEventMap>(type: K, listener: (this: FileReader, ev: FileReaderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var FileReader: {\n prototype: FileReader;\n new(): FileReader;\n readonly EMPTY: 0;\n readonly LOADING: 1;\n readonly DONE: 2;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem) */\ninterface FileSystem {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem/name) */\n readonly name: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem/root) */\n readonly root: FileSystemDirectoryEntry;\n}\n\ndeclare var FileSystem: {\n prototype: FileSystem;\n new(): FileSystem;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry) */\ninterface FileSystemDirectoryEntry extends FileSystemEntry {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/createReader) */\n createReader(): FileSystemDirectoryReader;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/getDirectory) */\n getDirectory(path?: string | null, options?: FileSystemFlags, successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/getFile) */\n getFile(path?: string | null, options?: FileSystemFlags, successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;\n}\n\ndeclare var FileSystemDirectoryEntry: {\n prototype: FileSystemDirectoryEntry;\n new(): FileSystemDirectoryEntry;\n};\n\n/**\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle)\n */\ninterface FileSystemDirectoryHandle extends FileSystemHandle {\n readonly kind: \"directory\";\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getDirectoryHandle) */\n getDirectoryHandle(name: string, options?: FileSystemGetDirectoryOptions): Promise<FileSystemDirectoryHandle>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getFileHandle) */\n getFileHandle(name: string, options?: FileSystemGetFileOptions): Promise<FileSystemFileHandle>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/removeEntry) */\n removeEntry(name: string, options?: FileSystemRemoveOptions): Promise<void>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/resolve) */\n resolve(possibleDescendant: FileSystemHandle): Promise<string[] | null>;\n}\n\ndeclare var FileSystemDirectoryHandle: {\n prototype: FileSystemDirectoryHandle;\n new(): FileSystemDirectoryHandle;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryReader) */\ninterface FileSystemDirectoryReader {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryReader/readEntries) */\n readEntries(successCallback: FileSystemEntriesCallback, errorCallback?: ErrorCallback): void;\n}\n\ndeclare var FileSystemDirectoryReader: {\n prototype: FileSystemDirectoryReader;\n new(): FileSystemDirectoryReader;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry) */\ninterface FileSystemEntry {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/filesystem) */\n readonly filesystem: FileSystem;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/fullPath) */\n readonly fullPath: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/isDirectory) */\n readonly isDirectory: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/isFile) */\n readonly isFile: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/name) */\n readonly name: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/getParent) */\n getParent(successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;\n}\n\ndeclare var FileSystemEntry: {\n prototype: FileSystemEntry;\n new(): FileSystemEntry;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileEntry) */\ninterface FileSystemFileEntry extends FileSystemEntry {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileEntry/file) */\n file(successCallback: FileCallback, errorCallback?: ErrorCallback): void;\n}\n\ndeclare var FileSystemFileEntry: {\n prototype: FileSystemFileEntry;\n new(): FileSystemFileEntry;\n};\n\n/**\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle)\n */\ninterface FileSystemFileHandle extends FileSystemHandle {\n readonly kind: \"file\";\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/createWritable) */\n createWritable(options?: FileSystemCreateWritableOptions): Promise<FileSystemWritableFileStream>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/getFile) */\n getFile(): Promise<File>;\n}\n\ndeclare var FileSystemFileHandle: {\n prototype: FileSystemFileHandle;\n new(): FileSystemFileHandle;\n};\n\n/**\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle)\n */\ninterface FileSystemHandle {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/kind) */\n readonly kind: FileSystemHandleKind;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/name) */\n readonly name: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/isSameEntry) */\n isSameEntry(other: FileSystemHandle): Promise<boolean>;\n}\n\ndeclare var FileSystemHandle: {\n prototype: FileSystemHandle;\n new(): FileSystemHandle;\n};\n\n/**\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream)\n */\ninterface FileSystemWritableFileStream extends WritableStream {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/seek) */\n seek(position: number): Promise<void>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/truncate) */\n truncate(size: number): Promise<void>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write) */\n write(data: FileSystemWriteChunkType): Promise<void>;\n}\n\ndeclare var FileSystemWritableFileStream: {\n prototype: FileSystemWritableFileStream;\n new(): FileSystemWritableFileStream;\n};\n\n/**\n * Focus-related events like focus, blur, focusin, or focusout.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FocusEvent)\n */\ninterface FocusEvent extends UIEvent {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FocusEvent/relatedTarget) */\n readonly relatedTarget: EventTarget | null;\n}\n\ndeclare var FocusEvent: {\n prototype: FocusEvent;\n new(type: string, eventInitDict?: FocusEventInit): FocusEvent;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace) */\ninterface FontFace {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/ascentOverride) */\n ascentOverride: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/descentOverride) */\n descentOverride: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/display) */\n display: FontDisplay;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/family) */\n family: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/featureSettings) */\n featureSettings: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/lineGapOverride) */\n lineGapOverride: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/loaded) */\n readonly loaded: Promise<FontFace>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/status) */\n readonly status: FontFaceLoadStatus;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/stretch) */\n stretch: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/style) */\n style: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/unicodeRange) */\n unicodeRange: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/weight) */\n weight: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/load) */\n load(): Promise<FontFace>;\n}\n\ndeclare var FontFace: {\n prototype: FontFace;\n new(family: string, source: string | BinaryData, descriptors?: FontFaceDescriptors): FontFace;\n};\n\ninterface FontFaceSetEventMap {\n \"loading\": Event;\n \"loadingdone\": Event;\n \"loadingerror\": Event;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet) */\ninterface FontFaceSet extends EventTarget {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loading_event) */\n onloading: ((this: FontFaceSet, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loadingdone_event) */\n onloadingdone: ((this: FontFaceSet, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loadingerror_event) */\n onloadingerror: ((this: FontFaceSet, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/ready) */\n readonly ready: Promise<FontFaceSet>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/status) */\n readonly status: FontFaceSetLoadStatus;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/check) */\n check(font: string, text?: string): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/load) */\n load(font: string, text?: string): Promise<FontFace[]>;\n forEach(callbackfn: (value: FontFace, key: FontFace, parent: FontFaceSet) => void, thisArg?: any): void;\n addEventListener<K extends keyof FontFaceSetEventMap>(type: K, listener: (this: FontFaceSet, ev: FontFaceSetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof FontFaceSetEventMap>(type: K, listener: (this: FontFaceSet, ev: FontFaceSetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var FontFaceSet: {\n prototype: FontFaceSet;\n new(initialFaces: FontFace[]): FontFaceSet;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSetLoadEvent) */\ninterface FontFaceSetLoadEvent extends Event {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSetLoadEvent/fontfaces) */\n readonly fontfaces: ReadonlyArray<FontFace>;\n}\n\ndeclare var FontFaceSetLoadEvent: {\n prototype: FontFaceSetLoadEvent;\n new(type: string, eventInitDict?: FontFaceSetLoadEventInit): FontFaceSetLoadEvent;\n};\n\ninterface FontFaceSource {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fonts) */\n readonly fonts: FontFaceSet;\n}\n\n/**\n * Provides a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the XMLHttpRequest.send() method. It uses the same format a form would use if the encoding type were set to \"multipart/form-data\".\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData)\n */\ninterface FormData {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/append) */\n append(name: string, value: string | Blob): void;\n append(name: string, value: string): void;\n append(name: string, blobValue: Blob, filename?: string): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/delete) */\n delete(name: string): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/get) */\n get(name: string): FormDataEntryValue | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/getAll) */\n getAll(name: string): FormDataEntryValue[];\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/has) */\n has(name: string): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/set) */\n set(name: string, value: string | Blob): void;\n set(name: string, value: string): void;\n set(name: string, blobValue: Blob, filename?: string): void;\n forEach(callbackfn: (value: FormDataEntryValue, key: string, parent: FormData) => void, thisArg?: any): void;\n}\n\ndeclare var FormData: {\n prototype: FormData;\n new(form?: HTMLFormElement, submitter?: HTMLElement | null): FormData;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormDataEvent) */\ninterface FormDataEvent extends Event {\n /**\n * Returns a FormData object representing names and values of elements associated to the target form. Operations on the FormData object will affect form data to be submitted.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormDataEvent/formData)\n */\n readonly formData: FormData;\n}\n\ndeclare var FormDataEvent: {\n prototype: FormDataEvent;\n new(type: string, eventInitDict: FormDataEventInit): FormDataEvent;\n};\n\n/**\n * A change in volume. It is an AudioNode audio-processing module that causes a given gain to be applied to the input data before its propagation to the output. A GainNode always has exactly one input and one output, both with the same number of channels.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GainNode)\n */\ninterface GainNode extends AudioNode {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GainNode/gain) */\n readonly gain: AudioParam;\n}\n\ndeclare var GainNode: {\n prototype: GainNode;\n new(context: BaseAudioContext, options?: GainOptions): GainNode;\n};\n\n/**\n * This Gamepad API interface defines an individual gamepad or other controller, allowing access to information such as button presses, axis positions, and id.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad)\n */\ninterface Gamepad {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/axes) */\n readonly axes: ReadonlyArray<number>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/buttons) */\n readonly buttons: ReadonlyArray<GamepadButton>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/connected) */\n readonly connected: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/id) */\n readonly id: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/index) */\n readonly index: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/mapping) */\n readonly mapping: GamepadMappingType;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/timestamp) */\n readonly timestamp: DOMHighResTimeStamp;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/vibrationActuator) */\n readonly vibrationActuator: GamepadHapticActuator;\n}\n\ndeclare var Gamepad: {\n prototype: Gamepad;\n new(): Gamepad;\n};\n\n/**\n * An individual button of a gamepad or other controller, allowing access to the current state of different types of buttons available on the control device.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton)\n */\ninterface GamepadButton {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/pressed) */\n readonly pressed: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/touched) */\n readonly touched: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/value) */\n readonly value: number;\n}\n\ndeclare var GamepadButton: {\n prototype: GamepadButton;\n new(): GamepadButton;\n};\n\n/**\n * This Gamepad API interface contains references to gamepads connected to the system, which is what the gamepad events Window.gamepadconnected and Window.gamepaddisconnected are fired in response to.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadEvent)\n */\ninterface GamepadEvent extends Event {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadEvent/gamepad) */\n readonly gamepad: Gamepad;\n}\n\ndeclare var GamepadEvent: {\n prototype: GamepadEvent;\n new(type: string, eventInitDict: GamepadEventInit): GamepadEvent;\n};\n\n/**\n * This Gamepad API interface represents hardware in the controller designed to provide haptic feedback to the user (if available), most commonly vibration hardware.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator)\n */\ninterface GamepadHapticActuator {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator/playEffect) */\n playEffect(type: GamepadHapticEffectType, params?: GamepadEffectParameters): Promise<GamepadHapticsResult>;\n reset(): Promise<GamepadHapticsResult>;\n}\n\ndeclare var GamepadHapticActuator: {\n prototype: GamepadHapticActuator;\n new(): GamepadHapticActuator;\n};\n\ninterface GenericTransformStream {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream/readable) */\n readonly readable: ReadableStream;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream/writable) */\n readonly writable: WritableStream;\n}\n\n/**\n * An object able to programmatically obtain the position of the device. It gives Web content access to the location of the device. This allows a Web site or app to offer customized results based on the user's location.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation)\n */\ninterface Geolocation {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/clearWatch) */\n clearWatch(watchId: number): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/getCurrentPosition) */\n getCurrentPosition(successCallback: PositionCallback, errorCallback?: PositionErrorCallback | null, options?: PositionOptions): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/watchPosition) */\n watchPosition(successCallback: PositionCallback, errorCallback?: PositionErrorCallback | null, options?: PositionOptions): number;\n}\n\ndeclare var Geolocation: {\n prototype: Geolocation;\n new(): Geolocation;\n};\n\n/**\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates)\n */\ninterface GeolocationCoordinates {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/accuracy) */\n readonly accuracy: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/altitude) */\n readonly altitude: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/altitudeAccuracy) */\n readonly altitudeAccuracy: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/heading) */\n readonly heading: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/latitude) */\n readonly latitude: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/longitude) */\n readonly longitude: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/speed) */\n readonly speed: number | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/toJSON) */\n toJSON(): any;\n}\n\ndeclare var GeolocationCoordinates: {\n prototype: GeolocationCoordinates;\n new(): GeolocationCoordinates;\n};\n\n/**\n * Available only in secure contexts.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition)\n */\ninterface GeolocationPosition {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/coords) */\n readonly coords: GeolocationCoordinates;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/timestamp) */\n readonly timestamp: EpochTimeStamp;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/toJSON) */\n toJSON(): any;\n}\n\ndeclare var GeolocationPosition: {\n prototype: GeolocationPosition;\n new(): GeolocationPosition;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError) */\ninterface GeolocationPositionError {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError/code) */\n readonly code: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError/message) */\n readonly message: string;\n readonly PERMISSION_DENIED: 1;\n readonly POSITION_UNAVAILABLE: 2;\n readonly TIMEOUT: 3;\n}\n\ndeclare var GeolocationPositionError: {\n prototype: GeolocationPositionError;\n new(): GeolocationPositionError;\n readonly PERMISSION_DENIED: 1;\n readonly POSITION_UNAVAILABLE: 2;\n readonly TIMEOUT: 3;\n};\n\ninterface GlobalEventHandlersEventMap {\n \"abort\": UIEvent;\n \"animationcancel\": AnimationEvent;\n \"animationend\": AnimationEvent;\n \"animationiteration\": AnimationEvent;\n \"animationstart\": AnimationEvent;\n \"auxclick\": MouseEvent;\n \"beforeinput\": InputEvent;\n \"beforetoggle\": Event;\n \"blur\": FocusEvent;\n \"cancel\": Event;\n \"canplay\": Event;\n \"canplaythrough\": Event;\n \"change\": Event;\n \"click\": MouseEvent;\n \"close\": Event;\n \"compositionend\": CompositionEvent;\n \"compositionstart\": CompositionEvent;\n \"compositionupdate\": CompositionEvent;\n \"contextlost\": Event;\n \"contextmenu\": MouseEvent;\n \"contextrestored\": Event;\n \"copy\": ClipboardEvent;\n \"cuechange\": Event;\n \"cut\": ClipboardEvent;\n \"dblclick\": MouseEvent;\n \"drag\": DragEvent;\n \"dragend\": DragEvent;\n \"dragenter\": DragEvent;\n \"dragleave\": DragEvent;\n \"dragover\": DragEvent;\n \"dragstart\": DragEvent;\n \"drop\": DragEvent;\n \"durationchange\": Event;\n \"emptied\": Event;\n \"ended\": Event;\n \"error\": ErrorEvent;\n \"focus\": FocusEvent;\n \"focusin\": FocusEvent;\n \"focusout\": FocusEvent;\n \"formdata\": FormDataEvent;\n \"gotpointercapture\": PointerEvent;\n \"input\": Event;\n \"invalid\": Event;\n \"keydown\": KeyboardEvent;\n \"keypress\": KeyboardEvent;\n \"keyup\": KeyboardEvent;\n \"load\": Event;\n \"loadeddata\": Event;\n \"loadedmetadata\": Event;\n \"loadstart\": Event;\n \"lostpointercapture\": PointerEvent;\n \"mousedown\": MouseEvent;\n \"mouseenter\": MouseEvent;\n \"mouseleave\": MouseEvent;\n \"mousemove\": MouseEvent;\n \"mouseout\": MouseEvent;\n \"mouseover\": MouseEvent;\n \"mouseup\": MouseEvent;\n \"paste\": ClipboardEvent;\n \"pause\": Event;\n \"play\": Event;\n \"playing\": Event;\n \"pointercancel\": PointerEvent;\n \"pointerdown\": PointerEvent;\n \"pointerenter\": PointerEvent;\n \"pointerleave\": PointerEvent;\n \"pointermove\": PointerEvent;\n \"pointerout\": PointerEvent;\n \"pointerover\": PointerEvent;\n \"pointerup\": PointerEvent;\n \"progress\": ProgressEvent;\n \"ratechange\": Event;\n \"reset\": Event;\n \"resize\": UIEvent;\n \"scroll\": Event;\n \"scrollend\": Event;\n \"securitypolicyviolation\": SecurityPolicyViolationEvent;\n \"seeked\": Event;\n \"seeking\": Event;\n \"select\": Event;\n \"selectionchange\": Event;\n \"selectstart\": Event;\n \"slotchange\": Event;\n \"stalled\": Event;\n \"submit\": SubmitEvent;\n \"suspend\": Event;\n \"timeupdate\": Event;\n \"toggle\": Event;\n \"touchcancel\": TouchEvent;\n \"touchend\": TouchEvent;\n \"touchmove\": TouchEvent;\n \"touchstart\": TouchEvent;\n \"transitioncancel\": TransitionEvent;\n \"transitionend\": TransitionEvent;\n \"transitionrun\": TransitionEvent;\n \"transitionstart\": TransitionEvent;\n \"volumechange\": Event;\n \"waiting\": Event;\n \"webkitanimationend\": Event;\n \"webkitanimationiteration\": Event;\n \"webkitanimationstart\": Event;\n \"webkittransitionend\": Event;\n \"wheel\": WheelEvent;\n}\n\ninterface GlobalEventHandlers {\n /**\n * Fires when the user aborts the download.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/abort_event)\n */\n onabort: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationcancel_event) */\n onanimationcancel: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event) */\n onanimationend: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event) */\n onanimationiteration: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event) */\n onanimationstart: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/auxclick_event) */\n onauxclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/beforeinput_event) */\n onbeforeinput: ((this: GlobalEventHandlers, ev: InputEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/beforetoggle_event) */\n onbeforetoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Fires when the object loses the input focus.\n * @param ev The focus event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/blur_event)\n */\n onblur: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/cancel_event) */\n oncancel: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when playback is possible, but would require further buffering.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplay_event)\n */\n oncanplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplaythrough_event) */\n oncanplaythrough: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Fires when the contents of the object or selection have changed.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/change_event)\n */\n onchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Fires when the user clicks the left mouse button on the object\n * @param ev The mouse event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/click_event)\n */\n onclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close_event) */\n onclose: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/webglcontextlost_event) */\n oncontextlost: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Fires when the user clicks the right mouse button in the client area, opening the context menu.\n * @param ev The mouse event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/contextmenu_event)\n */\n oncontextmenu: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/contextrestored_event) */\n oncontextrestored: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/copy_event) */\n oncopy: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/cuechange_event) */\n oncuechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/cut_event) */\n oncut: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;\n /**\n * Fires when the user double-clicks the object.\n * @param ev The mouse event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/dblclick_event)\n */\n ondblclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /**\n * Fires on the source object continuously during a drag operation.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drag_event)\n */\n ondrag: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;\n /**\n * Fires on the source object when the user releases the mouse at the close of a drag operation.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragend_event)\n */\n ondragend: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;\n /**\n * Fires on the target element when the user drags the object to a valid drop target.\n * @param ev The drag event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragenter_event)\n */\n ondragenter: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;\n /**\n * Fires on the target object when the user moves the mouse out of a valid drop target during a drag operation.\n * @param ev The drag event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragleave_event)\n */\n ondragleave: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;\n /**\n * Fires on the target element continuously while the user drags the object over a valid drop target.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragover_event)\n */\n ondragover: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;\n /**\n * Fires on the source object when the user starts to drag a text selection or selected object.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragstart_event)\n */\n ondragstart: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drop_event) */\n ondrop: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;\n /**\n * Occurs when the duration attribute is updated.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/durationchange_event)\n */\n ondurationchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when the media element is reset to its initial state.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/emptied_event)\n */\n onemptied: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when the end of playback is reached.\n * @param ev The event\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ended_event)\n */\n onended: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Fires when an error occurs during object loading.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/error_event)\n */\n onerror: OnErrorEventHandler;\n /**\n * Fires when the object receives focus.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/focus_event)\n */\n onfocus: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/formdata_event) */\n onformdata: ((this: GlobalEventHandlers, ev: FormDataEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/gotpointercapture_event) */\n ongotpointercapture: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/input_event) */\n oninput: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/invalid_event) */\n oninvalid: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Fires when the user presses a key.\n * @param ev The keyboard event\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keydown_event)\n */\n onkeydown: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;\n /**\n * Fires when the user presses an alphanumeric key.\n * @param ev The event.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keypress_event)\n */\n onkeypress: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;\n /**\n * Fires when the user releases a key.\n * @param ev The keyboard event\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keyup_event)\n */\n onkeyup: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;\n /**\n * Fires immediately after the browser loads the object.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGElement/load_event)\n */\n onload: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when media data is loaded at the current playback position.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadeddata_event)\n */\n onloadeddata: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when the duration and dimensions of the media have been determined.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadedmetadata_event)\n */\n onloadedmetadata: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when Internet Explorer begins looking for media data.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadstart_event)\n */\n onloadstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/lostpointercapture_event) */\n onlostpointercapture: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /**\n * Fires when the user clicks the object with either mouse button.\n * @param ev The mouse event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousedown_event)\n */\n onmousedown: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseenter_event) */\n onmouseenter: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseleave_event) */\n onmouseleave: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /**\n * Fires when the user moves the mouse over the object.\n * @param ev The mouse event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousemove_event)\n */\n onmousemove: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /**\n * Fires when the user moves the mouse pointer outside the boundaries of the object.\n * @param ev The mouse event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseout_event)\n */\n onmouseout: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /**\n * Fires when the user moves the mouse pointer into the object.\n * @param ev The mouse event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseover_event)\n */\n onmouseover: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /**\n * Fires when the user releases a mouse button while the mouse is over the object.\n * @param ev The mouse event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseup_event)\n */\n onmouseup: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/paste_event) */\n onpaste: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;\n /**\n * Occurs when playback is paused.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/pause_event)\n */\n onpause: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when the play method is requested.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/play_event)\n */\n onplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when the audio or video has started playing.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/playing_event)\n */\n onplaying: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointercancel_event) */\n onpointercancel: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerdown_event) */\n onpointerdown: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerenter_event) */\n onpointerenter: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerleave_event) */\n onpointerleave: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointermove_event) */\n onpointermove: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerout_event) */\n onpointerout: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerover_event) */\n onpointerover: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerup_event) */\n onpointerup: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;\n /**\n * Occurs to indicate progress while downloading media data.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/progress_event)\n */\n onprogress: ((this: GlobalEventHandlers, ev: ProgressEvent) => any) | null;\n /**\n * Occurs when the playback rate is increased or decreased.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ratechange_event)\n */\n onratechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Fires when the user resets a form.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reset_event)\n */\n onreset: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/resize_event) */\n onresize: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;\n /**\n * Fires when the user repositions the scroll box in the scroll bar on the object.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scroll_event)\n */\n onscroll: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scrollend_event) */\n onscrollend: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/securitypolicyviolation_event) */\n onsecuritypolicyviolation: ((this: GlobalEventHandlers, ev: SecurityPolicyViolationEvent) => any) | null;\n /**\n * Occurs when the seek operation ends.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeked_event)\n */\n onseeked: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when the current playback position is moved.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeking_event)\n */\n onseeking: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Fires when the current selection changes.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/select_event)\n */\n onselect: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/selectionchange_event) */\n onselectionchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/selectstart_event) */\n onselectstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/slotchange_event) */\n onslotchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when the download has stopped.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/stalled_event)\n */\n onstalled: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/submit_event) */\n onsubmit: ((this: GlobalEventHandlers, ev: SubmitEvent) => any) | null;\n /**\n * Occurs if the load operation has been intentionally halted.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/suspend_event)\n */\n onsuspend: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs to indicate the current playback position.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/timeupdate_event)\n */\n ontimeupdate: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement/toggle_event) */\n ontoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchcancel_event) */\n ontouchcancel?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchend_event) */\n ontouchend?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchmove_event) */\n ontouchmove?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchstart_event) */\n ontouchstart?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitioncancel_event) */\n ontransitioncancel: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event) */\n ontransitionend: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionrun_event) */\n ontransitionrun: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionstart_event) */\n ontransitionstart: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;\n /**\n * Occurs when the volume is changed, or playback is muted or unmuted.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/volumechange_event)\n */\n onvolumechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * Occurs when playback stops because the next frame of a video resource is not available.\n * @param ev The event.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/waiting_event)\n */\n onwaiting: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * @deprecated This is a legacy alias of `onanimationend`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event)\n */\n onwebkitanimationend: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * @deprecated This is a legacy alias of `onanimationiteration`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event)\n */\n onwebkitanimationiteration: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * @deprecated This is a legacy alias of `onanimationstart`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event)\n */\n onwebkitanimationstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /**\n * @deprecated This is a legacy alias of `ontransitionend`.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event)\n */\n onwebkittransitionend: ((this: GlobalEventHandlers, ev: Event) => any) | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/wheel_event) */\n onwheel: ((this: GlobalEventHandlers, ev: WheelEvent) => any) | null;\n addEventListener<K extends keyof GlobalEventHandlersEventMap>(type: K, listener: (this: GlobalEventHandlers, ev: GlobalEventHandlersEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof GlobalEventHandlersEventMap>(type: K, listener: (this: GlobalEventHandlers, ev: GlobalEventHandlersEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection) */\ninterface HTMLAllCollection {\n /**\n * Returns the number of elements in the collection.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/length)\n */\n readonly length: number;\n /**\n * Returns the item with index index from the collection (determined by tree order).\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/item)\n */\n item(nameOrIndex?: string): HTMLCollection | Element | null;\n /**\n * Returns the item with ID or name name from the collection.\n *\n * If there are multiple matching items, then an HTMLCollection object containing all those elements is returned.\n *\n * Only button, form, iframe, input, map, meta, object, select, and textarea elements can have a name for the purpose of this method; their name is given by the value of their name attribute.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/namedItem)\n */\n namedItem(name: string): HTMLCollection | Element | null;\n [index: number]: Element;\n}\n\ndeclare var HTMLAllCollection: {\n prototype: HTMLAllCollection;\n new(): HTMLAllCollection;\n};\n\n/**\n * Hyperlink elements and provides special properties and methods (beyond those of the regular HTMLElement object interface that they inherit from) for manipulating the layout and presentation of such elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement)\n */\ninterface HTMLAnchorElement extends HTMLElement, HTMLHyperlinkElementUtils {\n /**\n * Sets or retrieves the character set used to encode the object.\n * @deprecated\n */\n charset: string;\n /**\n * Sets or retrieves the coordinates of the object.\n * @deprecated\n */\n coords: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/download) */\n download: string;\n /**\n * Sets or retrieves the language code of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hreflang)\n */\n hreflang: string;\n /**\n * Sets or retrieves the shape of the object.\n * @deprecated\n */\n name: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/ping) */\n ping: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/referrerPolicy) */\n referrerPolicy: string;\n /**\n * Sets or retrieves the relationship between the object and the destination of the link.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/rel)\n */\n rel: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/relList) */\n readonly relList: DOMTokenList;\n /**\n * Sets or retrieves the relationship between the object and the destination of the link.\n * @deprecated\n */\n rev: string;\n /**\n * Sets or retrieves the shape of the object.\n * @deprecated\n */\n shape: string;\n /**\n * Sets or retrieves the window or frame at which to target content.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/target)\n */\n target: string;\n /**\n * Retrieves or sets the text of the object as a string.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/text)\n */\n text: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/type) */\n type: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAnchorElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAnchorElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLAnchorElement: {\n prototype: HTMLAnchorElement;\n new(): HTMLAnchorElement;\n};\n\n/**\n * Provides special properties and methods (beyond those of the regular object HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <area> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement)\n */\ninterface HTMLAreaElement extends HTMLElement, HTMLHyperlinkElementUtils {\n /** Sets or retrieves a text alternative to the graphic. */\n alt: string;\n /** Sets or retrieves the coordinates of the object. */\n coords: string;\n download: string;\n /**\n * Sets or gets whether clicks in this region cause action.\n * @deprecated\n */\n noHref: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/ping) */\n ping: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/referrerPolicy) */\n referrerPolicy: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/rel) */\n rel: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/relList) */\n readonly relList: DOMTokenList;\n /** Sets or retrieves the shape of the object. */\n shape: string;\n /**\n * Sets or retrieves the window or frame at which to target content.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/target)\n */\n target: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLAreaElement: {\n prototype: HTMLAreaElement;\n new(): HTMLAreaElement;\n};\n\n/**\n * Provides access to the properties of <audio> elements, as well as methods to manipulate them. It derives from the HTMLMediaElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAudioElement)\n */\ninterface HTMLAudioElement extends HTMLMediaElement {\n addEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLAudioElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLAudioElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLAudioElement: {\n prototype: HTMLAudioElement;\n new(): HTMLAudioElement;\n};\n\n/**\n * A HTML line break element (<br>). It inherits from HTMLElement.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBRElement)\n */\ninterface HTMLBRElement extends HTMLElement {\n /**\n * Sets or retrieves the side on which floating objects are not to be positioned when any IHTMLBlockElement is inserted into the document.\n * @deprecated\n */\n clear: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLBRElement: {\n prototype: HTMLBRElement;\n new(): HTMLBRElement;\n};\n\n/**\n * Contains the base URI for a document. This object inherits all of the properties and methods as described in the HTMLElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement)\n */\ninterface HTMLBaseElement extends HTMLElement {\n /** Gets or sets the baseline URL on which relative links are based. */\n href: string;\n /**\n * Sets or retrieves the window or frame at which to target content.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/target)\n */\n target: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBaseElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBaseElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLBaseElement: {\n prototype: HTMLBaseElement;\n new(): HTMLBaseElement;\n};\n\ninterface HTMLBodyElementEventMap extends HTMLElementEventMap, WindowEventHandlersEventMap {\n}\n\n/**\n * Provides special properties (beyond those inherited from the regular HTMLElement interface) for manipulating <body> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement)\n */\ninterface HTMLBodyElement extends HTMLElement, WindowEventHandlers {\n /** @deprecated */\n aLink: string;\n /** @deprecated */\n background: string;\n /** @deprecated */\n bgColor: string;\n /** @deprecated */\n link: string;\n /** @deprecated */\n text: string;\n /** @deprecated */\n vLink: string;\n addEventListener<K extends keyof HTMLBodyElementEventMap>(type: K, listener: (this: HTMLBodyElement, ev: HTMLBodyElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLBodyElementEventMap>(type: K, listener: (this: HTMLBodyElement, ev: HTMLBodyElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLBodyElement: {\n prototype: HTMLBodyElement;\n new(): HTMLBodyElement;\n};\n\n/**\n * Provides properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <button> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement)\n */\ninterface HTMLButtonElement extends HTMLElement, PopoverInvokerElement {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/disabled) */\n disabled: boolean;\n /** Retrieves a reference to the form that the object is embedded in. */\n readonly form: HTMLFormElement | null;\n /** Overrides the action attribute (where the data on a form is sent) on the parent form element. */\n formAction: string;\n /** Used to override the encoding (formEnctype attribute) specified on the form element. */\n formEnctype: string;\n /** Overrides the submit method attribute previously specified on a form element. */\n formMethod: string;\n /** Overrides any validation or required attributes on a form or form elements to allow it to be submitted without validation. This can be used to create a \"save draft\"-type submit option. */\n formNoValidate: boolean;\n /** Overrides the target attribute on a form element. */\n formTarget: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/labels) */\n readonly labels: NodeListOf<HTMLLabelElement>;\n /** Sets or retrieves the name of the object. */\n name: string;\n /**\n * Gets the classification and default behavior of the button.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/type)\n */\n type: \"submit\" | \"reset\" | \"button\";\n /** Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as \"this is a required field\". The result is that the user sees validation messages without actually submitting. */\n readonly validationMessage: string;\n /** Returns a ValidityState object that represents the validity states of an element. */\n readonly validity: ValidityState;\n /** Sets or retrieves the default or selected value of the control. */\n value: string;\n /** Returns whether an element will successfully validate based on forms validation rules and constraints. */\n readonly willValidate: boolean;\n /** Returns whether a form will validate when it is submitted, without having to submit it. */\n checkValidity(): boolean;\n reportValidity(): boolean;\n /**\n * Sets a custom error message that is displayed when a form is submitted.\n * @param error Sets a custom error message that is displayed when a form is submitted.\n */\n setCustomValidity(error: string): void;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLButtonElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLButtonElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLButtonElement: {\n prototype: HTMLButtonElement;\n new(): HTMLButtonElement;\n};\n\n/**\n * Provides properties and methods for manipulating the layout and presentation of <canvas> elements. The HTMLCanvasElement interface also inherits the properties and methods of the HTMLElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement)\n */\ninterface HTMLCanvasElement extends HTMLElement {\n /**\n * Gets or sets the height of a canvas element on a document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/height)\n */\n height: number;\n /**\n * Gets or sets the width of a canvas element on a document.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/width)\n */\n width: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/captureStream) */\n captureStream(frameRequestRate?: number): MediaStream;\n /**\n * Returns an object that provides methods and properties for drawing and manipulating images and graphics on a canvas element in a document. A context object includes information about colors, line widths, fonts, and other graphic parameters that can be drawn on a canvas.\n * @param contextId The identifier (ID) of the type of canvas to create. Internet Explorer 9 and Internet Explorer 10 support only a 2-D context using canvas.getContext(\"2d\"); IE11 Preview also supports 3-D or WebGL context using canvas.getContext(\"experimental-webgl\");\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/getContext)\n */\n getContext(contextId: \"2d\", options?: CanvasRenderingContext2DSettings): CanvasRenderingContext2D | null;\n getContext(contextId: \"bitmaprenderer\", options?: ImageBitmapRenderingContextSettings): ImageBitmapRenderingContext | null;\n getContext(contextId: \"webgl\", options?: WebGLContextAttributes): WebGLRenderingContext | null;\n getContext(contextId: \"webgl2\", options?: WebGLContextAttributes): WebGL2RenderingContext | null;\n getContext(contextId: string, options?: any): RenderingContext | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/toBlob) */\n toBlob(callback: BlobCallback, type?: string, quality?: any): void;\n /**\n * Returns the content of the current canvas as an image that you can use as a source for another canvas or an HTML element.\n * @param type The standard MIME type for the image format to return. If you do not specify this parameter, the default value is a PNG format image.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/toDataURL)\n */\n toDataURL(type?: string, quality?: any): string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/transferControlToOffscreen) */\n transferControlToOffscreen(): OffscreenCanvas;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLCanvasElement: {\n prototype: HTMLCanvasElement;\n new(): HTMLCanvasElement;\n};\n\n/**\n * A generic collection (array-like object similar to arguments) of elements (in document order) and offers methods and properties for selecting from the list.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection)\n */\ninterface HTMLCollectionBase {\n /**\n * Sets or retrieves the number of objects in a collection.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/length)\n */\n readonly length: number;\n /**\n * Retrieves an object from various collections.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/item)\n */\n item(index: number): Element | null;\n [index: number]: Element;\n}\n\ninterface HTMLCollection extends HTMLCollectionBase {\n /**\n * Retrieves a select object or an object from an options collection.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/namedItem)\n */\n namedItem(name: string): Element | null;\n}\n\ndeclare var HTMLCollection: {\n prototype: HTMLCollection;\n new(): HTMLCollection;\n};\n\ninterface HTMLCollectionOf<T extends Element> extends HTMLCollectionBase {\n item(index: number): T | null;\n namedItem(name: string): T | null;\n [index: number]: T;\n}\n\n/**\n * Provides special properties (beyond those of the regular HTMLElement interface it also has available to it by inheritance) for manipulating definition list (<dl>) elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDListElement)\n */\ninterface HTMLDListElement extends HTMLElement {\n /** @deprecated */\n compact: boolean;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLDListElement: {\n prototype: HTMLDListElement;\n new(): HTMLDListElement;\n};\n\n/**\n * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <data> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataElement)\n */\ninterface HTMLDataElement extends HTMLElement {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataElement/value) */\n value: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLDataElement: {\n prototype: HTMLDataElement;\n new(): HTMLDataElement;\n};\n\n/**\n * Provides special properties (beyond the HTMLElement object interface it also has available to it by inheritance) to manipulate <datalist> elements and their content.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataListElement)\n */\ninterface HTMLDataListElement extends HTMLElement {\n /** Returns an HTMLCollection of the option elements of the datalist element. */\n readonly options: HTMLCollectionOf<HTMLOptionElement>;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLDataListElement: {\n prototype: HTMLDataListElement;\n new(): HTMLDataListElement;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement) */\ninterface HTMLDetailsElement extends HTMLElement {\n name: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement/open) */\n open: boolean;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDetailsElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDetailsElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLDetailsElement: {\n prototype: HTMLDetailsElement;\n new(): HTMLDetailsElement;\n};\n\n/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement) */\ninterface HTMLDialogElement extends HTMLElement {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/open) */\n open: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/returnValue) */\n returnValue: string;\n /**\n * Closes the dialog element.\n *\n * The argument, if provided, provides a return value.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close)\n */\n close(returnValue?: string): void;\n /**\n * Displays the dialog element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/show)\n */\n show(): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/showModal) */\n showModal(): void;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDialogElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDialogElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLDialogElement: {\n prototype: HTMLDialogElement;\n new(): HTMLDialogElement;\n};\n\n/** @deprecated */\ninterface HTMLDirectoryElement extends HTMLElement {\n /** @deprecated */\n compact: boolean;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDirectoryElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDirectoryElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\n/** @deprecated */\ndeclare var HTMLDirectoryElement: {\n prototype: HTMLDirectoryElement;\n new(): HTMLDirectoryElement;\n};\n\n/**\n * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <div> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDivElement)\n */\ninterface HTMLDivElement extends HTMLElement {\n /**\n * Sets or retrieves how the object is aligned with adjacent text.\n * @deprecated\n */\n align: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLDivElement: {\n prototype: HTMLDivElement;\n new(): HTMLDivElement;\n};\n\n/** @deprecated use Document */\ninterface HTMLDocument extends Document {\n addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: HTMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: HTMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\n/** @deprecated */\ndeclare var HTMLDocument: {\n prototype: HTMLDocument;\n new(): HTMLDocument;\n};\n\ninterface HTMLElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap {\n}\n\n/**\n * Any HTML element. Some elements directly implement this interface, while others implement it via an interface that inherits it.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement)\n */\ninterface HTMLElement extends Element, ElementCSSInlineStyle, ElementContentEditable, GlobalEventHandlers, HTMLOrSVGElement {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKey) */\n accessKey: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKeyLabel) */\n readonly accessKeyLabel: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/autocapitalize) */\n autocapitalize: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dir) */\n dir: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/draggable) */\n draggable: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/hidden) */\n hidden: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/inert) */\n inert: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/innerText) */\n innerText: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/lang) */\n lang: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetHeight) */\n readonly offsetHeight: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetLeft) */\n readonly offsetLeft: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetParent) */\n readonly offsetParent: Element | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetTop) */\n readonly offsetTop: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetWidth) */\n readonly offsetWidth: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/outerText) */\n outerText: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/popover) */\n popover: string | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/spellcheck) */\n spellcheck: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/title) */\n title: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/translate) */\n translate: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/attachInternals) */\n attachInternals(): ElementInternals;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/click) */\n click(): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/hidePopover) */\n hidePopover(): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/showPopover) */\n showPopover(): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/togglePopover) */\n togglePopover(force?: boolean): boolean;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLElement: {\n prototype: HTMLElement;\n new(): HTMLElement;\n};\n\n/**\n * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <embed> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLEmbedElement)\n */\ninterface HTMLEmbedElement extends HTMLElement {\n /** @deprecated */\n align: string;\n /**\n * Sets or retrieves the height of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLEmbedElement/height)\n */\n height: string;\n /**\n * Sets or retrieves the name of the object.\n * @deprecated\n */\n name: string;\n /**\n * Sets or retrieves a URL to be loaded by the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLEmbedElement/src)\n */\n src: string;\n type: string;\n /**\n * Sets or retrieves the width of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLEmbedElement/width)\n */\n width: string;\n getSVGDocument(): Document | null;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLEmbedElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLEmbedElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLEmbedElement: {\n prototype: HTMLEmbedElement;\n new(): HTMLEmbedElement;\n};\n\n/**\n * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <fieldset> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement)\n */\ninterface HTMLFieldSetElement extends HTMLElement {\n disabled: boolean;\n /** Returns an HTMLCollection of the form controls in the element. */\n readonly elements: HTMLCollection;\n /** Retrieves a reference to the form that the object is embedded in. */\n readonly form: HTMLFormElement | null;\n name: string;\n /** Returns the string \"fieldset\". */\n readonly type: string;\n /** Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as \"this is a required field\". The result is that the user sees validation messages without actually submitting. */\n readonly validationMessage: string;\n /** Returns a ValidityState object that represents the validity states of an element. */\n readonly validity: ValidityState;\n /** Returns whether an element will successfully validate based on forms validation rules and constraints. */\n readonly willValidate: boolean;\n /** Returns whether a form will validate when it is submitted, without having to submit it. */\n checkValidity(): boolean;\n reportValidity(): boolean;\n /**\n * Sets a custom error message that is displayed when a form is submitted.\n * @param error Sets a custom error message that is displayed when a form is submitted.\n */\n setCustomValidity(error: string): void;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFieldSetElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFieldSetElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLFieldSetElement: {\n prototype: HTMLFieldSetElement;\n new(): HTMLFieldSetElement;\n};\n\n/**\n * Implements the document object model (DOM) representation of the font element. The HTML Font Element <font> defines the font size, font face and color of text.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement)\n */\ninterface HTMLFontElement extends HTMLElement {\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/color)\n */\n color: string;\n /**\n * Sets or retrieves the current typeface family.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/face)\n */\n face: string;\n /**\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/size)\n */\n size: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFontElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFontElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\n/** @deprecated */\ndeclare var HTMLFontElement: {\n prototype: HTMLFontElement;\n new(): HTMLFontElement;\n};\n\n/**\n * A collection of HTML form control elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormControlsCollection)\n */\ninterface HTMLFormControlsCollection extends HTMLCollectionBase {\n /**\n * Returns the item with ID or name name from the collection.\n *\n * If there are multiple matching items, then a RadioNodeList object containing all those elements is returned.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormControlsCollection/namedItem)\n */\n namedItem(name: string): RadioNodeList | Element | null;\n}\n\ndeclare var HTMLFormControlsCollection: {\n prototype: HTMLFormControlsCollection;\n new(): HTMLFormControlsCollection;\n};\n\n/**\n * A <form> element in the DOM; it allows access to and in some cases modification of aspects of the form, as well as access to its component elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement)\n */\ninterface HTMLFormElement extends HTMLElement {\n /**\n * Sets or retrieves a list of character encodings for input data that must be accepted by the server processing the form.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/acceptCharset)\n */\n acceptCharset: string;\n /**\n * Sets or retrieves the URL to which the form content is sent for processing.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/action)\n */\n action: string;\n /** Specifies whether autocomplete is applied to an editable text field. */\n autocomplete: AutoFillBase;\n /**\n * Retrieves a collection, in source order, of all controls in a given form.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/elements)\n */\n readonly elements: HTMLFormControlsCollection;\n /**\n * Sets or retrieves the MIME encoding for the form.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/encoding)\n */\n encoding: string;\n /**\n * Sets or retrieves the encoding type for the form.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/enctype)\n */\n enctype: string;\n /**\n * Sets or retrieves the number of objects in a collection.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/length)\n */\n readonly length: number;\n /**\n * Sets or retrieves how to send the form data to the server.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/method)\n */\n method: string;\n /**\n * Sets or retrieves the name of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/name)\n */\n name: string;\n /** Designates a form that is not validated when submitted. */\n noValidate: boolean;\n rel: string;\n readonly relList: DOMTokenList;\n /**\n * Sets or retrieves the window or frame at which to target content.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/target)\n */\n target: string;\n /** Returns whether a form will validate when it is submitted, without having to submit it. */\n checkValidity(): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reportValidity) */\n reportValidity(): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/requestSubmit) */\n requestSubmit(submitter?: HTMLElement | null): void;\n /**\n * Fires when the user resets a form.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reset)\n */\n reset(): void;\n /**\n * Fires when a FORM is about to be submitted.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/submit)\n */\n submit(): void;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFormElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFormElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n [index: number]: Element;\n [name: string]: any;\n}\n\ndeclare var HTMLFormElement: {\n prototype: HTMLFormElement;\n new(): HTMLFormElement;\n};\n\n/** @deprecated */\ninterface HTMLFrameElement extends HTMLElement {\n /**\n * Retrieves the document object of the page or frame.\n * @deprecated\n */\n readonly contentDocument: Document | null;\n /**\n * Retrieves the object of the specified.\n * @deprecated\n */\n readonly contentWindow: WindowProxy | null;\n /**\n * Sets or retrieves whether to display a border for the frame.\n * @deprecated\n */\n frameBorder: string;\n /**\n * Sets or retrieves a URI to a long description of the object.\n * @deprecated\n */\n longDesc: string;\n /**\n * Sets or retrieves the top and bottom margin heights before displaying the text in a frame.\n * @deprecated\n */\n marginHeight: string;\n /**\n * Sets or retrieves the left and right margin widths before displaying the text in a frame.\n * @deprecated\n */\n marginWidth: string;\n /**\n * Sets or retrieves the frame name.\n * @deprecated\n */\n name: string;\n /**\n * Sets or retrieves whether the user can resize the frame.\n * @deprecated\n */\n noResize: boolean;\n /**\n * Sets or retrieves whether the frame can be scrolled.\n * @deprecated\n */\n scrolling: string;\n /**\n * Sets or retrieves a URL to be loaded by the object.\n * @deprecated\n */\n src: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\n/** @deprecated */\ndeclare var HTMLFrameElement: {\n prototype: HTMLFrameElement;\n new(): HTMLFrameElement;\n};\n\ninterface HTMLFrameSetElementEventMap extends HTMLElementEventMap, WindowEventHandlersEventMap {\n}\n\n/**\n * Provides special properties (beyond those of the regular HTMLElement interface they also inherit) for manipulating <frameset> elements.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameSetElement)\n */\ninterface HTMLFrameSetElement extends HTMLElement, WindowEventHandlers {\n /**\n * Sets or retrieves the frame widths of the object.\n * @deprecated\n */\n cols: string;\n /**\n * Sets or retrieves the frame heights of the object.\n * @deprecated\n */\n rows: string;\n addEventListener<K extends keyof HTMLFrameSetElementEventMap>(type: K, listener: (this: HTMLFrameSetElement, ev: HTMLFrameSetElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLFrameSetElementEventMap>(type: K, listener: (this: HTMLFrameSetElement, ev: HTMLFrameSetElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\n/** @deprecated */\ndeclare var HTMLFrameSetElement: {\n prototype: HTMLFrameSetElement;\n new(): HTMLFrameSetElement;\n};\n\n/**\n * Provides special properties (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating <hr> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHRElement)\n */\ninterface HTMLHRElement extends HTMLElement {\n /**\n * Sets or retrieves how the object is aligned with adjacent text.\n * @deprecated\n */\n align: string;\n /** @deprecated */\n color: string;\n /**\n * Sets or retrieves whether the horizontal rule is drawn with 3-D shading.\n * @deprecated\n */\n noShade: boolean;\n /** @deprecated */\n size: string;\n /**\n * Sets or retrieves the width of the object.\n * @deprecated\n */\n width: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLHRElement: {\n prototype: HTMLHRElement;\n new(): HTMLHRElement;\n};\n\n/**\n * Contains the descriptive information, or metadata, for a document. This object inherits all of the properties and methods described in the HTMLElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadElement)\n */\ninterface HTMLHeadElement extends HTMLElement {\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLHeadElement: {\n prototype: HTMLHeadElement;\n new(): HTMLHeadElement;\n};\n\n/**\n * The different heading elements. It inherits methods and properties from the HTMLElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadingElement)\n */\ninterface HTMLHeadingElement extends HTMLElement {\n /**\n * Sets or retrieves a value that indicates the table alignment.\n * @deprecated\n */\n align: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadingElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadingElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLHeadingElement: {\n prototype: HTMLHeadingElement;\n new(): HTMLHeadingElement;\n};\n\n/**\n * Serves as the root node for a given HTML document. This object inherits the properties and methods described in the HTMLElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHtmlElement)\n */\ninterface HTMLHtmlElement extends HTMLElement {\n /**\n * Sets or retrieves the DTD version that governs the current document.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHtmlElement/version)\n */\n version: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHtmlElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHtmlElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLHtmlElement: {\n prototype: HTMLHtmlElement;\n new(): HTMLHtmlElement;\n};\n\ninterface HTMLHyperlinkElementUtils {\n /**\n * Returns the hyperlink's URL's fragment (includes leading \"#\" if non-empty).\n *\n * Can be set, to change the URL's fragment (ignores leading \"#\").\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hash)\n */\n hash: string;\n /**\n * Returns the hyperlink's URL's host and port (if different from the default port for the scheme).\n *\n * Can be set, to change the URL's host and port.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/host)\n */\n host: string;\n /**\n * Returns the hyperlink's URL's host.\n *\n * Can be set, to change the URL's host.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hostname)\n */\n hostname: string;\n /**\n * Returns the hyperlink's URL.\n *\n * Can be set, to change the URL.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/href)\n */\n href: string;\n toString(): string;\n /**\n * Returns the hyperlink's URL's origin.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/origin)\n */\n readonly origin: string;\n /**\n * Returns the hyperlink's URL's password.\n *\n * Can be set, to change the URL's password.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/password)\n */\n password: string;\n /**\n * Returns the hyperlink's URL's path.\n *\n * Can be set, to change the URL's path.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/pathname)\n */\n pathname: string;\n /**\n * Returns the hyperlink's URL's port.\n *\n * Can be set, to change the URL's port.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/port)\n */\n port: string;\n /**\n * Returns the hyperlink's URL's scheme.\n *\n * Can be set, to change the URL's scheme.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/protocol)\n */\n protocol: string;\n /**\n * Returns the hyperlink's URL's query (includes leading \"?\" if non-empty).\n *\n * Can be set, to change the URL's query (ignores leading \"?\").\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/search)\n */\n search: string;\n /**\n * Returns the hyperlink's URL's username.\n *\n * Can be set, to change the URL's username.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/username)\n */\n username: string;\n}\n\n/**\n * Provides special properties and methods (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of inline frame elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement)\n */\ninterface HTMLIFrameElement extends HTMLElement {\n /**\n * Sets or retrieves how the object is aligned with adjacent text.\n * @deprecated\n */\n align: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/allow) */\n allow: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/allowFullscreen) */\n allowFullscreen: boolean;\n /**\n * Retrieves the document object of the page or frame.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/contentDocument)\n */\n readonly contentDocument: Document | null;\n /**\n * Retrieves the object of the specified.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/contentWindow)\n */\n readonly contentWindow: WindowProxy | null;\n /**\n * Sets or retrieves whether to display a border for the frame.\n * @deprecated\n */\n frameBorder: string;\n /**\n * Sets or retrieves the height of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/height)\n */\n height: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/loading) */\n loading: string;\n /**\n * Sets or retrieves a URI to a long description of the object.\n * @deprecated\n */\n longDesc: string;\n /**\n * Sets or retrieves the top and bottom margin heights before displaying the text in a frame.\n * @deprecated\n */\n marginHeight: string;\n /**\n * Sets or retrieves the left and right margin widths before displaying the text in a frame.\n * @deprecated\n */\n marginWidth: string;\n /**\n * Sets or retrieves the frame name.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/name)\n */\n name: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/referrerPolicy) */\n referrerPolicy: ReferrerPolicy;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/sandbox) */\n readonly sandbox: DOMTokenList;\n /**\n * Sets or retrieves whether the frame can be scrolled.\n * @deprecated\n */\n scrolling: string;\n /**\n * Sets or retrieves a URL to be loaded by the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/src)\n */\n src: string;\n /**\n * Sets or retrives the content of the page that is to contain.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/srcdoc)\n */\n srcdoc: string;\n /**\n * Sets or retrieves the width of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/width)\n */\n width: string;\n getSVGDocument(): Document | null;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLIFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLIFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLIFrameElement: {\n prototype: HTMLIFrameElement;\n new(): HTMLIFrameElement;\n};\n\n/**\n * Provides special properties and methods for manipulating <img> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement)\n */\ninterface HTMLImageElement extends HTMLElement {\n /**\n * Sets or retrieves how the object is aligned with adjacent text.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/align)\n */\n align: string;\n /**\n * Sets or retrieves a text alternative to the graphic.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/alt)\n */\n alt: string;\n /**\n * Specifies the properties of a border drawn around an object.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/border)\n */\n border: string;\n /**\n * Retrieves whether the object is fully loaded.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/complete)\n */\n readonly complete: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/crossOrigin) */\n crossOrigin: string | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/currentSrc) */\n readonly currentSrc: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/decoding) */\n decoding: \"async\" | \"sync\" | \"auto\";\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/fetchPriority) */\n fetchPriority: string;\n /**\n * Sets or retrieves the height of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/height)\n */\n height: number;\n /**\n * Sets or retrieves the width of the border to draw around the object.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/hspace)\n */\n hspace: number;\n /**\n * Sets or retrieves whether the image is a server-side image map.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/isMap)\n */\n isMap: boolean;\n /**\n * Sets or retrieves the policy for loading image elements that are outside the viewport.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/loading)\n */\n loading: \"eager\" | \"lazy\";\n /**\n * Sets or retrieves a Uniform Resource Identifier (URI) to a long description of the object.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/longDesc)\n */\n longDesc: string;\n /** @deprecated */\n lowsrc: string;\n /**\n * Sets or retrieves the name of the object.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/name)\n */\n name: string;\n /**\n * The original height of the image resource before sizing.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/naturalHeight)\n */\n readonly naturalHeight: number;\n /**\n * The original width of the image resource before sizing.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/naturalWidth)\n */\n readonly naturalWidth: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/referrerPolicy) */\n referrerPolicy: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/sizes) */\n sizes: string;\n /**\n * The address or URL of the a media resource that is to be considered.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/src)\n */\n src: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/srcset) */\n srcset: string;\n /**\n * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/useMap)\n */\n useMap: string;\n /**\n * Sets or retrieves the vertical margin for the object.\n * @deprecated\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/vspace)\n */\n vspace: number;\n /**\n * Sets or retrieves the width of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/width)\n */\n width: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/x) */\n readonly x: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/y) */\n readonly y: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/decode) */\n decode(): Promise<void>;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLImageElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLImageElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLImageElement: {\n prototype: HTMLImageElement;\n new(): HTMLImageElement;\n};\n\n/**\n * Provides special properties and methods for manipulating the options, layout, and presentation of <input> elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement)\n */\ninterface HTMLInputElement extends HTMLElement, PopoverInvokerElement {\n /** Sets or retrieves a comma-separated list of content types. */\n accept: string;\n /**\n * Sets or retrieves how the object is aligned with adjacent text.\n * @deprecated\n */\n align: string;\n /** Sets or retrieves a text alternative to the graphic. */\n alt: string;\n /** Specifies whether autocomplete is applied to an editable text field. */\n autocomplete: AutoFill;\n capture: string;\n /** Sets or retrieves the state of the check box or radio button. */\n checked: boolean;\n /** Sets or retrieves the state of the check box or radio button. */\n defaultChecked: boolean;\n /** Sets or retrieves the initial contents of the object. */\n defaultValue: string;\n dirName: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/disabled) */\n disabled: boolean;\n /**\n * Returns a FileList object on a file type input object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/files)\n */\n files: FileList | null;\n /** Retrieves a reference to the form that the object is embedded in. */\n readonly form: HTMLFormElement | null;\n /** Overrides the action attribute (where the data on a form is sent) on the parent form element. */\n formAction: string;\n /** Used to override the encoding (formEnctype attribute) specified on the form element. */\n formEnctype: string;\n /** Overrides the submit method attribute previously specified on a form element. */\n formMethod: string;\n /** Overrides any validation or required attributes on a form or form elements to allow it to be submitted without validation. This can be used to create a \"save draft\"-type submit option. */\n formNoValidate: boolean;\n /** Overrides the target attribute on a form element. */\n formTarget: string;\n /** Sets or retrieves the height of the object. */\n height: number;\n /** When set, overrides the rendering of checkbox controls so that the current value is not visible. */\n indeterminate: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/labels) */\n readonly labels: NodeListOf<HTMLLabelElement> | null;\n /** Specifies the ID of a pre-defined datalist of options for an input element. */\n readonly list: HTMLDataListElement | null;\n /** Defines the maximum acceptable value for an input element with type=\"number\".When used with the min and step attributes, lets you control the range and increment (such as only even numbers) that the user can enter into an input field. */\n max: string;\n /** Sets or retrieves the maximum number of characters that the user can enter in a text control. */\n maxLength: number;\n /** Defines the minimum acceptable value for an input element with type=\"number\". When used with the max and step attributes, lets you control the range and increment (such as even numbers only) that the user can enter into an input field. */\n min: string;\n minLength: number;\n /**\n * Sets or retrieves the Boolean value indicating whether multiple items can be selected from a list.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/multiple)\n */\n multiple: boolean;\n /** Sets or retrieves the name of the object. */\n name: string;\n /** Gets or sets a string containing a regular expression that the user's input must match. */\n pattern: string;\n /** Gets or sets a text string that is displayed in an input field as a hint or prompt to users as the format or type of information they need to enter.The text appears in an input field until the user puts focus on the field. */\n placeholder: string;\n readOnly: boolean;\n /** When present, marks an element that can't be submitted without a value. */\n required: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/selectionDirection) */\n selectionDirection: \"forward\" | \"backward\" | \"none\" | null;\n /**\n * Gets or sets the end position or offset of a text selection.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/selectionEnd)\n */\n selectionEnd: number | null;\n /**\n * Gets or sets the starting position or offset of a text selection.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/selectionStart)\n */\n selectionStart: number | null;\n size: number;\n /** The address or URL of the a media resource that is to be considered. */\n src: string;\n /** Defines an increment or jump between values that you want to allow the user to enter. When used with the max and min attributes, lets you control the range and increment (for example, allow only even numbers) that the user can enter into an input field. */\n step: string;\n /**\n * Returns the content type of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/type)\n */\n type: string;\n /**\n * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.\n * @deprecated\n */\n useMap: string;\n /** Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as \"this is a required field\". The result is that the user sees validation messages without actually submitting. */\n readonly validationMessage: string;\n /** Returns a ValidityState object that represents the validity states of an element. */\n readonly validity: ValidityState;\n /** Returns the value of the data at the cursor's current position. */\n value: string;\n /** Returns a Date object representing the form control's value, if applicable; otherwise, returns null. Can be set, to change the value. Throws an \"InvalidStateError\" DOMException if the control isn't date- or time-based. */\n valueAsDate: Date | null;\n /** Returns the input field value as a number. */\n valueAsNumber: number;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/webkitEntries) */\n readonly webkitEntries: ReadonlyArray<FileSystemEntry>;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/webkitdirectory) */\n webkitdirectory: boolean;\n /** Sets or retrieves the width of the object. */\n width: number;\n /** Returns whether an element will successfully validate based on forms validation rules and constraints. */\n readonly willValidate: boolean;\n /**\n * Returns whether a form will validate when it is submitted, without having to submit it.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/checkValidity)\n */\n checkValidity(): boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/reportValidity) */\n reportValidity(): boolean;\n /**\n * Makes the selection equal to the current object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/select)\n */\n select(): void;\n /**\n * Sets a custom error message that is displayed when a form is submitted.\n * @param error Sets a custom error message that is displayed when a form is submitted.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setCustomValidity)\n */\n setCustomValidity(error: string): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setRangeText) */\n setRangeText(replacement: string): void;\n setRangeText(replacement: string, start: number, end: number, selectionMode?: SelectionMode): void;\n /**\n * Sets the start and end positions of a selection in a text field.\n * @param start The offset into the text field for the start of the selection.\n * @param end The offset into the text field for the end of the selection.\n * @param direction The direction in which the selection is performed.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setSelectionRange)\n */\n setSelectionRange(start: number | null, end: number | null, direction?: \"forward\" | \"backward\" | \"none\"): void;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/showPicker) */\n showPicker(): void;\n /**\n * Decrements a range input control's value by the value given by the Step attribute. If the optional parameter is used, it will decrement the input control's step value multiplied by the parameter's value.\n * @param n Value to decrement the value by.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/stepDown)\n */\n stepDown(n?: number): void;\n /**\n * Increments a range input control's value by the value given by the Step attribute. If the optional parameter is used, will increment the input control's value by that value.\n * @param n Value to increment the value by.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/stepUp)\n */\n stepUp(n?: number): void;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLInputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLInputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLInputElement: {\n prototype: HTMLInputElement;\n new(): HTMLInputElement;\n};\n\n/**\n * Exposes specific properties and methods (beyond those defined by regular HTMLElement interface it also has available to it by inheritance) for manipulating list elements.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLIElement)\n */\ninterface HTMLLIElement extends HTMLElement {\n /** @deprecated */\n type: string;\n /** Sets or retrieves the value of a list item. */\n value: number;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLIElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLIElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLLIElement: {\n prototype: HTMLLIElement;\n new(): HTMLLIElement;\n};\n\n/**\n * Gives access to properties specific to <label> elements. It inherits methods and properties from the base HTMLElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement)\n */\ninterface HTMLLabelElement extends HTMLElement {\n /**\n * Returns the form control that is associated with this element.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/control)\n */\n readonly control: HTMLElement | null;\n /**\n * Retrieves a reference to the form that the object is embedded in.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/form)\n */\n readonly form: HTMLFormElement | null;\n /**\n * Sets or retrieves the object to which the given label object is assigned.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/htmlFor)\n */\n htmlFor: string;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLabelElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLabelElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLLabelElement: {\n prototype: HTMLLabelElement;\n new(): HTMLLabelElement;\n};\n\n/**\n * The HTMLLegendElement is an interface allowing to access properties of the <legend> elements. It inherits properties and methods from the HTMLElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLegendElement)\n */\ninterface HTMLLegendElement extends HTMLElement {\n /** @deprecated */\n align: string;\n /** Retrieves a reference to the form that the object is embedded in. */\n readonly form: HTMLFormElement | null;\n addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLegendElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLegendElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var HTMLLegendElement: {\n prototype: HTMLLegendElement;\n new(): HTMLLegendElement;\n};\n\n/**\n * Reference information for external resources and the relationship of those resources to a document and vice-versa. This object inherits all of the properties and methods of the HTMLElement interface.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement)\n */\ninterface HTMLLinkElement extends HTMLElement, LinkStyle {\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/as) */\n as: string;\n /**\n * Sets or retrieves the character set used to encode the object.\n * @deprecated\n */\n charset: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/crossOrigin) */\n crossOrigin: string | null;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/disabled) */\n disabled: boolean;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/fetchPriority) */\n fetchPriority: string;\n /** Sets or retrieves a destination URL or an anchor point. */\n href: string;\n /**\n * Sets or retrieves the language code of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/hreflang)\n */\n hreflang: string;\n imageSizes: string;\n imageSrcset: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/integrity) */\n integrity: string;\n /** Sets or retrieves the media type. */\n media: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/referrerPolicy) */\n referrerPolicy: string;\n /**\n * Sets or retrieves the relationship between the object and the destination of the link.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/rel)\n */\n rel: string;\n /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/relList) */\n readonly relList: DOMTokenList;\n /**\n * Sets or retrieves the relationship between the object and the destination of the link.\n * @deprecated\n */\n rev: string;\n readonly sizes: DOMTokenList;\n /**\n * Sets or retrieves the window or frame at which to target content.\n * @deprecated\n */\n target: string;\n /**\n * Sets or retrieves the MIME type of the object.\n *\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/type)\n */\n type: string;\n addEventListener<K extends keyof HTMLElementEventMap>(t
|