@stencil/core 3.0.0-alpha.0 → 3.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/cli/index.cjs +4 -3
  2. package/cli/index.js +4 -3
  3. package/cli/package.json +1 -1
  4. package/compiler/lib.dom.d.ts +130 -185
  5. package/compiler/lib.dom.iterable.d.ts +1 -11
  6. package/compiler/lib.es2015.collection.d.ts +62 -1
  7. package/compiler/lib.es2015.proxy.d.ts +91 -2
  8. package/compiler/lib.es2017.intl.d.ts +16 -1
  9. package/compiler/lib.es2020.intl.d.ts +30 -5
  10. package/compiler/lib.es2021.intl.d.ts +11 -3
  11. package/compiler/lib.es2022.d.ts +1 -0
  12. package/compiler/lib.es2022.error.d.ts +2 -2
  13. package/compiler/lib.es2022.sharedmemory.d.ts +27 -0
  14. package/compiler/lib.es5.d.ts +13 -1
  15. package/compiler/lib.esnext.intl.d.ts +5 -1
  16. package/compiler/lib.webworker.d.ts +56 -29
  17. package/compiler/lib.webworker.iterable.d.ts +1 -1
  18. package/compiler/package.json +1 -1
  19. package/compiler/stencil.js +22807 -22740
  20. package/compiler/stencil.min.js +2 -2
  21. package/dependencies.json +2 -1
  22. package/dev-server/client/index.js +1 -1
  23. package/dev-server/client/package.json +1 -1
  24. package/dev-server/connector.html +2 -2
  25. package/dev-server/index.js +1 -1
  26. package/dev-server/package.json +1 -1
  27. package/dev-server/server-process.js +2 -2
  28. package/internal/app-data/package.json +1 -1
  29. package/internal/client/css-shim.js +1 -1
  30. package/internal/client/dom.js +1 -1
  31. package/internal/client/index.js +1 -1
  32. package/internal/client/package.json +1 -1
  33. package/internal/client/patch-browser.js +1 -1
  34. package/internal/client/patch-esm.js +1 -1
  35. package/internal/client/shadow-css.js +1 -1
  36. package/internal/hydrate/package.json +1 -1
  37. package/internal/package.json +1 -1
  38. package/internal/stencil-private.d.ts +1 -0
  39. package/internal/testing/package.json +1 -1
  40. package/mock-doc/index.cjs +1 -1
  41. package/mock-doc/index.js +1 -1
  42. package/mock-doc/package.json +1 -1
  43. package/package.json +4 -4
  44. package/screenshot/package.json +1 -1
  45. package/sys/node/index.js +3 -3
  46. package/sys/node/package.json +1 -1
  47. package/sys/node/worker.js +1 -1
  48. package/testing/index.js +597 -410
  49. package/testing/package.json +1 -1
  50. package/testing/puppeteer/puppeteer-element.d.ts +3 -3
@@ -590,6 +590,10 @@ interface IDBObjectStoreParameters {
590
590
  keyPath?: string | string[] | null;
591
591
  }
592
592
 
593
+ interface IDBTransactionOptions {
594
+ durability?: IDBTransactionDurability;
595
+ }
596
+
593
597
  interface IDBVersionChangeEventInit extends EventInit {
594
598
  newVersion?: number | null;
595
599
  oldVersion?: number;
@@ -721,19 +725,6 @@ interface LockOptions {
721
725
  steal?: boolean;
722
726
  }
723
727
 
724
- interface MIDIConnectionEventInit extends EventInit {
725
- port?: MIDIPort;
726
- }
727
-
728
- interface MIDIMessageEventInit extends EventInit {
729
- data?: Uint8Array;
730
- }
731
-
732
- interface MIDIOptions {
733
- software?: boolean;
734
- sysex?: boolean;
735
- }
736
-
737
728
  interface MediaCapabilitiesDecodingInfo extends MediaCapabilitiesInfo {
738
729
  configuration?: MediaDecodingConfiguration;
739
730
  }
@@ -1514,12 +1505,12 @@ interface RTCTransportStats extends RTCStats {
1514
1505
  tlsVersion?: string;
1515
1506
  }
1516
1507
 
1517
- interface ReadableStreamDefaultReadDoneResult {
1508
+ interface ReadableStreamReadDoneResult {
1518
1509
  done: true;
1519
1510
  value?: undefined;
1520
1511
  }
1521
1512
 
1522
- interface ReadableStreamDefaultReadValueResult<T> {
1513
+ interface ReadableStreamReadValueResult<T> {
1523
1514
  done: false;
1524
1515
  value: T;
1525
1516
  }
@@ -1815,6 +1806,19 @@ interface UnderlyingSource<R = any> {
1815
1806
  type?: undefined;
1816
1807
  }
1817
1808
 
1809
+ interface ValidityStateFlags {
1810
+ badInput?: boolean;
1811
+ customError?: boolean;
1812
+ patternMismatch?: boolean;
1813
+ rangeOverflow?: boolean;
1814
+ rangeUnderflow?: boolean;
1815
+ stepMismatch?: boolean;
1816
+ tooLong?: boolean;
1817
+ tooShort?: boolean;
1818
+ typeMismatch?: boolean;
1819
+ valueMissing?: boolean;
1820
+ }
1821
+
1818
1822
  interface VideoColorSpaceInit {
1819
1823
  fullRange?: boolean;
1820
1824
  matrix?: VideoMatrixCoefficients;
@@ -2191,6 +2195,7 @@ declare var AudioBufferSourceNode: {
2191
2195
  /** An audio-processing graph built from audio modules linked together, each represented by an AudioNode. */
2192
2196
  interface AudioContext extends BaseAudioContext {
2193
2197
  readonly baseLatency: number;
2198
+ readonly outputLatency: number;
2194
2199
  close(): Promise<void>;
2195
2200
  createMediaElementSource(mediaElement: HTMLMediaElement): MediaElementAudioSourceNode;
2196
2201
  createMediaStreamDestination(): MediaStreamAudioDestinationNode;
@@ -2567,7 +2572,7 @@ declare var CSSAnimation: {
2567
2572
 
2568
2573
  /** A single condition CSS at-rule, which consists of a condition and a statement block. It is a child of CSSGroupingRule. */
2569
2574
  interface CSSConditionRule extends CSSGroupingRule {
2570
- conditionText: string;
2575
+ readonly conditionText: string;
2571
2576
  }
2572
2577
 
2573
2578
  declare var CSSConditionRule: {
@@ -2853,7 +2858,6 @@ interface CSSStyleDeclaration {
2853
2858
  columns: string;
2854
2859
  contain: string;
2855
2860
  content: string;
2856
- contentVisibility: string;
2857
2861
  counterIncrement: string;
2858
2862
  counterReset: string;
2859
2863
  counterSet: string;
@@ -3227,6 +3231,8 @@ interface CSSStyleDeclaration {
3227
3231
  /** @deprecated This is a legacy alias of `perspectiveOrigin`. */
3228
3232
  webkitPerspectiveOrigin: string;
3229
3233
  webkitTextFillColor: string;
3234
+ /** @deprecated This is a legacy alias of `textSizeAdjust`. */
3235
+ webkitTextSizeAdjust: string;
3230
3236
  webkitTextStroke: string;
3231
3237
  webkitTextStrokeColor: string;
3232
3238
  webkitTextStrokeWidth: string;
@@ -3294,6 +3300,8 @@ interface CSSStyleSheet extends StyleSheet {
3294
3300
  insertRule(rule: string, index?: number): number;
3295
3301
  /** @deprecated */
3296
3302
  removeRule(index?: number): void;
3303
+ replace(text: string): Promise<CSSStyleSheet>;
3304
+ replaceSync(text: string): void;
3297
3305
  }
3298
3306
 
3299
3307
  declare var CSSStyleSheet: {
@@ -3777,6 +3785,7 @@ declare var CustomEvent: {
3777
3785
 
3778
3786
  /** An abnormal event (called an exception) which occurs as a result of calling a method or accessing a property of a web API. */
3779
3787
  interface DOMException extends Error {
3788
+ /** @deprecated */
3780
3789
  readonly code: number;
3781
3790
  readonly message: string;
3782
3791
  readonly name: string;
@@ -4521,8 +4530,6 @@ interface Document extends Node, DocumentAndElementEventHandlers, DocumentOrShad
4521
4530
  createEvent(eventInterface: "IDBVersionChangeEvent"): IDBVersionChangeEvent;
4522
4531
  createEvent(eventInterface: "InputEvent"): InputEvent;
4523
4532
  createEvent(eventInterface: "KeyboardEvent"): KeyboardEvent;
4524
- createEvent(eventInterface: "MIDIConnectionEvent"): MIDIConnectionEvent;
4525
- createEvent(eventInterface: "MIDIMessageEvent"): MIDIMessageEvent;
4526
4533
  createEvent(eventInterface: "MediaEncryptedEvent"): MediaEncryptedEvent;
4527
4534
  createEvent(eventInterface: "MediaKeyMessageEvent"): MediaKeyMessageEvent;
4528
4535
  createEvent(eventInterface: "MediaQueryListEvent"): MediaQueryListEvent;
@@ -4734,6 +4741,7 @@ interface DocumentOrShadowRoot {
4734
4741
  * 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.
4735
4742
  */
4736
4743
  readonly activeElement: Element | null;
4744
+ adoptedStyleSheets: CSSStyleSheet[];
4737
4745
  /** Returns document's fullscreen element. */
4738
4746
  readonly fullscreenElement: Element | null;
4739
4747
  readonly pictureInPictureElement: Element | null;
@@ -4981,14 +4989,24 @@ interface ElementInternals extends ARIAMixin {
4981
4989
  readonly labels: NodeList;
4982
4990
  /** Returns the ShadowRoot for internals's target element, if the target element is a shadow host, or null otherwise. */
4983
4991
  readonly shadowRoot: ShadowRoot | null;
4992
+ /** Returns the error message that would be shown to the user if internals's target element was to be checked for validity. */
4993
+ readonly validationMessage: string;
4994
+ /** Returns the ValidityState object for internals's target element. */
4995
+ readonly validity: ValidityState;
4984
4996
  /** Returns true if internals's target element will be validated when the form is submitted; false otherwise. */
4985
4997
  readonly willValidate: boolean;
4998
+ /** Returns true if internals's target element has no validity problems; false otherwise. Fires an invalid event at the element in the latter case. */
4999
+ checkValidity(): boolean;
5000
+ /** 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. */
5001
+ reportValidity(): boolean;
4986
5002
  /**
4987
5003
  * Sets both the state and submission value of internals's target element to value.
4988
5004
  *
4989
5005
  * If value is null, the element won't participate in form submission.
4990
5006
  */
4991
5007
  setFormValue(value: File | string | FormData | null, state?: File | string | FormData | null): void;
5008
+ /** 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. */
5009
+ setValidity(flags?: ValidityStateFlags, message?: string, anchor?: HTMLElement): void;
4992
5010
  }
4993
5011
 
4994
5012
  declare var ElementInternals: {
@@ -6072,7 +6090,6 @@ declare var HTMLBaseElement: {
6072
6090
  };
6073
6091
 
6074
6092
  interface HTMLBodyElementEventMap extends HTMLElementEventMap, WindowEventHandlersEventMap {
6075
- "orientationchange": Event;
6076
6093
  }
6077
6094
 
6078
6095
  /** Provides special properties (beyond those inherited from the regular HTMLElement interface) for manipulating <body> elements. */
@@ -6086,8 +6103,6 @@ interface HTMLBodyElement extends HTMLElement, WindowEventHandlers {
6086
6103
  /** @deprecated */
6087
6104
  link: string;
6088
6105
  /** @deprecated */
6089
- onorientationchange: ((this: HTMLBodyElement, ev: Event) => any) | null;
6090
- /** @deprecated */
6091
6106
  text: string;
6092
6107
  /** @deprecated */
6093
6108
  vLink: string;
@@ -6346,6 +6361,7 @@ interface HTMLElement extends Element, DocumentAndElementEventHandlers, ElementC
6346
6361
  dir: string;
6347
6362
  draggable: boolean;
6348
6363
  hidden: boolean;
6364
+ inert: boolean;
6349
6365
  innerText: string;
6350
6366
  lang: string;
6351
6367
  readonly offsetHeight: number;
@@ -7009,6 +7025,7 @@ interface HTMLInputElement extends HTMLElement {
7009
7025
  * @param direction The direction in which the selection is performed.
7010
7026
  */
7011
7027
  setSelectionRange(start: number | null, end: number | null, direction?: "forward" | "backward" | "none"): void;
7028
+ showPicker(): void;
7012
7029
  /**
7013
7030
  * 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.
7014
7031
  * @param n Value to decrement the value by.
@@ -7236,6 +7253,7 @@ interface HTMLMediaElement extends HTMLElement {
7236
7253
  readonly played: TimeRanges;
7237
7254
  /** Gets or sets a value indicating what data should be preloaded, if any. */
7238
7255
  preload: "none" | "metadata" | "auto" | "";
7256
+ preservesPitch: boolean;
7239
7257
  readonly readyState: number;
7240
7258
  readonly remote: RemotePlayback;
7241
7259
  /** Returns a TimeRanges object that represents the ranges of the current media resource that can be seeked. */
@@ -7602,16 +7620,25 @@ declare var HTMLParagraphElement: {
7602
7620
  new(): HTMLParagraphElement;
7603
7621
  };
7604
7622
 
7605
- /** Provides special properties (beyond those of the regular HTMLElement object interface it inherits) for manipulating <param> elements, representing a pair of a key and a value that acts as a parameter for an <object> element. */
7623
+ /**
7624
+ * Provides special properties (beyond those of the regular HTMLElement object interface it inherits) for manipulating <param> elements, representing a pair of a key and a value that acts as a parameter for an <object> element.
7625
+ * @deprecated
7626
+ */
7606
7627
  interface HTMLParamElement extends HTMLElement {
7607
- /** Sets or retrieves the name of an input parameter for an element. */
7628
+ /**
7629
+ * Sets or retrieves the name of an input parameter for an element.
7630
+ * @deprecated
7631
+ */
7608
7632
  name: string;
7609
7633
  /**
7610
7634
  * Sets or retrieves the content type of the resource designated by the value attribute.
7611
7635
  * @deprecated
7612
7636
  */
7613
7637
  type: string;
7614
- /** Sets or retrieves the value of an input parameter for an element. */
7638
+ /**
7639
+ * Sets or retrieves the value of an input parameter for an element.
7640
+ * @deprecated
7641
+ */
7615
7642
  value: string;
7616
7643
  /**
7617
7644
  * Sets or retrieves the data type of the value attribute.
@@ -7624,6 +7651,7 @@ interface HTMLParamElement extends HTMLElement {
7624
7651
  removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
7625
7652
  }
7626
7653
 
7654
+ /** @deprecated */
7627
7655
  declare var HTMLParamElement: {
7628
7656
  prototype: HTMLParamElement;
7629
7657
  new(): HTMLParamElement;
@@ -8517,7 +8545,7 @@ interface IDBDatabase extends EventTarget {
8517
8545
  */
8518
8546
  deleteObjectStore(name: string): void;
8519
8547
  /** Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names. */
8520
- transaction(storeNames: string | string[], mode?: IDBTransactionMode): IDBTransaction;
8548
+ transaction(storeNames: string | string[], mode?: IDBTransactionMode, options?: IDBTransactionOptions): IDBTransaction;
8521
8549
  addEventListener<K extends keyof IDBDatabaseEventMap>(type: K, listener: (this: IDBDatabase, ev: IDBDatabaseEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
8522
8550
  addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
8523
8551
  removeEventListener<K extends keyof IDBDatabaseEventMap>(type: K, listener: (this: IDBDatabase, ev: IDBDatabaseEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
@@ -9103,126 +9131,6 @@ declare var LockManager: {
9103
9131
  new(): LockManager;
9104
9132
  };
9105
9133
 
9106
- interface MIDIAccessEventMap {
9107
- "statechange": Event;
9108
- }
9109
-
9110
- /** Available only in secure contexts. */
9111
- interface MIDIAccess extends EventTarget {
9112
- readonly inputs: MIDIInputMap;
9113
- onstatechange: ((this: MIDIAccess, ev: Event) => any) | null;
9114
- readonly outputs: MIDIOutputMap;
9115
- readonly sysexEnabled: boolean;
9116
- addEventListener<K extends keyof MIDIAccessEventMap>(type: K, listener: (this: MIDIAccess, ev: MIDIAccessEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9117
- addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9118
- removeEventListener<K extends keyof MIDIAccessEventMap>(type: K, listener: (this: MIDIAccess, ev: MIDIAccessEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9119
- removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
9120
- }
9121
-
9122
- declare var MIDIAccess: {
9123
- prototype: MIDIAccess;
9124
- new(): MIDIAccess;
9125
- };
9126
-
9127
- /** Available only in secure contexts. */
9128
- interface MIDIConnectionEvent extends Event {
9129
- readonly port: MIDIPort;
9130
- }
9131
-
9132
- declare var MIDIConnectionEvent: {
9133
- prototype: MIDIConnectionEvent;
9134
- new(type: string, eventInitDict?: MIDIConnectionEventInit): MIDIConnectionEvent;
9135
- };
9136
-
9137
- interface MIDIInputEventMap extends MIDIPortEventMap {
9138
- "midimessage": Event;
9139
- }
9140
-
9141
- /** Available only in secure contexts. */
9142
- interface MIDIInput extends MIDIPort {
9143
- onmidimessage: ((this: MIDIInput, ev: Event) => any) | null;
9144
- addEventListener<K extends keyof MIDIInputEventMap>(type: K, listener: (this: MIDIInput, ev: MIDIInputEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9145
- addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9146
- removeEventListener<K extends keyof MIDIInputEventMap>(type: K, listener: (this: MIDIInput, ev: MIDIInputEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9147
- removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
9148
- }
9149
-
9150
- declare var MIDIInput: {
9151
- prototype: MIDIInput;
9152
- new(): MIDIInput;
9153
- };
9154
-
9155
- /** Available only in secure contexts. */
9156
- interface MIDIInputMap {
9157
- forEach(callbackfn: (value: MIDIInput, key: string, parent: MIDIInputMap) => void, thisArg?: any): void;
9158
- }
9159
-
9160
- declare var MIDIInputMap: {
9161
- prototype: MIDIInputMap;
9162
- new(): MIDIInputMap;
9163
- };
9164
-
9165
- /** Available only in secure contexts. */
9166
- interface MIDIMessageEvent extends Event {
9167
- readonly data: Uint8Array;
9168
- }
9169
-
9170
- declare var MIDIMessageEvent: {
9171
- prototype: MIDIMessageEvent;
9172
- new(type: string, eventInitDict?: MIDIMessageEventInit): MIDIMessageEvent;
9173
- };
9174
-
9175
- /** Available only in secure contexts. */
9176
- interface MIDIOutput extends MIDIPort {
9177
- send(data: number[], timestamp?: DOMHighResTimeStamp): void;
9178
- addEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIOutput, ev: MIDIPortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9179
- addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9180
- removeEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIOutput, ev: MIDIPortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9181
- removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
9182
- }
9183
-
9184
- declare var MIDIOutput: {
9185
- prototype: MIDIOutput;
9186
- new(): MIDIOutput;
9187
- };
9188
-
9189
- /** Available only in secure contexts. */
9190
- interface MIDIOutputMap {
9191
- forEach(callbackfn: (value: MIDIOutput, key: string, parent: MIDIOutputMap) => void, thisArg?: any): void;
9192
- }
9193
-
9194
- declare var MIDIOutputMap: {
9195
- prototype: MIDIOutputMap;
9196
- new(): MIDIOutputMap;
9197
- };
9198
-
9199
- interface MIDIPortEventMap {
9200
- "statechange": Event;
9201
- }
9202
-
9203
- /** Available only in secure contexts. */
9204
- interface MIDIPort extends EventTarget {
9205
- readonly connection: MIDIPortConnectionState;
9206
- readonly id: string;
9207
- readonly manufacturer: string | null;
9208
- readonly name: string | null;
9209
- onstatechange: ((this: MIDIPort, ev: Event) => any) | null;
9210
- readonly state: MIDIPortDeviceState;
9211
- readonly type: MIDIPortType;
9212
- readonly version: string | null;
9213
- close(): Promise<MIDIPort>;
9214
- open(): Promise<MIDIPort>;
9215
- addEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIPort, ev: MIDIPortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9216
- addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9217
- removeEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIPort, ev: MIDIPortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9218
- removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
9219
- }
9220
-
9221
- declare var MIDIPort: {
9222
- prototype: MIDIPort;
9223
- new(): MIDIPort;
9224
- };
9225
-
9226
9134
  interface MathMLElementEventMap extends ElementEventMap, DocumentAndElementEventHandlersEventMap, GlobalEventHandlersEventMap {
9227
9135
  }
9228
9136
 
@@ -9925,7 +9833,7 @@ declare var NavigationPreloadManager: {
9925
9833
  };
9926
9834
 
9927
9835
  /** The state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities. */
9928
- interface Navigator extends NavigatorAutomationInformation, NavigatorConcurrentHardware, NavigatorContentUtils, NavigatorCookies, NavigatorID, NavigatorLanguage, NavigatorLocks, NavigatorNetworkInformation, NavigatorOnLine, NavigatorPlugins, NavigatorStorage {
9836
+ interface Navigator extends NavigatorAutomationInformation, NavigatorConcurrentHardware, NavigatorContentUtils, NavigatorCookies, NavigatorID, NavigatorLanguage, NavigatorLocks, NavigatorOnLine, NavigatorPlugins, NavigatorStorage {
9929
9837
  /** Available only in secure contexts. */
9930
9838
  readonly clipboard: Clipboard;
9931
9839
  /** Available only in secure contexts. */
@@ -9944,8 +9852,6 @@ interface Navigator extends NavigatorAutomationInformation, NavigatorConcurrentH
9944
9852
  canShare(data?: ShareData): boolean;
9945
9853
  getGamepads(): (Gamepad | null)[];
9946
9854
  /** Available only in secure contexts. */
9947
- requestMIDIAccess(options?: MIDIOptions): Promise<MIDIAccess>;
9948
- /** Available only in secure contexts. */
9949
9855
  requestMediaKeySystemAccess(keySystem: string, supportedConfigurations: MediaKeySystemConfiguration[]): Promise<MediaKeySystemAccess>;
9950
9856
  sendBeacon(url: string | URL, data?: BodyInit | null): boolean;
9951
9857
  /** Available only in secure contexts. */
@@ -9982,7 +9888,6 @@ interface NavigatorID {
9982
9888
  readonly appName: string;
9983
9889
  /** @deprecated */
9984
9890
  readonly appVersion: string;
9985
- /** @deprecated */
9986
9891
  readonly platform: string;
9987
9892
  /** @deprecated */
9988
9893
  readonly product: string;
@@ -10004,10 +9909,6 @@ interface NavigatorLocks {
10004
9909
  readonly locks: LockManager;
10005
9910
  }
10006
9911
 
10007
- interface NavigatorNetworkInformation {
10008
- readonly connection: NetworkInformation;
10009
- }
10010
-
10011
9912
  interface NavigatorOnLine {
10012
9913
  readonly onLine: boolean;
10013
9914
  }
@@ -10027,15 +9928,6 @@ interface NavigatorStorage {
10027
9928
  readonly storage: StorageManager;
10028
9929
  }
10029
9930
 
10030
- interface NetworkInformation extends EventTarget {
10031
- readonly type: ConnectionType;
10032
- }
10033
-
10034
- declare var NetworkInformation: {
10035
- prototype: NetworkInformation;
10036
- new(): NetworkInformation;
10037
- };
10038
-
10039
9931
  /** Node is an interface from which a number of DOM API object types inherit. It allows those types to be treated similarly; for example, inheriting the same set of methods, or being tested in the same way. */
10040
9932
  interface Node extends EventTarget {
10041
9933
  /** Returns node's node document's document base URL. */
@@ -10994,6 +10886,7 @@ declare var PushManager: {
10994
10886
  */
10995
10887
  interface PushSubscription {
10996
10888
  readonly endpoint: string;
10889
+ readonly expirationTime: EpochTimeStamp | null;
10997
10890
  readonly options: PushSubscriptionOptions;
10998
10891
  getKey(name: PushEncryptionKeyName): ArrayBuffer | null;
10999
10892
  toJSON(): PushSubscriptionJSON;
@@ -11475,6 +11368,19 @@ declare var Range: {
11475
11368
  toString(): string;
11476
11369
  };
11477
11370
 
11371
+ interface ReadableByteStreamController {
11372
+ readonly byobRequest: ReadableStreamBYOBRequest | null;
11373
+ readonly desiredSize: number | null;
11374
+ close(): void;
11375
+ enqueue(chunk: ArrayBufferView): void;
11376
+ error(e?: any): void;
11377
+ }
11378
+
11379
+ declare var ReadableByteStreamController: {
11380
+ prototype: ReadableByteStreamController;
11381
+ new(): ReadableByteStreamController;
11382
+ };
11383
+
11478
11384
  /** This Streams API interface represents a readable stream of byte data. The Fetch API offers a concrete instance of a ReadableStream through the body property of a Response object. */
11479
11385
  interface ReadableStream<R = any> {
11480
11386
  readonly locked: boolean;
@@ -11490,6 +11396,27 @@ declare var ReadableStream: {
11490
11396
  new<R = any>(underlyingSource?: UnderlyingSource<R>, strategy?: QueuingStrategy<R>): ReadableStream<R>;
11491
11397
  };
11492
11398
 
11399
+ interface ReadableStreamBYOBReader extends ReadableStreamGenericReader {
11400
+ read(view: ArrayBufferView): Promise<ReadableStreamReadResult<ArrayBufferView>>;
11401
+ releaseLock(): void;
11402
+ }
11403
+
11404
+ declare var ReadableStreamBYOBReader: {
11405
+ prototype: ReadableStreamBYOBReader;
11406
+ new(stream: ReadableStream): ReadableStreamBYOBReader;
11407
+ };
11408
+
11409
+ interface ReadableStreamBYOBRequest {
11410
+ readonly view: ArrayBufferView | null;
11411
+ respond(bytesWritten: number): void;
11412
+ respondWithNewView(view: ArrayBufferView): void;
11413
+ }
11414
+
11415
+ declare var ReadableStreamBYOBRequest: {
11416
+ prototype: ReadableStreamBYOBRequest;
11417
+ new(): ReadableStreamBYOBRequest;
11418
+ };
11419
+
11493
11420
  interface ReadableStreamDefaultController<R = any> {
11494
11421
  readonly desiredSize: number | null;
11495
11422
  close(): void;
@@ -11503,7 +11430,7 @@ declare var ReadableStreamDefaultController: {
11503
11430
  };
11504
11431
 
11505
11432
  interface ReadableStreamDefaultReader<R = any> extends ReadableStreamGenericReader {
11506
- read(): Promise<ReadableStreamDefaultReadResult<R>>;
11433
+ read(): Promise<ReadableStreamReadResult<R>>;
11507
11434
  releaseLock(): void;
11508
11435
  }
11509
11436
 
@@ -13921,11 +13848,11 @@ declare var SubmitEvent: {
13921
13848
  * Available only in secure contexts.
13922
13849
  */
13923
13850
  interface SubtleCrypto {
13924
- decrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<any>;
13851
+ decrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>;
13925
13852
  deriveBits(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, length: number): Promise<ArrayBuffer>;
13926
13853
  deriveKey(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | AesDerivedKeyParams | HmacImportParams | HkdfParams | Pbkdf2Params, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey>;
13927
13854
  digest(algorithm: AlgorithmIdentifier, data: BufferSource): Promise<ArrayBuffer>;
13928
- encrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<any>;
13855
+ encrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>;
13929
13856
  exportKey(format: "jwk", key: CryptoKey): Promise<JsonWebKey>;
13930
13857
  exportKey(format: Exclude<KeyFormat, "jwk">, key: CryptoKey): Promise<ArrayBuffer>;
13931
13858
  generateKey(algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKeyPair>;
@@ -16683,7 +16610,7 @@ interface Window extends EventTarget, AnimationFrameProvider, GlobalEventHandler
16683
16610
  /** Returns true if the toolbar is visible; otherwise, returns false. */
16684
16611
  readonly toolbar: BarProp;
16685
16612
  readonly top: WindowProxy | null;
16686
- readonly visualViewport: VisualViewport;
16613
+ readonly visualViewport: VisualViewport | null;
16687
16614
  readonly window: Window & typeof globalThis;
16688
16615
  alert(message?: any): void;
16689
16616
  blur(): void;
@@ -16802,8 +16729,8 @@ interface WindowOrWorkerGlobalScope {
16802
16729
  readonly performance: Performance;
16803
16730
  atob(data: string): string;
16804
16731
  btoa(data: string): string;
16805
- clearInterval(id?: number): void;
16806
- clearTimeout(id?: number): void;
16732
+ clearInterval(id: number | undefined): void;
16733
+ clearTimeout(id: number | undefined): void;
16807
16734
  createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
16808
16735
  createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
16809
16736
  fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
@@ -16875,6 +16802,7 @@ declare var WritableStream: {
16875
16802
 
16876
16803
  /** This Streams API interface represents a controller allowing control of a WritableStream's state. When constructing a WritableStream, the underlying sink is given a corresponding WritableStreamDefaultController instance to manipulate. */
16877
16804
  interface WritableStreamDefaultController {
16805
+ readonly signal: AbortSignal;
16878
16806
  error(e?: any): void;
16879
16807
  }
16880
16808
 
@@ -17493,7 +17421,6 @@ interface HTMLElementTagNameMap {
17493
17421
  "details": HTMLDetailsElement;
17494
17422
  "dfn": HTMLElement;
17495
17423
  "dialog": HTMLDialogElement;
17496
- "dir": HTMLDirectoryElement;
17497
17424
  "div": HTMLDivElement;
17498
17425
  "dl": HTMLDListElement;
17499
17426
  "dt": HTMLElement;
@@ -17502,11 +17429,8 @@ interface HTMLElementTagNameMap {
17502
17429
  "fieldset": HTMLFieldSetElement;
17503
17430
  "figcaption": HTMLElement;
17504
17431
  "figure": HTMLElement;
17505
- "font": HTMLFontElement;
17506
17432
  "footer": HTMLElement;
17507
17433
  "form": HTMLFormElement;
17508
- "frame": HTMLFrameElement;
17509
- "frameset": HTMLFrameSetElement;
17510
17434
  "h1": HTMLHeadingElement;
17511
17435
  "h2": HTMLHeadingElement;
17512
17436
  "h3": HTMLHeadingElement;
@@ -17531,7 +17455,6 @@ interface HTMLElementTagNameMap {
17531
17455
  "main": HTMLElement;
17532
17456
  "map": HTMLMapElement;
17533
17457
  "mark": HTMLElement;
17534
- "marquee": HTMLMarqueeElement;
17535
17458
  "menu": HTMLMenuElement;
17536
17459
  "meta": HTMLMetaElement;
17537
17460
  "meter": HTMLMeterElement;
@@ -17543,7 +17466,6 @@ interface HTMLElementTagNameMap {
17543
17466
  "option": HTMLOptionElement;
17544
17467
  "output": HTMLOutputElement;
17545
17468
  "p": HTMLParagraphElement;
17546
- "param": HTMLParamElement;
17547
17469
  "picture": HTMLPictureElement;
17548
17470
  "pre": HTMLPreElement;
17549
17471
  "progress": HTMLProgressElement;
@@ -17585,7 +17507,34 @@ interface HTMLElementTagNameMap {
17585
17507
  }
17586
17508
 
17587
17509
  interface HTMLElementDeprecatedTagNameMap {
17510
+ "acronym": HTMLElement;
17511
+ "applet": HTMLUnknownElement;
17512
+ "basefont": HTMLElement;
17513
+ "bgsound": HTMLUnknownElement;
17514
+ "big": HTMLElement;
17515
+ "blink": HTMLUnknownElement;
17516
+ "center": HTMLElement;
17517
+ "dir": HTMLDirectoryElement;
17518
+ "font": HTMLFontElement;
17519
+ "frame": HTMLFrameElement;
17520
+ "frameset": HTMLFrameSetElement;
17521
+ "isindex": HTMLUnknownElement;
17522
+ "keygen": HTMLUnknownElement;
17588
17523
  "listing": HTMLPreElement;
17524
+ "marquee": HTMLMarqueeElement;
17525
+ "menuitem": HTMLElement;
17526
+ "multicol": HTMLUnknownElement;
17527
+ "nextid": HTMLUnknownElement;
17528
+ "nobr": HTMLElement;
17529
+ "noembed": HTMLElement;
17530
+ "noframes": HTMLElement;
17531
+ "param": HTMLParamElement;
17532
+ "plaintext": HTMLElement;
17533
+ "rb": HTMLElement;
17534
+ "rtc": HTMLElement;
17535
+ "spacer": HTMLUnknownElement;
17536
+ "strike": HTMLElement;
17537
+ "tt": HTMLElement;
17589
17538
  "xmp": HTMLPreElement;
17590
17539
  }
17591
17540
 
@@ -17734,7 +17683,7 @@ declare var statusbar: BarProp;
17734
17683
  /** Returns true if the toolbar is visible; otherwise, returns false. */
17735
17684
  declare var toolbar: BarProp;
17736
17685
  declare var top: WindowProxy | null;
17737
- declare var visualViewport: VisualViewport;
17686
+ declare var visualViewport: VisualViewport | null;
17738
17687
  declare var window: Window & typeof globalThis;
17739
17688
  declare function alert(message?: any): void;
17740
17689
  declare function blur(): void;
@@ -18088,8 +18037,8 @@ declare var origin: string;
18088
18037
  declare var performance: Performance;
18089
18038
  declare function atob(data: string): string;
18090
18039
  declare function btoa(data: string): string;
18091
- declare function clearInterval(id?: number): void;
18092
- declare function clearTimeout(id?: number): void;
18040
+ declare function clearInterval(id: number | undefined): void;
18041
+ declare function clearTimeout(id: number | undefined): void;
18093
18042
  declare function createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
18094
18043
  declare function createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
18095
18044
  declare function fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
@@ -18138,7 +18087,7 @@ type GLuint64 = number;
18138
18087
  type HTMLOrSVGImageElement = HTMLImageElement | SVGImageElement;
18139
18088
  type HTMLOrSVGScriptElement = HTMLScriptElement | SVGScriptElement;
18140
18089
  type HashAlgorithmIdentifier = AlgorithmIdentifier;
18141
- type HeadersInit = string[][] | Record<string, string> | Headers;
18090
+ type HeadersInit = [string, string][] | Record<string, string> | Headers;
18142
18091
  type IDBValidKey = number | string | Date | BufferSource | IDBValidKey[];
18143
18092
  type ImageBitmapSource = CanvasImageSource | Blob | ImageData;
18144
18093
  type InsertPosition = "beforebegin" | "afterbegin" | "beforeend" | "afterend";
@@ -18152,7 +18101,7 @@ type OnBeforeUnloadEventHandler = OnBeforeUnloadEventHandlerNonNull | null;
18152
18101
  type OnErrorEventHandler = OnErrorEventHandlerNonNull | null;
18153
18102
  type PerformanceEntryList = PerformanceEntry[];
18154
18103
  type ReadableStreamController<T> = ReadableStreamDefaultController<T>;
18155
- type ReadableStreamDefaultReadResult<T> = ReadableStreamDefaultReadValueResult<T> | ReadableStreamDefaultReadDoneResult;
18104
+ type ReadableStreamReadResult<T> = ReadableStreamReadValueResult<T> | ReadableStreamReadDoneResult;
18156
18105
  type ReadableStreamReader<T> = ReadableStreamDefaultReader<T>;
18157
18106
  type RenderingContext = CanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
18158
18107
  type RequestInfo = Request | string;
@@ -18196,11 +18145,10 @@ type ColorGamut = "p3" | "rec2020" | "srgb";
18196
18145
  type ColorSpaceConversion = "default" | "none";
18197
18146
  type CompositeOperation = "accumulate" | "add" | "replace";
18198
18147
  type CompositeOperationOrAuto = "accumulate" | "add" | "auto" | "replace";
18199
- type ConnectionType = "bluetooth" | "cellular" | "ethernet" | "mixed" | "none" | "other" | "unknown" | "wifi";
18200
18148
  type CredentialMediationRequirement = "optional" | "required" | "silent";
18201
18149
  type DOMParserSupportedType = "application/xhtml+xml" | "application/xml" | "image/svg+xml" | "text/html" | "text/xml";
18202
18150
  type DirectionSetting = "" | "lr" | "rl";
18203
- type DisplayCaptureSurfaceType = "application" | "browser" | "monitor" | "window";
18151
+ type DisplayCaptureSurfaceType = "browser" | "monitor" | "window";
18204
18152
  type DistanceModelType = "exponential" | "inverse" | "linear";
18205
18153
  type DocumentReadyState = "complete" | "interactive" | "loading";
18206
18154
  type DocumentVisibilityState = "hidden" | "visible";
@@ -18227,9 +18175,6 @@ type KeyType = "private" | "public" | "secret";
18227
18175
  type KeyUsage = "decrypt" | "deriveBits" | "deriveKey" | "encrypt" | "sign" | "unwrapKey" | "verify" | "wrapKey";
18228
18176
  type LineAlignSetting = "center" | "end" | "start";
18229
18177
  type LockMode = "exclusive" | "shared";
18230
- type MIDIPortConnectionState = "closed" | "open" | "pending";
18231
- type MIDIPortDeviceState = "connected" | "disconnected";
18232
- type MIDIPortType = "input" | "output";
18233
18178
  type MediaDecodingType = "file" | "media-source" | "webrtc";
18234
18179
  type MediaDeviceKind = "audioinput" | "audiooutput" | "videoinput";
18235
18180
  type MediaEncodingType = "record" | "webrtc";
@@ -121,7 +121,7 @@ interface Headers {
121
121
 
122
122
  interface IDBDatabase {
123
123
  /** Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names. */
124
- transaction(storeNames: string | Iterable<string>, mode?: IDBTransactionMode): IDBTransaction;
124
+ transaction(storeNames: string | Iterable<string>, mode?: IDBTransactionMode, options?: IDBTransactionOptions): IDBTransaction;
125
125
  }
126
126
 
127
127
  interface IDBObjectStore {
@@ -133,16 +133,6 @@ interface IDBObjectStore {
133
133
  createIndex(name: string, keyPath: string | Iterable<string>, options?: IDBIndexParameters): IDBIndex;
134
134
  }
135
135
 
136
- interface MIDIInputMap extends ReadonlyMap<string, MIDIInput> {
137
- }
138
-
139
- interface MIDIOutput {
140
- send(data: Iterable<number>, timestamp?: DOMHighResTimeStamp): void;
141
- }
142
-
143
- interface MIDIOutputMap extends ReadonlyMap<string, MIDIOutput> {
144
- }
145
-
146
136
  interface MediaKeyStatusMap {
147
137
  [Symbol.iterator](): IterableIterator<[BufferSource, MediaKeyStatus]>;
148
138
  entries(): IterableIterator<[BufferSource, MediaKeyStatus]>;