diff --git a/Sources/DOMKit/Generated.swift b/Sources/DOMKit/Generated.swift index 31fb61f1..7e964bb3 100644 --- a/Sources/DOMKit/Generated.swift +++ b/Sources/DOMKit/Generated.swift @@ -333,6 +333,89 @@ public class AddEventListenerOptions: BridgedDictionary { public var signal: AbortSignal } +public class AnalyserNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AnalyserNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _fftSize = ReadWriteAttribute(jsObject: jsObject, name: Strings.fftSize) + _frequencyBinCount = ReadonlyAttribute(jsObject: jsObject, name: Strings.frequencyBinCount) + _minDecibels = ReadWriteAttribute(jsObject: jsObject, name: Strings.minDecibels) + _maxDecibels = ReadWriteAttribute(jsObject: jsObject, name: Strings.maxDecibels) + _smoothingTimeConstant = ReadWriteAttribute(jsObject: jsObject, name: Strings.smoothingTimeConstant) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: AnalyserOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } + + @inlinable public func getFloatFrequencyData(array: Float32Array) { + let this = jsObject + _ = this[Strings.getFloatFrequencyData].function!(this: this, arguments: [array.jsValue]) + } + + @inlinable public func getByteFrequencyData(array: Uint8Array) { + let this = jsObject + _ = this[Strings.getByteFrequencyData].function!(this: this, arguments: [array.jsValue]) + } + + @inlinable public func getFloatTimeDomainData(array: Float32Array) { + let this = jsObject + _ = this[Strings.getFloatTimeDomainData].function!(this: this, arguments: [array.jsValue]) + } + + @inlinable public func getByteTimeDomainData(array: Uint8Array) { + let this = jsObject + _ = this[Strings.getByteTimeDomainData].function!(this: this, arguments: [array.jsValue]) + } + + @ReadWriteAttribute + public var fftSize: UInt32 + + @ReadonlyAttribute + public var frequencyBinCount: UInt32 + + @ReadWriteAttribute + public var minDecibels: Double + + @ReadWriteAttribute + public var maxDecibels: Double + + @ReadWriteAttribute + public var smoothingTimeConstant: Double +} + +public class AnalyserOptions: BridgedDictionary { + public convenience init(fftSize: UInt32, maxDecibels: Double, minDecibels: Double, smoothingTimeConstant: Double) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.fftSize] = fftSize.jsValue + object[Strings.maxDecibels] = maxDecibels.jsValue + object[Strings.minDecibels] = minDecibels.jsValue + object[Strings.smoothingTimeConstant] = smoothingTimeConstant.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _fftSize = ReadWriteAttribute(jsObject: object, name: Strings.fftSize) + _maxDecibels = ReadWriteAttribute(jsObject: object, name: Strings.maxDecibels) + _minDecibels = ReadWriteAttribute(jsObject: object, name: Strings.minDecibels) + _smoothingTimeConstant = ReadWriteAttribute(jsObject: object, name: Strings.smoothingTimeConstant) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var fftSize: UInt32 + + @ReadWriteAttribute + public var maxDecibels: Double + + @ReadWriteAttribute + public var minDecibels: Double + + @ReadWriteAttribute + public var smoothingTimeConstant: Double +} + public protocol Animatable: JSBridgedClass {} public extension Animatable { @inlinable func animate(keyframes: JSObject?, options: Double_or_KeyframeAnimationOptions? = nil) -> Animation { @@ -590,794 +673,813 @@ public class Attr: Node { public var specified: Bool } -public class AudioTrack: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.AudioTrack].function! } +public class AudioBuffer: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.AudioBuffer].function! } public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - _id = ReadonlyAttribute(jsObject: jsObject, name: Strings.id) - _kind = ReadonlyAttribute(jsObject: jsObject, name: Strings.kind) - _label = ReadonlyAttribute(jsObject: jsObject, name: Strings.label) - _language = ReadonlyAttribute(jsObject: jsObject, name: Strings.language) - _enabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.enabled) + _sampleRate = ReadonlyAttribute(jsObject: jsObject, name: Strings.sampleRate) + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + _duration = ReadonlyAttribute(jsObject: jsObject, name: Strings.duration) + _numberOfChannels = ReadonlyAttribute(jsObject: jsObject, name: Strings.numberOfChannels) self.jsObject = jsObject } - @ReadonlyAttribute - public var id: String + @inlinable public convenience init(options: AudioBufferOptions) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [options.jsValue])) + } @ReadonlyAttribute - public var kind: String + public var sampleRate: Float @ReadonlyAttribute - public var label: String + public var length: UInt32 @ReadonlyAttribute - public var language: String - - @ReadWriteAttribute - public var enabled: Bool -} - -public class AudioTrackList: EventTarget { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioTrackList].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - _onchange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onchange) - _onaddtrack = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onaddtrack) - _onremovetrack = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onremovetrack) - super.init(unsafelyWrapping: jsObject) - } + public var duration: Double @ReadonlyAttribute - public var length: UInt32 + public var numberOfChannels: UInt32 - @inlinable public subscript(key: Int) -> AudioTrack { - jsObject[key].fromJSValue()! + @inlinable public func getChannelData(channel: UInt32) -> Float32Array { + let this = jsObject + return this[Strings.getChannelData].function!(this: this, arguments: [channel.jsValue]).fromJSValue()! } - @inlinable public func getTrackById(id: String) -> AudioTrack? { + @inlinable public func copyFromChannel(destination: Float32Array, channelNumber: UInt32, bufferOffset: UInt32? = nil) { let this = jsObject - return this[Strings.getTrackById].function!(this: this, arguments: [id.jsValue]).fromJSValue()! + _ = this[Strings.copyFromChannel].function!(this: this, arguments: [destination.jsValue, channelNumber.jsValue, bufferOffset?.jsValue ?? .undefined]) } - @ClosureAttribute1Optional - public var onchange: EventHandler - - @ClosureAttribute1Optional - public var onaddtrack: EventHandler - - @ClosureAttribute1Optional - public var onremovetrack: EventHandler -} - -public class BarProp: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.BarProp].function! } - - public let jsObject: JSObject - - public required init(unsafelyWrapping jsObject: JSObject) { - _visible = ReadonlyAttribute(jsObject: jsObject, name: Strings.visible) - self.jsObject = jsObject + @inlinable public func copyToChannel(source: Float32Array, channelNumber: UInt32, bufferOffset: UInt32? = nil) { + let this = jsObject + _ = this[Strings.copyToChannel].function!(this: this, arguments: [source.jsValue, channelNumber.jsValue, bufferOffset?.jsValue ?? .undefined]) } - - @ReadonlyAttribute - public var visible: Bool } -public class BaseComputedKeyframe: BridgedDictionary { - public convenience init(offset: Double?, computedOffset: Double, easing: String, composite: CompositeOperationOrAuto) { +public class AudioBufferOptions: BridgedDictionary { + public convenience init(numberOfChannels: UInt32, length: UInt32, sampleRate: Float) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.offset] = offset.jsValue - object[Strings.computedOffset] = computedOffset.jsValue - object[Strings.easing] = easing.jsValue - object[Strings.composite] = composite.jsValue + object[Strings.numberOfChannels] = numberOfChannels.jsValue + object[Strings.length] = length.jsValue + object[Strings.sampleRate] = sampleRate.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _offset = ReadWriteAttribute(jsObject: object, name: Strings.offset) - _computedOffset = ReadWriteAttribute(jsObject: object, name: Strings.computedOffset) - _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) - _composite = ReadWriteAttribute(jsObject: object, name: Strings.composite) + _numberOfChannels = ReadWriteAttribute(jsObject: object, name: Strings.numberOfChannels) + _length = ReadWriteAttribute(jsObject: object, name: Strings.length) + _sampleRate = ReadWriteAttribute(jsObject: object, name: Strings.sampleRate) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var offset: Double? - - @ReadWriteAttribute - public var computedOffset: Double + public var numberOfChannels: UInt32 @ReadWriteAttribute - public var easing: String + public var length: UInt32 @ReadWriteAttribute - public var composite: CompositeOperationOrAuto + public var sampleRate: Float } -public class BaseKeyframe: BridgedDictionary { - public convenience init(offset: Double?, easing: String, composite: CompositeOperationOrAuto) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.offset] = offset.jsValue - object[Strings.easing] = easing.jsValue - object[Strings.composite] = composite.jsValue - self.init(unsafelyWrapping: object) +public class AudioBufferSourceNode: AudioScheduledSourceNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioBufferSourceNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _buffer = ReadWriteAttribute(jsObject: jsObject, name: Strings.buffer) + _playbackRate = ReadonlyAttribute(jsObject: jsObject, name: Strings.playbackRate) + _detune = ReadonlyAttribute(jsObject: jsObject, name: Strings.detune) + _loop = ReadWriteAttribute(jsObject: jsObject, name: Strings.loop) + _loopStart = ReadWriteAttribute(jsObject: jsObject, name: Strings.loopStart) + _loopEnd = ReadWriteAttribute(jsObject: jsObject, name: Strings.loopEnd) + super.init(unsafelyWrapping: jsObject) } - public required init(unsafelyWrapping object: JSObject) { - _offset = ReadWriteAttribute(jsObject: object, name: Strings.offset) - _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) - _composite = ReadWriteAttribute(jsObject: object, name: Strings.composite) - super.init(unsafelyWrapping: object) + @inlinable public convenience init(context: BaseAudioContext, options: AudioBufferSourceOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) } @ReadWriteAttribute - public var offset: Double? + public var buffer: AudioBuffer? + + @ReadonlyAttribute + public var playbackRate: AudioParam + + @ReadonlyAttribute + public var detune: AudioParam @ReadWriteAttribute - public var easing: String + public var loop: Bool @ReadWriteAttribute - public var composite: CompositeOperationOrAuto + public var loopStart: Double + + @ReadWriteAttribute + public var loopEnd: Double + + // XXX: member 'start' is ignored } -public class BasePropertyIndexedKeyframe: BridgedDictionary { - public convenience init(offset: nullable_Double_or_seq_of_nullable_Double, easing: String_or_seq_of_String, composite: CompositeOperationOrAuto_or_seq_of_CompositeOperationOrAuto) { +public class AudioBufferSourceOptions: BridgedDictionary { + public convenience init(buffer: AudioBuffer?, detune: Float, loop: Bool, loopEnd: Double, loopStart: Double, playbackRate: Float) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.offset] = offset.jsValue - object[Strings.easing] = easing.jsValue - object[Strings.composite] = composite.jsValue + object[Strings.buffer] = buffer.jsValue + object[Strings.detune] = detune.jsValue + object[Strings.loop] = loop.jsValue + object[Strings.loopEnd] = loopEnd.jsValue + object[Strings.loopStart] = loopStart.jsValue + object[Strings.playbackRate] = playbackRate.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _offset = ReadWriteAttribute(jsObject: object, name: Strings.offset) - _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) - _composite = ReadWriteAttribute(jsObject: object, name: Strings.composite) + _buffer = ReadWriteAttribute(jsObject: object, name: Strings.buffer) + _detune = ReadWriteAttribute(jsObject: object, name: Strings.detune) + _loop = ReadWriteAttribute(jsObject: object, name: Strings.loop) + _loopEnd = ReadWriteAttribute(jsObject: object, name: Strings.loopEnd) + _loopStart = ReadWriteAttribute(jsObject: object, name: Strings.loopStart) + _playbackRate = ReadWriteAttribute(jsObject: object, name: Strings.playbackRate) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var offset: nullable_Double_or_seq_of_nullable_Double + public var buffer: AudioBuffer? @ReadWriteAttribute - public var easing: String_or_seq_of_String + public var detune: Float @ReadWriteAttribute - public var composite: CompositeOperationOrAuto_or_seq_of_CompositeOperationOrAuto -} - -public class BeforeUnloadEvent: Event { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.BeforeUnloadEvent].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) - } - - // XXX: member 'returnValue' is ignored -} - -public enum BinaryType: JSString, JSValueCompatible { - case blob = "blob" - case arraybuffer = "arraybuffer" + public var loop: Bool - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } + @ReadWriteAttribute + public var loopEnd: Double - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) - } + @ReadWriteAttribute + public var loopStart: Double - @inlinable public var jsValue: JSValue { rawValue.jsValue } + @ReadWriteAttribute + public var playbackRate: Float } -public class Blob: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Blob].function! } - - public let jsObject: JSObject +public class AudioContext: BaseAudioContext { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioContext].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _size = ReadonlyAttribute(jsObject: jsObject, name: Strings.size) - _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) - self.jsObject = jsObject + _baseLatency = ReadonlyAttribute(jsObject: jsObject, name: Strings.baseLatency) + _outputLatency = ReadonlyAttribute(jsObject: jsObject, name: Strings.outputLatency) + super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init(blobParts: [BlobPart]? = nil, options: BlobPropertyBag? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [blobParts?.jsValue ?? .undefined, options?.jsValue ?? .undefined])) + @inlinable public convenience init(contextOptions: AudioContextOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [contextOptions?.jsValue ?? .undefined])) } @ReadonlyAttribute - public var size: UInt64 + public var baseLatency: Double @ReadonlyAttribute - public var type: String + public var outputLatency: Double - @inlinable public func slice(start: Int64? = nil, end: Int64? = nil, contentType: String? = nil) -> Self { + @inlinable public func getOutputTimestamp() -> AudioTimestamp { let this = jsObject - return this[Strings.slice].function!(this: this, arguments: [start?.jsValue ?? .undefined, end?.jsValue ?? .undefined, contentType?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.getOutputTimestamp].function!(this: this, arguments: []).fromJSValue()! } - // XXX: member 'stream' is ignored - - @inlinable public func text() -> JSPromise { + @inlinable public func resume() -> JSPromise { let this = jsObject - return this[Strings.text].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.resume].function!(this: this, arguments: []).fromJSValue()! } @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func text() async throws -> String { + @inlinable public func resume() async throws { let this = jsObject - let _promise: JSPromise = this[Strings.text].function!(this: this, arguments: []).fromJSValue()! - return try await _promise.value.fromJSValue()! + let _promise: JSPromise = this[Strings.resume].function!(this: this, arguments: []).fromJSValue()! + _ = try await _promise.value } - @inlinable public func arrayBuffer() -> JSPromise { + @inlinable public func suspend() -> JSPromise { let this = jsObject - return this[Strings.arrayBuffer].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.suspend].function!(this: this, arguments: []).fromJSValue()! } @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func arrayBuffer() async throws -> ArrayBuffer { + @inlinable public func suspend() async throws { let this = jsObject - let _promise: JSPromise = this[Strings.arrayBuffer].function!(this: this, arguments: []).fromJSValue()! - return try await _promise.value.fromJSValue()! + let _promise: JSPromise = this[Strings.suspend].function!(this: this, arguments: []).fromJSValue()! + _ = try await _promise.value } -} -public class BlobPropertyBag: BridgedDictionary { - public convenience init(type: String, endings: EndingType) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.type] = type.jsValue - object[Strings.endings] = endings.jsValue - self.init(unsafelyWrapping: object) + @inlinable public func close() -> JSPromise { + let this = jsObject + return this[Strings.close].function!(this: this, arguments: []).fromJSValue()! } - public required init(unsafelyWrapping object: JSObject) { - _type = ReadWriteAttribute(jsObject: object, name: Strings.type) - _endings = ReadWriteAttribute(jsObject: object, name: Strings.endings) - super.init(unsafelyWrapping: object) + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func close() async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.close].function!(this: this, arguments: []).fromJSValue()! + _ = try await _promise.value } - @ReadWriteAttribute - public var type: String - - @ReadWriteAttribute - public var endings: EndingType -} - -public protocol Body: JSBridgedClass {} -public extension Body { - // XXX: attribute 'body' is ignored - - @inlinable var bodyUsed: Bool { ReadonlyAttribute[Strings.bodyUsed, in: jsObject] } + @inlinable public func createMediaElementSource(mediaElement: HTMLMediaElement) -> MediaElementAudioSourceNode { + let this = jsObject + return this[Strings.createMediaElementSource].function!(this: this, arguments: [mediaElement.jsValue]).fromJSValue()! + } - @inlinable func arrayBuffer() -> JSPromise { + @inlinable public func createMediaStreamSource(mediaStream: MediaStream) -> MediaStreamAudioSourceNode { let this = jsObject - return this[Strings.arrayBuffer].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.createMediaStreamSource].function!(this: this, arguments: [mediaStream.jsValue]).fromJSValue()! } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable func arrayBuffer() async throws -> ArrayBuffer { + @inlinable public func createMediaStreamTrackSource(mediaStreamTrack: MediaStreamTrack) -> MediaStreamTrackAudioSourceNode { let this = jsObject - let _promise: JSPromise = this[Strings.arrayBuffer].function!(this: this, arguments: []).fromJSValue()! - return try await _promise.value.fromJSValue()! - } - - @inlinable func blob() -> JSPromise { - let this = jsObject - return this[Strings.blob].function!(this: this, arguments: []).fromJSValue()! - } - - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable func blob() async throws -> Blob { - let this = jsObject - let _promise: JSPromise = this[Strings.blob].function!(this: this, arguments: []).fromJSValue()! - return try await _promise.value.fromJSValue()! - } - - @inlinable func formData() -> JSPromise { - let this = jsObject - return this[Strings.formData].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.createMediaStreamTrackSource].function!(this: this, arguments: [mediaStreamTrack.jsValue]).fromJSValue()! } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable func formData() async throws -> FormData { + @inlinable public func createMediaStreamDestination() -> MediaStreamAudioDestinationNode { let this = jsObject - let _promise: JSPromise = this[Strings.formData].function!(this: this, arguments: []).fromJSValue()! - return try await _promise.value.fromJSValue()! + return this[Strings.createMediaStreamDestination].function!(this: this, arguments: []).fromJSValue()! } +} - @inlinable func json() -> JSPromise { - let this = jsObject - return this[Strings.json].function!(this: this, arguments: []).fromJSValue()! - } +public enum AudioContextLatencyCategory: JSString, JSValueCompatible { + case balanced = "balanced" + case interactive = "interactive" + case playback = "playback" - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable func json() async throws -> JSValue { - let this = jsObject - let _promise: JSPromise = this[Strings.json].function!(this: this, arguments: []).fromJSValue()! - return try await _promise.value.fromJSValue()! + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable func text() -> JSPromise { - let this = jsObject - return this[Strings.text].function!(this: this, arguments: []).fromJSValue()! + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable func text() async throws -> String { - let this = jsObject - let _promise: JSPromise = this[Strings.text].function!(this: this, arguments: []).fromJSValue()! - return try await _promise.value.fromJSValue()! - } + @inlinable public var jsValue: JSValue { rawValue.jsValue } } -public class BoxQuadOptions: BridgedDictionary { - public convenience init(box: CSSBoxType, relativeTo: GeometryNode) { +public class AudioContextOptions: BridgedDictionary { + public convenience init(latencyHint: AudioContextLatencyCategory_or_Double, sampleRate: Float) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.box] = box.jsValue - object[Strings.relativeTo] = relativeTo.jsValue + object[Strings.latencyHint] = latencyHint.jsValue + object[Strings.sampleRate] = sampleRate.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _box = ReadWriteAttribute(jsObject: object, name: Strings.box) - _relativeTo = ReadWriteAttribute(jsObject: object, name: Strings.relativeTo) + _latencyHint = ReadWriteAttribute(jsObject: object, name: Strings.latencyHint) + _sampleRate = ReadWriteAttribute(jsObject: object, name: Strings.sampleRate) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var box: CSSBoxType + public var latencyHint: AudioContextLatencyCategory_or_Double @ReadWriteAttribute - public var relativeTo: GeometryNode + public var sampleRate: Float } -public class BroadcastChannel: EventTarget { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.BroadcastChannel].function! } +public enum AudioContextState: JSString, JSValueCompatible { + case suspended = "suspended" + case running = "running" + case closed = "closed" - public required init(unsafelyWrapping jsObject: JSObject) { - _name = ReadonlyAttribute(jsObject: jsObject, name: Strings.name) - _onmessage = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onmessage) - _onmessageerror = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onmessageerror) - super.init(unsafelyWrapping: jsObject) + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable public convenience init(name: String) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [name.jsValue])) + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @ReadonlyAttribute - public var name: String + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @inlinable public func postMessage(message: JSValue) { - let this = jsObject - _ = this[Strings.postMessage].function!(this: this, arguments: [message.jsValue]) - } +public class AudioDestinationNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioDestinationNode].function! } - @inlinable public func close() { - let this = jsObject - _ = this[Strings.close].function!(this: this, arguments: []) + public required init(unsafelyWrapping jsObject: JSObject) { + _maxChannelCount = ReadonlyAttribute(jsObject: jsObject, name: Strings.maxChannelCount) + super.init(unsafelyWrapping: jsObject) } - @ClosureAttribute1Optional - public var onmessage: EventHandler - - @ClosureAttribute1Optional - public var onmessageerror: EventHandler + @ReadonlyAttribute + public var maxChannelCount: UInt32 } -public class ByteLengthQueuingStrategy: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ByteLengthQueuingStrategy].function! } +public class AudioListener: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.AudioListener].function! } public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - _highWaterMark = ReadonlyAttribute(jsObject: jsObject, name: Strings.highWaterMark) - _size = ReadonlyAttribute(jsObject: jsObject, name: Strings.size) + _positionX = ReadonlyAttribute(jsObject: jsObject, name: Strings.positionX) + _positionY = ReadonlyAttribute(jsObject: jsObject, name: Strings.positionY) + _positionZ = ReadonlyAttribute(jsObject: jsObject, name: Strings.positionZ) + _forwardX = ReadonlyAttribute(jsObject: jsObject, name: Strings.forwardX) + _forwardY = ReadonlyAttribute(jsObject: jsObject, name: Strings.forwardY) + _forwardZ = ReadonlyAttribute(jsObject: jsObject, name: Strings.forwardZ) + _upX = ReadonlyAttribute(jsObject: jsObject, name: Strings.upX) + _upY = ReadonlyAttribute(jsObject: jsObject, name: Strings.upY) + _upZ = ReadonlyAttribute(jsObject: jsObject, name: Strings.upZ) self.jsObject = jsObject } - @inlinable public convenience init(init: QueuingStrategyInit) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`.jsValue])) - } - @ReadonlyAttribute - public var highWaterMark: Double + public var positionX: AudioParam @ReadonlyAttribute - public var size: JSFunction -} - -public class CDATASection: Text { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CDATASection].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) - } -} - -public enum CSSBoxType: JSString, JSValueCompatible { - case margin = "margin" - case border = "border" - case padding = "padding" - case content = "content" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } + public var positionY: AudioParam - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) - } + @ReadonlyAttribute + public var positionZ: AudioParam - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} + @ReadonlyAttribute + public var forwardX: AudioParam -public class CSSPseudoElement: EventTarget, GeometryUtils { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CSSPseudoElement].function! } + @ReadonlyAttribute + public var forwardY: AudioParam - public required init(unsafelyWrapping jsObject: JSObject) { - _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) - _element = ReadonlyAttribute(jsObject: jsObject, name: Strings.element) - _parent = ReadonlyAttribute(jsObject: jsObject, name: Strings.parent) - super.init(unsafelyWrapping: jsObject) - } + @ReadonlyAttribute + public var forwardZ: AudioParam @ReadonlyAttribute - public var type: String + public var upX: AudioParam @ReadonlyAttribute - public var element: Element + public var upY: AudioParam @ReadonlyAttribute - public var parent: CSSPseudoElement_or_Element + public var upZ: AudioParam - @inlinable public func pseudo(type: String) -> CSSPseudoElement? { + @inlinable public func setPosition(x: Float, y: Float, z: Float) { let this = jsObject - return this[Strings.pseudo].function!(this: this, arguments: [type.jsValue]).fromJSValue()! + _ = this[Strings.setPosition].function!(this: this, arguments: [x.jsValue, y.jsValue, z.jsValue]) } -} -public class Cache: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Cache].function! } + @inlinable public func setOrientation(x: Float, y: Float, z: Float, xUp: Float, yUp: Float, zUp: Float) { + let _arg0 = x.jsValue + let _arg1 = y.jsValue + let _arg2 = z.jsValue + let _arg3 = xUp.jsValue + let _arg4 = yUp.jsValue + let _arg5 = zUp.jsValue + let this = jsObject + _ = this[Strings.setOrientation].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) + } +} - public let jsObject: JSObject +public class AudioNode: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioNode].function! } public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject + _context = ReadonlyAttribute(jsObject: jsObject, name: Strings.context) + _numberOfInputs = ReadonlyAttribute(jsObject: jsObject, name: Strings.numberOfInputs) + _numberOfOutputs = ReadonlyAttribute(jsObject: jsObject, name: Strings.numberOfOutputs) + _channelCount = ReadWriteAttribute(jsObject: jsObject, name: Strings.channelCount) + _channelCountMode = ReadWriteAttribute(jsObject: jsObject, name: Strings.channelCountMode) + _channelInterpretation = ReadWriteAttribute(jsObject: jsObject, name: Strings.channelInterpretation) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func match(request: RequestInfo, options: CacheQueryOptions? = nil) -> JSPromise { + @inlinable public func connect(destinationNode: AudioNode, output: UInt32? = nil, input: UInt32? = nil) -> Self { let this = jsObject - return this[Strings.match].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.connect].function!(this: this, arguments: [destinationNode.jsValue, output?.jsValue ?? .undefined, input?.jsValue ?? .undefined]).fromJSValue()! } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func match(request: RequestInfo, options: CacheQueryOptions? = nil) async throws -> Response? { + @inlinable public func connect(destinationParam: AudioParam, output: UInt32? = nil) { let this = jsObject - let _promise: JSPromise = this[Strings.match].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! - return try await _promise.value.fromJSValue()! + _ = this[Strings.connect].function!(this: this, arguments: [destinationParam.jsValue, output?.jsValue ?? .undefined]) } - @inlinable public func matchAll(request: RequestInfo? = nil, options: CacheQueryOptions? = nil) -> JSPromise { + @inlinable public func disconnect() { let this = jsObject - return this[Strings.matchAll].function!(this: this, arguments: [request?.jsValue ?? .undefined, options?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.disconnect].function!(this: this, arguments: []) } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func matchAll(request: RequestInfo? = nil, options: CacheQueryOptions? = nil) async throws -> [Response] { + @inlinable public func disconnect(output: UInt32) { let this = jsObject - let _promise: JSPromise = this[Strings.matchAll].function!(this: this, arguments: [request?.jsValue ?? .undefined, options?.jsValue ?? .undefined]).fromJSValue()! - return try await _promise.value.fromJSValue()! + _ = this[Strings.disconnect].function!(this: this, arguments: [output.jsValue]) } - @inlinable public func add(request: RequestInfo) -> JSPromise { + @inlinable public func disconnect(destinationNode: AudioNode) { let this = jsObject - return this[Strings.add].function!(this: this, arguments: [request.jsValue]).fromJSValue()! + _ = this[Strings.disconnect].function!(this: this, arguments: [destinationNode.jsValue]) } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func add(request: RequestInfo) async throws { + @inlinable public func disconnect(destinationNode: AudioNode, output: UInt32) { let this = jsObject - let _promise: JSPromise = this[Strings.add].function!(this: this, arguments: [request.jsValue]).fromJSValue()! - _ = try await _promise.value + _ = this[Strings.disconnect].function!(this: this, arguments: [destinationNode.jsValue, output.jsValue]) } - @inlinable public func addAll(requests: [RequestInfo]) -> JSPromise { + @inlinable public func disconnect(destinationNode: AudioNode, output: UInt32, input: UInt32) { let this = jsObject - return this[Strings.addAll].function!(this: this, arguments: [requests.jsValue]).fromJSValue()! + _ = this[Strings.disconnect].function!(this: this, arguments: [destinationNode.jsValue, output.jsValue, input.jsValue]) } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func addAll(requests: [RequestInfo]) async throws { + @inlinable public func disconnect(destinationParam: AudioParam) { let this = jsObject - let _promise: JSPromise = this[Strings.addAll].function!(this: this, arguments: [requests.jsValue]).fromJSValue()! - _ = try await _promise.value + _ = this[Strings.disconnect].function!(this: this, arguments: [destinationParam.jsValue]) } - @inlinable public func put(request: RequestInfo, response: Response) -> JSPromise { + @inlinable public func disconnect(destinationParam: AudioParam, output: UInt32) { let this = jsObject - return this[Strings.put].function!(this: this, arguments: [request.jsValue, response.jsValue]).fromJSValue()! + _ = this[Strings.disconnect].function!(this: this, arguments: [destinationParam.jsValue, output.jsValue]) } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func put(request: RequestInfo, response: Response) async throws { - let this = jsObject - let _promise: JSPromise = this[Strings.put].function!(this: this, arguments: [request.jsValue, response.jsValue]).fromJSValue()! - _ = try await _promise.value - } + @ReadonlyAttribute + public var context: BaseAudioContext - @inlinable public func delete(request: RequestInfo, options: CacheQueryOptions? = nil) -> JSPromise { - let this = jsObject - return this[Strings.delete].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! - } + @ReadonlyAttribute + public var numberOfInputs: UInt32 - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func delete(request: RequestInfo, options: CacheQueryOptions? = nil) async throws -> Bool { - let this = jsObject - let _promise: JSPromise = this[Strings.delete].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! - return try await _promise.value.fromJSValue()! - } + @ReadonlyAttribute + public var numberOfOutputs: UInt32 - @inlinable public func keys(request: RequestInfo? = nil, options: CacheQueryOptions? = nil) -> JSPromise { - let this = jsObject - return this[Strings.keys].function!(this: this, arguments: [request?.jsValue ?? .undefined, options?.jsValue ?? .undefined]).fromJSValue()! - } + @ReadWriteAttribute + public var channelCount: UInt32 - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func keys(request: RequestInfo? = nil, options: CacheQueryOptions? = nil) async throws -> [Request] { - let this = jsObject - let _promise: JSPromise = this[Strings.keys].function!(this: this, arguments: [request?.jsValue ?? .undefined, options?.jsValue ?? .undefined]).fromJSValue()! - return try await _promise.value.fromJSValue()! - } + @ReadWriteAttribute + public var channelCountMode: ChannelCountMode + + @ReadWriteAttribute + public var channelInterpretation: ChannelInterpretation } -public class CacheQueryOptions: BridgedDictionary { - public convenience init(ignoreSearch: Bool, ignoreMethod: Bool, ignoreVary: Bool) { +public class AudioNodeOptions: BridgedDictionary { + public convenience init(channelCount: UInt32, channelCountMode: ChannelCountMode, channelInterpretation: ChannelInterpretation) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.ignoreSearch] = ignoreSearch.jsValue - object[Strings.ignoreMethod] = ignoreMethod.jsValue - object[Strings.ignoreVary] = ignoreVary.jsValue + object[Strings.channelCount] = channelCount.jsValue + object[Strings.channelCountMode] = channelCountMode.jsValue + object[Strings.channelInterpretation] = channelInterpretation.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _ignoreSearch = ReadWriteAttribute(jsObject: object, name: Strings.ignoreSearch) - _ignoreMethod = ReadWriteAttribute(jsObject: object, name: Strings.ignoreMethod) - _ignoreVary = ReadWriteAttribute(jsObject: object, name: Strings.ignoreVary) + _channelCount = ReadWriteAttribute(jsObject: object, name: Strings.channelCount) + _channelCountMode = ReadWriteAttribute(jsObject: object, name: Strings.channelCountMode) + _channelInterpretation = ReadWriteAttribute(jsObject: object, name: Strings.channelInterpretation) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var ignoreSearch: Bool + public var channelCount: UInt32 @ReadWriteAttribute - public var ignoreMethod: Bool + public var channelCountMode: ChannelCountMode @ReadWriteAttribute - public var ignoreVary: Bool + public var channelInterpretation: ChannelInterpretation } -public class CacheStorage: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CacheStorage].function! } +public class AudioParam: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.AudioParam].function! } public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _automationRate = ReadWriteAttribute(jsObject: jsObject, name: Strings.automationRate) + _defaultValue = ReadonlyAttribute(jsObject: jsObject, name: Strings.defaultValue) + _minValue = ReadonlyAttribute(jsObject: jsObject, name: Strings.minValue) + _maxValue = ReadonlyAttribute(jsObject: jsObject, name: Strings.maxValue) self.jsObject = jsObject } - @inlinable public func match(request: RequestInfo, options: MultiCacheQueryOptions? = nil) -> JSPromise { + @ReadWriteAttribute + public var value: Float + + @ReadWriteAttribute + public var automationRate: AutomationRate + + @ReadonlyAttribute + public var defaultValue: Float + + @ReadonlyAttribute + public var minValue: Float + + @ReadonlyAttribute + public var maxValue: Float + + @inlinable public func setValueAtTime(value: Float, startTime: Double) -> Self { let this = jsObject - return this[Strings.match].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.setValueAtTime].function!(this: this, arguments: [value.jsValue, startTime.jsValue]).fromJSValue()! } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func match(request: RequestInfo, options: MultiCacheQueryOptions? = nil) async throws -> Response? { + @inlinable public func linearRampToValueAtTime(value: Float, endTime: Double) -> Self { let this = jsObject - let _promise: JSPromise = this[Strings.match].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! - return try await _promise.value.fromJSValue()! + return this[Strings.linearRampToValueAtTime].function!(this: this, arguments: [value.jsValue, endTime.jsValue]).fromJSValue()! } - @inlinable public func has(cacheName: String) -> JSPromise { + @inlinable public func exponentialRampToValueAtTime(value: Float, endTime: Double) -> Self { let this = jsObject - return this[Strings.has].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! + return this[Strings.exponentialRampToValueAtTime].function!(this: this, arguments: [value.jsValue, endTime.jsValue]).fromJSValue()! } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func has(cacheName: String) async throws -> Bool { + @inlinable public func setTargetAtTime(target: Float, startTime: Double, timeConstant: Float) -> Self { let this = jsObject - let _promise: JSPromise = this[Strings.has].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! - return try await _promise.value.fromJSValue()! + return this[Strings.setTargetAtTime].function!(this: this, arguments: [target.jsValue, startTime.jsValue, timeConstant.jsValue]).fromJSValue()! } - @inlinable public func open(cacheName: String) -> JSPromise { + @inlinable public func setValueCurveAtTime(values: [Float], startTime: Double, duration: Double) -> Self { let this = jsObject - return this[Strings.open].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! + return this[Strings.setValueCurveAtTime].function!(this: this, arguments: [values.jsValue, startTime.jsValue, duration.jsValue]).fromJSValue()! } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func open(cacheName: String) async throws -> Cache { + @inlinable public func cancelScheduledValues(cancelTime: Double) -> Self { let this = jsObject - let _promise: JSPromise = this[Strings.open].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! - return try await _promise.value.fromJSValue()! + return this[Strings.cancelScheduledValues].function!(this: this, arguments: [cancelTime.jsValue]).fromJSValue()! } - @inlinable public func delete(cacheName: String) -> JSPromise { + @inlinable public func cancelAndHoldAtTime(cancelTime: Double) -> Self { let this = jsObject - return this[Strings.delete].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! + return this[Strings.cancelAndHoldAtTime].function!(this: this, arguments: [cancelTime.jsValue]).fromJSValue()! } +} - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func delete(cacheName: String) async throws -> Bool { - let this = jsObject - let _promise: JSPromise = this[Strings.delete].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! - return try await _promise.value.fromJSValue()! +public class AudioParamDescriptor: BridgedDictionary { + public convenience init(name: String, defaultValue: Float, minValue: Float, maxValue: Float, automationRate: AutomationRate) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.name] = name.jsValue + object[Strings.defaultValue] = defaultValue.jsValue + object[Strings.minValue] = minValue.jsValue + object[Strings.maxValue] = maxValue.jsValue + object[Strings.automationRate] = automationRate.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func keys() -> JSPromise { - let this = jsObject - return this[Strings.keys].function!(this: this, arguments: []).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _name = ReadWriteAttribute(jsObject: object, name: Strings.name) + _defaultValue = ReadWriteAttribute(jsObject: object, name: Strings.defaultValue) + _minValue = ReadWriteAttribute(jsObject: object, name: Strings.minValue) + _maxValue = ReadWriteAttribute(jsObject: object, name: Strings.maxValue) + _automationRate = ReadWriteAttribute(jsObject: object, name: Strings.automationRate) + super.init(unsafelyWrapping: object) } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func keys() async throws -> [String] { - let this = jsObject - let _promise: JSPromise = this[Strings.keys].function!(this: this, arguments: []).fromJSValue()! - return try await _promise.value.fromJSValue()! - } + @ReadWriteAttribute + public var name: String + + @ReadWriteAttribute + public var defaultValue: Float + + @ReadWriteAttribute + public var minValue: Float + + @ReadWriteAttribute + public var maxValue: Float + + @ReadWriteAttribute + public var automationRate: AutomationRate } -public enum CanPlayTypeResult: JSString, JSValueCompatible { - case _empty = "" - case maybe = "maybe" - case probably = "probably" +public class AudioParamMap: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.AudioParamMap].function! } - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } + public let jsObject: JSObject - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject } - @inlinable public var jsValue: JSValue { rawValue.jsValue } + // XXX: make me Map-like! } -public protocol CanvasCompositing: JSBridgedClass {} -public extension CanvasCompositing { - @inlinable var globalAlpha: Double { - get { ReadWriteAttribute[Strings.globalAlpha, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.globalAlpha, in: jsObject] = newValue } +public class AudioProcessingEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioProcessingEvent].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _playbackTime = ReadonlyAttribute(jsObject: jsObject, name: Strings.playbackTime) + _inputBuffer = ReadonlyAttribute(jsObject: jsObject, name: Strings.inputBuffer) + _outputBuffer = ReadonlyAttribute(jsObject: jsObject, name: Strings.outputBuffer) + super.init(unsafelyWrapping: jsObject) } - @inlinable var globalCompositeOperation: String { - get { ReadWriteAttribute[Strings.globalCompositeOperation, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.globalCompositeOperation, in: jsObject] = newValue } + @inlinable public convenience init(type: String, eventInitDict: AudioProcessingEventInit) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict.jsValue])) } -} -public enum CanvasDirection: JSString, JSValueCompatible { - case ltr = "ltr" - case rtl = "rtl" - case inherit = "inherit" + @ReadonlyAttribute + public var playbackTime: Double - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @ReadonlyAttribute + public var inputBuffer: AudioBuffer + + @ReadonlyAttribute + public var outputBuffer: AudioBuffer +} + +public class AudioProcessingEventInit: BridgedDictionary { + public convenience init(playbackTime: Double, inputBuffer: AudioBuffer, outputBuffer: AudioBuffer) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.playbackTime] = playbackTime.jsValue + object[Strings.inputBuffer] = inputBuffer.jsValue + object[Strings.outputBuffer] = outputBuffer.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + public required init(unsafelyWrapping object: JSObject) { + _playbackTime = ReadWriteAttribute(jsObject: object, name: Strings.playbackTime) + _inputBuffer = ReadWriteAttribute(jsObject: object, name: Strings.inputBuffer) + _outputBuffer = ReadWriteAttribute(jsObject: object, name: Strings.outputBuffer) + super.init(unsafelyWrapping: object) } - @inlinable public var jsValue: JSValue { rawValue.jsValue } + @ReadWriteAttribute + public var playbackTime: Double + + @ReadWriteAttribute + public var inputBuffer: AudioBuffer + + @ReadWriteAttribute + public var outputBuffer: AudioBuffer } -public protocol CanvasDrawImage: JSBridgedClass {} -public extension CanvasDrawImage { - @inlinable func drawImage(image: CanvasImageSource, dx: Double, dy: Double) { - let this = jsObject - _ = this[Strings.drawImage].function!(this: this, arguments: [image.jsValue, dx.jsValue, dy.jsValue]) +public class AudioScheduledSourceNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioScheduledSourceNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _onended = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onended) + super.init(unsafelyWrapping: jsObject) } - @inlinable func drawImage(image: CanvasImageSource, dx: Double, dy: Double, dw: Double, dh: Double) { + @ClosureAttribute1Optional + public var onended: EventHandler + + @inlinable public func start(when: Double? = nil) { let this = jsObject - _ = this[Strings.drawImage].function!(this: this, arguments: [image.jsValue, dx.jsValue, dy.jsValue, dw.jsValue, dh.jsValue]) + _ = this[Strings.start].function!(this: this, arguments: [when?.jsValue ?? .undefined]) } - @inlinable func drawImage(image: CanvasImageSource, sx: Double, sy: Double, sw: Double, sh: Double, dx: Double, dy: Double, dw: Double, dh: Double) { - let _arg0 = image.jsValue - let _arg1 = sx.jsValue - let _arg2 = sy.jsValue - let _arg3 = sw.jsValue - let _arg4 = sh.jsValue - let _arg5 = dx.jsValue - let _arg6 = dy.jsValue - let _arg7 = dw.jsValue - let _arg8 = dh.jsValue + @inlinable public func stop(when: Double? = nil) { let this = jsObject - _ = this[Strings.drawImage].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8]) + _ = this[Strings.stop].function!(this: this, arguments: [when?.jsValue ?? .undefined]) } } -public protocol CanvasDrawPath: JSBridgedClass {} -public extension CanvasDrawPath { - @inlinable func beginPath() { - let this = jsObject - _ = this[Strings.beginPath].function!(this: this, arguments: []) +public class AudioTimestamp: BridgedDictionary { + public convenience init(contextTime: Double, performanceTime: DOMHighResTimeStamp) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.contextTime] = contextTime.jsValue + object[Strings.performanceTime] = performanceTime.jsValue + self.init(unsafelyWrapping: object) } - @inlinable func fill(fillRule: CanvasFillRule? = nil) { - let this = jsObject - _ = this[Strings.fill].function!(this: this, arguments: [fillRule?.jsValue ?? .undefined]) + public required init(unsafelyWrapping object: JSObject) { + _contextTime = ReadWriteAttribute(jsObject: object, name: Strings.contextTime) + _performanceTime = ReadWriteAttribute(jsObject: object, name: Strings.performanceTime) + super.init(unsafelyWrapping: object) } - @inlinable func fill(path: Path2D, fillRule: CanvasFillRule? = nil) { - let this = jsObject - _ = this[Strings.fill].function!(this: this, arguments: [path.jsValue, fillRule?.jsValue ?? .undefined]) + @ReadWriteAttribute + public var contextTime: Double + + @ReadWriteAttribute + public var performanceTime: DOMHighResTimeStamp +} + +public class AudioTrack: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.AudioTrack].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _id = ReadonlyAttribute(jsObject: jsObject, name: Strings.id) + _kind = ReadonlyAttribute(jsObject: jsObject, name: Strings.kind) + _label = ReadonlyAttribute(jsObject: jsObject, name: Strings.label) + _language = ReadonlyAttribute(jsObject: jsObject, name: Strings.language) + _enabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.enabled) + self.jsObject = jsObject } - @inlinable func stroke() { - let this = jsObject - _ = this[Strings.stroke].function!(this: this, arguments: []) + @ReadonlyAttribute + public var id: String + + @ReadonlyAttribute + public var kind: String + + @ReadonlyAttribute + public var label: String + + @ReadonlyAttribute + public var language: String + + @ReadWriteAttribute + public var enabled: Bool +} + +public class AudioTrackList: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioTrackList].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + _onchange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onchange) + _onaddtrack = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onaddtrack) + _onremovetrack = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onremovetrack) + super.init(unsafelyWrapping: jsObject) } - @inlinable func stroke(path: Path2D) { - let this = jsObject - _ = this[Strings.stroke].function!(this: this, arguments: [path.jsValue]) + @ReadonlyAttribute + public var length: UInt32 + + @inlinable public subscript(key: Int) -> AudioTrack { + jsObject[key].fromJSValue()! } - @inlinable func clip(fillRule: CanvasFillRule? = nil) { + @inlinable public func getTrackById(id: String) -> AudioTrack? { let this = jsObject - _ = this[Strings.clip].function!(this: this, arguments: [fillRule?.jsValue ?? .undefined]) + return this[Strings.getTrackById].function!(this: this, arguments: [id.jsValue]).fromJSValue()! } - @inlinable func clip(path: Path2D, fillRule: CanvasFillRule? = nil) { - let this = jsObject - _ = this[Strings.clip].function!(this: this, arguments: [path.jsValue, fillRule?.jsValue ?? .undefined]) + @ClosureAttribute1Optional + public var onchange: EventHandler + + @ClosureAttribute1Optional + public var onaddtrack: EventHandler + + @ClosureAttribute1Optional + public var onremovetrack: EventHandler +} + +public class AudioWorklet: Worklet { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioWorklet].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) } +} - @inlinable func isPointInPath(x: Double, y: Double, fillRule: CanvasFillRule? = nil) -> Bool { - let this = jsObject - return this[Strings.isPointInPath].function!(this: this, arguments: [x.jsValue, y.jsValue, fillRule?.jsValue ?? .undefined]).fromJSValue()! +public class AudioWorkletNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.AudioWorkletNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _parameters = ReadonlyAttribute(jsObject: jsObject, name: Strings.parameters) + _port = ReadonlyAttribute(jsObject: jsObject, name: Strings.port) + _onprocessorerror = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onprocessorerror) + super.init(unsafelyWrapping: jsObject) } - @inlinable func isPointInPath(path: Path2D, x: Double, y: Double, fillRule: CanvasFillRule? = nil) -> Bool { - let this = jsObject - return this[Strings.isPointInPath].function!(this: this, arguments: [path.jsValue, x.jsValue, y.jsValue, fillRule?.jsValue ?? .undefined]).fromJSValue()! + @inlinable public convenience init(context: BaseAudioContext, name: String, options: AudioWorkletNodeOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, name.jsValue, options?.jsValue ?? .undefined])) } - @inlinable func isPointInStroke(x: Double, y: Double) -> Bool { - let this = jsObject - return this[Strings.isPointInStroke].function!(this: this, arguments: [x.jsValue, y.jsValue]).fromJSValue()! + @ReadonlyAttribute + public var parameters: AudioParamMap + + @ReadonlyAttribute + public var port: MessagePort + + @ClosureAttribute1Optional + public var onprocessorerror: EventHandler +} + +public class AudioWorkletNodeOptions: BridgedDictionary { + public convenience init(numberOfInputs: UInt32, numberOfOutputs: UInt32, outputChannelCount: [UInt32], parameterData: [String: Double], processorOptions: JSObject) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.numberOfInputs] = numberOfInputs.jsValue + object[Strings.numberOfOutputs] = numberOfOutputs.jsValue + object[Strings.outputChannelCount] = outputChannelCount.jsValue + object[Strings.parameterData] = parameterData.jsValue + object[Strings.processorOptions] = processorOptions.jsValue + self.init(unsafelyWrapping: object) } - @inlinable func isPointInStroke(path: Path2D, x: Double, y: Double) -> Bool { - let this = jsObject - return this[Strings.isPointInStroke].function!(this: this, arguments: [path.jsValue, x.jsValue, y.jsValue]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _numberOfInputs = ReadWriteAttribute(jsObject: object, name: Strings.numberOfInputs) + _numberOfOutputs = ReadWriteAttribute(jsObject: object, name: Strings.numberOfOutputs) + _outputChannelCount = ReadWriteAttribute(jsObject: object, name: Strings.outputChannelCount) + _parameterData = ReadWriteAttribute(jsObject: object, name: Strings.parameterData) + _processorOptions = ReadWriteAttribute(jsObject: object, name: Strings.processorOptions) + super.init(unsafelyWrapping: object) } + + @ReadWriteAttribute + public var numberOfInputs: UInt32 + + @ReadWriteAttribute + public var numberOfOutputs: UInt32 + + @ReadWriteAttribute + public var outputChannelCount: [UInt32] + + @ReadWriteAttribute + public var parameterData: [String: Double] + + @ReadWriteAttribute + public var processorOptions: JSObject } -public enum CanvasFillRule: JSString, JSValueCompatible { - case nonzero = "nonzero" - case evenodd = "evenodd" +public enum AutomationRate: JSString, JSValueCompatible { + case aRate = "a-rate" + case kRate = "k-rate" @inlinable public static func construct(from jsValue: JSValue) -> Self? { if let string = jsValue.jsString { @@ -1393,1187 +1495,1119 @@ public enum CanvasFillRule: JSString, JSValueCompatible { @inlinable public var jsValue: JSValue { rawValue.jsValue } } -public protocol CanvasFillStrokeStyles: JSBridgedClass {} -public extension CanvasFillStrokeStyles { - @inlinable var strokeStyle: CanvasGradient_or_CanvasPattern_or_String { - get { ReadWriteAttribute[Strings.strokeStyle, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.strokeStyle, in: jsObject] = newValue } - } - - @inlinable var fillStyle: CanvasGradient_or_CanvasPattern_or_String { - get { ReadWriteAttribute[Strings.fillStyle, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.fillStyle, in: jsObject] = newValue } - } - - @inlinable func createLinearGradient(x0: Double, y0: Double, x1: Double, y1: Double) -> CanvasGradient { - let this = jsObject - return this[Strings.createLinearGradient].function!(this: this, arguments: [x0.jsValue, y0.jsValue, x1.jsValue, y1.jsValue]).fromJSValue()! - } - - @inlinable func createRadialGradient(x0: Double, y0: Double, r0: Double, x1: Double, y1: Double, r1: Double) -> CanvasGradient { - let _arg0 = x0.jsValue - let _arg1 = y0.jsValue - let _arg2 = r0.jsValue - let _arg3 = x1.jsValue - let _arg4 = y1.jsValue - let _arg5 = r1.jsValue - let this = jsObject - return this[Strings.createRadialGradient].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]).fromJSValue()! - } - - @inlinable func createConicGradient(startAngle: Double, x: Double, y: Double) -> CanvasGradient { - let this = jsObject - return this[Strings.createConicGradient].function!(this: this, arguments: [startAngle.jsValue, x.jsValue, y.jsValue]).fromJSValue()! - } - - @inlinable func createPattern(image: CanvasImageSource, repetition: String) -> CanvasPattern? { - let this = jsObject - return this[Strings.createPattern].function!(this: this, arguments: [image.jsValue, repetition.jsValue]).fromJSValue()! - } -} - -public class CanvasFilter: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CanvasFilter].function! } +public class BarProp: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.BarProp].function! } public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { + _visible = ReadonlyAttribute(jsObject: jsObject, name: Strings.visible) self.jsObject = jsObject } - @inlinable public convenience init(filters: CanvasFilterInput_or_seq_of_CanvasFilterInput? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [filters?.jsValue ?? .undefined])) - } -} - -public protocol CanvasFilters: JSBridgedClass {} -public extension CanvasFilters { - @inlinable var filter: CanvasFilter_or_String { - get { ReadWriteAttribute[Strings.filter, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.filter, in: jsObject] = newValue } - } -} - -public enum CanvasFontKerning: JSString, JSValueCompatible { - case auto = "auto" - case normal = "normal" - case none = "none" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } - - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) - } - - @inlinable public var jsValue: JSValue { rawValue.jsValue } + @ReadonlyAttribute + public var visible: Bool } -public enum CanvasFontStretch: JSString, JSValueCompatible { - case ultraCondensed = "ultra-condensed" - case extraCondensed = "extra-condensed" - case condensed = "condensed" - case semiCondensed = "semi-condensed" - case normal = "normal" - case semiExpanded = "semi-expanded" - case expanded = "expanded" - case extraExpanded = "extra-expanded" - case ultraExpanded = "ultra-expanded" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } +public class BaseAudioContext: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.BaseAudioContext].function! } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + public required init(unsafelyWrapping jsObject: JSObject) { + _destination = ReadonlyAttribute(jsObject: jsObject, name: Strings.destination) + _sampleRate = ReadonlyAttribute(jsObject: jsObject, name: Strings.sampleRate) + _currentTime = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentTime) + _listener = ReadonlyAttribute(jsObject: jsObject, name: Strings.listener) + _state = ReadonlyAttribute(jsObject: jsObject, name: Strings.state) + _audioWorklet = ReadonlyAttribute(jsObject: jsObject, name: Strings.audioWorklet) + _onstatechange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onstatechange) + super.init(unsafelyWrapping: jsObject) } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} - -public enum CanvasFontVariantCaps: JSString, JSValueCompatible { - case normal = "normal" - case smallCaps = "small-caps" - case allSmallCaps = "all-small-caps" - case petiteCaps = "petite-caps" - case allPetiteCaps = "all-petite-caps" - case unicase = "unicase" - case titlingCaps = "titling-caps" + @ReadonlyAttribute + public var destination: AudioDestinationNode - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } + @ReadonlyAttribute + public var sampleRate: Float - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) - } + @ReadonlyAttribute + public var currentTime: Double - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} + @ReadonlyAttribute + public var listener: AudioListener -public class CanvasGradient: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CanvasGradient].function! } + @ReadonlyAttribute + public var state: AudioContextState - public let jsObject: JSObject + @ReadonlyAttribute + public var audioWorklet: AudioWorklet - public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject - } + @ClosureAttribute1Optional + public var onstatechange: EventHandler - @inlinable public func addColorStop(offset: Double, color: String) { + @inlinable public func createAnalyser() -> AnalyserNode { let this = jsObject - _ = this[Strings.addColorStop].function!(this: this, arguments: [offset.jsValue, color.jsValue]) + return this[Strings.createAnalyser].function!(this: this, arguments: []).fromJSValue()! } -} -public protocol CanvasImageData: JSBridgedClass {} -public extension CanvasImageData { - @inlinable func createImageData(sw: Int32, sh: Int32, settings: ImageDataSettings? = nil) -> ImageData { + @inlinable public func createBiquadFilter() -> BiquadFilterNode { let this = jsObject - return this[Strings.createImageData].function!(this: this, arguments: [sw.jsValue, sh.jsValue, settings?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createBiquadFilter].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func createImageData(imagedata: ImageData) -> ImageData { + @inlinable public func createBuffer(numberOfChannels: UInt32, length: UInt32, sampleRate: Float) -> AudioBuffer { let this = jsObject - return this[Strings.createImageData].function!(this: this, arguments: [imagedata.jsValue]).fromJSValue()! + return this[Strings.createBuffer].function!(this: this, arguments: [numberOfChannels.jsValue, length.jsValue, sampleRate.jsValue]).fromJSValue()! } - @inlinable func getImageData(sx: Int32, sy: Int32, sw: Int32, sh: Int32, settings: ImageDataSettings? = nil) -> ImageData { + @inlinable public func createBufferSource() -> AudioBufferSourceNode { let this = jsObject - return this[Strings.getImageData].function!(this: this, arguments: [sx.jsValue, sy.jsValue, sw.jsValue, sh.jsValue, settings?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createBufferSource].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func putImageData(imagedata: ImageData, dx: Int32, dy: Int32) { + @inlinable public func createChannelMerger(numberOfInputs: UInt32? = nil) -> ChannelMergerNode { let this = jsObject - _ = this[Strings.putImageData].function!(this: this, arguments: [imagedata.jsValue, dx.jsValue, dy.jsValue]) + return this[Strings.createChannelMerger].function!(this: this, arguments: [numberOfInputs?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable func putImageData(imagedata: ImageData, dx: Int32, dy: Int32, dirtyX: Int32, dirtyY: Int32, dirtyWidth: Int32, dirtyHeight: Int32) { - let _arg0 = imagedata.jsValue - let _arg1 = dx.jsValue - let _arg2 = dy.jsValue - let _arg3 = dirtyX.jsValue - let _arg4 = dirtyY.jsValue - let _arg5 = dirtyWidth.jsValue - let _arg6 = dirtyHeight.jsValue + @inlinable public func createChannelSplitter(numberOfOutputs: UInt32? = nil) -> ChannelSplitterNode { let this = jsObject - _ = this[Strings.putImageData].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6]) - } -} - -public protocol CanvasImageSmoothing: JSBridgedClass {} -public extension CanvasImageSmoothing { - @inlinable var imageSmoothingEnabled: Bool { - get { ReadWriteAttribute[Strings.imageSmoothingEnabled, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.imageSmoothingEnabled, in: jsObject] = newValue } - } - - @inlinable var imageSmoothingQuality: ImageSmoothingQuality { - get { ReadWriteAttribute[Strings.imageSmoothingQuality, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.imageSmoothingQuality, in: jsObject] = newValue } - } -} - -public enum CanvasLineCap: JSString, JSValueCompatible { - case butt = "butt" - case round = "round" - case square = "square" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } - - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + return this[Strings.createChannelSplitter].function!(this: this, arguments: [numberOfOutputs?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} - -public enum CanvasLineJoin: JSString, JSValueCompatible { - case round = "round" - case bevel = "bevel" - case miter = "miter" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @inlinable public func createConstantSource() -> ConstantSourceNode { + let this = jsObject + return this[Strings.createConstantSource].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable public func createConvolver() -> ConvolverNode { + let this = jsObject + return this[Strings.createConvolver].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} - -public protocol CanvasPath: JSBridgedClass {} -public extension CanvasPath { - @inlinable func closePath() { + @inlinable public func createDelay(maxDelayTime: Double? = nil) -> DelayNode { let this = jsObject - _ = this[Strings.closePath].function!(this: this, arguments: []) + return this[Strings.createDelay].function!(this: this, arguments: [maxDelayTime?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable func moveTo(x: Double, y: Double) { + @inlinable public func createDynamicsCompressor() -> DynamicsCompressorNode { let this = jsObject - _ = this[Strings.moveTo].function!(this: this, arguments: [x.jsValue, y.jsValue]) + return this[Strings.createDynamicsCompressor].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func lineTo(x: Double, y: Double) { + @inlinable public func createGain() -> GainNode { let this = jsObject - _ = this[Strings.lineTo].function!(this: this, arguments: [x.jsValue, y.jsValue]) + return this[Strings.createGain].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func quadraticCurveTo(cpx: Double, cpy: Double, x: Double, y: Double) { + @inlinable public func createIIRFilter(feedforward: [Double], feedback: [Double]) -> IIRFilterNode { let this = jsObject - _ = this[Strings.quadraticCurveTo].function!(this: this, arguments: [cpx.jsValue, cpy.jsValue, x.jsValue, y.jsValue]) + return this[Strings.createIIRFilter].function!(this: this, arguments: [feedforward.jsValue, feedback.jsValue]).fromJSValue()! } - @inlinable func bezierCurveTo(cp1x: Double, cp1y: Double, cp2x: Double, cp2y: Double, x: Double, y: Double) { - let _arg0 = cp1x.jsValue - let _arg1 = cp1y.jsValue - let _arg2 = cp2x.jsValue - let _arg3 = cp2y.jsValue - let _arg4 = x.jsValue - let _arg5 = y.jsValue + @inlinable public func createOscillator() -> OscillatorNode { let this = jsObject - _ = this[Strings.bezierCurveTo].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) + return this[Strings.createOscillator].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func arcTo(x1: Double, y1: Double, x2: Double, y2: Double, radius: Double) { + @inlinable public func createPanner() -> PannerNode { let this = jsObject - _ = this[Strings.arcTo].function!(this: this, arguments: [x1.jsValue, y1.jsValue, x2.jsValue, y2.jsValue, radius.jsValue]) + return this[Strings.createPanner].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func rect(x: Double, y: Double, w: Double, h: Double) { + @inlinable public func createPeriodicWave(real: [Float], imag: [Float], constraints: PeriodicWaveConstraints? = nil) -> PeriodicWave { let this = jsObject - _ = this[Strings.rect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue]) + return this[Strings.createPeriodicWave].function!(this: this, arguments: [real.jsValue, imag.jsValue, constraints?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable func roundRect(x: Double, y: Double, w: Double, h: Double, radii: DOMPointInit_or_Double_or_seq_of_DOMPointInit_or_Double? = nil) { + @inlinable public func createScriptProcessor(bufferSize: UInt32? = nil, numberOfInputChannels: UInt32? = nil, numberOfOutputChannels: UInt32? = nil) -> ScriptProcessorNode { let this = jsObject - _ = this[Strings.roundRect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue, radii?.jsValue ?? .undefined]) + return this[Strings.createScriptProcessor].function!(this: this, arguments: [bufferSize?.jsValue ?? .undefined, numberOfInputChannels?.jsValue ?? .undefined, numberOfOutputChannels?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable func arc(x: Double, y: Double, radius: Double, startAngle: Double, endAngle: Double, counterclockwise: Bool? = nil) { - let _arg0 = x.jsValue - let _arg1 = y.jsValue - let _arg2 = radius.jsValue - let _arg3 = startAngle.jsValue - let _arg4 = endAngle.jsValue - let _arg5 = counterclockwise?.jsValue ?? .undefined + @inlinable public func createStereoPanner() -> StereoPannerNode { let this = jsObject - _ = this[Strings.arc].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) + return this[Strings.createStereoPanner].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func ellipse(x: Double, y: Double, radiusX: Double, radiusY: Double, rotation: Double, startAngle: Double, endAngle: Double, counterclockwise: Bool? = nil) { - let _arg0 = x.jsValue - let _arg1 = y.jsValue - let _arg2 = radiusX.jsValue - let _arg3 = radiusY.jsValue - let _arg4 = rotation.jsValue - let _arg5 = startAngle.jsValue - let _arg6 = endAngle.jsValue - let _arg7 = counterclockwise?.jsValue ?? .undefined + @inlinable public func createWaveShaper() -> WaveShaperNode { let this = jsObject - _ = this[Strings.ellipse].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7]) + return this[Strings.createWaveShaper].function!(this: this, arguments: []).fromJSValue()! } -} -public protocol CanvasPathDrawingStyles: JSBridgedClass {} -public extension CanvasPathDrawingStyles { - @inlinable var lineWidth: Double { - get { ReadWriteAttribute[Strings.lineWidth, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.lineWidth, in: jsObject] = newValue } - } + // XXX: member 'decodeAudioData' is ignored - @inlinable var lineCap: CanvasLineCap { - get { ReadWriteAttribute[Strings.lineCap, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.lineCap, in: jsObject] = newValue } + // XXX: member 'decodeAudioData' is ignored +} + +public class BaseComputedKeyframe: BridgedDictionary { + public convenience init(offset: Double?, computedOffset: Double, easing: String, composite: CompositeOperationOrAuto) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.offset] = offset.jsValue + object[Strings.computedOffset] = computedOffset.jsValue + object[Strings.easing] = easing.jsValue + object[Strings.composite] = composite.jsValue + self.init(unsafelyWrapping: object) } - @inlinable var lineJoin: CanvasLineJoin { - get { ReadWriteAttribute[Strings.lineJoin, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.lineJoin, in: jsObject] = newValue } + public required init(unsafelyWrapping object: JSObject) { + _offset = ReadWriteAttribute(jsObject: object, name: Strings.offset) + _computedOffset = ReadWriteAttribute(jsObject: object, name: Strings.computedOffset) + _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) + _composite = ReadWriteAttribute(jsObject: object, name: Strings.composite) + super.init(unsafelyWrapping: object) } - @inlinable var miterLimit: Double { - get { ReadWriteAttribute[Strings.miterLimit, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.miterLimit, in: jsObject] = newValue } + @ReadWriteAttribute + public var offset: Double? + + @ReadWriteAttribute + public var computedOffset: Double + + @ReadWriteAttribute + public var easing: String + + @ReadWriteAttribute + public var composite: CompositeOperationOrAuto +} + +public class BaseKeyframe: BridgedDictionary { + public convenience init(offset: Double?, easing: String, composite: CompositeOperationOrAuto) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.offset] = offset.jsValue + object[Strings.easing] = easing.jsValue + object[Strings.composite] = composite.jsValue + self.init(unsafelyWrapping: object) } - @inlinable func setLineDash(segments: [Double]) { - let this = jsObject - _ = this[Strings.setLineDash].function!(this: this, arguments: [segments.jsValue]) + public required init(unsafelyWrapping object: JSObject) { + _offset = ReadWriteAttribute(jsObject: object, name: Strings.offset) + _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) + _composite = ReadWriteAttribute(jsObject: object, name: Strings.composite) + super.init(unsafelyWrapping: object) } - @inlinable func getLineDash() -> [Double] { - let this = jsObject - return this[Strings.getLineDash].function!(this: this, arguments: []).fromJSValue()! + @ReadWriteAttribute + public var offset: Double? + + @ReadWriteAttribute + public var easing: String + + @ReadWriteAttribute + public var composite: CompositeOperationOrAuto +} + +public class BasePropertyIndexedKeyframe: BridgedDictionary { + public convenience init(offset: nullable_Double_or_seq_of_nullable_Double, easing: String_or_seq_of_String, composite: CompositeOperationOrAuto_or_seq_of_CompositeOperationOrAuto) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.offset] = offset.jsValue + object[Strings.easing] = easing.jsValue + object[Strings.composite] = composite.jsValue + self.init(unsafelyWrapping: object) } - @inlinable var lineDashOffset: Double { - get { ReadWriteAttribute[Strings.lineDashOffset, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.lineDashOffset, in: jsObject] = newValue } + public required init(unsafelyWrapping object: JSObject) { + _offset = ReadWriteAttribute(jsObject: object, name: Strings.offset) + _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) + _composite = ReadWriteAttribute(jsObject: object, name: Strings.composite) + super.init(unsafelyWrapping: object) } -} -public class CanvasPattern: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CanvasPattern].function! } + @ReadWriteAttribute + public var offset: nullable_Double_or_seq_of_nullable_Double - public let jsObject: JSObject + @ReadWriteAttribute + public var easing: String_or_seq_of_String + + @ReadWriteAttribute + public var composite: CompositeOperationOrAuto_or_seq_of_CompositeOperationOrAuto +} + +public class BeforeUnloadEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.BeforeUnloadEvent].function! } public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject + super.init(unsafelyWrapping: jsObject) } - @inlinable public func setTransform(transform: DOMMatrix2DInit? = nil) { - let this = jsObject - _ = this[Strings.setTransform].function!(this: this, arguments: [transform?.jsValue ?? .undefined]) - } + // XXX: member 'returnValue' is ignored } -public protocol CanvasRect: JSBridgedClass {} -public extension CanvasRect { - @inlinable func clearRect(x: Double, y: Double, w: Double, h: Double) { - let this = jsObject - _ = this[Strings.clearRect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue]) - } +public enum BinaryType: JSString, JSValueCompatible { + case blob = "blob" + case arraybuffer = "arraybuffer" - @inlinable func fillRect(x: Double, y: Double, w: Double, h: Double) { - let this = jsObject - _ = this[Strings.fillRect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue]) + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable func strokeRect(x: Double, y: Double, w: Double, h: Double) { - let this = jsObject - _ = this[Strings.strokeRect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue]) + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } -} -public class CanvasRenderingContext2D: JSBridgedClass, CanvasState, CanvasTransform, CanvasCompositing, CanvasImageSmoothing, CanvasFillStrokeStyles, CanvasShadowStyles, CanvasFilters, CanvasRect, CanvasDrawPath, CanvasUserInterface, CanvasText, CanvasDrawImage, CanvasImageData, CanvasPathDrawingStyles, CanvasTextDrawingStyles, CanvasPath { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CanvasRenderingContext2D].function! } + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - public let jsObject: JSObject +public class BiquadFilterNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.BiquadFilterNode].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _canvas = ReadonlyAttribute(jsObject: jsObject, name: Strings.canvas) - self.jsObject = jsObject + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _frequency = ReadonlyAttribute(jsObject: jsObject, name: Strings.frequency) + _detune = ReadonlyAttribute(jsObject: jsObject, name: Strings.detune) + _Q = ReadonlyAttribute(jsObject: jsObject, name: Strings.Q) + _gain = ReadonlyAttribute(jsObject: jsObject, name: Strings.gain) + super.init(unsafelyWrapping: jsObject) } + @inlinable public convenience init(context: BaseAudioContext, options: BiquadFilterOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } + + @ReadWriteAttribute + public var type: BiquadFilterType + @ReadonlyAttribute - public var canvas: HTMLCanvasElement + public var frequency: AudioParam - @inlinable public func getContextAttributes() -> CanvasRenderingContext2DSettings { + @ReadonlyAttribute + public var detune: AudioParam + + @ReadonlyAttribute + public var Q: AudioParam + + @ReadonlyAttribute + public var gain: AudioParam + + @inlinable public func getFrequencyResponse(frequencyHz: Float32Array, magResponse: Float32Array, phaseResponse: Float32Array) { let this = jsObject - return this[Strings.getContextAttributes].function!(this: this, arguments: []).fromJSValue()! + _ = this[Strings.getFrequencyResponse].function!(this: this, arguments: [frequencyHz.jsValue, magResponse.jsValue, phaseResponse.jsValue]) } } -public class CanvasRenderingContext2DSettings: BridgedDictionary { - public convenience init(alpha: Bool, desynchronized: Bool, colorSpace: PredefinedColorSpace, willReadFrequently: Bool) { +public class BiquadFilterOptions: BridgedDictionary { + public convenience init(type: BiquadFilterType, Q: Float, detune: Float, frequency: Float, gain: Float) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.alpha] = alpha.jsValue - object[Strings.desynchronized] = desynchronized.jsValue - object[Strings.colorSpace] = colorSpace.jsValue - object[Strings.willReadFrequently] = willReadFrequently.jsValue + object[Strings.type] = type.jsValue + object[Strings.Q] = Q.jsValue + object[Strings.detune] = detune.jsValue + object[Strings.frequency] = frequency.jsValue + object[Strings.gain] = gain.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _alpha = ReadWriteAttribute(jsObject: object, name: Strings.alpha) - _desynchronized = ReadWriteAttribute(jsObject: object, name: Strings.desynchronized) - _colorSpace = ReadWriteAttribute(jsObject: object, name: Strings.colorSpace) - _willReadFrequently = ReadWriteAttribute(jsObject: object, name: Strings.willReadFrequently) + _type = ReadWriteAttribute(jsObject: object, name: Strings.type) + _Q = ReadWriteAttribute(jsObject: object, name: Strings.Q) + _detune = ReadWriteAttribute(jsObject: object, name: Strings.detune) + _frequency = ReadWriteAttribute(jsObject: object, name: Strings.frequency) + _gain = ReadWriteAttribute(jsObject: object, name: Strings.gain) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var alpha: Bool + public var type: BiquadFilterType @ReadWriteAttribute - public var desynchronized: Bool + public var Q: Float @ReadWriteAttribute - public var colorSpace: PredefinedColorSpace + public var detune: Float @ReadWriteAttribute - public var willReadFrequently: Bool + public var frequency: Float + + @ReadWriteAttribute + public var gain: Float } -public protocol CanvasShadowStyles: JSBridgedClass {} -public extension CanvasShadowStyles { - @inlinable var shadowOffsetX: Double { - get { ReadWriteAttribute[Strings.shadowOffsetX, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.shadowOffsetX, in: jsObject] = newValue } - } +public enum BiquadFilterType: JSString, JSValueCompatible { + case lowpass = "lowpass" + case highpass = "highpass" + case bandpass = "bandpass" + case lowshelf = "lowshelf" + case highshelf = "highshelf" + case peaking = "peaking" + case notch = "notch" + case allpass = "allpass" - @inlinable var shadowOffsetY: Double { - get { ReadWriteAttribute[Strings.shadowOffsetY, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.shadowOffsetY, in: jsObject] = newValue } + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable var shadowBlur: Double { - get { ReadWriteAttribute[Strings.shadowBlur, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.shadowBlur, in: jsObject] = newValue } + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @inlinable var shadowColor: String { - get { ReadWriteAttribute[Strings.shadowColor, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.shadowColor, in: jsObject] = newValue } - } + @inlinable public var jsValue: JSValue { rawValue.jsValue } } -public protocol CanvasState: JSBridgedClass {} -public extension CanvasState { - @inlinable func save() { - let this = jsObject - _ = this[Strings.save].function!(this: this, arguments: []) +public class Blob: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Blob].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _size = ReadonlyAttribute(jsObject: jsObject, name: Strings.size) + _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) + self.jsObject = jsObject } - @inlinable func restore() { - let this = jsObject - _ = this[Strings.restore].function!(this: this, arguments: []) + @inlinable public convenience init(blobParts: [BlobPart]? = nil, options: BlobPropertyBag? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [blobParts?.jsValue ?? .undefined, options?.jsValue ?? .undefined])) } - @inlinable func reset() { + @ReadonlyAttribute + public var size: UInt64 + + @ReadonlyAttribute + public var type: String + + @inlinable public func slice(start: Int64? = nil, end: Int64? = nil, contentType: String? = nil) -> Self { let this = jsObject - _ = this[Strings.reset].function!(this: this, arguments: []) + return this[Strings.slice].function!(this: this, arguments: [start?.jsValue ?? .undefined, end?.jsValue ?? .undefined, contentType?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable func isContextLost() -> Bool { + // XXX: member 'stream' is ignored + + @inlinable public func text() -> JSPromise { let this = jsObject - return this[Strings.isContextLost].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.text].function!(this: this, arguments: []).fromJSValue()! } -} -public protocol CanvasText: JSBridgedClass {} -public extension CanvasText { - @inlinable func fillText(text: String, x: Double, y: Double, maxWidth: Double? = nil) { + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func text() async throws -> String { let this = jsObject - _ = this[Strings.fillText].function!(this: this, arguments: [text.jsValue, x.jsValue, y.jsValue, maxWidth?.jsValue ?? .undefined]) + let _promise: JSPromise = this[Strings.text].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable func strokeText(text: String, x: Double, y: Double, maxWidth: Double? = nil) { + @inlinable public func arrayBuffer() -> JSPromise { let this = jsObject - _ = this[Strings.strokeText].function!(this: this, arguments: [text.jsValue, x.jsValue, y.jsValue, maxWidth?.jsValue ?? .undefined]) + return this[Strings.arrayBuffer].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func measureText(text: String) -> TextMetrics { + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func arrayBuffer() async throws -> ArrayBuffer { let this = jsObject - return this[Strings.measureText].function!(this: this, arguments: [text.jsValue]).fromJSValue()! + let _promise: JSPromise = this[Strings.arrayBuffer].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } } -public enum CanvasTextAlign: JSString, JSValueCompatible { - case start = "start" - case end = "end" - case left = "left" - case right = "right" - case center = "center" +public class BlobPropertyBag: BridgedDictionary { + public convenience init(type: String, endings: EndingType) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.type] = type.jsValue + object[Strings.endings] = endings.jsValue + self.init(unsafelyWrapping: object) + } - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } - - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) - } - - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} - -public enum CanvasTextBaseline: JSString, JSValueCompatible { - case top = "top" - case hanging = "hanging" - case middle = "middle" - case alphabetic = "alphabetic" - case ideographic = "ideographic" - case bottom = "bottom" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + public required init(unsafelyWrapping object: JSObject) { + _type = ReadWriteAttribute(jsObject: object, name: Strings.type) + _endings = ReadWriteAttribute(jsObject: object, name: Strings.endings) + super.init(unsafelyWrapping: object) } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) - } + @ReadWriteAttribute + public var type: String - @inlinable public var jsValue: JSValue { rawValue.jsValue } + @ReadWriteAttribute + public var endings: EndingType } -public protocol CanvasTextDrawingStyles: JSBridgedClass {} -public extension CanvasTextDrawingStyles { - @inlinable var font: String { - get { ReadWriteAttribute[Strings.font, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.font, in: jsObject] = newValue } - } - - @inlinable var textAlign: CanvasTextAlign { - get { ReadWriteAttribute[Strings.textAlign, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.textAlign, in: jsObject] = newValue } - } - - @inlinable var textBaseline: CanvasTextBaseline { - get { ReadWriteAttribute[Strings.textBaseline, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.textBaseline, in: jsObject] = newValue } - } - - @inlinable var direction: CanvasDirection { - get { ReadWriteAttribute[Strings.direction, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.direction, in: jsObject] = newValue } - } - - @inlinable var letterSpacing: String { - get { ReadWriteAttribute[Strings.letterSpacing, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.letterSpacing, in: jsObject] = newValue } - } - - @inlinable var fontKerning: CanvasFontKerning { - get { ReadWriteAttribute[Strings.fontKerning, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.fontKerning, in: jsObject] = newValue } - } - - @inlinable var fontStretch: CanvasFontStretch { - get { ReadWriteAttribute[Strings.fontStretch, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.fontStretch, in: jsObject] = newValue } - } +public protocol Body: JSBridgedClass {} +public extension Body { + // XXX: attribute 'body' is ignored - @inlinable var fontVariantCaps: CanvasFontVariantCaps { - get { ReadWriteAttribute[Strings.fontVariantCaps, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.fontVariantCaps, in: jsObject] = newValue } - } + @inlinable var bodyUsed: Bool { ReadonlyAttribute[Strings.bodyUsed, in: jsObject] } - @inlinable var textRendering: CanvasTextRendering { - get { ReadWriteAttribute[Strings.textRendering, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.textRendering, in: jsObject] = newValue } + @inlinable func arrayBuffer() -> JSPromise { + let this = jsObject + return this[Strings.arrayBuffer].function!(this: this, arguments: []).fromJSValue()! } - @inlinable var wordSpacing: String { - get { ReadWriteAttribute[Strings.wordSpacing, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.wordSpacing, in: jsObject] = newValue } + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable func arrayBuffer() async throws -> ArrayBuffer { + let this = jsObject + let _promise: JSPromise = this[Strings.arrayBuffer].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } -} -public enum CanvasTextRendering: JSString, JSValueCompatible { - case auto = "auto" - case optimizeSpeed = "optimizeSpeed" - case optimizeLegibility = "optimizeLegibility" - case geometricPrecision = "geometricPrecision" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @inlinable func blob() -> JSPromise { + let this = jsObject + return this[Strings.blob].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable func blob() async throws -> Blob { + let this = jsObject + let _promise: JSPromise = this[Strings.blob].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} - -public protocol CanvasTransform: JSBridgedClass {} -public extension CanvasTransform { - @inlinable func scale(x: Double, y: Double) { + @inlinable func formData() -> JSPromise { let this = jsObject - _ = this[Strings.scale].function!(this: this, arguments: [x.jsValue, y.jsValue]) + return this[Strings.formData].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func rotate(angle: Double) { + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable func formData() async throws -> FormData { let this = jsObject - _ = this[Strings.rotate].function!(this: this, arguments: [angle.jsValue]) + let _promise: JSPromise = this[Strings.formData].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable func translate(x: Double, y: Double) { + @inlinable func json() -> JSPromise { let this = jsObject - _ = this[Strings.translate].function!(this: this, arguments: [x.jsValue, y.jsValue]) + return this[Strings.json].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func transform(a: Double, b: Double, c: Double, d: Double, e: Double, f: Double) { - let _arg0 = a.jsValue - let _arg1 = b.jsValue - let _arg2 = c.jsValue - let _arg3 = d.jsValue - let _arg4 = e.jsValue - let _arg5 = f.jsValue + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable func json() async throws -> JSValue { let this = jsObject - _ = this[Strings.transform].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) + let _promise: JSPromise = this[Strings.json].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable func getTransform() -> DOMMatrix { + @inlinable func text() -> JSPromise { let this = jsObject - return this[Strings.getTransform].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.text].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func setTransform(a: Double, b: Double, c: Double, d: Double, e: Double, f: Double) { - let _arg0 = a.jsValue - let _arg1 = b.jsValue - let _arg2 = c.jsValue - let _arg3 = d.jsValue - let _arg4 = e.jsValue - let _arg5 = f.jsValue + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable func text() async throws -> String { let this = jsObject - _ = this[Strings.setTransform].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) + let _promise: JSPromise = this[Strings.text].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } +} - @inlinable func setTransform(transform: DOMMatrix2DInit? = nil) { - let this = jsObject - _ = this[Strings.setTransform].function!(this: this, arguments: [transform?.jsValue ?? .undefined]) +public class BoxQuadOptions: BridgedDictionary { + public convenience init(box: CSSBoxType, relativeTo: GeometryNode) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.box] = box.jsValue + object[Strings.relativeTo] = relativeTo.jsValue + self.init(unsafelyWrapping: object) } - @inlinable func resetTransform() { - let this = jsObject - _ = this[Strings.resetTransform].function!(this: this, arguments: []) + public required init(unsafelyWrapping object: JSObject) { + _box = ReadWriteAttribute(jsObject: object, name: Strings.box) + _relativeTo = ReadWriteAttribute(jsObject: object, name: Strings.relativeTo) + super.init(unsafelyWrapping: object) } + + @ReadWriteAttribute + public var box: CSSBoxType + + @ReadWriteAttribute + public var relativeTo: GeometryNode } -public protocol CanvasUserInterface: JSBridgedClass {} -public extension CanvasUserInterface { - @inlinable func drawFocusIfNeeded(element: Element) { - let this = jsObject - _ = this[Strings.drawFocusIfNeeded].function!(this: this, arguments: [element.jsValue]) +public class BroadcastChannel: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.BroadcastChannel].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _name = ReadonlyAttribute(jsObject: jsObject, name: Strings.name) + _onmessage = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onmessage) + _onmessageerror = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onmessageerror) + super.init(unsafelyWrapping: jsObject) } - @inlinable func drawFocusIfNeeded(path: Path2D, element: Element) { - let this = jsObject - _ = this[Strings.drawFocusIfNeeded].function!(this: this, arguments: [path.jsValue, element.jsValue]) + @inlinable public convenience init(name: String) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [name.jsValue])) } - @inlinable func scrollPathIntoView() { + @ReadonlyAttribute + public var name: String + + @inlinable public func postMessage(message: JSValue) { let this = jsObject - _ = this[Strings.scrollPathIntoView].function!(this: this, arguments: []) + _ = this[Strings.postMessage].function!(this: this, arguments: [message.jsValue]) } - @inlinable func scrollPathIntoView(path: Path2D) { + @inlinable public func close() { let this = jsObject - _ = this[Strings.scrollPathIntoView].function!(this: this, arguments: [path.jsValue]) + _ = this[Strings.close].function!(this: this, arguments: []) } + + @ClosureAttribute1Optional + public var onmessage: EventHandler + + @ClosureAttribute1Optional + public var onmessageerror: EventHandler } -public class CaretPosition: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CaretPosition].function! } +public class ByteLengthQueuingStrategy: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ByteLengthQueuingStrategy].function! } public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - _offsetNode = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetNode) - _offset = ReadonlyAttribute(jsObject: jsObject, name: Strings.offset) + _highWaterMark = ReadonlyAttribute(jsObject: jsObject, name: Strings.highWaterMark) + _size = ReadonlyAttribute(jsObject: jsObject, name: Strings.size) self.jsObject = jsObject } - @ReadonlyAttribute - public var offsetNode: Node + @inlinable public convenience init(init: QueuingStrategyInit) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`.jsValue])) + } @ReadonlyAttribute - public var offset: UInt32 + public var highWaterMark: Double - @inlinable public func getClientRect() -> DOMRect? { - let this = jsObject - return this[Strings.getClientRect].function!(this: this, arguments: []).fromJSValue()! - } + @ReadonlyAttribute + public var size: JSFunction } -public class CharacterData: Node, NonDocumentTypeChildNode, ChildNode { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CharacterData].function! } +public class CDATASection: Text { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CDATASection].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _data = ReadWriteAttribute(jsObject: jsObject, name: Strings.data) - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) super.init(unsafelyWrapping: jsObject) } +} - @ReadWriteAttribute - public var data: String - - @ReadonlyAttribute - public var length: UInt32 - - @inlinable public func substringData(offset: UInt32, count: UInt32) -> String { - let this = jsObject - return this[Strings.substringData].function!(this: this, arguments: [offset.jsValue, count.jsValue]).fromJSValue()! - } +public enum CSSBoxType: JSString, JSValueCompatible { + case margin = "margin" + case border = "border" + case padding = "padding" + case content = "content" - @inlinable public func appendData(data: String) { - let this = jsObject - _ = this[Strings.appendData].function!(this: this, arguments: [data.jsValue]) + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable public func insertData(offset: UInt32, data: String) { - let this = jsObject - _ = this[Strings.insertData].function!(this: this, arguments: [offset.jsValue, data.jsValue]) + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @inlinable public func deleteData(offset: UInt32, count: UInt32) { - let this = jsObject - _ = this[Strings.deleteData].function!(this: this, arguments: [offset.jsValue, count.jsValue]) + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class CSSPseudoElement: EventTarget, GeometryUtils { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CSSPseudoElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) + _element = ReadonlyAttribute(jsObject: jsObject, name: Strings.element) + _parent = ReadonlyAttribute(jsObject: jsObject, name: Strings.parent) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func replaceData(offset: UInt32, count: UInt32, data: String) { + @ReadonlyAttribute + public var type: String + + @ReadonlyAttribute + public var element: Element + + @ReadonlyAttribute + public var parent: CSSPseudoElement_or_Element + + @inlinable public func pseudo(type: String) -> CSSPseudoElement? { let this = jsObject - _ = this[Strings.replaceData].function!(this: this, arguments: [offset.jsValue, count.jsValue, data.jsValue]) + return this[Strings.pseudo].function!(this: this, arguments: [type.jsValue]).fromJSValue()! } } -public protocol ChildNode: JSBridgedClass {} -public extension ChildNode { - @inlinable func before(nodes: Node_or_String...) { - let this = jsObject - _ = this[Strings.before].function!(this: this, arguments: nodes.map(\.jsValue)) +public class Cache: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Cache].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject } - @inlinable func after(nodes: Node_or_String...) { + @inlinable public func match(request: RequestInfo, options: CacheQueryOptions? = nil) -> JSPromise { let this = jsObject - _ = this[Strings.after].function!(this: this, arguments: nodes.map(\.jsValue)) + return this[Strings.match].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable func replaceWith(nodes: Node_or_String...) { + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func match(request: RequestInfo, options: CacheQueryOptions? = nil) async throws -> Response? { let this = jsObject - _ = this[Strings.replaceWith].function!(this: this, arguments: nodes.map(\.jsValue)) + let _promise: JSPromise = this[Strings.match].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable func remove() { + @inlinable public func matchAll(request: RequestInfo? = nil, options: CacheQueryOptions? = nil) -> JSPromise { let this = jsObject - _ = this[Strings.remove].function!(this: this, arguments: []) + return this[Strings.matchAll].function!(this: this, arguments: [request?.jsValue ?? .undefined, options?.jsValue ?? .undefined]).fromJSValue()! } -} -public class ClientQueryOptions: BridgedDictionary { - public convenience init(includeUncontrolled: Bool, type: ClientType) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.includeUncontrolled] = includeUncontrolled.jsValue - object[Strings.type] = type.jsValue - self.init(unsafelyWrapping: object) + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func matchAll(request: RequestInfo? = nil, options: CacheQueryOptions? = nil) async throws -> [Response] { + let this = jsObject + let _promise: JSPromise = this[Strings.matchAll].function!(this: this, arguments: [request?.jsValue ?? .undefined, options?.jsValue ?? .undefined]).fromJSValue()! + return try await _promise.value.fromJSValue()! } - public required init(unsafelyWrapping object: JSObject) { - _includeUncontrolled = ReadWriteAttribute(jsObject: object, name: Strings.includeUncontrolled) - _type = ReadWriteAttribute(jsObject: object, name: Strings.type) - super.init(unsafelyWrapping: object) + @inlinable public func add(request: RequestInfo) -> JSPromise { + let this = jsObject + return this[Strings.add].function!(this: this, arguments: [request.jsValue]).fromJSValue()! } - @ReadWriteAttribute - public var includeUncontrolled: Bool - - @ReadWriteAttribute - public var type: ClientType -} - -public enum ClientType: JSString, JSValueCompatible { - case window = "window" - case worker = "worker" - case sharedworker = "sharedworker" - case all = "all" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func add(request: RequestInfo) async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.add].function!(this: this, arguments: [request.jsValue]).fromJSValue()! + _ = try await _promise.value } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable public func addAll(requests: [RequestInfo]) -> JSPromise { + let this = jsObject + return this[Strings.addAll].function!(this: this, arguments: [requests.jsValue]).fromJSValue()! } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func addAll(requests: [RequestInfo]) async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.addAll].function!(this: this, arguments: [requests.jsValue]).fromJSValue()! + _ = try await _promise.value + } -public class CloseEvent: Event { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CloseEvent].function! } + @inlinable public func put(request: RequestInfo, response: Response) -> JSPromise { + let this = jsObject + return this[Strings.put].function!(this: this, arguments: [request.jsValue, response.jsValue]).fromJSValue()! + } - public required init(unsafelyWrapping jsObject: JSObject) { - _wasClean = ReadonlyAttribute(jsObject: jsObject, name: Strings.wasClean) - _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code) - _reason = ReadonlyAttribute(jsObject: jsObject, name: Strings.reason) - super.init(unsafelyWrapping: jsObject) + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func put(request: RequestInfo, response: Response) async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.put].function!(this: this, arguments: [request.jsValue, response.jsValue]).fromJSValue()! + _ = try await _promise.value } - @inlinable public convenience init(type: String, eventInitDict: CloseEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable public func delete(request: RequestInfo, options: CacheQueryOptions? = nil) -> JSPromise { + let this = jsObject + return this[Strings.delete].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! } - @ReadonlyAttribute - public var wasClean: Bool + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func delete(request: RequestInfo, options: CacheQueryOptions? = nil) async throws -> Bool { + let this = jsObject + let _promise: JSPromise = this[Strings.delete].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + return try await _promise.value.fromJSValue()! + } - @ReadonlyAttribute - public var code: UInt16 + @inlinable public func keys(request: RequestInfo? = nil, options: CacheQueryOptions? = nil) -> JSPromise { + let this = jsObject + return this[Strings.keys].function!(this: this, arguments: [request?.jsValue ?? .undefined, options?.jsValue ?? .undefined]).fromJSValue()! + } - @ReadonlyAttribute - public var reason: String + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func keys(request: RequestInfo? = nil, options: CacheQueryOptions? = nil) async throws -> [Request] { + let this = jsObject + let _promise: JSPromise = this[Strings.keys].function!(this: this, arguments: [request?.jsValue ?? .undefined, options?.jsValue ?? .undefined]).fromJSValue()! + return try await _promise.value.fromJSValue()! + } } -public class CloseEventInit: BridgedDictionary { - public convenience init(wasClean: Bool, code: UInt16, reason: String) { +public class CacheQueryOptions: BridgedDictionary { + public convenience init(ignoreSearch: Bool, ignoreMethod: Bool, ignoreVary: Bool) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.wasClean] = wasClean.jsValue - object[Strings.code] = code.jsValue - object[Strings.reason] = reason.jsValue + object[Strings.ignoreSearch] = ignoreSearch.jsValue + object[Strings.ignoreMethod] = ignoreMethod.jsValue + object[Strings.ignoreVary] = ignoreVary.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _wasClean = ReadWriteAttribute(jsObject: object, name: Strings.wasClean) - _code = ReadWriteAttribute(jsObject: object, name: Strings.code) - _reason = ReadWriteAttribute(jsObject: object, name: Strings.reason) + _ignoreSearch = ReadWriteAttribute(jsObject: object, name: Strings.ignoreSearch) + _ignoreMethod = ReadWriteAttribute(jsObject: object, name: Strings.ignoreMethod) + _ignoreVary = ReadWriteAttribute(jsObject: object, name: Strings.ignoreVary) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var wasClean: Bool + public var ignoreSearch: Bool @ReadWriteAttribute - public var code: UInt16 + public var ignoreMethod: Bool @ReadWriteAttribute - public var reason: String + public var ignoreVary: Bool } -public enum ColorSpaceConversion: JSString, JSValueCompatible { - case none = "none" - case `default` = "default" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } - - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) - } - - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} +public class CacheStorage: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CacheStorage].function! } -public class Comment: CharacterData { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.Comment].function! } + public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) + self.jsObject = jsObject } - @inlinable public convenience init(data: String? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [data?.jsValue ?? .undefined])) + @inlinable public func match(request: RequestInfo, options: MultiCacheQueryOptions? = nil) -> JSPromise { + let this = jsObject + return this[Strings.match].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! } -} -public enum CompositeOperation: JSString, JSValueCompatible { - case replace = "replace" - case add = "add" - case accumulate = "accumulate" + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func match(request: RequestInfo, options: MultiCacheQueryOptions? = nil) async throws -> Response? { + let this = jsObject + let _promise: JSPromise = this[Strings.match].function!(this: this, arguments: [request.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + return try await _promise.value.fromJSValue()! + } - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @inlinable public func has(cacheName: String) -> JSPromise { + let this = jsObject + return this[Strings.has].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func has(cacheName: String) async throws -> Bool { + let this = jsObject + let _promise: JSPromise = this[Strings.has].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} + @inlinable public func open(cacheName: String) -> JSPromise { + let this = jsObject + return this[Strings.open].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! + } -public enum CompositeOperationOrAuto: JSString, JSValueCompatible { - case replace = "replace" - case add = "add" - case accumulate = "accumulate" - case auto = "auto" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func open(cacheName: String) async throws -> Cache { + let this = jsObject + let _promise: JSPromise = this[Strings.open].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable public func delete(cacheName: String) -> JSPromise { + let this = jsObject + return this[Strings.delete].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} - -public class CompositionEvent: UIEvent { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CompositionEvent].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _data = ReadonlyAttribute(jsObject: jsObject, name: Strings.data) - super.init(unsafelyWrapping: jsObject) + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func delete(cacheName: String) async throws -> Bool { + let this = jsObject + let _promise: JSPromise = this[Strings.delete].function!(this: this, arguments: [cacheName.jsValue]).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable public convenience init(type: String, eventInitDict: CompositionEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable public func keys() -> JSPromise { + let this = jsObject + return this[Strings.keys].function!(this: this, arguments: []).fromJSValue()! } - @ReadonlyAttribute - public var data: String - - @inlinable public func initCompositionEvent(typeArg: String, bubblesArg: Bool? = nil, cancelableArg: Bool? = nil, viewArg: WindowProxy? = nil, dataArg: String? = nil) { + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func keys() async throws -> [String] { let this = jsObject - _ = this[Strings.initCompositionEvent].function!(this: this, arguments: [typeArg.jsValue, bubblesArg?.jsValue ?? .undefined, cancelableArg?.jsValue ?? .undefined, viewArg?.jsValue ?? .undefined, dataArg?.jsValue ?? .undefined]) + let _promise: JSPromise = this[Strings.keys].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } } -public class CompositionEventInit: BridgedDictionary { - public convenience init(data: String) { +public class CameraDevicePermissionDescriptor: BridgedDictionary { + public convenience init(panTiltZoom: Bool) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.data] = data.jsValue + object[Strings.panTiltZoom] = panTiltZoom.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _data = ReadWriteAttribute(jsObject: object, name: Strings.data) + _panTiltZoom = ReadWriteAttribute(jsObject: object, name: Strings.panTiltZoom) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var data: String + public var panTiltZoom: Bool } -public class ComputedEffectTiming: BridgedDictionary { - public convenience init(progress: Double?, currentIteration: Double?) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.progress] = progress.jsValue - object[Strings.currentIteration] = currentIteration.jsValue - self.init(unsafelyWrapping: object) - } +public enum CanPlayTypeResult: JSString, JSValueCompatible { + case _empty = "" + case maybe = "maybe" + case probably = "probably" - public required init(unsafelyWrapping object: JSObject) { - _progress = ReadWriteAttribute(jsObject: object, name: Strings.progress) - _currentIteration = ReadWriteAttribute(jsObject: object, name: Strings.currentIteration) - super.init(unsafelyWrapping: object) + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @ReadWriteAttribute - public var progress: Double? + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - @ReadWriteAttribute - public var currentIteration: Double? + @inlinable public var jsValue: JSValue { rawValue.jsValue } } -public class ConvertCoordinateOptions: BridgedDictionary { - public convenience init(fromBox: CSSBoxType, toBox: CSSBoxType) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.fromBox] = fromBox.jsValue - object[Strings.toBox] = toBox.jsValue - self.init(unsafelyWrapping: object) +public protocol CanvasCompositing: JSBridgedClass {} +public extension CanvasCompositing { + @inlinable var globalAlpha: Double { + get { ReadWriteAttribute[Strings.globalAlpha, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.globalAlpha, in: jsObject] = newValue } } - public required init(unsafelyWrapping object: JSObject) { - _fromBox = ReadWriteAttribute(jsObject: object, name: Strings.fromBox) - _toBox = ReadWriteAttribute(jsObject: object, name: Strings.toBox) - super.init(unsafelyWrapping: object) + @inlinable var globalCompositeOperation: String { + get { ReadWriteAttribute[Strings.globalCompositeOperation, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.globalCompositeOperation, in: jsObject] = newValue } } - - @ReadWriteAttribute - public var fromBox: CSSBoxType - - @ReadWriteAttribute - public var toBox: CSSBoxType } -public class CountQueuingStrategy: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CountQueuingStrategy].function! } - - public let jsObject: JSObject +public enum CanvasDirection: JSString, JSValueCompatible { + case ltr = "ltr" + case rtl = "rtl" + case inherit = "inherit" - public required init(unsafelyWrapping jsObject: JSObject) { - _highWaterMark = ReadonlyAttribute(jsObject: jsObject, name: Strings.highWaterMark) - _size = ReadonlyAttribute(jsObject: jsObject, name: Strings.size) - self.jsObject = jsObject + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable public convenience init(init: QueuingStrategyInit) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`.jsValue])) + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @ReadonlyAttribute - public var highWaterMark: Double - - @ReadonlyAttribute - public var size: JSFunction + @inlinable public var jsValue: JSValue { rawValue.jsValue } } -public class CustomElementRegistry: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CustomElementRegistry].function! } - - public let jsObject: JSObject - - public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject +public protocol CanvasDrawImage: JSBridgedClass {} +public extension CanvasDrawImage { + @inlinable func drawImage(image: CanvasImageSource, dx: Double, dy: Double) { + let this = jsObject + _ = this[Strings.drawImage].function!(this: this, arguments: [image.jsValue, dx.jsValue, dy.jsValue]) } - @inlinable public func define(name: String, constructor: CustomElementConstructor, options: ElementDefinitionOptions? = nil) { + @inlinable func drawImage(image: CanvasImageSource, dx: Double, dy: Double, dw: Double, dh: Double) { let this = jsObject - _ = this[Strings.define].function!(this: this, arguments: [name.jsValue, constructor.jsValue, options?.jsValue ?? .undefined]) + _ = this[Strings.drawImage].function!(this: this, arguments: [image.jsValue, dx.jsValue, dy.jsValue, dw.jsValue, dh.jsValue]) } - @inlinable public func get(name: String) -> CustomElementConstructor? { + @inlinable func drawImage(image: CanvasImageSource, sx: Double, sy: Double, sw: Double, sh: Double, dx: Double, dy: Double, dw: Double, dh: Double) { + let _arg0 = image.jsValue + let _arg1 = sx.jsValue + let _arg2 = sy.jsValue + let _arg3 = sw.jsValue + let _arg4 = sh.jsValue + let _arg5 = dx.jsValue + let _arg6 = dy.jsValue + let _arg7 = dw.jsValue + let _arg8 = dh.jsValue let this = jsObject - return this[Strings.get].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + _ = this[Strings.drawImage].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8]) } +} - @inlinable public func whenDefined(name: String) -> JSPromise { +public protocol CanvasDrawPath: JSBridgedClass {} +public extension CanvasDrawPath { + @inlinable func beginPath() { let this = jsObject - return this[Strings.whenDefined].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + _ = this[Strings.beginPath].function!(this: this, arguments: []) } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func whenDefined(name: String) async throws -> CustomElementConstructor { + @inlinable func fill(fillRule: CanvasFillRule? = nil) { let this = jsObject - let _promise: JSPromise = this[Strings.whenDefined].function!(this: this, arguments: [name.jsValue]).fromJSValue()! - return try await _promise.value.fromJSValue()! + _ = this[Strings.fill].function!(this: this, arguments: [fillRule?.jsValue ?? .undefined]) } - @inlinable public func upgrade(root: Node) { + @inlinable func fill(path: Path2D, fillRule: CanvasFillRule? = nil) { let this = jsObject - _ = this[Strings.upgrade].function!(this: this, arguments: [root.jsValue]) + _ = this[Strings.fill].function!(this: this, arguments: [path.jsValue, fillRule?.jsValue ?? .undefined]) } -} -public class CustomEvent: Event { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CustomEvent].function! } + @inlinable func stroke() { + let this = jsObject + _ = this[Strings.stroke].function!(this: this, arguments: []) + } - public required init(unsafelyWrapping jsObject: JSObject) { - _detail = ReadonlyAttribute(jsObject: jsObject, name: Strings.detail) - super.init(unsafelyWrapping: jsObject) + @inlinable func stroke(path: Path2D) { + let this = jsObject + _ = this[Strings.stroke].function!(this: this, arguments: [path.jsValue]) } - @inlinable public convenience init(type: String, eventInitDict: CustomEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable func clip(fillRule: CanvasFillRule? = nil) { + let this = jsObject + _ = this[Strings.clip].function!(this: this, arguments: [fillRule?.jsValue ?? .undefined]) } - @ReadonlyAttribute - public var detail: JSValue + @inlinable func clip(path: Path2D, fillRule: CanvasFillRule? = nil) { + let this = jsObject + _ = this[Strings.clip].function!(this: this, arguments: [path.jsValue, fillRule?.jsValue ?? .undefined]) + } - @inlinable public func initCustomEvent(type: String, bubbles: Bool? = nil, cancelable: Bool? = nil, detail: JSValue? = nil) { + @inlinable func isPointInPath(x: Double, y: Double, fillRule: CanvasFillRule? = nil) -> Bool { let this = jsObject - _ = this[Strings.initCustomEvent].function!(this: this, arguments: [type.jsValue, bubbles?.jsValue ?? .undefined, cancelable?.jsValue ?? .undefined, detail?.jsValue ?? .undefined]) + return this[Strings.isPointInPath].function!(this: this, arguments: [x.jsValue, y.jsValue, fillRule?.jsValue ?? .undefined]).fromJSValue()! } -} -public class CustomEventInit: BridgedDictionary { - public convenience init(detail: JSValue) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.detail] = detail.jsValue - self.init(unsafelyWrapping: object) + @inlinable func isPointInPath(path: Path2D, x: Double, y: Double, fillRule: CanvasFillRule? = nil) -> Bool { + let this = jsObject + return this[Strings.isPointInPath].function!(this: this, arguments: [path.jsValue, x.jsValue, y.jsValue, fillRule?.jsValue ?? .undefined]).fromJSValue()! } - public required init(unsafelyWrapping object: JSObject) { - _detail = ReadWriteAttribute(jsObject: object, name: Strings.detail) - super.init(unsafelyWrapping: object) + @inlinable func isPointInStroke(x: Double, y: Double) -> Bool { + let this = jsObject + return this[Strings.isPointInStroke].function!(this: this, arguments: [x.jsValue, y.jsValue]).fromJSValue()! } - @ReadWriteAttribute - public var detail: JSValue + @inlinable func isPointInStroke(path: Path2D, x: Double, y: Double) -> Bool { + let this = jsObject + return this[Strings.isPointInStroke].function!(this: this, arguments: [path.jsValue, x.jsValue, y.jsValue]).fromJSValue()! + } } -public class DOMException: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMException].function! } - - public let jsObject: JSObject +public enum CanvasFillRule: JSString, JSValueCompatible { + case nonzero = "nonzero" + case evenodd = "evenodd" - public required init(unsafelyWrapping jsObject: JSObject) { - _name = ReadonlyAttribute(jsObject: jsObject, name: Strings.name) - _message = ReadonlyAttribute(jsObject: jsObject, name: Strings.message) - _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code) - self.jsObject = jsObject + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable public convenience init(message: String? = nil, name: String? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [message?.jsValue ?? .undefined, name?.jsValue ?? .undefined])) + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @ReadonlyAttribute - public var name: String - - @ReadonlyAttribute - public var message: String + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @ReadonlyAttribute - public var code: UInt16 - - public static let INDEX_SIZE_ERR: UInt16 = 1 - - public static let DOMSTRING_SIZE_ERR: UInt16 = 2 - - public static let HIERARCHY_REQUEST_ERR: UInt16 = 3 +public protocol CanvasFillStrokeStyles: JSBridgedClass {} +public extension CanvasFillStrokeStyles { + @inlinable var strokeStyle: CanvasGradient_or_CanvasPattern_or_String { + get { ReadWriteAttribute[Strings.strokeStyle, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.strokeStyle, in: jsObject] = newValue } + } - public static let WRONG_DOCUMENT_ERR: UInt16 = 4 + @inlinable var fillStyle: CanvasGradient_or_CanvasPattern_or_String { + get { ReadWriteAttribute[Strings.fillStyle, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.fillStyle, in: jsObject] = newValue } + } - public static let INVALID_CHARACTER_ERR: UInt16 = 5 + @inlinable func createLinearGradient(x0: Double, y0: Double, x1: Double, y1: Double) -> CanvasGradient { + let this = jsObject + return this[Strings.createLinearGradient].function!(this: this, arguments: [x0.jsValue, y0.jsValue, x1.jsValue, y1.jsValue]).fromJSValue()! + } - public static let NO_DATA_ALLOWED_ERR: UInt16 = 6 + @inlinable func createRadialGradient(x0: Double, y0: Double, r0: Double, x1: Double, y1: Double, r1: Double) -> CanvasGradient { + let _arg0 = x0.jsValue + let _arg1 = y0.jsValue + let _arg2 = r0.jsValue + let _arg3 = x1.jsValue + let _arg4 = y1.jsValue + let _arg5 = r1.jsValue + let this = jsObject + return this[Strings.createRadialGradient].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]).fromJSValue()! + } - public static let NO_MODIFICATION_ALLOWED_ERR: UInt16 = 7 + @inlinable func createConicGradient(startAngle: Double, x: Double, y: Double) -> CanvasGradient { + let this = jsObject + return this[Strings.createConicGradient].function!(this: this, arguments: [startAngle.jsValue, x.jsValue, y.jsValue]).fromJSValue()! + } - public static let NOT_FOUND_ERR: UInt16 = 8 + @inlinable func createPattern(image: CanvasImageSource, repetition: String) -> CanvasPattern? { + let this = jsObject + return this[Strings.createPattern].function!(this: this, arguments: [image.jsValue, repetition.jsValue]).fromJSValue()! + } +} - public static let NOT_SUPPORTED_ERR: UInt16 = 9 +public class CanvasFilter: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CanvasFilter].function! } - public static let INUSE_ATTRIBUTE_ERR: UInt16 = 10 + public let jsObject: JSObject - public static let INVALID_STATE_ERR: UInt16 = 11 + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject + } - public static let SYNTAX_ERR: UInt16 = 12 + @inlinable public convenience init(filters: CanvasFilterInput_or_seq_of_CanvasFilterInput? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [filters?.jsValue ?? .undefined])) + } +} - public static let INVALID_MODIFICATION_ERR: UInt16 = 13 +public protocol CanvasFilters: JSBridgedClass {} +public extension CanvasFilters { + @inlinable var filter: CanvasFilter_or_String { + get { ReadWriteAttribute[Strings.filter, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.filter, in: jsObject] = newValue } + } +} - public static let NAMESPACE_ERR: UInt16 = 14 +public enum CanvasFontKerning: JSString, JSValueCompatible { + case auto = "auto" + case normal = "normal" + case none = "none" - public static let INVALID_ACCESS_ERR: UInt16 = 15 + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - public static let VALIDATION_ERR: UInt16 = 16 + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - public static let TYPE_MISMATCH_ERR: UInt16 = 17 + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - public static let SECURITY_ERR: UInt16 = 18 +public enum CanvasFontStretch: JSString, JSValueCompatible { + case ultraCondensed = "ultra-condensed" + case extraCondensed = "extra-condensed" + case condensed = "condensed" + case semiCondensed = "semi-condensed" + case normal = "normal" + case semiExpanded = "semi-expanded" + case expanded = "expanded" + case extraExpanded = "extra-expanded" + case ultraExpanded = "ultra-expanded" - public static let NETWORK_ERR: UInt16 = 19 + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - public static let ABORT_ERR: UInt16 = 20 + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - public static let URL_MISMATCH_ERR: UInt16 = 21 + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - public static let QUOTA_EXCEEDED_ERR: UInt16 = 22 +public enum CanvasFontVariantCaps: JSString, JSValueCompatible { + case normal = "normal" + case smallCaps = "small-caps" + case allSmallCaps = "all-small-caps" + case petiteCaps = "petite-caps" + case allPetiteCaps = "all-petite-caps" + case unicase = "unicase" + case titlingCaps = "titling-caps" - public static let TIMEOUT_ERR: UInt16 = 23 + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - public static let INVALID_NODE_TYPE_ERR: UInt16 = 24 + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - public static let DATA_CLONE_ERR: UInt16 = 25 + @inlinable public var jsValue: JSValue { rawValue.jsValue } } -public class DOMImplementation: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMImplementation].function! } +public class CanvasGradient: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CanvasGradient].function! } public let jsObject: JSObject @@ -2581,2698 +2615,5167 @@ public class DOMImplementation: JSBridgedClass { self.jsObject = jsObject } - @inlinable public func createDocumentType(qualifiedName: String, publicId: String, systemId: String) -> DocumentType { + @inlinable public func addColorStop(offset: Double, color: String) { let this = jsObject - return this[Strings.createDocumentType].function!(this: this, arguments: [qualifiedName.jsValue, publicId.jsValue, systemId.jsValue]).fromJSValue()! + _ = this[Strings.addColorStop].function!(this: this, arguments: [offset.jsValue, color.jsValue]) } +} - @inlinable public func createDocument(namespace: String?, qualifiedName: String, doctype: DocumentType? = nil) -> XMLDocument { +public protocol CanvasImageData: JSBridgedClass {} +public extension CanvasImageData { + @inlinable func createImageData(sw: Int32, sh: Int32, settings: ImageDataSettings? = nil) -> ImageData { let this = jsObject - return this[Strings.createDocument].function!(this: this, arguments: [namespace.jsValue, qualifiedName.jsValue, doctype?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createImageData].function!(this: this, arguments: [sw.jsValue, sh.jsValue, settings?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public func createHTMLDocument(title: String? = nil) -> Document { + @inlinable func createImageData(imagedata: ImageData) -> ImageData { let this = jsObject - return this[Strings.createHTMLDocument].function!(this: this, arguments: [title?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createImageData].function!(this: this, arguments: [imagedata.jsValue]).fromJSValue()! } - @inlinable public func hasFeature() -> Bool { + @inlinable func getImageData(sx: Int32, sy: Int32, sw: Int32, sh: Int32, settings: ImageDataSettings? = nil) -> ImageData { let this = jsObject - return this[Strings.hasFeature].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.getImageData].function!(this: this, arguments: [sx.jsValue, sy.jsValue, sw.jsValue, sh.jsValue, settings?.jsValue ?? .undefined]).fromJSValue()! } -} -public class DOMMatrix: DOMMatrixReadOnly { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DOMMatrix].function! } + @inlinable func putImageData(imagedata: ImageData, dx: Int32, dy: Int32) { + let this = jsObject + _ = this[Strings.putImageData].function!(this: this, arguments: [imagedata.jsValue, dx.jsValue, dy.jsValue]) + } - public required init(unsafelyWrapping jsObject: JSObject) { - _a = ReadWriteAttribute(jsObject: jsObject, name: Strings.a) - _b = ReadWriteAttribute(jsObject: jsObject, name: Strings.b) - _c = ReadWriteAttribute(jsObject: jsObject, name: Strings.c) - _d = ReadWriteAttribute(jsObject: jsObject, name: Strings.d) - _e = ReadWriteAttribute(jsObject: jsObject, name: Strings.e) - _f = ReadWriteAttribute(jsObject: jsObject, name: Strings.f) - _m11 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m11) - _m12 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m12) - _m13 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m13) - _m14 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m14) - _m21 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m21) - _m22 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m22) - _m23 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m23) - _m24 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m24) - _m31 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m31) - _m32 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m32) - _m33 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m33) - _m34 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m34) - _m41 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m41) - _m42 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m42) - _m43 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m43) - _m44 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m44) - super.init(unsafelyWrapping: jsObject) + @inlinable func putImageData(imagedata: ImageData, dx: Int32, dy: Int32, dirtyX: Int32, dirtyY: Int32, dirtyWidth: Int32, dirtyHeight: Int32) { + let _arg0 = imagedata.jsValue + let _arg1 = dx.jsValue + let _arg2 = dy.jsValue + let _arg3 = dirtyX.jsValue + let _arg4 = dirtyY.jsValue + let _arg5 = dirtyWidth.jsValue + let _arg6 = dirtyHeight.jsValue + let this = jsObject + _ = this[Strings.putImageData].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6]) } +} - @inlinable public convenience init(init: String_or_seq_of_Double? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`?.jsValue ?? .undefined])) +public protocol CanvasImageSmoothing: JSBridgedClass {} +public extension CanvasImageSmoothing { + @inlinable var imageSmoothingEnabled: Bool { + get { ReadWriteAttribute[Strings.imageSmoothingEnabled, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.imageSmoothingEnabled, in: jsObject] = newValue } } - // XXX: illegal static override - // override public static func fromMatrix(other: DOMMatrixInit? = nil) -> Self + @inlinable var imageSmoothingQuality: ImageSmoothingQuality { + get { ReadWriteAttribute[Strings.imageSmoothingQuality, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.imageSmoothingQuality, in: jsObject] = newValue } + } +} - // XXX: illegal static override - // override public static func fromFloat32Array(array32: Float32Array) -> Self +public enum CanvasLineCap: JSString, JSValueCompatible { + case butt = "butt" + case round = "round" + case square = "square" - // XXX: illegal static override - // override public static func fromFloat64Array(array64: Float64Array) -> Self + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - @usableFromInline let _a: ReadWriteAttribute - @inlinable override public var a: Double { - get { _a.wrappedValue } - set { _a.wrappedValue = newValue } + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @usableFromInline let _b: ReadWriteAttribute - @inlinable override public var b: Double { - get { _b.wrappedValue } - set { _b.wrappedValue = newValue } + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public enum CanvasLineJoin: JSString, JSValueCompatible { + case round = "round" + case bevel = "bevel" + case miter = "miter" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @usableFromInline let _c: ReadWriteAttribute - @inlinable override public var c: Double { - get { _c.wrappedValue } - set { _c.wrappedValue = newValue } + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @usableFromInline let _d: ReadWriteAttribute - @inlinable override public var d: Double { - get { _d.wrappedValue } - set { _d.wrappedValue = newValue } - } - - @usableFromInline let _e: ReadWriteAttribute - @inlinable override public var e: Double { - get { _e.wrappedValue } - set { _e.wrappedValue = newValue } - } + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @usableFromInline let _f: ReadWriteAttribute - @inlinable override public var f: Double { - get { _f.wrappedValue } - set { _f.wrappedValue = newValue } +public protocol CanvasPath: JSBridgedClass {} +public extension CanvasPath { + @inlinable func closePath() { + let this = jsObject + _ = this[Strings.closePath].function!(this: this, arguments: []) } - @usableFromInline let _m11: ReadWriteAttribute - @inlinable override public var m11: Double { - get { _m11.wrappedValue } - set { _m11.wrappedValue = newValue } + @inlinable func moveTo(x: Double, y: Double) { + let this = jsObject + _ = this[Strings.moveTo].function!(this: this, arguments: [x.jsValue, y.jsValue]) } - @usableFromInline let _m12: ReadWriteAttribute - @inlinable override public var m12: Double { - get { _m12.wrappedValue } - set { _m12.wrappedValue = newValue } + @inlinable func lineTo(x: Double, y: Double) { + let this = jsObject + _ = this[Strings.lineTo].function!(this: this, arguments: [x.jsValue, y.jsValue]) } - @usableFromInline let _m13: ReadWriteAttribute - @inlinable override public var m13: Double { - get { _m13.wrappedValue } - set { _m13.wrappedValue = newValue } + @inlinable func quadraticCurveTo(cpx: Double, cpy: Double, x: Double, y: Double) { + let this = jsObject + _ = this[Strings.quadraticCurveTo].function!(this: this, arguments: [cpx.jsValue, cpy.jsValue, x.jsValue, y.jsValue]) } - @usableFromInline let _m14: ReadWriteAttribute - @inlinable override public var m14: Double { - get { _m14.wrappedValue } - set { _m14.wrappedValue = newValue } + @inlinable func bezierCurveTo(cp1x: Double, cp1y: Double, cp2x: Double, cp2y: Double, x: Double, y: Double) { + let _arg0 = cp1x.jsValue + let _arg1 = cp1y.jsValue + let _arg2 = cp2x.jsValue + let _arg3 = cp2y.jsValue + let _arg4 = x.jsValue + let _arg5 = y.jsValue + let this = jsObject + _ = this[Strings.bezierCurveTo].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) } - @usableFromInline let _m21: ReadWriteAttribute - @inlinable override public var m21: Double { - get { _m21.wrappedValue } - set { _m21.wrappedValue = newValue } + @inlinable func arcTo(x1: Double, y1: Double, x2: Double, y2: Double, radius: Double) { + let this = jsObject + _ = this[Strings.arcTo].function!(this: this, arguments: [x1.jsValue, y1.jsValue, x2.jsValue, y2.jsValue, radius.jsValue]) } - @usableFromInline let _m22: ReadWriteAttribute - @inlinable override public var m22: Double { - get { _m22.wrappedValue } - set { _m22.wrappedValue = newValue } + @inlinable func rect(x: Double, y: Double, w: Double, h: Double) { + let this = jsObject + _ = this[Strings.rect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue]) } - @usableFromInline let _m23: ReadWriteAttribute - @inlinable override public var m23: Double { - get { _m23.wrappedValue } - set { _m23.wrappedValue = newValue } + @inlinable func roundRect(x: Double, y: Double, w: Double, h: Double, radii: DOMPointInit_or_Double_or_seq_of_DOMPointInit_or_Double? = nil) { + let this = jsObject + _ = this[Strings.roundRect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue, radii?.jsValue ?? .undefined]) } - @usableFromInline let _m24: ReadWriteAttribute - @inlinable override public var m24: Double { - get { _m24.wrappedValue } - set { _m24.wrappedValue = newValue } + @inlinable func arc(x: Double, y: Double, radius: Double, startAngle: Double, endAngle: Double, counterclockwise: Bool? = nil) { + let _arg0 = x.jsValue + let _arg1 = y.jsValue + let _arg2 = radius.jsValue + let _arg3 = startAngle.jsValue + let _arg4 = endAngle.jsValue + let _arg5 = counterclockwise?.jsValue ?? .undefined + let this = jsObject + _ = this[Strings.arc].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) } - @usableFromInline let _m31: ReadWriteAttribute - @inlinable override public var m31: Double { - get { _m31.wrappedValue } - set { _m31.wrappedValue = newValue } + @inlinable func ellipse(x: Double, y: Double, radiusX: Double, radiusY: Double, rotation: Double, startAngle: Double, endAngle: Double, counterclockwise: Bool? = nil) { + let _arg0 = x.jsValue + let _arg1 = y.jsValue + let _arg2 = radiusX.jsValue + let _arg3 = radiusY.jsValue + let _arg4 = rotation.jsValue + let _arg5 = startAngle.jsValue + let _arg6 = endAngle.jsValue + let _arg7 = counterclockwise?.jsValue ?? .undefined + let this = jsObject + _ = this[Strings.ellipse].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7]) } +} - @usableFromInline let _m32: ReadWriteAttribute - @inlinable override public var m32: Double { - get { _m32.wrappedValue } - set { _m32.wrappedValue = newValue } +public protocol CanvasPathDrawingStyles: JSBridgedClass {} +public extension CanvasPathDrawingStyles { + @inlinable var lineWidth: Double { + get { ReadWriteAttribute[Strings.lineWidth, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.lineWidth, in: jsObject] = newValue } } - @usableFromInline let _m33: ReadWriteAttribute - @inlinable override public var m33: Double { - get { _m33.wrappedValue } - set { _m33.wrappedValue = newValue } + @inlinable var lineCap: CanvasLineCap { + get { ReadWriteAttribute[Strings.lineCap, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.lineCap, in: jsObject] = newValue } } - @usableFromInline let _m34: ReadWriteAttribute - @inlinable override public var m34: Double { - get { _m34.wrappedValue } - set { _m34.wrappedValue = newValue } + @inlinable var lineJoin: CanvasLineJoin { + get { ReadWriteAttribute[Strings.lineJoin, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.lineJoin, in: jsObject] = newValue } } - @usableFromInline let _m41: ReadWriteAttribute - @inlinable override public var m41: Double { - get { _m41.wrappedValue } - set { _m41.wrappedValue = newValue } + @inlinable var miterLimit: Double { + get { ReadWriteAttribute[Strings.miterLimit, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.miterLimit, in: jsObject] = newValue } } - @usableFromInline let _m42: ReadWriteAttribute - @inlinable override public var m42: Double { - get { _m42.wrappedValue } - set { _m42.wrappedValue = newValue } + @inlinable func setLineDash(segments: [Double]) { + let this = jsObject + _ = this[Strings.setLineDash].function!(this: this, arguments: [segments.jsValue]) } - @usableFromInline let _m43: ReadWriteAttribute - @inlinable override public var m43: Double { - get { _m43.wrappedValue } - set { _m43.wrappedValue = newValue } + @inlinable func getLineDash() -> [Double] { + let this = jsObject + return this[Strings.getLineDash].function!(this: this, arguments: []).fromJSValue()! } - @usableFromInline let _m44: ReadWriteAttribute - @inlinable override public var m44: Double { - get { _m44.wrappedValue } - set { _m44.wrappedValue = newValue } + @inlinable var lineDashOffset: Double { + get { ReadWriteAttribute[Strings.lineDashOffset, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.lineDashOffset, in: jsObject] = newValue } } +} - @inlinable public func multiplySelf(other: DOMMatrixInit? = nil) -> Self { - let this = jsObject - return this[Strings.multiplySelf].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! - } +public class CanvasPattern: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CanvasPattern].function! } - @inlinable public func preMultiplySelf(other: DOMMatrixInit? = nil) -> Self { - let this = jsObject - return this[Strings.preMultiplySelf].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! - } + public let jsObject: JSObject - @inlinable public func translateSelf(tx: Double? = nil, ty: Double? = nil, tz: Double? = nil) -> Self { - let this = jsObject - return this[Strings.translateSelf].function!(this: this, arguments: [tx?.jsValue ?? .undefined, ty?.jsValue ?? .undefined, tz?.jsValue ?? .undefined]).fromJSValue()! + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject } - @inlinable public func scaleSelf(scaleX: Double? = nil, scaleY: Double? = nil, scaleZ: Double? = nil, originX: Double? = nil, originY: Double? = nil, originZ: Double? = nil) -> Self { - let _arg0 = scaleX?.jsValue ?? .undefined - let _arg1 = scaleY?.jsValue ?? .undefined - let _arg2 = scaleZ?.jsValue ?? .undefined - let _arg3 = originX?.jsValue ?? .undefined - let _arg4 = originY?.jsValue ?? .undefined - let _arg5 = originZ?.jsValue ?? .undefined + @inlinable public func setTransform(transform: DOMMatrix2DInit? = nil) { let this = jsObject - return this[Strings.scaleSelf].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]).fromJSValue()! + _ = this[Strings.setTransform].function!(this: this, arguments: [transform?.jsValue ?? .undefined]) } +} - @inlinable public func scale3dSelf(scale: Double? = nil, originX: Double? = nil, originY: Double? = nil, originZ: Double? = nil) -> Self { +public protocol CanvasRect: JSBridgedClass {} +public extension CanvasRect { + @inlinable func clearRect(x: Double, y: Double, w: Double, h: Double) { let this = jsObject - return this[Strings.scale3dSelf].function!(this: this, arguments: [scale?.jsValue ?? .undefined, originX?.jsValue ?? .undefined, originY?.jsValue ?? .undefined, originZ?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.clearRect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue]) } - @inlinable public func rotateSelf(rotX: Double? = nil, rotY: Double? = nil, rotZ: Double? = nil) -> Self { + @inlinable func fillRect(x: Double, y: Double, w: Double, h: Double) { let this = jsObject - return this[Strings.rotateSelf].function!(this: this, arguments: [rotX?.jsValue ?? .undefined, rotY?.jsValue ?? .undefined, rotZ?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.fillRect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue]) } - @inlinable public func rotateFromVectorSelf(x: Double? = nil, y: Double? = nil) -> Self { + @inlinable func strokeRect(x: Double, y: Double, w: Double, h: Double) { let this = jsObject - return this[Strings.rotateFromVectorSelf].function!(this: this, arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.strokeRect].function!(this: this, arguments: [x.jsValue, y.jsValue, w.jsValue, h.jsValue]) } +} - @inlinable public func rotateAxisAngleSelf(x: Double? = nil, y: Double? = nil, z: Double? = nil, angle: Double? = nil) -> Self { - let this = jsObject - return this[Strings.rotateAxisAngleSelf].function!(this: this, arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, z?.jsValue ?? .undefined, angle?.jsValue ?? .undefined]).fromJSValue()! - } +public class CanvasRenderingContext2D: JSBridgedClass, CanvasState, CanvasTransform, CanvasCompositing, CanvasImageSmoothing, CanvasFillStrokeStyles, CanvasShadowStyles, CanvasFilters, CanvasRect, CanvasDrawPath, CanvasUserInterface, CanvasText, CanvasDrawImage, CanvasImageData, CanvasPathDrawingStyles, CanvasTextDrawingStyles, CanvasPath { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CanvasRenderingContext2D].function! } - @inlinable public func skewXSelf(sx: Double? = nil) -> Self { - let this = jsObject - return this[Strings.skewXSelf].function!(this: this, arguments: [sx?.jsValue ?? .undefined]).fromJSValue()! - } + public let jsObject: JSObject - @inlinable public func skewYSelf(sy: Double? = nil) -> Self { - let this = jsObject - return this[Strings.skewYSelf].function!(this: this, arguments: [sy?.jsValue ?? .undefined]).fromJSValue()! + public required init(unsafelyWrapping jsObject: JSObject) { + _canvas = ReadonlyAttribute(jsObject: jsObject, name: Strings.canvas) + self.jsObject = jsObject } - @inlinable public func invertSelf() -> Self { - let this = jsObject - return this[Strings.invertSelf].function!(this: this, arguments: []).fromJSValue()! - } + @ReadonlyAttribute + public var canvas: HTMLCanvasElement - @inlinable public func setMatrixValue(transformList: String) -> Self { + @inlinable public func getContextAttributes() -> CanvasRenderingContext2DSettings { let this = jsObject - return this[Strings.setMatrixValue].function!(this: this, arguments: [transformList.jsValue]).fromJSValue()! + return this[Strings.getContextAttributes].function!(this: this, arguments: []).fromJSValue()! } } -public class DOMMatrix2DInit: BridgedDictionary { - public convenience init(a: Double, b: Double, c: Double, d: Double, e: Double, f: Double, m11: Double, m12: Double, m21: Double, m22: Double, m41: Double, m42: Double) { +public class CanvasRenderingContext2DSettings: BridgedDictionary { + public convenience init(alpha: Bool, desynchronized: Bool, colorSpace: PredefinedColorSpace, willReadFrequently: Bool) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.a] = a.jsValue - object[Strings.b] = b.jsValue - object[Strings.c] = c.jsValue - object[Strings.d] = d.jsValue - object[Strings.e] = e.jsValue - object[Strings.f] = f.jsValue - object[Strings.m11] = m11.jsValue - object[Strings.m12] = m12.jsValue - object[Strings.m21] = m21.jsValue - object[Strings.m22] = m22.jsValue - object[Strings.m41] = m41.jsValue - object[Strings.m42] = m42.jsValue + object[Strings.alpha] = alpha.jsValue + object[Strings.desynchronized] = desynchronized.jsValue + object[Strings.colorSpace] = colorSpace.jsValue + object[Strings.willReadFrequently] = willReadFrequently.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _a = ReadWriteAttribute(jsObject: object, name: Strings.a) - _b = ReadWriteAttribute(jsObject: object, name: Strings.b) - _c = ReadWriteAttribute(jsObject: object, name: Strings.c) - _d = ReadWriteAttribute(jsObject: object, name: Strings.d) - _e = ReadWriteAttribute(jsObject: object, name: Strings.e) - _f = ReadWriteAttribute(jsObject: object, name: Strings.f) - _m11 = ReadWriteAttribute(jsObject: object, name: Strings.m11) - _m12 = ReadWriteAttribute(jsObject: object, name: Strings.m12) - _m21 = ReadWriteAttribute(jsObject: object, name: Strings.m21) - _m22 = ReadWriteAttribute(jsObject: object, name: Strings.m22) - _m41 = ReadWriteAttribute(jsObject: object, name: Strings.m41) - _m42 = ReadWriteAttribute(jsObject: object, name: Strings.m42) + _alpha = ReadWriteAttribute(jsObject: object, name: Strings.alpha) + _desynchronized = ReadWriteAttribute(jsObject: object, name: Strings.desynchronized) + _colorSpace = ReadWriteAttribute(jsObject: object, name: Strings.colorSpace) + _willReadFrequently = ReadWriteAttribute(jsObject: object, name: Strings.willReadFrequently) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var a: Double + public var alpha: Bool @ReadWriteAttribute - public var b: Double + public var desynchronized: Bool @ReadWriteAttribute - public var c: Double + public var colorSpace: PredefinedColorSpace @ReadWriteAttribute - public var d: Double + public var willReadFrequently: Bool +} - @ReadWriteAttribute - public var e: Double +public protocol CanvasShadowStyles: JSBridgedClass {} +public extension CanvasShadowStyles { + @inlinable var shadowOffsetX: Double { + get { ReadWriteAttribute[Strings.shadowOffsetX, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.shadowOffsetX, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var f: Double + @inlinable var shadowOffsetY: Double { + get { ReadWriteAttribute[Strings.shadowOffsetY, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.shadowOffsetY, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var m11: Double + @inlinable var shadowBlur: Double { + get { ReadWriteAttribute[Strings.shadowBlur, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.shadowBlur, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var m12: Double + @inlinable var shadowColor: String { + get { ReadWriteAttribute[Strings.shadowColor, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.shadowColor, in: jsObject] = newValue } + } +} - @ReadWriteAttribute - public var m21: Double +public protocol CanvasState: JSBridgedClass {} +public extension CanvasState { + @inlinable func save() { + let this = jsObject + _ = this[Strings.save].function!(this: this, arguments: []) + } - @ReadWriteAttribute - public var m22: Double + @inlinable func restore() { + let this = jsObject + _ = this[Strings.restore].function!(this: this, arguments: []) + } - @ReadWriteAttribute - public var m41: Double + @inlinable func reset() { + let this = jsObject + _ = this[Strings.reset].function!(this: this, arguments: []) + } - @ReadWriteAttribute - public var m42: Double + @inlinable func isContextLost() -> Bool { + let this = jsObject + return this[Strings.isContextLost].function!(this: this, arguments: []).fromJSValue()! + } } -public class DOMMatrixInit: BridgedDictionary { - public convenience init(m13: Double, m14: Double, m23: Double, m24: Double, m31: Double, m32: Double, m33: Double, m34: Double, m43: Double, m44: Double, is2D: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.m13] = m13.jsValue - object[Strings.m14] = m14.jsValue - object[Strings.m23] = m23.jsValue - object[Strings.m24] = m24.jsValue - object[Strings.m31] = m31.jsValue - object[Strings.m32] = m32.jsValue - object[Strings.m33] = m33.jsValue - object[Strings.m34] = m34.jsValue - object[Strings.m43] = m43.jsValue - object[Strings.m44] = m44.jsValue - object[Strings.is2D] = is2D.jsValue - self.init(unsafelyWrapping: object) +public protocol CanvasText: JSBridgedClass {} +public extension CanvasText { + @inlinable func fillText(text: String, x: Double, y: Double, maxWidth: Double? = nil) { + let this = jsObject + _ = this[Strings.fillText].function!(this: this, arguments: [text.jsValue, x.jsValue, y.jsValue, maxWidth?.jsValue ?? .undefined]) } - public required init(unsafelyWrapping object: JSObject) { - _m13 = ReadWriteAttribute(jsObject: object, name: Strings.m13) - _m14 = ReadWriteAttribute(jsObject: object, name: Strings.m14) - _m23 = ReadWriteAttribute(jsObject: object, name: Strings.m23) - _m24 = ReadWriteAttribute(jsObject: object, name: Strings.m24) - _m31 = ReadWriteAttribute(jsObject: object, name: Strings.m31) - _m32 = ReadWriteAttribute(jsObject: object, name: Strings.m32) - _m33 = ReadWriteAttribute(jsObject: object, name: Strings.m33) - _m34 = ReadWriteAttribute(jsObject: object, name: Strings.m34) - _m43 = ReadWriteAttribute(jsObject: object, name: Strings.m43) - _m44 = ReadWriteAttribute(jsObject: object, name: Strings.m44) - _is2D = ReadWriteAttribute(jsObject: object, name: Strings.is2D) - super.init(unsafelyWrapping: object) + @inlinable func strokeText(text: String, x: Double, y: Double, maxWidth: Double? = nil) { + let this = jsObject + _ = this[Strings.strokeText].function!(this: this, arguments: [text.jsValue, x.jsValue, y.jsValue, maxWidth?.jsValue ?? .undefined]) } - @ReadWriteAttribute - public var m13: Double + @inlinable func measureText(text: String) -> TextMetrics { + let this = jsObject + return this[Strings.measureText].function!(this: this, arguments: [text.jsValue]).fromJSValue()! + } +} - @ReadWriteAttribute - public var m14: Double +public enum CanvasTextAlign: JSString, JSValueCompatible { + case start = "start" + case end = "end" + case left = "left" + case right = "right" + case center = "center" - @ReadWriteAttribute - public var m23: Double + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - @ReadWriteAttribute - public var m24: Double + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - @ReadWriteAttribute - public var m31: Double + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @ReadWriteAttribute - public var m32: Double +public enum CanvasTextBaseline: JSString, JSValueCompatible { + case top = "top" + case hanging = "hanging" + case middle = "middle" + case alphabetic = "alphabetic" + case ideographic = "ideographic" + case bottom = "bottom" - @ReadWriteAttribute - public var m33: Double + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - @ReadWriteAttribute - public var m34: Double + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - @ReadWriteAttribute - public var m43: Double + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @ReadWriteAttribute - public var m44: Double +public protocol CanvasTextDrawingStyles: JSBridgedClass {} +public extension CanvasTextDrawingStyles { + @inlinable var font: String { + get { ReadWriteAttribute[Strings.font, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.font, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var is2D: Bool -} + @inlinable var textAlign: CanvasTextAlign { + get { ReadWriteAttribute[Strings.textAlign, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.textAlign, in: jsObject] = newValue } + } -public class DOMMatrixReadOnly: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMMatrixReadOnly].function! } + @inlinable var textBaseline: CanvasTextBaseline { + get { ReadWriteAttribute[Strings.textBaseline, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.textBaseline, in: jsObject] = newValue } + } - public let jsObject: JSObject + @inlinable var direction: CanvasDirection { + get { ReadWriteAttribute[Strings.direction, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.direction, in: jsObject] = newValue } + } - public required init(unsafelyWrapping jsObject: JSObject) { - _a = ReadonlyAttribute(jsObject: jsObject, name: Strings.a) - _b = ReadonlyAttribute(jsObject: jsObject, name: Strings.b) - _c = ReadonlyAttribute(jsObject: jsObject, name: Strings.c) - _d = ReadonlyAttribute(jsObject: jsObject, name: Strings.d) - _e = ReadonlyAttribute(jsObject: jsObject, name: Strings.e) - _f = ReadonlyAttribute(jsObject: jsObject, name: Strings.f) - _m11 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m11) - _m12 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m12) - _m13 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m13) - _m14 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m14) - _m21 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m21) - _m22 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m22) - _m23 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m23) - _m24 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m24) - _m31 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m31) - _m32 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m32) - _m33 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m33) - _m34 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m34) - _m41 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m41) - _m42 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m42) - _m43 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m43) - _m44 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m44) - _is2D = ReadonlyAttribute(jsObject: jsObject, name: Strings.is2D) - _isIdentity = ReadonlyAttribute(jsObject: jsObject, name: Strings.isIdentity) - self.jsObject = jsObject + @inlinable var letterSpacing: String { + get { ReadWriteAttribute[Strings.letterSpacing, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.letterSpacing, in: jsObject] = newValue } } - @inlinable public convenience init(init: String_or_seq_of_Double? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`?.jsValue ?? .undefined])) + @inlinable var fontKerning: CanvasFontKerning { + get { ReadWriteAttribute[Strings.fontKerning, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.fontKerning, in: jsObject] = newValue } } - @inlinable public static func fromMatrix(other: DOMMatrixInit? = nil) -> Self { - let this = constructor - return this[Strings.fromMatrix].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + @inlinable var fontStretch: CanvasFontStretch { + get { ReadWriteAttribute[Strings.fontStretch, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.fontStretch, in: jsObject] = newValue } } - @inlinable public static func fromFloat32Array(array32: Float32Array) -> Self { - let this = constructor - return this[Strings.fromFloat32Array].function!(this: this, arguments: [array32.jsValue]).fromJSValue()! + @inlinable var fontVariantCaps: CanvasFontVariantCaps { + get { ReadWriteAttribute[Strings.fontVariantCaps, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.fontVariantCaps, in: jsObject] = newValue } + } + + @inlinable var textRendering: CanvasTextRendering { + get { ReadWriteAttribute[Strings.textRendering, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.textRendering, in: jsObject] = newValue } + } + + @inlinable var wordSpacing: String { + get { ReadWriteAttribute[Strings.wordSpacing, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.wordSpacing, in: jsObject] = newValue } + } +} + +public enum CanvasTextRendering: JSString, JSValueCompatible { + case auto = "auto" + case optimizeSpeed = "optimizeSpeed" + case optimizeLegibility = "optimizeLegibility" + case geometricPrecision = "geometricPrecision" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public protocol CanvasTransform: JSBridgedClass {} +public extension CanvasTransform { + @inlinable func scale(x: Double, y: Double) { + let this = jsObject + _ = this[Strings.scale].function!(this: this, arguments: [x.jsValue, y.jsValue]) + } + + @inlinable func rotate(angle: Double) { + let this = jsObject + _ = this[Strings.rotate].function!(this: this, arguments: [angle.jsValue]) + } + + @inlinable func translate(x: Double, y: Double) { + let this = jsObject + _ = this[Strings.translate].function!(this: this, arguments: [x.jsValue, y.jsValue]) + } + + @inlinable func transform(a: Double, b: Double, c: Double, d: Double, e: Double, f: Double) { + let _arg0 = a.jsValue + let _arg1 = b.jsValue + let _arg2 = c.jsValue + let _arg3 = d.jsValue + let _arg4 = e.jsValue + let _arg5 = f.jsValue + let this = jsObject + _ = this[Strings.transform].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) + } + + @inlinable func getTransform() -> DOMMatrix { + let this = jsObject + return this[Strings.getTransform].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable func setTransform(a: Double, b: Double, c: Double, d: Double, e: Double, f: Double) { + let _arg0 = a.jsValue + let _arg1 = b.jsValue + let _arg2 = c.jsValue + let _arg3 = d.jsValue + let _arg4 = e.jsValue + let _arg5 = f.jsValue + let this = jsObject + _ = this[Strings.setTransform].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]) + } + + @inlinable func setTransform(transform: DOMMatrix2DInit? = nil) { + let this = jsObject + _ = this[Strings.setTransform].function!(this: this, arguments: [transform?.jsValue ?? .undefined]) + } + + @inlinable func resetTransform() { + let this = jsObject + _ = this[Strings.resetTransform].function!(this: this, arguments: []) + } +} + +public protocol CanvasUserInterface: JSBridgedClass {} +public extension CanvasUserInterface { + @inlinable func drawFocusIfNeeded(element: Element) { + let this = jsObject + _ = this[Strings.drawFocusIfNeeded].function!(this: this, arguments: [element.jsValue]) + } + + @inlinable func drawFocusIfNeeded(path: Path2D, element: Element) { + let this = jsObject + _ = this[Strings.drawFocusIfNeeded].function!(this: this, arguments: [path.jsValue, element.jsValue]) + } + + @inlinable func scrollPathIntoView() { + let this = jsObject + _ = this[Strings.scrollPathIntoView].function!(this: this, arguments: []) + } + + @inlinable func scrollPathIntoView(path: Path2D) { + let this = jsObject + _ = this[Strings.scrollPathIntoView].function!(this: this, arguments: [path.jsValue]) + } +} + +public class CaretPosition: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CaretPosition].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _offsetNode = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetNode) + _offset = ReadonlyAttribute(jsObject: jsObject, name: Strings.offset) + self.jsObject = jsObject + } + + @ReadonlyAttribute + public var offsetNode: Node + + @ReadonlyAttribute + public var offset: UInt32 + + @inlinable public func getClientRect() -> DOMRect? { + let this = jsObject + return this[Strings.getClientRect].function!(this: this, arguments: []).fromJSValue()! + } +} + +public enum ChannelCountMode: JSString, JSValueCompatible { + case max = "max" + case clampedMax = "clamped-max" + case explicit = "explicit" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public enum ChannelInterpretation: JSString, JSValueCompatible { + case speakers = "speakers" + case discrete = "discrete" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class ChannelMergerNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.ChannelMergerNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: ChannelMergerOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } +} + +public class ChannelMergerOptions: BridgedDictionary { + public convenience init(numberOfInputs: UInt32) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.numberOfInputs] = numberOfInputs.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _numberOfInputs = ReadWriteAttribute(jsObject: object, name: Strings.numberOfInputs) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var numberOfInputs: UInt32 +} + +public class ChannelSplitterNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.ChannelSplitterNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: ChannelSplitterOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } +} + +public class ChannelSplitterOptions: BridgedDictionary { + public convenience init(numberOfOutputs: UInt32) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.numberOfOutputs] = numberOfOutputs.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _numberOfOutputs = ReadWriteAttribute(jsObject: object, name: Strings.numberOfOutputs) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var numberOfOutputs: UInt32 +} + +public class CharacterData: Node, NonDocumentTypeChildNode, ChildNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CharacterData].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _data = ReadWriteAttribute(jsObject: jsObject, name: Strings.data) + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + super.init(unsafelyWrapping: jsObject) + } + + @ReadWriteAttribute + public var data: String + + @ReadonlyAttribute + public var length: UInt32 + + @inlinable public func substringData(offset: UInt32, count: UInt32) -> String { + let this = jsObject + return this[Strings.substringData].function!(this: this, arguments: [offset.jsValue, count.jsValue]).fromJSValue()! + } + + @inlinable public func appendData(data: String) { + let this = jsObject + _ = this[Strings.appendData].function!(this: this, arguments: [data.jsValue]) + } + + @inlinable public func insertData(offset: UInt32, data: String) { + let this = jsObject + _ = this[Strings.insertData].function!(this: this, arguments: [offset.jsValue, data.jsValue]) + } + + @inlinable public func deleteData(offset: UInt32, count: UInt32) { + let this = jsObject + _ = this[Strings.deleteData].function!(this: this, arguments: [offset.jsValue, count.jsValue]) + } + + @inlinable public func replaceData(offset: UInt32, count: UInt32, data: String) { + let this = jsObject + _ = this[Strings.replaceData].function!(this: this, arguments: [offset.jsValue, count.jsValue, data.jsValue]) + } +} + +public protocol ChildNode: JSBridgedClass {} +public extension ChildNode { + @inlinable func before(nodes: Node_or_String...) { + let this = jsObject + _ = this[Strings.before].function!(this: this, arguments: nodes.map(\.jsValue)) + } + + @inlinable func after(nodes: Node_or_String...) { + let this = jsObject + _ = this[Strings.after].function!(this: this, arguments: nodes.map(\.jsValue)) + } + + @inlinable func replaceWith(nodes: Node_or_String...) { + let this = jsObject + _ = this[Strings.replaceWith].function!(this: this, arguments: nodes.map(\.jsValue)) + } + + @inlinable func remove() { + let this = jsObject + _ = this[Strings.remove].function!(this: this, arguments: []) + } +} + +public class ClientQueryOptions: BridgedDictionary { + public convenience init(includeUncontrolled: Bool, type: ClientType) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.includeUncontrolled] = includeUncontrolled.jsValue + object[Strings.type] = type.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _includeUncontrolled = ReadWriteAttribute(jsObject: object, name: Strings.includeUncontrolled) + _type = ReadWriteAttribute(jsObject: object, name: Strings.type) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var includeUncontrolled: Bool + + @ReadWriteAttribute + public var type: ClientType +} + +public enum ClientType: JSString, JSValueCompatible { + case window = "window" + case worker = "worker" + case sharedworker = "sharedworker" + case all = "all" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class CloseEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CloseEvent].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _wasClean = ReadonlyAttribute(jsObject: jsObject, name: Strings.wasClean) + _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code) + _reason = ReadonlyAttribute(jsObject: jsObject, name: Strings.reason) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(type: String, eventInitDict: CloseEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var wasClean: Bool + + @ReadonlyAttribute + public var code: UInt16 + + @ReadonlyAttribute + public var reason: String +} + +public class CloseEventInit: BridgedDictionary { + public convenience init(wasClean: Bool, code: UInt16, reason: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.wasClean] = wasClean.jsValue + object[Strings.code] = code.jsValue + object[Strings.reason] = reason.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _wasClean = ReadWriteAttribute(jsObject: object, name: Strings.wasClean) + _code = ReadWriteAttribute(jsObject: object, name: Strings.code) + _reason = ReadWriteAttribute(jsObject: object, name: Strings.reason) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var wasClean: Bool + + @ReadWriteAttribute + public var code: UInt16 + + @ReadWriteAttribute + public var reason: String +} + +public enum ColorSpaceConversion: JSString, JSValueCompatible { + case none = "none" + case `default` = "default" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class Comment: CharacterData { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.Comment].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(data: String? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [data?.jsValue ?? .undefined])) + } +} + +public enum CompositeOperation: JSString, JSValueCompatible { + case replace = "replace" + case add = "add" + case accumulate = "accumulate" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public enum CompositeOperationOrAuto: JSString, JSValueCompatible { + case replace = "replace" + case add = "add" + case accumulate = "accumulate" + case auto = "auto" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class CompositionEvent: UIEvent { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CompositionEvent].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _data = ReadonlyAttribute(jsObject: jsObject, name: Strings.data) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(type: String, eventInitDict: CompositionEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var data: String + + @inlinable public func initCompositionEvent(typeArg: String, bubblesArg: Bool? = nil, cancelableArg: Bool? = nil, viewArg: WindowProxy? = nil, dataArg: String? = nil) { + let this = jsObject + _ = this[Strings.initCompositionEvent].function!(this: this, arguments: [typeArg.jsValue, bubblesArg?.jsValue ?? .undefined, cancelableArg?.jsValue ?? .undefined, viewArg?.jsValue ?? .undefined, dataArg?.jsValue ?? .undefined]) + } +} + +public class CompositionEventInit: BridgedDictionary { + public convenience init(data: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.data] = data.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _data = ReadWriteAttribute(jsObject: object, name: Strings.data) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var data: String +} + +public class ComputedEffectTiming: BridgedDictionary { + public convenience init(progress: Double?, currentIteration: Double?) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.progress] = progress.jsValue + object[Strings.currentIteration] = currentIteration.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _progress = ReadWriteAttribute(jsObject: object, name: Strings.progress) + _currentIteration = ReadWriteAttribute(jsObject: object, name: Strings.currentIteration) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var progress: Double? + + @ReadWriteAttribute + public var currentIteration: Double? +} + +public class ConstantSourceNode: AudioScheduledSourceNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.ConstantSourceNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _offset = ReadonlyAttribute(jsObject: jsObject, name: Strings.offset) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: ConstantSourceOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var offset: AudioParam +} + +public class ConstantSourceOptions: BridgedDictionary { + public convenience init(offset: Float) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.offset] = offset.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _offset = ReadWriteAttribute(jsObject: object, name: Strings.offset) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var offset: Float +} + +public class ConstrainBooleanParameters: BridgedDictionary { + public convenience init(exact: Bool, ideal: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.exact] = exact.jsValue + object[Strings.ideal] = ideal.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _exact = ReadWriteAttribute(jsObject: object, name: Strings.exact) + _ideal = ReadWriteAttribute(jsObject: object, name: Strings.ideal) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var exact: Bool + + @ReadWriteAttribute + public var ideal: Bool +} + +public class ConstrainDOMStringParameters: BridgedDictionary { + public convenience init(exact: String_or_seq_of_String, ideal: String_or_seq_of_String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.exact] = exact.jsValue + object[Strings.ideal] = ideal.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _exact = ReadWriteAttribute(jsObject: object, name: Strings.exact) + _ideal = ReadWriteAttribute(jsObject: object, name: Strings.ideal) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var exact: String_or_seq_of_String + + @ReadWriteAttribute + public var ideal: String_or_seq_of_String +} + +public class ConstrainDoubleRange: BridgedDictionary { + public convenience init(exact: Double, ideal: Double) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.exact] = exact.jsValue + object[Strings.ideal] = ideal.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _exact = ReadWriteAttribute(jsObject: object, name: Strings.exact) + _ideal = ReadWriteAttribute(jsObject: object, name: Strings.ideal) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var exact: Double + + @ReadWriteAttribute + public var ideal: Double +} + +public class ConstrainULongRange: BridgedDictionary { + public convenience init(exact: UInt32, ideal: UInt32) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.exact] = exact.jsValue + object[Strings.ideal] = ideal.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _exact = ReadWriteAttribute(jsObject: object, name: Strings.exact) + _ideal = ReadWriteAttribute(jsObject: object, name: Strings.ideal) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var exact: UInt32 + + @ReadWriteAttribute + public var ideal: UInt32 +} + +public class ConvertCoordinateOptions: BridgedDictionary { + public convenience init(fromBox: CSSBoxType, toBox: CSSBoxType) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.fromBox] = fromBox.jsValue + object[Strings.toBox] = toBox.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _fromBox = ReadWriteAttribute(jsObject: object, name: Strings.fromBox) + _toBox = ReadWriteAttribute(jsObject: object, name: Strings.toBox) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var fromBox: CSSBoxType + + @ReadWriteAttribute + public var toBox: CSSBoxType +} + +public class ConvolverNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.ConvolverNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _buffer = ReadWriteAttribute(jsObject: jsObject, name: Strings.buffer) + _normalize = ReadWriteAttribute(jsObject: jsObject, name: Strings.normalize) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: ConvolverOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } + + @ReadWriteAttribute + public var buffer: AudioBuffer? + + @ReadWriteAttribute + public var normalize: Bool +} + +public class ConvolverOptions: BridgedDictionary { + public convenience init(buffer: AudioBuffer?, disableNormalization: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.buffer] = buffer.jsValue + object[Strings.disableNormalization] = disableNormalization.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _buffer = ReadWriteAttribute(jsObject: object, name: Strings.buffer) + _disableNormalization = ReadWriteAttribute(jsObject: object, name: Strings.disableNormalization) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var buffer: AudioBuffer? + + @ReadWriteAttribute + public var disableNormalization: Bool +} + +public class CountQueuingStrategy: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CountQueuingStrategy].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _highWaterMark = ReadonlyAttribute(jsObject: jsObject, name: Strings.highWaterMark) + _size = ReadonlyAttribute(jsObject: jsObject, name: Strings.size) + self.jsObject = jsObject + } + + @inlinable public convenience init(init: QueuingStrategyInit) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`.jsValue])) + } + + @ReadonlyAttribute + public var highWaterMark: Double + + @ReadonlyAttribute + public var size: JSFunction +} + +public class CustomElementRegistry: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.CustomElementRegistry].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject + } + + @inlinable public func define(name: String, constructor: CustomElementConstructor, options: ElementDefinitionOptions? = nil) { + let this = jsObject + _ = this[Strings.define].function!(this: this, arguments: [name.jsValue, constructor.jsValue, options?.jsValue ?? .undefined]) + } + + @inlinable public func get(name: String) -> CustomElementConstructor? { + let this = jsObject + return this[Strings.get].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + } + + @inlinable public func whenDefined(name: String) -> JSPromise { + let this = jsObject + return this[Strings.whenDefined].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + } + + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func whenDefined(name: String) async throws -> CustomElementConstructor { + let this = jsObject + let _promise: JSPromise = this[Strings.whenDefined].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + return try await _promise.value.fromJSValue()! + } + + @inlinable public func upgrade(root: Node) { + let this = jsObject + _ = this[Strings.upgrade].function!(this: this, arguments: [root.jsValue]) + } +} + +public class CustomEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CustomEvent].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _detail = ReadonlyAttribute(jsObject: jsObject, name: Strings.detail) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(type: String, eventInitDict: CustomEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var detail: JSValue + + @inlinable public func initCustomEvent(type: String, bubbles: Bool? = nil, cancelable: Bool? = nil, detail: JSValue? = nil) { + let this = jsObject + _ = this[Strings.initCustomEvent].function!(this: this, arguments: [type.jsValue, bubbles?.jsValue ?? .undefined, cancelable?.jsValue ?? .undefined, detail?.jsValue ?? .undefined]) + } +} + +public class CustomEventInit: BridgedDictionary { + public convenience init(detail: JSValue) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.detail] = detail.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _detail = ReadWriteAttribute(jsObject: object, name: Strings.detail) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var detail: JSValue +} + +public class DOMException: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMException].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _name = ReadonlyAttribute(jsObject: jsObject, name: Strings.name) + _message = ReadonlyAttribute(jsObject: jsObject, name: Strings.message) + _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code) + self.jsObject = jsObject + } + + @inlinable public convenience init(message: String? = nil, name: String? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [message?.jsValue ?? .undefined, name?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var name: String + + @ReadonlyAttribute + public var message: String + + @ReadonlyAttribute + public var code: UInt16 + + public static let INDEX_SIZE_ERR: UInt16 = 1 + + public static let DOMSTRING_SIZE_ERR: UInt16 = 2 + + public static let HIERARCHY_REQUEST_ERR: UInt16 = 3 + + public static let WRONG_DOCUMENT_ERR: UInt16 = 4 + + public static let INVALID_CHARACTER_ERR: UInt16 = 5 + + public static let NO_DATA_ALLOWED_ERR: UInt16 = 6 + + public static let NO_MODIFICATION_ALLOWED_ERR: UInt16 = 7 + + public static let NOT_FOUND_ERR: UInt16 = 8 + + public static let NOT_SUPPORTED_ERR: UInt16 = 9 + + public static let INUSE_ATTRIBUTE_ERR: UInt16 = 10 + + public static let INVALID_STATE_ERR: UInt16 = 11 + + public static let SYNTAX_ERR: UInt16 = 12 + + public static let INVALID_MODIFICATION_ERR: UInt16 = 13 + + public static let NAMESPACE_ERR: UInt16 = 14 + + public static let INVALID_ACCESS_ERR: UInt16 = 15 + + public static let VALIDATION_ERR: UInt16 = 16 + + public static let TYPE_MISMATCH_ERR: UInt16 = 17 + + public static let SECURITY_ERR: UInt16 = 18 + + public static let NETWORK_ERR: UInt16 = 19 + + public static let ABORT_ERR: UInt16 = 20 + + public static let URL_MISMATCH_ERR: UInt16 = 21 + + public static let QUOTA_EXCEEDED_ERR: UInt16 = 22 + + public static let TIMEOUT_ERR: UInt16 = 23 + + public static let INVALID_NODE_TYPE_ERR: UInt16 = 24 + + public static let DATA_CLONE_ERR: UInt16 = 25 +} + +public class DOMImplementation: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMImplementation].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject + } + + @inlinable public func createDocumentType(qualifiedName: String, publicId: String, systemId: String) -> DocumentType { + let this = jsObject + return this[Strings.createDocumentType].function!(this: this, arguments: [qualifiedName.jsValue, publicId.jsValue, systemId.jsValue]).fromJSValue()! + } + + @inlinable public func createDocument(namespace: String?, qualifiedName: String, doctype: DocumentType? = nil) -> XMLDocument { + let this = jsObject + return this[Strings.createDocument].function!(this: this, arguments: [namespace.jsValue, qualifiedName.jsValue, doctype?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func createHTMLDocument(title: String? = nil) -> Document { + let this = jsObject + return this[Strings.createHTMLDocument].function!(this: this, arguments: [title?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func hasFeature() -> Bool { + let this = jsObject + return this[Strings.hasFeature].function!(this: this, arguments: []).fromJSValue()! + } +} + +public class DOMMatrix: DOMMatrixReadOnly { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DOMMatrix].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _a = ReadWriteAttribute(jsObject: jsObject, name: Strings.a) + _b = ReadWriteAttribute(jsObject: jsObject, name: Strings.b) + _c = ReadWriteAttribute(jsObject: jsObject, name: Strings.c) + _d = ReadWriteAttribute(jsObject: jsObject, name: Strings.d) + _e = ReadWriteAttribute(jsObject: jsObject, name: Strings.e) + _f = ReadWriteAttribute(jsObject: jsObject, name: Strings.f) + _m11 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m11) + _m12 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m12) + _m13 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m13) + _m14 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m14) + _m21 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m21) + _m22 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m22) + _m23 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m23) + _m24 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m24) + _m31 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m31) + _m32 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m32) + _m33 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m33) + _m34 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m34) + _m41 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m41) + _m42 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m42) + _m43 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m43) + _m44 = ReadWriteAttribute(jsObject: jsObject, name: Strings.m44) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(init: String_or_seq_of_Double? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`?.jsValue ?? .undefined])) + } + + // XXX: illegal static override + // override public static func fromMatrix(other: DOMMatrixInit? = nil) -> Self + + // XXX: illegal static override + // override public static func fromFloat32Array(array32: Float32Array) -> Self + + // XXX: illegal static override + // override public static func fromFloat64Array(array64: Float64Array) -> Self + + @usableFromInline let _a: ReadWriteAttribute + @inlinable override public var a: Double { + get { _a.wrappedValue } + set { _a.wrappedValue = newValue } + } + + @usableFromInline let _b: ReadWriteAttribute + @inlinable override public var b: Double { + get { _b.wrappedValue } + set { _b.wrappedValue = newValue } + } + + @usableFromInline let _c: ReadWriteAttribute + @inlinable override public var c: Double { + get { _c.wrappedValue } + set { _c.wrappedValue = newValue } + } + + @usableFromInline let _d: ReadWriteAttribute + @inlinable override public var d: Double { + get { _d.wrappedValue } + set { _d.wrappedValue = newValue } + } + + @usableFromInline let _e: ReadWriteAttribute + @inlinable override public var e: Double { + get { _e.wrappedValue } + set { _e.wrappedValue = newValue } + } + + @usableFromInline let _f: ReadWriteAttribute + @inlinable override public var f: Double { + get { _f.wrappedValue } + set { _f.wrappedValue = newValue } + } + + @usableFromInline let _m11: ReadWriteAttribute + @inlinable override public var m11: Double { + get { _m11.wrappedValue } + set { _m11.wrappedValue = newValue } + } + + @usableFromInline let _m12: ReadWriteAttribute + @inlinable override public var m12: Double { + get { _m12.wrappedValue } + set { _m12.wrappedValue = newValue } + } + + @usableFromInline let _m13: ReadWriteAttribute + @inlinable override public var m13: Double { + get { _m13.wrappedValue } + set { _m13.wrappedValue = newValue } + } + + @usableFromInline let _m14: ReadWriteAttribute + @inlinable override public var m14: Double { + get { _m14.wrappedValue } + set { _m14.wrappedValue = newValue } + } + + @usableFromInline let _m21: ReadWriteAttribute + @inlinable override public var m21: Double { + get { _m21.wrappedValue } + set { _m21.wrappedValue = newValue } + } + + @usableFromInline let _m22: ReadWriteAttribute + @inlinable override public var m22: Double { + get { _m22.wrappedValue } + set { _m22.wrappedValue = newValue } + } + + @usableFromInline let _m23: ReadWriteAttribute + @inlinable override public var m23: Double { + get { _m23.wrappedValue } + set { _m23.wrappedValue = newValue } + } + + @usableFromInline let _m24: ReadWriteAttribute + @inlinable override public var m24: Double { + get { _m24.wrappedValue } + set { _m24.wrappedValue = newValue } + } + + @usableFromInline let _m31: ReadWriteAttribute + @inlinable override public var m31: Double { + get { _m31.wrappedValue } + set { _m31.wrappedValue = newValue } + } + + @usableFromInline let _m32: ReadWriteAttribute + @inlinable override public var m32: Double { + get { _m32.wrappedValue } + set { _m32.wrappedValue = newValue } + } + + @usableFromInline let _m33: ReadWriteAttribute + @inlinable override public var m33: Double { + get { _m33.wrappedValue } + set { _m33.wrappedValue = newValue } + } + + @usableFromInline let _m34: ReadWriteAttribute + @inlinable override public var m34: Double { + get { _m34.wrappedValue } + set { _m34.wrappedValue = newValue } + } + + @usableFromInline let _m41: ReadWriteAttribute + @inlinable override public var m41: Double { + get { _m41.wrappedValue } + set { _m41.wrappedValue = newValue } + } + + @usableFromInline let _m42: ReadWriteAttribute + @inlinable override public var m42: Double { + get { _m42.wrappedValue } + set { _m42.wrappedValue = newValue } + } + + @usableFromInline let _m43: ReadWriteAttribute + @inlinable override public var m43: Double { + get { _m43.wrappedValue } + set { _m43.wrappedValue = newValue } + } + + @usableFromInline let _m44: ReadWriteAttribute + @inlinable override public var m44: Double { + get { _m44.wrappedValue } + set { _m44.wrappedValue = newValue } + } + + @inlinable public func multiplySelf(other: DOMMatrixInit? = nil) -> Self { + let this = jsObject + return this[Strings.multiplySelf].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func preMultiplySelf(other: DOMMatrixInit? = nil) -> Self { + let this = jsObject + return this[Strings.preMultiplySelf].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func translateSelf(tx: Double? = nil, ty: Double? = nil, tz: Double? = nil) -> Self { + let this = jsObject + return this[Strings.translateSelf].function!(this: this, arguments: [tx?.jsValue ?? .undefined, ty?.jsValue ?? .undefined, tz?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func scaleSelf(scaleX: Double? = nil, scaleY: Double? = nil, scaleZ: Double? = nil, originX: Double? = nil, originY: Double? = nil, originZ: Double? = nil) -> Self { + let _arg0 = scaleX?.jsValue ?? .undefined + let _arg1 = scaleY?.jsValue ?? .undefined + let _arg2 = scaleZ?.jsValue ?? .undefined + let _arg3 = originX?.jsValue ?? .undefined + let _arg4 = originY?.jsValue ?? .undefined + let _arg5 = originZ?.jsValue ?? .undefined + let this = jsObject + return this[Strings.scaleSelf].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]).fromJSValue()! + } + + @inlinable public func scale3dSelf(scale: Double? = nil, originX: Double? = nil, originY: Double? = nil, originZ: Double? = nil) -> Self { + let this = jsObject + return this[Strings.scale3dSelf].function!(this: this, arguments: [scale?.jsValue ?? .undefined, originX?.jsValue ?? .undefined, originY?.jsValue ?? .undefined, originZ?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func rotateSelf(rotX: Double? = nil, rotY: Double? = nil, rotZ: Double? = nil) -> Self { + let this = jsObject + return this[Strings.rotateSelf].function!(this: this, arguments: [rotX?.jsValue ?? .undefined, rotY?.jsValue ?? .undefined, rotZ?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func rotateFromVectorSelf(x: Double? = nil, y: Double? = nil) -> Self { + let this = jsObject + return this[Strings.rotateFromVectorSelf].function!(this: this, arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func rotateAxisAngleSelf(x: Double? = nil, y: Double? = nil, z: Double? = nil, angle: Double? = nil) -> Self { + let this = jsObject + return this[Strings.rotateAxisAngleSelf].function!(this: this, arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, z?.jsValue ?? .undefined, angle?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func skewXSelf(sx: Double? = nil) -> Self { + let this = jsObject + return this[Strings.skewXSelf].function!(this: this, arguments: [sx?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func skewYSelf(sy: Double? = nil) -> Self { + let this = jsObject + return this[Strings.skewYSelf].function!(this: this, arguments: [sy?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func invertSelf() -> Self { + let this = jsObject + return this[Strings.invertSelf].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public func setMatrixValue(transformList: String) -> Self { + let this = jsObject + return this[Strings.setMatrixValue].function!(this: this, arguments: [transformList.jsValue]).fromJSValue()! + } +} + +public class DOMMatrix2DInit: BridgedDictionary { + public convenience init(a: Double, b: Double, c: Double, d: Double, e: Double, f: Double, m11: Double, m12: Double, m21: Double, m22: Double, m41: Double, m42: Double) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.a] = a.jsValue + object[Strings.b] = b.jsValue + object[Strings.c] = c.jsValue + object[Strings.d] = d.jsValue + object[Strings.e] = e.jsValue + object[Strings.f] = f.jsValue + object[Strings.m11] = m11.jsValue + object[Strings.m12] = m12.jsValue + object[Strings.m21] = m21.jsValue + object[Strings.m22] = m22.jsValue + object[Strings.m41] = m41.jsValue + object[Strings.m42] = m42.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _a = ReadWriteAttribute(jsObject: object, name: Strings.a) + _b = ReadWriteAttribute(jsObject: object, name: Strings.b) + _c = ReadWriteAttribute(jsObject: object, name: Strings.c) + _d = ReadWriteAttribute(jsObject: object, name: Strings.d) + _e = ReadWriteAttribute(jsObject: object, name: Strings.e) + _f = ReadWriteAttribute(jsObject: object, name: Strings.f) + _m11 = ReadWriteAttribute(jsObject: object, name: Strings.m11) + _m12 = ReadWriteAttribute(jsObject: object, name: Strings.m12) + _m21 = ReadWriteAttribute(jsObject: object, name: Strings.m21) + _m22 = ReadWriteAttribute(jsObject: object, name: Strings.m22) + _m41 = ReadWriteAttribute(jsObject: object, name: Strings.m41) + _m42 = ReadWriteAttribute(jsObject: object, name: Strings.m42) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var a: Double + + @ReadWriteAttribute + public var b: Double + + @ReadWriteAttribute + public var c: Double + + @ReadWriteAttribute + public var d: Double + + @ReadWriteAttribute + public var e: Double + + @ReadWriteAttribute + public var f: Double + + @ReadWriteAttribute + public var m11: Double + + @ReadWriteAttribute + public var m12: Double + + @ReadWriteAttribute + public var m21: Double + + @ReadWriteAttribute + public var m22: Double + + @ReadWriteAttribute + public var m41: Double + + @ReadWriteAttribute + public var m42: Double +} + +public class DOMMatrixInit: BridgedDictionary { + public convenience init(m13: Double, m14: Double, m23: Double, m24: Double, m31: Double, m32: Double, m33: Double, m34: Double, m43: Double, m44: Double, is2D: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.m13] = m13.jsValue + object[Strings.m14] = m14.jsValue + object[Strings.m23] = m23.jsValue + object[Strings.m24] = m24.jsValue + object[Strings.m31] = m31.jsValue + object[Strings.m32] = m32.jsValue + object[Strings.m33] = m33.jsValue + object[Strings.m34] = m34.jsValue + object[Strings.m43] = m43.jsValue + object[Strings.m44] = m44.jsValue + object[Strings.is2D] = is2D.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _m13 = ReadWriteAttribute(jsObject: object, name: Strings.m13) + _m14 = ReadWriteAttribute(jsObject: object, name: Strings.m14) + _m23 = ReadWriteAttribute(jsObject: object, name: Strings.m23) + _m24 = ReadWriteAttribute(jsObject: object, name: Strings.m24) + _m31 = ReadWriteAttribute(jsObject: object, name: Strings.m31) + _m32 = ReadWriteAttribute(jsObject: object, name: Strings.m32) + _m33 = ReadWriteAttribute(jsObject: object, name: Strings.m33) + _m34 = ReadWriteAttribute(jsObject: object, name: Strings.m34) + _m43 = ReadWriteAttribute(jsObject: object, name: Strings.m43) + _m44 = ReadWriteAttribute(jsObject: object, name: Strings.m44) + _is2D = ReadWriteAttribute(jsObject: object, name: Strings.is2D) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var m13: Double + + @ReadWriteAttribute + public var m14: Double + + @ReadWriteAttribute + public var m23: Double + + @ReadWriteAttribute + public var m24: Double + + @ReadWriteAttribute + public var m31: Double + + @ReadWriteAttribute + public var m32: Double + + @ReadWriteAttribute + public var m33: Double + + @ReadWriteAttribute + public var m34: Double + + @ReadWriteAttribute + public var m43: Double + + @ReadWriteAttribute + public var m44: Double + + @ReadWriteAttribute + public var is2D: Bool +} + +public class DOMMatrixReadOnly: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMMatrixReadOnly].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _a = ReadonlyAttribute(jsObject: jsObject, name: Strings.a) + _b = ReadonlyAttribute(jsObject: jsObject, name: Strings.b) + _c = ReadonlyAttribute(jsObject: jsObject, name: Strings.c) + _d = ReadonlyAttribute(jsObject: jsObject, name: Strings.d) + _e = ReadonlyAttribute(jsObject: jsObject, name: Strings.e) + _f = ReadonlyAttribute(jsObject: jsObject, name: Strings.f) + _m11 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m11) + _m12 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m12) + _m13 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m13) + _m14 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m14) + _m21 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m21) + _m22 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m22) + _m23 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m23) + _m24 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m24) + _m31 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m31) + _m32 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m32) + _m33 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m33) + _m34 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m34) + _m41 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m41) + _m42 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m42) + _m43 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m43) + _m44 = ReadonlyAttribute(jsObject: jsObject, name: Strings.m44) + _is2D = ReadonlyAttribute(jsObject: jsObject, name: Strings.is2D) + _isIdentity = ReadonlyAttribute(jsObject: jsObject, name: Strings.isIdentity) + self.jsObject = jsObject + } + + @inlinable public convenience init(init: String_or_seq_of_Double? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`?.jsValue ?? .undefined])) + } + + @inlinable public static func fromMatrix(other: DOMMatrixInit? = nil) -> Self { + let this = constructor + return this[Strings.fromMatrix].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public static func fromFloat32Array(array32: Float32Array) -> Self { + let this = constructor + return this[Strings.fromFloat32Array].function!(this: this, arguments: [array32.jsValue]).fromJSValue()! + } + + @inlinable public static func fromFloat64Array(array64: Float64Array) -> Self { + let this = constructor + return this[Strings.fromFloat64Array].function!(this: this, arguments: [array64.jsValue]).fromJSValue()! + } + + @ReadonlyAttribute + public var a: Double + + @ReadonlyAttribute + public var b: Double + + @ReadonlyAttribute + public var c: Double + + @ReadonlyAttribute + public var d: Double + + @ReadonlyAttribute + public var e: Double + + @ReadonlyAttribute + public var f: Double + + @ReadonlyAttribute + public var m11: Double + + @ReadonlyAttribute + public var m12: Double + + @ReadonlyAttribute + public var m13: Double + + @ReadonlyAttribute + public var m14: Double + + @ReadonlyAttribute + public var m21: Double + + @ReadonlyAttribute + public var m22: Double + + @ReadonlyAttribute + public var m23: Double + + @ReadonlyAttribute + public var m24: Double + + @ReadonlyAttribute + public var m31: Double + + @ReadonlyAttribute + public var m32: Double + + @ReadonlyAttribute + public var m33: Double + + @ReadonlyAttribute + public var m34: Double + + @ReadonlyAttribute + public var m41: Double + + @ReadonlyAttribute + public var m42: Double + + @ReadonlyAttribute + public var m43: Double + + @ReadonlyAttribute + public var m44: Double + + @ReadonlyAttribute + public var is2D: Bool + + @ReadonlyAttribute + public var isIdentity: Bool + + @inlinable public func translate(tx: Double? = nil, ty: Double? = nil, tz: Double? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.translate].function!(this: this, arguments: [tx?.jsValue ?? .undefined, ty?.jsValue ?? .undefined, tz?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func scale(scaleX: Double? = nil, scaleY: Double? = nil, scaleZ: Double? = nil, originX: Double? = nil, originY: Double? = nil, originZ: Double? = nil) -> DOMMatrix { + let _arg0 = scaleX?.jsValue ?? .undefined + let _arg1 = scaleY?.jsValue ?? .undefined + let _arg2 = scaleZ?.jsValue ?? .undefined + let _arg3 = originX?.jsValue ?? .undefined + let _arg4 = originY?.jsValue ?? .undefined + let _arg5 = originZ?.jsValue ?? .undefined + let this = jsObject + return this[Strings.scale].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]).fromJSValue()! + } + + @inlinable public func scaleNonUniform(scaleX: Double? = nil, scaleY: Double? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.scaleNonUniform].function!(this: this, arguments: [scaleX?.jsValue ?? .undefined, scaleY?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func scale3d(scale: Double? = nil, originX: Double? = nil, originY: Double? = nil, originZ: Double? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.scale3d].function!(this: this, arguments: [scale?.jsValue ?? .undefined, originX?.jsValue ?? .undefined, originY?.jsValue ?? .undefined, originZ?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func rotate(rotX: Double? = nil, rotY: Double? = nil, rotZ: Double? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.rotate].function!(this: this, arguments: [rotX?.jsValue ?? .undefined, rotY?.jsValue ?? .undefined, rotZ?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func rotateFromVector(x: Double? = nil, y: Double? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.rotateFromVector].function!(this: this, arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func rotateAxisAngle(x: Double? = nil, y: Double? = nil, z: Double? = nil, angle: Double? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.rotateAxisAngle].function!(this: this, arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, z?.jsValue ?? .undefined, angle?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func skewX(sx: Double? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.skewX].function!(this: this, arguments: [sx?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func skewY(sy: Double? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.skewY].function!(this: this, arguments: [sy?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func multiply(other: DOMMatrixInit? = nil) -> DOMMatrix { + let this = jsObject + return this[Strings.multiply].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func flipX() -> DOMMatrix { + let this = jsObject + return this[Strings.flipX].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public func flipY() -> DOMMatrix { + let this = jsObject + return this[Strings.flipY].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public func inverse() -> DOMMatrix { + let this = jsObject + return this[Strings.inverse].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public func transformPoint(point: DOMPointInit? = nil) -> DOMPoint { + let this = jsObject + return this[Strings.transformPoint].function!(this: this, arguments: [point?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func toFloat32Array() -> Float32Array { + let this = jsObject + return this[Strings.toFloat32Array].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public func toFloat64Array() -> Float64Array { + let this = jsObject + return this[Strings.toFloat64Array].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public var description: String { + jsObject[Strings.toString]!().fromJSValue()! + } + + @inlinable public func toJSON() -> JSObject { + let this = jsObject + return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! + } +} + +public class DOMParser: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMParser].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject + } + + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } + + @inlinable public func parseFromString(string: String, type: DOMParserSupportedType) -> Document { + let this = jsObject + return this[Strings.parseFromString].function!(this: this, arguments: [string.jsValue, type.jsValue]).fromJSValue()! + } +} + +public enum DOMParserSupportedType: JSString, JSValueCompatible { + case textHtml = "text/html" + case textXml = "text/xml" + case applicationXml = "application/xml" + case applicationXhtmlXml = "application/xhtml+xml" + case imageSvgXml = "image/svg+xml" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class DOMPoint: DOMPointReadOnly { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DOMPoint].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _x = ReadWriteAttribute(jsObject: jsObject, name: Strings.x) + _y = ReadWriteAttribute(jsObject: jsObject, name: Strings.y) + _z = ReadWriteAttribute(jsObject: jsObject, name: Strings.z) + _w = ReadWriteAttribute(jsObject: jsObject, name: Strings.w) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(x: Double? = nil, y: Double? = nil, z: Double? = nil, w: Double? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, z?.jsValue ?? .undefined, w?.jsValue ?? .undefined])) + } + + // XXX: illegal static override + // override public static func fromPoint(other: DOMPointInit? = nil) -> Self + + @usableFromInline let _x: ReadWriteAttribute + @inlinable override public var x: Double { + get { _x.wrappedValue } + set { _x.wrappedValue = newValue } + } + + @usableFromInline let _y: ReadWriteAttribute + @inlinable override public var y: Double { + get { _y.wrappedValue } + set { _y.wrappedValue = newValue } + } + + @usableFromInline let _z: ReadWriteAttribute + @inlinable override public var z: Double { + get { _z.wrappedValue } + set { _z.wrappedValue = newValue } + } + + @usableFromInline let _w: ReadWriteAttribute + @inlinable override public var w: Double { + get { _w.wrappedValue } + set { _w.wrappedValue = newValue } + } +} + +public class DOMPointInit: BridgedDictionary { + public convenience init(x: Double, y: Double, z: Double, w: Double) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.x] = x.jsValue + object[Strings.y] = y.jsValue + object[Strings.z] = z.jsValue + object[Strings.w] = w.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _x = ReadWriteAttribute(jsObject: object, name: Strings.x) + _y = ReadWriteAttribute(jsObject: object, name: Strings.y) + _z = ReadWriteAttribute(jsObject: object, name: Strings.z) + _w = ReadWriteAttribute(jsObject: object, name: Strings.w) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var x: Double + + @ReadWriteAttribute + public var y: Double + + @ReadWriteAttribute + public var z: Double + + @ReadWriteAttribute + public var w: Double +} + +public class DOMPointReadOnly: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMPointReadOnly].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _x = ReadonlyAttribute(jsObject: jsObject, name: Strings.x) + _y = ReadonlyAttribute(jsObject: jsObject, name: Strings.y) + _z = ReadonlyAttribute(jsObject: jsObject, name: Strings.z) + _w = ReadonlyAttribute(jsObject: jsObject, name: Strings.w) + self.jsObject = jsObject + } + + @inlinable public convenience init(x: Double? = nil, y: Double? = nil, z: Double? = nil, w: Double? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, z?.jsValue ?? .undefined, w?.jsValue ?? .undefined])) + } + + @inlinable public static func fromPoint(other: DOMPointInit? = nil) -> Self { + let this = constructor + return this[Strings.fromPoint].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + } + + @ReadonlyAttribute + public var x: Double + + @ReadonlyAttribute + public var y: Double + + @ReadonlyAttribute + public var z: Double + + @ReadonlyAttribute + public var w: Double + + @inlinable public func matrixTransform(matrix: DOMMatrixInit? = nil) -> DOMPoint { + let this = jsObject + return this[Strings.matrixTransform].function!(this: this, arguments: [matrix?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func toJSON() -> JSObject { + let this = jsObject + return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! + } +} + +public class DOMQuad: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMQuad].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _p1 = ReadonlyAttribute(jsObject: jsObject, name: Strings.p1) + _p2 = ReadonlyAttribute(jsObject: jsObject, name: Strings.p2) + _p3 = ReadonlyAttribute(jsObject: jsObject, name: Strings.p3) + _p4 = ReadonlyAttribute(jsObject: jsObject, name: Strings.p4) + self.jsObject = jsObject + } + + @inlinable public convenience init(p1: DOMPointInit? = nil, p2: DOMPointInit? = nil, p3: DOMPointInit? = nil, p4: DOMPointInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [p1?.jsValue ?? .undefined, p2?.jsValue ?? .undefined, p3?.jsValue ?? .undefined, p4?.jsValue ?? .undefined])) + } + + @inlinable public static func fromRect(other: DOMRectInit? = nil) -> Self { + let this = constructor + return this[Strings.fromRect].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public static func fromQuad(other: DOMQuadInit? = nil) -> Self { + let this = constructor + return this[Strings.fromQuad].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + } + + @ReadonlyAttribute + public var p1: DOMPoint + + @ReadonlyAttribute + public var p2: DOMPoint + + @ReadonlyAttribute + public var p3: DOMPoint + + @ReadonlyAttribute + public var p4: DOMPoint + + @inlinable public func getBounds() -> DOMRect { + let this = jsObject + return this[Strings.getBounds].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public func toJSON() -> JSObject { + let this = jsObject + return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! + } +} + +public class DOMQuadInit: BridgedDictionary { + public convenience init(p1: DOMPointInit, p2: DOMPointInit, p3: DOMPointInit, p4: DOMPointInit) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.p1] = p1.jsValue + object[Strings.p2] = p2.jsValue + object[Strings.p3] = p3.jsValue + object[Strings.p4] = p4.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _p1 = ReadWriteAttribute(jsObject: object, name: Strings.p1) + _p2 = ReadWriteAttribute(jsObject: object, name: Strings.p2) + _p3 = ReadWriteAttribute(jsObject: object, name: Strings.p3) + _p4 = ReadWriteAttribute(jsObject: object, name: Strings.p4) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var p1: DOMPointInit + + @ReadWriteAttribute + public var p2: DOMPointInit + + @ReadWriteAttribute + public var p3: DOMPointInit + + @ReadWriteAttribute + public var p4: DOMPointInit +} + +public class DOMRect: DOMRectReadOnly { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DOMRect].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _x = ReadWriteAttribute(jsObject: jsObject, name: Strings.x) + _y = ReadWriteAttribute(jsObject: jsObject, name: Strings.y) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(x: Double? = nil, y: Double? = nil, width: Double? = nil, height: Double? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, width?.jsValue ?? .undefined, height?.jsValue ?? .undefined])) + } + + // XXX: illegal static override + // override public static func fromRect(other: DOMRectInit? = nil) -> Self + + @usableFromInline let _x: ReadWriteAttribute + @inlinable override public var x: Double { + get { _x.wrappedValue } + set { _x.wrappedValue = newValue } + } + + @usableFromInline let _y: ReadWriteAttribute + @inlinable override public var y: Double { + get { _y.wrappedValue } + set { _y.wrappedValue = newValue } + } + + @usableFromInline let _width: ReadWriteAttribute + @inlinable override public var width: Double { + get { _width.wrappedValue } + set { _width.wrappedValue = newValue } + } + + @usableFromInline let _height: ReadWriteAttribute + @inlinable override public var height: Double { + get { _height.wrappedValue } + set { _height.wrappedValue = newValue } + } +} + +public class DOMRectInit: BridgedDictionary { + public convenience init(x: Double, y: Double, width: Double, height: Double) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.x] = x.jsValue + object[Strings.y] = y.jsValue + object[Strings.width] = width.jsValue + object[Strings.height] = height.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _x = ReadWriteAttribute(jsObject: object, name: Strings.x) + _y = ReadWriteAttribute(jsObject: object, name: Strings.y) + _width = ReadWriteAttribute(jsObject: object, name: Strings.width) + _height = ReadWriteAttribute(jsObject: object, name: Strings.height) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var x: Double + + @ReadWriteAttribute + public var y: Double + + @ReadWriteAttribute + public var width: Double + + @ReadWriteAttribute + public var height: Double +} + +public class DOMRectList: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMRectList].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + self.jsObject = jsObject + } + + @ReadonlyAttribute + public var length: UInt32 + + @inlinable public subscript(key: Int) -> DOMRect? { + jsObject[key].fromJSValue() + } +} + +public class DOMRectReadOnly: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMRectReadOnly].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _x = ReadonlyAttribute(jsObject: jsObject, name: Strings.x) + _y = ReadonlyAttribute(jsObject: jsObject, name: Strings.y) + _width = ReadonlyAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadonlyAttribute(jsObject: jsObject, name: Strings.height) + _top = ReadonlyAttribute(jsObject: jsObject, name: Strings.top) + _right = ReadonlyAttribute(jsObject: jsObject, name: Strings.right) + _bottom = ReadonlyAttribute(jsObject: jsObject, name: Strings.bottom) + _left = ReadonlyAttribute(jsObject: jsObject, name: Strings.left) + self.jsObject = jsObject + } + + @inlinable public convenience init(x: Double? = nil, y: Double? = nil, width: Double? = nil, height: Double? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, width?.jsValue ?? .undefined, height?.jsValue ?? .undefined])) + } + + @inlinable public static func fromRect(other: DOMRectInit? = nil) -> Self { + let this = constructor + return this[Strings.fromRect].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + } + + @ReadonlyAttribute + public var x: Double + + @ReadonlyAttribute + public var y: Double + + @ReadonlyAttribute + public var width: Double + + @ReadonlyAttribute + public var height: Double + + @ReadonlyAttribute + public var top: Double + + @ReadonlyAttribute + public var right: Double + + @ReadonlyAttribute + public var bottom: Double + + @ReadonlyAttribute + public var left: Double + + @inlinable public func toJSON() -> JSObject { + let this = jsObject + return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! + } +} + +public class DOMStringList: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMStringList].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + self.jsObject = jsObject + } + + @ReadonlyAttribute + public var length: UInt32 + + @inlinable public subscript(key: Int) -> String? { + jsObject[key].fromJSValue() + } + + @inlinable public func contains(string: String) -> Bool { + let this = jsObject + return this[Strings.contains].function!(this: this, arguments: [string.jsValue]).fromJSValue()! + } +} + +public class DOMStringMap: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMStringMap].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject + } + + @inlinable public subscript(key: String) -> String { + jsObject[key].fromJSValue()! + } + + // XXX: unsupported setter for keys of type String + + // XXX: unsupported deleter for keys of type String +} + +public class DOMTokenList: JSBridgedClass, Sequence { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMTokenList].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + self.jsObject = jsObject + } + + @ReadonlyAttribute + public var length: UInt32 + + @inlinable public subscript(key: Int) -> String? { + jsObject[key].fromJSValue() + } + + @inlinable public func contains(token: String) -> Bool { + let this = jsObject + return this[Strings.contains].function!(this: this, arguments: [token.jsValue]).fromJSValue()! + } + + @inlinable public func add(tokens: String...) { + let this = jsObject + _ = this[Strings.add].function!(this: this, arguments: tokens.map(\.jsValue)) + } + + @inlinable public func remove(tokens: String...) { + let this = jsObject + _ = this[Strings.remove].function!(this: this, arguments: tokens.map(\.jsValue)) + } + + @inlinable public func toggle(token: String, force: Bool? = nil) -> Bool { + let this = jsObject + return this[Strings.toggle].function!(this: this, arguments: [token.jsValue, force?.jsValue ?? .undefined]).fromJSValue()! + } + + @inlinable public func replace(token: String, newToken: String) -> Bool { + let this = jsObject + return this[Strings.replace].function!(this: this, arguments: [token.jsValue, newToken.jsValue]).fromJSValue()! + } + + @inlinable public func supports(token: String) -> Bool { + let this = jsObject + return this[Strings.supports].function!(this: this, arguments: [token.jsValue]).fromJSValue()! + } + + @ReadWriteAttribute + public var value: String + + public typealias Element = String + public func makeIterator() -> ValueIterableIterator { + ValueIterableIterator(sequence: self) + } +} + +public class DataTransfer: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DataTransfer].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _dropEffect = ReadWriteAttribute(jsObject: jsObject, name: Strings.dropEffect) + _effectAllowed = ReadWriteAttribute(jsObject: jsObject, name: Strings.effectAllowed) + _items = ReadonlyAttribute(jsObject: jsObject, name: Strings.items) + _types = ReadonlyAttribute(jsObject: jsObject, name: Strings.types) + _files = ReadonlyAttribute(jsObject: jsObject, name: Strings.files) + self.jsObject = jsObject + } + + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } + + @ReadWriteAttribute + public var dropEffect: String + + @ReadWriteAttribute + public var effectAllowed: String + + @ReadonlyAttribute + public var items: DataTransferItemList + + @inlinable public func setDragImage(image: Element, x: Int32, y: Int32) { + let this = jsObject + _ = this[Strings.setDragImage].function!(this: this, arguments: [image.jsValue, x.jsValue, y.jsValue]) + } + + @ReadonlyAttribute + public var types: [String] + + @inlinable public func getData(format: String) -> String { + let this = jsObject + return this[Strings.getData].function!(this: this, arguments: [format.jsValue]).fromJSValue()! + } + + @inlinable public func setData(format: String, data: String) { + let this = jsObject + _ = this[Strings.setData].function!(this: this, arguments: [format.jsValue, data.jsValue]) + } + + @inlinable public func clearData(format: String? = nil) { + let this = jsObject + _ = this[Strings.clearData].function!(this: this, arguments: [format?.jsValue ?? .undefined]) + } + + @ReadonlyAttribute + public var files: FileList +} + +public class DataTransferItem: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DataTransferItem].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _kind = ReadonlyAttribute(jsObject: jsObject, name: Strings.kind) + _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) + self.jsObject = jsObject + } + + @ReadonlyAttribute + public var kind: String + + @ReadonlyAttribute + public var type: String + + // XXX: member 'getAsString' is ignored + + @inlinable public func getAsFile() -> File? { + let this = jsObject + return this[Strings.getAsFile].function!(this: this, arguments: []).fromJSValue()! + } +} + +public class DataTransferItemList: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DataTransferItemList].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + self.jsObject = jsObject + } + + @ReadonlyAttribute + public var length: UInt32 + + @inlinable public subscript(key: Int) -> DataTransferItem { + jsObject[key].fromJSValue()! + } + + @inlinable public func add(data: String, type: String) -> DataTransferItem? { + let this = jsObject + return this[Strings.add].function!(this: this, arguments: [data.jsValue, type.jsValue]).fromJSValue()! + } + + @inlinable public func add(data: File) -> DataTransferItem? { + let this = jsObject + return this[Strings.add].function!(this: this, arguments: [data.jsValue]).fromJSValue()! + } + + @inlinable public func remove(index: UInt32) { + let this = jsObject + _ = this[Strings.remove].function!(this: this, arguments: [index.jsValue]) + } + + @inlinable public func clear() { + let this = jsObject + _ = this[Strings.clear].function!(this: this, arguments: []) + } +} + +public class DelayNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DelayNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _delayTime = ReadonlyAttribute(jsObject: jsObject, name: Strings.delayTime) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: DelayOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var delayTime: AudioParam +} + +public class DelayOptions: BridgedDictionary { + public convenience init(maxDelayTime: Double, delayTime: Double) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.maxDelayTime] = maxDelayTime.jsValue + object[Strings.delayTime] = delayTime.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _maxDelayTime = ReadWriteAttribute(jsObject: object, name: Strings.maxDelayTime) + _delayTime = ReadWriteAttribute(jsObject: object, name: Strings.delayTime) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var maxDelayTime: Double + + @ReadWriteAttribute + public var delayTime: Double +} + +public class DevicePermissionDescriptor: BridgedDictionary { + public convenience init(deviceId: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.deviceId] = deviceId.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _deviceId = ReadWriteAttribute(jsObject: object, name: Strings.deviceId) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var deviceId: String +} + +public enum DistanceModelType: JSString, JSValueCompatible { + case linear = "linear" + case inverse = "inverse" + case exponential = "exponential" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class Document: Node, NonElementParentNode, DocumentOrShadowRoot, ParentNode, XPathEvaluatorBase, GlobalEventHandlers, DocumentAndElementEventHandlers, GeometryUtils { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.Document].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _implementation = ReadonlyAttribute(jsObject: jsObject, name: Strings.implementation) + _URL = ReadonlyAttribute(jsObject: jsObject, name: Strings.URL) + _documentURI = ReadonlyAttribute(jsObject: jsObject, name: Strings.documentURI) + _compatMode = ReadonlyAttribute(jsObject: jsObject, name: Strings.compatMode) + _characterSet = ReadonlyAttribute(jsObject: jsObject, name: Strings.characterSet) + _charset = ReadonlyAttribute(jsObject: jsObject, name: Strings.charset) + _inputEncoding = ReadonlyAttribute(jsObject: jsObject, name: Strings.inputEncoding) + _contentType = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentType) + _doctype = ReadonlyAttribute(jsObject: jsObject, name: Strings.doctype) + _documentElement = ReadonlyAttribute(jsObject: jsObject, name: Strings.documentElement) + _location = ReadonlyAttribute(jsObject: jsObject, name: Strings.location) + _domain = ReadWriteAttribute(jsObject: jsObject, name: Strings.domain) + _referrer = ReadonlyAttribute(jsObject: jsObject, name: Strings.referrer) + _cookie = ReadWriteAttribute(jsObject: jsObject, name: Strings.cookie) + _lastModified = ReadonlyAttribute(jsObject: jsObject, name: Strings.lastModified) + _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) + _title = ReadWriteAttribute(jsObject: jsObject, name: Strings.title) + _dir = ReadWriteAttribute(jsObject: jsObject, name: Strings.dir) + _body = ReadWriteAttribute(jsObject: jsObject, name: Strings.body) + _head = ReadonlyAttribute(jsObject: jsObject, name: Strings.head) + _images = ReadonlyAttribute(jsObject: jsObject, name: Strings.images) + _embeds = ReadonlyAttribute(jsObject: jsObject, name: Strings.embeds) + _plugins = ReadonlyAttribute(jsObject: jsObject, name: Strings.plugins) + _links = ReadonlyAttribute(jsObject: jsObject, name: Strings.links) + _forms = ReadonlyAttribute(jsObject: jsObject, name: Strings.forms) + _scripts = ReadonlyAttribute(jsObject: jsObject, name: Strings.scripts) + _currentScript = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentScript) + _defaultView = ReadonlyAttribute(jsObject: jsObject, name: Strings.defaultView) + _designMode = ReadWriteAttribute(jsObject: jsObject, name: Strings.designMode) + _hidden = ReadonlyAttribute(jsObject: jsObject, name: Strings.hidden) + _visibilityState = ReadonlyAttribute(jsObject: jsObject, name: Strings.visibilityState) + _onreadystatechange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onreadystatechange) + _onvisibilitychange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onvisibilitychange) + _fgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.fgColor) + _linkColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.linkColor) + _vlinkColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.vlinkColor) + _alinkColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.alinkColor) + _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) + _anchors = ReadonlyAttribute(jsObject: jsObject, name: Strings.anchors) + _applets = ReadonlyAttribute(jsObject: jsObject, name: Strings.applets) + _all = ReadonlyAttribute(jsObject: jsObject, name: Strings.all) + _timeline = ReadonlyAttribute(jsObject: jsObject, name: Strings.timeline) + _scrollingElement = ReadonlyAttribute(jsObject: jsObject, name: Strings.scrollingElement) + super.init(unsafelyWrapping: jsObject) } - @inlinable public static func fromFloat64Array(array64: Float64Array) -> Self { - let this = constructor - return this[Strings.fromFloat64Array].function!(this: this, arguments: [array64.jsValue]).fromJSValue()! + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadonlyAttribute - public var a: Double - - @ReadonlyAttribute - public var b: Double - - @ReadonlyAttribute - public var c: Double - - @ReadonlyAttribute - public var d: Double - - @ReadonlyAttribute - public var e: Double - - @ReadonlyAttribute - public var f: Double - - @ReadonlyAttribute - public var m11: Double - - @ReadonlyAttribute - public var m12: Double - - @ReadonlyAttribute - public var m13: Double - - @ReadonlyAttribute - public var m14: Double - - @ReadonlyAttribute - public var m21: Double - - @ReadonlyAttribute - public var m22: Double - - @ReadonlyAttribute - public var m23: Double - - @ReadonlyAttribute - public var m24: Double - - @ReadonlyAttribute - public var m31: Double + public var implementation: DOMImplementation @ReadonlyAttribute - public var m32: Double + public var URL: String @ReadonlyAttribute - public var m33: Double + public var documentURI: String @ReadonlyAttribute - public var m34: Double + public var compatMode: String @ReadonlyAttribute - public var m41: Double + public var characterSet: String @ReadonlyAttribute - public var m42: Double + public var charset: String @ReadonlyAttribute - public var m43: Double + public var inputEncoding: String @ReadonlyAttribute - public var m44: Double + public var contentType: String @ReadonlyAttribute - public var is2D: Bool + public var doctype: DocumentType? @ReadonlyAttribute - public var isIdentity: Bool + public var documentElement: Element? - @inlinable public func translate(tx: Double? = nil, ty: Double? = nil, tz: Double? = nil) -> DOMMatrix { + @inlinable public func getElementsByTagName(qualifiedName: String) -> HTMLCollection { let this = jsObject - return this[Strings.translate].function!(this: this, arguments: [tx?.jsValue ?? .undefined, ty?.jsValue ?? .undefined, tz?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.getElementsByTagName].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! } - @inlinable public func scale(scaleX: Double? = nil, scaleY: Double? = nil, scaleZ: Double? = nil, originX: Double? = nil, originY: Double? = nil, originZ: Double? = nil) -> DOMMatrix { - let _arg0 = scaleX?.jsValue ?? .undefined - let _arg1 = scaleY?.jsValue ?? .undefined - let _arg2 = scaleZ?.jsValue ?? .undefined - let _arg3 = originX?.jsValue ?? .undefined - let _arg4 = originY?.jsValue ?? .undefined - let _arg5 = originZ?.jsValue ?? .undefined + @inlinable public func getElementsByTagNameNS(namespace: String?, localName: String) -> HTMLCollection { let this = jsObject - return this[Strings.scale].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5]).fromJSValue()! + return this[Strings.getElementsByTagNameNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! } - @inlinable public func scaleNonUniform(scaleX: Double? = nil, scaleY: Double? = nil) -> DOMMatrix { + @inlinable public func getElementsByClassName(classNames: String) -> HTMLCollection { let this = jsObject - return this[Strings.scaleNonUniform].function!(this: this, arguments: [scaleX?.jsValue ?? .undefined, scaleY?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.getElementsByClassName].function!(this: this, arguments: [classNames.jsValue]).fromJSValue()! } - @inlinable public func scale3d(scale: Double? = nil, originX: Double? = nil, originY: Double? = nil, originZ: Double? = nil) -> DOMMatrix { + @inlinable public func createElement(localName: String, options: ElementCreationOptions_or_String? = nil) -> Element { let this = jsObject - return this[Strings.scale3d].function!(this: this, arguments: [scale?.jsValue ?? .undefined, originX?.jsValue ?? .undefined, originY?.jsValue ?? .undefined, originZ?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createElement].function!(this: this, arguments: [localName.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public func rotate(rotX: Double? = nil, rotY: Double? = nil, rotZ: Double? = nil) -> DOMMatrix { + @inlinable public func createElementNS(namespace: String?, qualifiedName: String, options: ElementCreationOptions_or_String? = nil) -> Element { let this = jsObject - return this[Strings.rotate].function!(this: this, arguments: [rotX?.jsValue ?? .undefined, rotY?.jsValue ?? .undefined, rotZ?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createElementNS].function!(this: this, arguments: [namespace.jsValue, qualifiedName.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public func rotateFromVector(x: Double? = nil, y: Double? = nil) -> DOMMatrix { + @inlinable public func createDocumentFragment() -> DocumentFragment { let this = jsObject - return this[Strings.rotateFromVector].function!(this: this, arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createDocumentFragment].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func rotateAxisAngle(x: Double? = nil, y: Double? = nil, z: Double? = nil, angle: Double? = nil) -> DOMMatrix { + @inlinable public func createTextNode(data: String) -> Text { let this = jsObject - return this[Strings.rotateAxisAngle].function!(this: this, arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, z?.jsValue ?? .undefined, angle?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createTextNode].function!(this: this, arguments: [data.jsValue]).fromJSValue()! } - @inlinable public func skewX(sx: Double? = nil) -> DOMMatrix { + @inlinable public func createCDATASection(data: String) -> CDATASection { let this = jsObject - return this[Strings.skewX].function!(this: this, arguments: [sx?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createCDATASection].function!(this: this, arguments: [data.jsValue]).fromJSValue()! } - @inlinable public func skewY(sy: Double? = nil) -> DOMMatrix { + @inlinable public func createComment(data: String) -> Comment { let this = jsObject - return this[Strings.skewY].function!(this: this, arguments: [sy?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createComment].function!(this: this, arguments: [data.jsValue]).fromJSValue()! } - @inlinable public func multiply(other: DOMMatrixInit? = nil) -> DOMMatrix { + @inlinable public func createProcessingInstruction(target: String, data: String) -> ProcessingInstruction { let this = jsObject - return this[Strings.multiply].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createProcessingInstruction].function!(this: this, arguments: [target.jsValue, data.jsValue]).fromJSValue()! } - @inlinable public func flipX() -> DOMMatrix { + @inlinable public func importNode(node: Node, deep: Bool? = nil) -> Node { let this = jsObject - return this[Strings.flipX].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.importNode].function!(this: this, arguments: [node.jsValue, deep?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public func flipY() -> DOMMatrix { + @inlinable public func adoptNode(node: Node) -> Node { let this = jsObject - return this[Strings.flipY].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.adoptNode].function!(this: this, arguments: [node.jsValue]).fromJSValue()! } - @inlinable public func inverse() -> DOMMatrix { + @inlinable public func createAttribute(localName: String) -> Attr { let this = jsObject - return this[Strings.inverse].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.createAttribute].function!(this: this, arguments: [localName.jsValue]).fromJSValue()! } - @inlinable public func transformPoint(point: DOMPointInit? = nil) -> DOMPoint { + @inlinable public func createAttributeNS(namespace: String?, qualifiedName: String) -> Attr { let this = jsObject - return this[Strings.transformPoint].function!(this: this, arguments: [point?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.createAttributeNS].function!(this: this, arguments: [namespace.jsValue, qualifiedName.jsValue]).fromJSValue()! } - @inlinable public func toFloat32Array() -> Float32Array { + @inlinable public func createEvent(interface: String) -> Event { let this = jsObject - return this[Strings.toFloat32Array].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.createEvent].function!(this: this, arguments: [interface.jsValue]).fromJSValue()! } - @inlinable public func toFloat64Array() -> Float64Array { + @inlinable public func createRange() -> Range { let this = jsObject - return this[Strings.toFloat64Array].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.createRange].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public var description: String { - jsObject[Strings.toString]!().fromJSValue()! - } + // XXX: member 'createNodeIterator' is ignored - @inlinable public func toJSON() -> JSObject { - let this = jsObject - return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! - } -} + // XXX: member 'createTreeWalker' is ignored -public class DOMParser: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMParser].function! } + @ReadonlyAttribute + public var location: Location? - public let jsObject: JSObject + @ReadWriteAttribute + public var domain: String - public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject - } + @ReadonlyAttribute + public var referrer: String - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @ReadWriteAttribute + public var cookie: String + + @ReadonlyAttribute + public var lastModified: String + + @ReadonlyAttribute + public var readyState: DocumentReadyState + + @inlinable public subscript(key: String) -> JSObject { + jsObject[key].fromJSValue()! } - @inlinable public func parseFromString(string: String, type: DOMParserSupportedType) -> Document { + @ReadWriteAttribute + public var title: String + + @ReadWriteAttribute + public var dir: String + + @ReadWriteAttribute + public var body: HTMLElement? + + @ReadonlyAttribute + public var head: HTMLHeadElement? + + @ReadonlyAttribute + public var images: HTMLCollection + + @ReadonlyAttribute + public var embeds: HTMLCollection + + @ReadonlyAttribute + public var plugins: HTMLCollection + + @ReadonlyAttribute + public var links: HTMLCollection + + @ReadonlyAttribute + public var forms: HTMLCollection + + @ReadonlyAttribute + public var scripts: HTMLCollection + + @inlinable public func getElementsByName(elementName: String) -> NodeList { let this = jsObject - return this[Strings.parseFromString].function!(this: this, arguments: [string.jsValue, type.jsValue]).fromJSValue()! + return this[Strings.getElementsByName].function!(this: this, arguments: [elementName.jsValue]).fromJSValue()! } -} -public enum DOMParserSupportedType: JSString, JSValueCompatible { - case textHtml = "text/html" - case textXml = "text/xml" - case applicationXml = "application/xml" - case applicationXhtmlXml = "application/xhtml+xml" - case imageSvgXml = "image/svg+xml" + @ReadonlyAttribute + public var currentScript: HTMLOrSVGScriptElement? - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @inlinable public func open(unused1: String? = nil, unused2: String? = nil) -> Self { + let this = jsObject + return this[Strings.open].function!(this: this, arguments: [unused1?.jsValue ?? .undefined, unused2?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable public func open(url: String, name: String, features: String) -> WindowProxy? { + let this = jsObject + return this[Strings.open].function!(this: this, arguments: [url.jsValue, name.jsValue, features.jsValue]).fromJSValue()! } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} + @inlinable public func close() { + let this = jsObject + _ = this[Strings.close].function!(this: this, arguments: []) + } -public class DOMPoint: DOMPointReadOnly { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DOMPoint].function! } + @inlinable public func write(text: String...) { + let this = jsObject + _ = this[Strings.write].function!(this: this, arguments: text.map(\.jsValue)) + } - public required init(unsafelyWrapping jsObject: JSObject) { - _x = ReadWriteAttribute(jsObject: jsObject, name: Strings.x) - _y = ReadWriteAttribute(jsObject: jsObject, name: Strings.y) - _z = ReadWriteAttribute(jsObject: jsObject, name: Strings.z) - _w = ReadWriteAttribute(jsObject: jsObject, name: Strings.w) - super.init(unsafelyWrapping: jsObject) + @inlinable public func writeln(text: String...) { + let this = jsObject + _ = this[Strings.writeln].function!(this: this, arguments: text.map(\.jsValue)) } - @inlinable public convenience init(x: Double? = nil, y: Double? = nil, z: Double? = nil, w: Double? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, z?.jsValue ?? .undefined, w?.jsValue ?? .undefined])) + @ReadonlyAttribute + public var defaultView: WindowProxy? + + @inlinable public func hasFocus() -> Bool { + let this = jsObject + return this[Strings.hasFocus].function!(this: this, arguments: []).fromJSValue()! } - // XXX: illegal static override - // override public static func fromPoint(other: DOMPointInit? = nil) -> Self + @ReadWriteAttribute + public var designMode: String - @usableFromInline let _x: ReadWriteAttribute - @inlinable override public var x: Double { - get { _x.wrappedValue } - set { _x.wrappedValue = newValue } + @inlinable public func execCommand(commandId: String, showUI: Bool? = nil, value: String? = nil) -> Bool { + let this = jsObject + return this[Strings.execCommand].function!(this: this, arguments: [commandId.jsValue, showUI?.jsValue ?? .undefined, value?.jsValue ?? .undefined]).fromJSValue()! } - @usableFromInline let _y: ReadWriteAttribute - @inlinable override public var y: Double { - get { _y.wrappedValue } - set { _y.wrappedValue = newValue } + @inlinable public func queryCommandEnabled(commandId: String) -> Bool { + let this = jsObject + return this[Strings.queryCommandEnabled].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! } - @usableFromInline let _z: ReadWriteAttribute - @inlinable override public var z: Double { - get { _z.wrappedValue } - set { _z.wrappedValue = newValue } + @inlinable public func queryCommandIndeterm(commandId: String) -> Bool { + let this = jsObject + return this[Strings.queryCommandIndeterm].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! } - @usableFromInline let _w: ReadWriteAttribute - @inlinable override public var w: Double { - get { _w.wrappedValue } - set { _w.wrappedValue = newValue } + @inlinable public func queryCommandState(commandId: String) -> Bool { + let this = jsObject + return this[Strings.queryCommandState].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! } -} -public class DOMPointInit: BridgedDictionary { - public convenience init(x: Double, y: Double, z: Double, w: Double) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.x] = x.jsValue - object[Strings.y] = y.jsValue - object[Strings.z] = z.jsValue - object[Strings.w] = w.jsValue - self.init(unsafelyWrapping: object) + @inlinable public func queryCommandSupported(commandId: String) -> Bool { + let this = jsObject + return this[Strings.queryCommandSupported].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! } - public required init(unsafelyWrapping object: JSObject) { - _x = ReadWriteAttribute(jsObject: object, name: Strings.x) - _y = ReadWriteAttribute(jsObject: object, name: Strings.y) - _z = ReadWriteAttribute(jsObject: object, name: Strings.z) - _w = ReadWriteAttribute(jsObject: object, name: Strings.w) - super.init(unsafelyWrapping: object) + @inlinable public func queryCommandValue(commandId: String) -> String { + let this = jsObject + return this[Strings.queryCommandValue].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! } + @ReadonlyAttribute + public var hidden: Bool + + @ReadonlyAttribute + public var visibilityState: DocumentVisibilityState + + @ClosureAttribute1Optional + public var onreadystatechange: EventHandler + + @ClosureAttribute1Optional + public var onvisibilitychange: EventHandler + @ReadWriteAttribute - public var x: Double + public var fgColor: String @ReadWriteAttribute - public var y: Double + public var linkColor: String @ReadWriteAttribute - public var z: Double + public var vlinkColor: String @ReadWriteAttribute - public var w: Double -} + public var alinkColor: String -public class DOMPointReadOnly: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMPointReadOnly].function! } + @ReadWriteAttribute + public var bgColor: String - public let jsObject: JSObject + @ReadonlyAttribute + public var anchors: HTMLCollection - public required init(unsafelyWrapping jsObject: JSObject) { - _x = ReadonlyAttribute(jsObject: jsObject, name: Strings.x) - _y = ReadonlyAttribute(jsObject: jsObject, name: Strings.y) - _z = ReadonlyAttribute(jsObject: jsObject, name: Strings.z) - _w = ReadonlyAttribute(jsObject: jsObject, name: Strings.w) - self.jsObject = jsObject - } + @ReadonlyAttribute + public var applets: HTMLCollection - @inlinable public convenience init(x: Double? = nil, y: Double? = nil, z: Double? = nil, w: Double? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, z?.jsValue ?? .undefined, w?.jsValue ?? .undefined])) + @inlinable public func clear() { + let this = jsObject + _ = this[Strings.clear].function!(this: this, arguments: []) } - @inlinable public static func fromPoint(other: DOMPointInit? = nil) -> Self { - let this = constructor - return this[Strings.fromPoint].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + @inlinable public func captureEvents() { + let this = jsObject + _ = this[Strings.captureEvents].function!(this: this, arguments: []) } - @ReadonlyAttribute - public var x: Double + @inlinable public func releaseEvents() { + let this = jsObject + _ = this[Strings.releaseEvents].function!(this: this, arguments: []) + } @ReadonlyAttribute - public var y: Double + public var all: HTMLAllCollection @ReadonlyAttribute - public var z: Double + public var timeline: DocumentTimeline - @ReadonlyAttribute - public var w: Double + @inlinable public func elementFromPoint(x: Double, y: Double) -> Element? { + let this = jsObject + return this[Strings.elementFromPoint].function!(this: this, arguments: [x.jsValue, y.jsValue]).fromJSValue()! + } - @inlinable public func matrixTransform(matrix: DOMMatrixInit? = nil) -> DOMPoint { + @inlinable public func elementsFromPoint(x: Double, y: Double) -> [Element] { let this = jsObject - return this[Strings.matrixTransform].function!(this: this, arguments: [matrix?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.elementsFromPoint].function!(this: this, arguments: [x.jsValue, y.jsValue]).fromJSValue()! } - @inlinable public func toJSON() -> JSObject { + @inlinable public func caretPositionFromPoint(x: Double, y: Double) -> CaretPosition? { let this = jsObject - return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.caretPositionFromPoint].function!(this: this, arguments: [x.jsValue, y.jsValue]).fromJSValue()! } + + @ReadonlyAttribute + public var scrollingElement: Element? } -public class DOMQuad: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMQuad].function! } +public protocol DocumentAndElementEventHandlers: JSBridgedClass {} +public extension DocumentAndElementEventHandlers { + @inlinable var oncopy: EventHandler { + get { ClosureAttribute1Optional[Strings.oncopy, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncopy, in: jsObject] = newValue } + } - public let jsObject: JSObject + @inlinable var oncut: EventHandler { + get { ClosureAttribute1Optional[Strings.oncut, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncut, in: jsObject] = newValue } + } - public required init(unsafelyWrapping jsObject: JSObject) { - _p1 = ReadonlyAttribute(jsObject: jsObject, name: Strings.p1) - _p2 = ReadonlyAttribute(jsObject: jsObject, name: Strings.p2) - _p3 = ReadonlyAttribute(jsObject: jsObject, name: Strings.p3) - _p4 = ReadonlyAttribute(jsObject: jsObject, name: Strings.p4) - self.jsObject = jsObject + @inlinable var onpaste: EventHandler { + get { ClosureAttribute1Optional[Strings.onpaste, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onpaste, in: jsObject] = newValue } } +} - @inlinable public convenience init(p1: DOMPointInit? = nil, p2: DOMPointInit? = nil, p3: DOMPointInit? = nil, p4: DOMPointInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [p1?.jsValue ?? .undefined, p2?.jsValue ?? .undefined, p3?.jsValue ?? .undefined, p4?.jsValue ?? .undefined])) +public class DocumentFragment: Node, NonElementParentNode, ParentNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DocumentFragment].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) } - @inlinable public static func fromRect(other: DOMRectInit? = nil) -> Self { - let this = constructor - return this[Strings.fromRect].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } +} - @inlinable public static func fromQuad(other: DOMQuadInit? = nil) -> Self { - let this = constructor - return this[Strings.fromQuad].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! +public protocol DocumentOrShadowRoot: JSBridgedClass {} +public extension DocumentOrShadowRoot { + @inlinable var activeElement: Element? { ReadonlyAttribute[Strings.activeElement, in: jsObject] } + + @inlinable func getAnimations() -> [Animation] { + let this = jsObject + return this[Strings.getAnimations].function!(this: this, arguments: []).fromJSValue()! } +} - @ReadonlyAttribute - public var p1: DOMPoint +public enum DocumentReadyState: JSString, JSValueCompatible { + case loading = "loading" + case interactive = "interactive" + case complete = "complete" - @ReadonlyAttribute - public var p2: DOMPoint + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - @ReadonlyAttribute - public var p3: DOMPoint + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - @ReadonlyAttribute - public var p4: DOMPoint + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @inlinable public func getBounds() -> DOMRect { - let this = jsObject - return this[Strings.getBounds].function!(this: this, arguments: []).fromJSValue()! +public class DocumentTimeline: AnimationTimeline { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DocumentTimeline].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) } - @inlinable public func toJSON() -> JSObject { - let this = jsObject - return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! + @inlinable public convenience init(options: DocumentTimelineOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [options?.jsValue ?? .undefined])) } } -public class DOMQuadInit: BridgedDictionary { - public convenience init(p1: DOMPointInit, p2: DOMPointInit, p3: DOMPointInit, p4: DOMPointInit) { +public class DocumentTimelineOptions: BridgedDictionary { + public convenience init(originTime: DOMHighResTimeStamp) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.p1] = p1.jsValue - object[Strings.p2] = p2.jsValue - object[Strings.p3] = p3.jsValue - object[Strings.p4] = p4.jsValue + object[Strings.originTime] = originTime.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _p1 = ReadWriteAttribute(jsObject: object, name: Strings.p1) - _p2 = ReadWriteAttribute(jsObject: object, name: Strings.p2) - _p3 = ReadWriteAttribute(jsObject: object, name: Strings.p3) - _p4 = ReadWriteAttribute(jsObject: object, name: Strings.p4) + _originTime = ReadWriteAttribute(jsObject: object, name: Strings.originTime) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var p1: DOMPointInit - - @ReadWriteAttribute - public var p2: DOMPointInit - - @ReadWriteAttribute - public var p3: DOMPointInit - - @ReadWriteAttribute - public var p4: DOMPointInit + public var originTime: DOMHighResTimeStamp } -public class DOMRect: DOMRectReadOnly { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DOMRect].function! } +public class DocumentType: Node, ChildNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DocumentType].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _x = ReadWriteAttribute(jsObject: jsObject, name: Strings.x) - _y = ReadWriteAttribute(jsObject: jsObject, name: Strings.y) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _name = ReadonlyAttribute(jsObject: jsObject, name: Strings.name) + _publicId = ReadonlyAttribute(jsObject: jsObject, name: Strings.publicId) + _systemId = ReadonlyAttribute(jsObject: jsObject, name: Strings.systemId) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init(x: Double? = nil, y: Double? = nil, width: Double? = nil, height: Double? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, width?.jsValue ?? .undefined, height?.jsValue ?? .undefined])) - } + @ReadonlyAttribute + public var name: String + + @ReadonlyAttribute + public var publicId: String - // XXX: illegal static override - // override public static func fromRect(other: DOMRectInit? = nil) -> Self + @ReadonlyAttribute + public var systemId: String +} - @usableFromInline let _x: ReadWriteAttribute - @inlinable override public var x: Double { - get { _x.wrappedValue } - set { _x.wrappedValue = newValue } - } +public enum DocumentVisibilityState: JSString, JSValueCompatible { + case visible = "visible" + case hidden = "hidden" - @usableFromInline let _y: ReadWriteAttribute - @inlinable override public var y: Double { - get { _y.wrappedValue } - set { _y.wrappedValue = newValue } + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @usableFromInline let _width: ReadWriteAttribute - @inlinable override public var width: Double { - get { _width.wrappedValue } - set { _width.wrappedValue = newValue } + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @usableFromInline let _height: ReadWriteAttribute - @inlinable override public var height: Double { - get { _height.wrappedValue } - set { _height.wrappedValue = newValue } - } + @inlinable public var jsValue: JSValue { rawValue.jsValue } } -public class DOMRectInit: BridgedDictionary { - public convenience init(x: Double, y: Double, width: Double, height: Double) { +public class DoubleRange: BridgedDictionary { + public convenience init(max: Double, min: Double) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.x] = x.jsValue - object[Strings.y] = y.jsValue - object[Strings.width] = width.jsValue - object[Strings.height] = height.jsValue + object[Strings.max] = max.jsValue + object[Strings.min] = min.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _x = ReadWriteAttribute(jsObject: object, name: Strings.x) - _y = ReadWriteAttribute(jsObject: object, name: Strings.y) - _width = ReadWriteAttribute(jsObject: object, name: Strings.width) - _height = ReadWriteAttribute(jsObject: object, name: Strings.height) + _max = ReadWriteAttribute(jsObject: object, name: Strings.max) + _min = ReadWriteAttribute(jsObject: object, name: Strings.min) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var x: Double - - @ReadWriteAttribute - public var y: Double - - @ReadWriteAttribute - public var width: Double + public var max: Double @ReadWriteAttribute - public var height: Double + public var min: Double } -public class DOMRectList: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMRectList].function! } - - public let jsObject: JSObject +public class DragEvent: MouseEvent { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DragEvent].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - self.jsObject = jsObject + _dataTransfer = ReadonlyAttribute(jsObject: jsObject, name: Strings.dataTransfer) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(type: String, eventInitDict: DragEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) } @ReadonlyAttribute - public var length: UInt32 + public var dataTransfer: DataTransfer? +} - @inlinable public subscript(key: Int) -> DOMRect? { - jsObject[key].fromJSValue() +public class DragEventInit: BridgedDictionary { + public convenience init(dataTransfer: DataTransfer?) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.dataTransfer] = dataTransfer.jsValue + self.init(unsafelyWrapping: object) } -} -public class DOMRectReadOnly: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMRectReadOnly].function! } + public required init(unsafelyWrapping object: JSObject) { + _dataTransfer = ReadWriteAttribute(jsObject: object, name: Strings.dataTransfer) + super.init(unsafelyWrapping: object) + } - public let jsObject: JSObject + @ReadWriteAttribute + public var dataTransfer: DataTransfer? +} - public required init(unsafelyWrapping jsObject: JSObject) { - _x = ReadonlyAttribute(jsObject: jsObject, name: Strings.x) - _y = ReadonlyAttribute(jsObject: jsObject, name: Strings.y) - _width = ReadonlyAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadonlyAttribute(jsObject: jsObject, name: Strings.height) - _top = ReadonlyAttribute(jsObject: jsObject, name: Strings.top) - _right = ReadonlyAttribute(jsObject: jsObject, name: Strings.right) - _bottom = ReadonlyAttribute(jsObject: jsObject, name: Strings.bottom) - _left = ReadonlyAttribute(jsObject: jsObject, name: Strings.left) - self.jsObject = jsObject - } +public class DynamicsCompressorNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DynamicsCompressorNode].function! } - @inlinable public convenience init(x: Double? = nil, y: Double? = nil, width: Double? = nil, height: Double? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [x?.jsValue ?? .undefined, y?.jsValue ?? .undefined, width?.jsValue ?? .undefined, height?.jsValue ?? .undefined])) + public required init(unsafelyWrapping jsObject: JSObject) { + _threshold = ReadonlyAttribute(jsObject: jsObject, name: Strings.threshold) + _knee = ReadonlyAttribute(jsObject: jsObject, name: Strings.knee) + _ratio = ReadonlyAttribute(jsObject: jsObject, name: Strings.ratio) + _reduction = ReadonlyAttribute(jsObject: jsObject, name: Strings.reduction) + _attack = ReadonlyAttribute(jsObject: jsObject, name: Strings.attack) + _release = ReadonlyAttribute(jsObject: jsObject, name: Strings.release) + super.init(unsafelyWrapping: jsObject) } - @inlinable public static func fromRect(other: DOMRectInit? = nil) -> Self { - let this = constructor - return this[Strings.fromRect].function!(this: this, arguments: [other?.jsValue ?? .undefined]).fromJSValue()! + @inlinable public convenience init(context: BaseAudioContext, options: DynamicsCompressorOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) } @ReadonlyAttribute - public var x: Double - - @ReadonlyAttribute - public var y: Double + public var threshold: AudioParam @ReadonlyAttribute - public var width: Double + public var knee: AudioParam @ReadonlyAttribute - public var height: Double + public var ratio: AudioParam @ReadonlyAttribute - public var top: Double + public var reduction: Float @ReadonlyAttribute - public var right: Double + public var attack: AudioParam @ReadonlyAttribute - public var bottom: Double + public var release: AudioParam +} - @ReadonlyAttribute - public var left: Double +public class DynamicsCompressorOptions: BridgedDictionary { + public convenience init(attack: Float, knee: Float, ratio: Float, release: Float, threshold: Float) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.attack] = attack.jsValue + object[Strings.knee] = knee.jsValue + object[Strings.ratio] = ratio.jsValue + object[Strings.release] = release.jsValue + object[Strings.threshold] = threshold.jsValue + self.init(unsafelyWrapping: object) + } - @inlinable public func toJSON() -> JSObject { - let this = jsObject - return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _attack = ReadWriteAttribute(jsObject: object, name: Strings.attack) + _knee = ReadWriteAttribute(jsObject: object, name: Strings.knee) + _ratio = ReadWriteAttribute(jsObject: object, name: Strings.ratio) + _release = ReadWriteAttribute(jsObject: object, name: Strings.release) + _threshold = ReadWriteAttribute(jsObject: object, name: Strings.threshold) + super.init(unsafelyWrapping: object) } -} -public class DOMStringList: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMStringList].function! } + @ReadWriteAttribute + public var attack: Float - public let jsObject: JSObject + @ReadWriteAttribute + public var knee: Float - public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - self.jsObject = jsObject - } + @ReadWriteAttribute + public var ratio: Float - @ReadonlyAttribute - public var length: UInt32 + @ReadWriteAttribute + public var release: Float - @inlinable public subscript(key: Int) -> String? { - jsObject[key].fromJSValue() + @ReadWriteAttribute + public var threshold: Float +} + +public class EffectTiming: BridgedDictionary { + public convenience init(delay: Double, endDelay: Double, fill: FillMode, iterationStart: Double, iterations: Double, direction: PlaybackDirection, easing: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.delay] = delay.jsValue + object[Strings.endDelay] = endDelay.jsValue + object[Strings.fill] = fill.jsValue + object[Strings.iterationStart] = iterationStart.jsValue + object[Strings.iterations] = iterations.jsValue + object[Strings.direction] = direction.jsValue + object[Strings.easing] = easing.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func contains(string: String) -> Bool { - let this = jsObject - return this[Strings.contains].function!(this: this, arguments: [string.jsValue]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _delay = ReadWriteAttribute(jsObject: object, name: Strings.delay) + _endDelay = ReadWriteAttribute(jsObject: object, name: Strings.endDelay) + _fill = ReadWriteAttribute(jsObject: object, name: Strings.fill) + _iterationStart = ReadWriteAttribute(jsObject: object, name: Strings.iterationStart) + _iterations = ReadWriteAttribute(jsObject: object, name: Strings.iterations) + _direction = ReadWriteAttribute(jsObject: object, name: Strings.direction) + _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) + super.init(unsafelyWrapping: object) } -} -public class DOMStringMap: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMStringMap].function! } + @ReadWriteAttribute + public var delay: Double - public let jsObject: JSObject + @ReadWriteAttribute + public var endDelay: Double - public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject - } + @ReadWriteAttribute + public var fill: FillMode - @inlinable public subscript(key: String) -> String { - jsObject[key].fromJSValue()! - } + @ReadWriteAttribute + public var iterationStart: Double - // XXX: unsupported setter for keys of type String + @ReadWriteAttribute + public var iterations: Double - // XXX: unsupported deleter for keys of type String -} + @ReadWriteAttribute + public var direction: PlaybackDirection -public class DOMTokenList: JSBridgedClass, Sequence { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DOMTokenList].function! } + @ReadWriteAttribute + public var easing: String +} - public let jsObject: JSObject +public class Element: Node, ParentNode, NonDocumentTypeChildNode, ChildNode, Slottable, ARIAMixin, Animatable, GeometryUtils { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.Element].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - self.jsObject = jsObject + _namespaceURI = ReadonlyAttribute(jsObject: jsObject, name: Strings.namespaceURI) + _prefix = ReadonlyAttribute(jsObject: jsObject, name: Strings.prefix) + _localName = ReadonlyAttribute(jsObject: jsObject, name: Strings.localName) + _tagName = ReadonlyAttribute(jsObject: jsObject, name: Strings.tagName) + _id = ReadWriteAttribute(jsObject: jsObject, name: Strings.id) + _className = ReadWriteAttribute(jsObject: jsObject, name: Strings.className) + _classList = ReadonlyAttribute(jsObject: jsObject, name: Strings.classList) + _slot = ReadWriteAttribute(jsObject: jsObject, name: Strings.slot) + _attributes = ReadonlyAttribute(jsObject: jsObject, name: Strings.attributes) + _shadowRoot = ReadonlyAttribute(jsObject: jsObject, name: Strings.shadowRoot) + _scrollTop = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollTop) + _scrollLeft = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollLeft) + _scrollWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.scrollWidth) + _scrollHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.scrollHeight) + _clientTop = ReadonlyAttribute(jsObject: jsObject, name: Strings.clientTop) + _clientLeft = ReadonlyAttribute(jsObject: jsObject, name: Strings.clientLeft) + _clientWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.clientWidth) + _clientHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.clientHeight) + super.init(unsafelyWrapping: jsObject) } @ReadonlyAttribute - public var length: UInt32 + public var namespaceURI: String? - @inlinable public subscript(key: Int) -> String? { - jsObject[key].fromJSValue() + @ReadonlyAttribute + public var prefix: String? + + @ReadonlyAttribute + public var localName: String + + @ReadonlyAttribute + public var tagName: String + + @ReadWriteAttribute + public var id: String + + @ReadWriteAttribute + public var className: String + + @ReadonlyAttribute + public var classList: DOMTokenList + + @ReadWriteAttribute + public var slot: String + + @inlinable public func hasAttributes() -> Bool { + let this = jsObject + return this[Strings.hasAttributes].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func contains(token: String) -> Bool { + @ReadonlyAttribute + public var attributes: NamedNodeMap + + @inlinable public func getAttributeNames() -> [String] { let this = jsObject - return this[Strings.contains].function!(this: this, arguments: [token.jsValue]).fromJSValue()! + return this[Strings.getAttributeNames].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func add(tokens: String...) { + @inlinable public func getAttribute(qualifiedName: String) -> String? { let this = jsObject - _ = this[Strings.add].function!(this: this, arguments: tokens.map(\.jsValue)) + return this[Strings.getAttribute].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! } - @inlinable public func remove(tokens: String...) { + @inlinable public func getAttributeNS(namespace: String?, localName: String) -> String? { let this = jsObject - _ = this[Strings.remove].function!(this: this, arguments: tokens.map(\.jsValue)) + return this[Strings.getAttributeNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! } - @inlinable public func toggle(token: String, force: Bool? = nil) -> Bool { + @inlinable public func setAttribute(qualifiedName: String, value: String) { let this = jsObject - return this[Strings.toggle].function!(this: this, arguments: [token.jsValue, force?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.setAttribute].function!(this: this, arguments: [qualifiedName.jsValue, value.jsValue]) } - @inlinable public func replace(token: String, newToken: String) -> Bool { + @inlinable public func setAttributeNS(namespace: String?, qualifiedName: String, value: String) { let this = jsObject - return this[Strings.replace].function!(this: this, arguments: [token.jsValue, newToken.jsValue]).fromJSValue()! + _ = this[Strings.setAttributeNS].function!(this: this, arguments: [namespace.jsValue, qualifiedName.jsValue, value.jsValue]) } - @inlinable public func supports(token: String) -> Bool { + @inlinable public func removeAttribute(qualifiedName: String) { let this = jsObject - return this[Strings.supports].function!(this: this, arguments: [token.jsValue]).fromJSValue()! + _ = this[Strings.removeAttribute].function!(this: this, arguments: [qualifiedName.jsValue]) } - @ReadWriteAttribute - public var value: String - - public typealias Element = String - public func makeIterator() -> ValueIterableIterator { - ValueIterableIterator(sequence: self) + @inlinable public func removeAttributeNS(namespace: String?, localName: String) { + let this = jsObject + _ = this[Strings.removeAttributeNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]) } -} - -public class DataTransfer: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DataTransfer].function! } - - public let jsObject: JSObject - public required init(unsafelyWrapping jsObject: JSObject) { - _dropEffect = ReadWriteAttribute(jsObject: jsObject, name: Strings.dropEffect) - _effectAllowed = ReadWriteAttribute(jsObject: jsObject, name: Strings.effectAllowed) - _items = ReadonlyAttribute(jsObject: jsObject, name: Strings.items) - _types = ReadonlyAttribute(jsObject: jsObject, name: Strings.types) - _files = ReadonlyAttribute(jsObject: jsObject, name: Strings.files) - self.jsObject = jsObject + @inlinable public func toggleAttribute(qualifiedName: String, force: Bool? = nil) -> Bool { + let this = jsObject + return this[Strings.toggleAttribute].function!(this: this, arguments: [qualifiedName.jsValue, force?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func hasAttribute(qualifiedName: String) -> Bool { + let this = jsObject + return this[Strings.hasAttribute].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! } - @ReadWriteAttribute - public var dropEffect: String - - @ReadWriteAttribute - public var effectAllowed: String + @inlinable public func hasAttributeNS(namespace: String?, localName: String) -> Bool { + let this = jsObject + return this[Strings.hasAttributeNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! + } - @ReadonlyAttribute - public var items: DataTransferItemList + @inlinable public func getAttributeNode(qualifiedName: String) -> Attr? { + let this = jsObject + return this[Strings.getAttributeNode].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! + } - @inlinable public func setDragImage(image: Element, x: Int32, y: Int32) { + @inlinable public func getAttributeNodeNS(namespace: String?, localName: String) -> Attr? { let this = jsObject - _ = this[Strings.setDragImage].function!(this: this, arguments: [image.jsValue, x.jsValue, y.jsValue]) + return this[Strings.getAttributeNodeNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! } - @ReadonlyAttribute - public var types: [String] + @inlinable public func setAttributeNode(attr: Attr) -> Attr? { + let this = jsObject + return this[Strings.setAttributeNode].function!(this: this, arguments: [attr.jsValue]).fromJSValue()! + } - @inlinable public func getData(format: String) -> String { + @inlinable public func setAttributeNodeNS(attr: Attr) -> Attr? { let this = jsObject - return this[Strings.getData].function!(this: this, arguments: [format.jsValue]).fromJSValue()! + return this[Strings.setAttributeNodeNS].function!(this: this, arguments: [attr.jsValue]).fromJSValue()! } - @inlinable public func setData(format: String, data: String) { + @inlinable public func removeAttributeNode(attr: Attr) -> Attr { let this = jsObject - _ = this[Strings.setData].function!(this: this, arguments: [format.jsValue, data.jsValue]) + return this[Strings.removeAttributeNode].function!(this: this, arguments: [attr.jsValue]).fromJSValue()! } - @inlinable public func clearData(format: String? = nil) { + @inlinable public func attachShadow(init: ShadowRootInit) -> ShadowRoot { let this = jsObject - _ = this[Strings.clearData].function!(this: this, arguments: [format?.jsValue ?? .undefined]) + return this[Strings.attachShadow].function!(this: this, arguments: [`init`.jsValue]).fromJSValue()! } @ReadonlyAttribute - public var files: FileList -} - -public class DataTransferItem: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DataTransferItem].function! } - - public let jsObject: JSObject + public var shadowRoot: ShadowRoot? - public required init(unsafelyWrapping jsObject: JSObject) { - _kind = ReadonlyAttribute(jsObject: jsObject, name: Strings.kind) - _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) - self.jsObject = jsObject + @inlinable public func closest(selectors: String) -> Element? { + let this = jsObject + return this[Strings.closest].function!(this: this, arguments: [selectors.jsValue]).fromJSValue()! } - @ReadonlyAttribute - public var kind: String + @inlinable public func matches(selectors: String) -> Bool { + let this = jsObject + return this[Strings.matches].function!(this: this, arguments: [selectors.jsValue]).fromJSValue()! + } - @ReadonlyAttribute - public var type: String + @inlinable public func webkitMatchesSelector(selectors: String) -> Bool { + let this = jsObject + return this[Strings.webkitMatchesSelector].function!(this: this, arguments: [selectors.jsValue]).fromJSValue()! + } - // XXX: member 'getAsString' is ignored + @inlinable public func getElementsByTagName(qualifiedName: String) -> HTMLCollection { + let this = jsObject + return this[Strings.getElementsByTagName].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! + } - @inlinable public func getAsFile() -> File? { + @inlinable public func getElementsByTagNameNS(namespace: String?, localName: String) -> HTMLCollection { let this = jsObject - return this[Strings.getAsFile].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.getElementsByTagNameNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! } -} -public class DataTransferItemList: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.DataTransferItemList].function! } + @inlinable public func getElementsByClassName(classNames: String) -> HTMLCollection { + let this = jsObject + return this[Strings.getElementsByClassName].function!(this: this, arguments: [classNames.jsValue]).fromJSValue()! + } - public let jsObject: JSObject + @inlinable public func insertAdjacentElement(where: String, element: Element) -> Element? { + let this = jsObject + return this[Strings.insertAdjacentElement].function!(this: this, arguments: [`where`.jsValue, element.jsValue]).fromJSValue()! + } - public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - self.jsObject = jsObject + @inlinable public func insertAdjacentText(where: String, data: String) { + let this = jsObject + _ = this[Strings.insertAdjacentText].function!(this: this, arguments: [`where`.jsValue, data.jsValue]) } - @ReadonlyAttribute - public var length: UInt32 + @inlinable public func pseudo(type: String) -> CSSPseudoElement? { + let this = jsObject + return this[Strings.pseudo].function!(this: this, arguments: [type.jsValue]).fromJSValue()! + } - @inlinable public subscript(key: Int) -> DataTransferItem { - jsObject[key].fromJSValue()! + @inlinable public func getClientRects() -> DOMRectList { + let this = jsObject + return this[Strings.getClientRects].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func add(data: String, type: String) -> DataTransferItem? { + @inlinable public func getBoundingClientRect() -> DOMRect { let this = jsObject - return this[Strings.add].function!(this: this, arguments: [data.jsValue, type.jsValue]).fromJSValue()! + return this[Strings.getBoundingClientRect].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func add(data: File) -> DataTransferItem? { + @inlinable public func isVisible(options: IsVisibleOptions? = nil) -> Bool { let this = jsObject - return this[Strings.add].function!(this: this, arguments: [data.jsValue]).fromJSValue()! + return this[Strings.isVisible].function!(this: this, arguments: [options?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public func remove(index: UInt32) { + @inlinable public func scrollIntoView(arg: Bool_or_ScrollIntoViewOptions? = nil) { let this = jsObject - _ = this[Strings.remove].function!(this: this, arguments: [index.jsValue]) + _ = this[Strings.scrollIntoView].function!(this: this, arguments: [arg?.jsValue ?? .undefined]) } - @inlinable public func clear() { + @inlinable public func scroll(options: ScrollToOptions? = nil) { let this = jsObject - _ = this[Strings.clear].function!(this: this, arguments: []) + _ = this[Strings.scroll].function!(this: this, arguments: [options?.jsValue ?? .undefined]) } -} -public class Document: Node, NonElementParentNode, DocumentOrShadowRoot, ParentNode, XPathEvaluatorBase, GlobalEventHandlers, DocumentAndElementEventHandlers, GeometryUtils { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.Document].function! } + @inlinable public func scroll(x: Double, y: Double) { + let this = jsObject + _ = this[Strings.scroll].function!(this: this, arguments: [x.jsValue, y.jsValue]) + } - public required init(unsafelyWrapping jsObject: JSObject) { - _implementation = ReadonlyAttribute(jsObject: jsObject, name: Strings.implementation) - _URL = ReadonlyAttribute(jsObject: jsObject, name: Strings.URL) - _documentURI = ReadonlyAttribute(jsObject: jsObject, name: Strings.documentURI) - _compatMode = ReadonlyAttribute(jsObject: jsObject, name: Strings.compatMode) - _characterSet = ReadonlyAttribute(jsObject: jsObject, name: Strings.characterSet) - _charset = ReadonlyAttribute(jsObject: jsObject, name: Strings.charset) - _inputEncoding = ReadonlyAttribute(jsObject: jsObject, name: Strings.inputEncoding) - _contentType = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentType) - _doctype = ReadonlyAttribute(jsObject: jsObject, name: Strings.doctype) - _documentElement = ReadonlyAttribute(jsObject: jsObject, name: Strings.documentElement) - _location = ReadonlyAttribute(jsObject: jsObject, name: Strings.location) - _domain = ReadWriteAttribute(jsObject: jsObject, name: Strings.domain) - _referrer = ReadonlyAttribute(jsObject: jsObject, name: Strings.referrer) - _cookie = ReadWriteAttribute(jsObject: jsObject, name: Strings.cookie) - _lastModified = ReadonlyAttribute(jsObject: jsObject, name: Strings.lastModified) - _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) - _title = ReadWriteAttribute(jsObject: jsObject, name: Strings.title) - _dir = ReadWriteAttribute(jsObject: jsObject, name: Strings.dir) - _body = ReadWriteAttribute(jsObject: jsObject, name: Strings.body) - _head = ReadonlyAttribute(jsObject: jsObject, name: Strings.head) - _images = ReadonlyAttribute(jsObject: jsObject, name: Strings.images) - _embeds = ReadonlyAttribute(jsObject: jsObject, name: Strings.embeds) - _plugins = ReadonlyAttribute(jsObject: jsObject, name: Strings.plugins) - _links = ReadonlyAttribute(jsObject: jsObject, name: Strings.links) - _forms = ReadonlyAttribute(jsObject: jsObject, name: Strings.forms) - _scripts = ReadonlyAttribute(jsObject: jsObject, name: Strings.scripts) - _currentScript = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentScript) - _defaultView = ReadonlyAttribute(jsObject: jsObject, name: Strings.defaultView) - _designMode = ReadWriteAttribute(jsObject: jsObject, name: Strings.designMode) - _hidden = ReadonlyAttribute(jsObject: jsObject, name: Strings.hidden) - _visibilityState = ReadonlyAttribute(jsObject: jsObject, name: Strings.visibilityState) - _onreadystatechange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onreadystatechange) - _onvisibilitychange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onvisibilitychange) - _fgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.fgColor) - _linkColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.linkColor) - _vlinkColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.vlinkColor) - _alinkColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.alinkColor) - _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) - _anchors = ReadonlyAttribute(jsObject: jsObject, name: Strings.anchors) - _applets = ReadonlyAttribute(jsObject: jsObject, name: Strings.applets) - _all = ReadonlyAttribute(jsObject: jsObject, name: Strings.all) - _timeline = ReadonlyAttribute(jsObject: jsObject, name: Strings.timeline) - _scrollingElement = ReadonlyAttribute(jsObject: jsObject, name: Strings.scrollingElement) - super.init(unsafelyWrapping: jsObject) + @inlinable public func scrollTo(options: ScrollToOptions? = nil) { + let this = jsObject + _ = this[Strings.scrollTo].function!(this: this, arguments: [options?.jsValue ?? .undefined]) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func scrollTo(x: Double, y: Double) { + let this = jsObject + _ = this[Strings.scrollTo].function!(this: this, arguments: [x.jsValue, y.jsValue]) } - @ReadonlyAttribute - public var implementation: DOMImplementation + @inlinable public func scrollBy(options: ScrollToOptions? = nil) { + let this = jsObject + _ = this[Strings.scrollBy].function!(this: this, arguments: [options?.jsValue ?? .undefined]) + } - @ReadonlyAttribute - public var URL: String + @inlinable public func scrollBy(x: Double, y: Double) { + let this = jsObject + _ = this[Strings.scrollBy].function!(this: this, arguments: [x.jsValue, y.jsValue]) + } - @ReadonlyAttribute - public var documentURI: String + @ReadWriteAttribute + public var scrollTop: Double - @ReadonlyAttribute - public var compatMode: String + @ReadWriteAttribute + public var scrollLeft: Double @ReadonlyAttribute - public var characterSet: String + public var scrollWidth: Int32 @ReadonlyAttribute - public var charset: String + public var scrollHeight: Int32 @ReadonlyAttribute - public var inputEncoding: String + public var clientTop: Int32 @ReadonlyAttribute - public var contentType: String + public var clientLeft: Int32 @ReadonlyAttribute - public var doctype: DocumentType? + public var clientWidth: Int32 @ReadonlyAttribute - public var documentElement: Element? + public var clientHeight: Int32 +} - @inlinable public func getElementsByTagName(qualifiedName: String) -> HTMLCollection { - let this = jsObject - return this[Strings.getElementsByTagName].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! +public protocol ElementContentEditable: JSBridgedClass {} +public extension ElementContentEditable { + @inlinable var contentEditable: String { + get { ReadWriteAttribute[Strings.contentEditable, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.contentEditable, in: jsObject] = newValue } } - @inlinable public func getElementsByTagNameNS(namespace: String?, localName: String) -> HTMLCollection { - let this = jsObject - return this[Strings.getElementsByTagNameNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! + @inlinable var enterKeyHint: String { + get { ReadWriteAttribute[Strings.enterKeyHint, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.enterKeyHint, in: jsObject] = newValue } } - @inlinable public func getElementsByClassName(classNames: String) -> HTMLCollection { - let this = jsObject - return this[Strings.getElementsByClassName].function!(this: this, arguments: [classNames.jsValue]).fromJSValue()! + @inlinable var isContentEditable: Bool { ReadonlyAttribute[Strings.isContentEditable, in: jsObject] } + + @inlinable var inputMode: String { + get { ReadWriteAttribute[Strings.inputMode, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.inputMode, in: jsObject] = newValue } } +} - @inlinable public func createElement(localName: String, options: ElementCreationOptions_or_String? = nil) -> Element { - let this = jsObject - return this[Strings.createElement].function!(this: this, arguments: [localName.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! +public class ElementCreationOptions: BridgedDictionary { + public convenience init(is: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.is] = `is`.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func createElementNS(namespace: String?, qualifiedName: String, options: ElementCreationOptions_or_String? = nil) -> Element { - let this = jsObject - return this[Strings.createElementNS].function!(this: this, arguments: [namespace.jsValue, qualifiedName.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _is = ReadWriteAttribute(jsObject: object, name: Strings.is) + super.init(unsafelyWrapping: object) } - @inlinable public func createDocumentFragment() -> DocumentFragment { - let this = jsObject - return this[Strings.createDocumentFragment].function!(this: this, arguments: []).fromJSValue()! + @ReadWriteAttribute + public var `is`: String +} + +public class ElementDefinitionOptions: BridgedDictionary { + public convenience init(extends: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.extends] = extends.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func createTextNode(data: String) -> Text { - let this = jsObject - return this[Strings.createTextNode].function!(this: this, arguments: [data.jsValue]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _extends = ReadWriteAttribute(jsObject: object, name: Strings.extends) + super.init(unsafelyWrapping: object) } - @inlinable public func createCDATASection(data: String) -> CDATASection { - let this = jsObject - return this[Strings.createCDATASection].function!(this: this, arguments: [data.jsValue]).fromJSValue()! + @ReadWriteAttribute + public var extends: String +} + +public class ElementInternals: JSBridgedClass, ARIAMixin { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ElementInternals].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _shadowRoot = ReadonlyAttribute(jsObject: jsObject, name: Strings.shadowRoot) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) + _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) + _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) + _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) + _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) + self.jsObject = jsObject } - @inlinable public func createComment(data: String) -> Comment { + @ReadonlyAttribute + public var shadowRoot: ShadowRoot? + + @inlinable public func setFormValue(value: File_or_FormData_or_String?, state: File_or_FormData_or_String? = nil) { let this = jsObject - return this[Strings.createComment].function!(this: this, arguments: [data.jsValue]).fromJSValue()! + _ = this[Strings.setFormValue].function!(this: this, arguments: [value.jsValue, state?.jsValue ?? .undefined]) } - @inlinable public func createProcessingInstruction(target: String, data: String) -> ProcessingInstruction { + @ReadonlyAttribute + public var form: HTMLFormElement? + + @inlinable public func setValidity(flags: ValidityStateFlags? = nil, message: String? = nil, anchor: HTMLElement? = nil) { let this = jsObject - return this[Strings.createProcessingInstruction].function!(this: this, arguments: [target.jsValue, data.jsValue]).fromJSValue()! + _ = this[Strings.setValidity].function!(this: this, arguments: [flags?.jsValue ?? .undefined, message?.jsValue ?? .undefined, anchor?.jsValue ?? .undefined]) } - @inlinable public func importNode(node: Node, deep: Bool? = nil) -> Node { + @ReadonlyAttribute + public var willValidate: Bool + + @ReadonlyAttribute + public var validity: ValidityState + + @ReadonlyAttribute + public var validationMessage: String + + @inlinable public func checkValidity() -> Bool { let this = jsObject - return this[Strings.importNode].function!(this: this, arguments: [node.jsValue, deep?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func adoptNode(node: Node) -> Node { + @inlinable public func reportValidity() -> Bool { let this = jsObject - return this[Strings.adoptNode].function!(this: this, arguments: [node.jsValue]).fromJSValue()! + return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func createAttribute(localName: String) -> Attr { - let this = jsObject - return this[Strings.createAttribute].function!(this: this, arguments: [localName.jsValue]).fromJSValue()! + @ReadonlyAttribute + public var labels: NodeList +} + +public enum EndingType: JSString, JSValueCompatible { + case transparent = "transparent" + case native = "native" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable public func createAttributeNS(namespace: String?, qualifiedName: String) -> Attr { - let this = jsObject - return this[Strings.createAttributeNS].function!(this: this, arguments: [namespace.jsValue, qualifiedName.jsValue]).fromJSValue()! + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @inlinable public func createEvent(interface: String) -> Event { - let this = jsObject - return this[Strings.createEvent].function!(this: this, arguments: [interface.jsValue]).fromJSValue()! + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class ErrorEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.ErrorEvent].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _message = ReadonlyAttribute(jsObject: jsObject, name: Strings.message) + _filename = ReadonlyAttribute(jsObject: jsObject, name: Strings.filename) + _lineno = ReadonlyAttribute(jsObject: jsObject, name: Strings.lineno) + _colno = ReadonlyAttribute(jsObject: jsObject, name: Strings.colno) + _error = ReadonlyAttribute(jsObject: jsObject, name: Strings.error) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func createRange() -> Range { - let this = jsObject - return this[Strings.createRange].function!(this: this, arguments: []).fromJSValue()! + @inlinable public convenience init(type: String, eventInitDict: ErrorEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) } - // XXX: member 'createNodeIterator' is ignored + @ReadonlyAttribute + public var message: String - // XXX: member 'createTreeWalker' is ignored + @ReadonlyAttribute + public var filename: String @ReadonlyAttribute - public var location: Location? + public var lineno: UInt32 - @ReadWriteAttribute - public var domain: String + @ReadonlyAttribute + public var colno: UInt32 @ReadonlyAttribute - public var referrer: String + public var error: JSValue +} + +public class ErrorEventInit: BridgedDictionary { + public convenience init(message: String, filename: String, lineno: UInt32, colno: UInt32, error: JSValue) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.message] = message.jsValue + object[Strings.filename] = filename.jsValue + object[Strings.lineno] = lineno.jsValue + object[Strings.colno] = colno.jsValue + object[Strings.error] = error.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _message = ReadWriteAttribute(jsObject: object, name: Strings.message) + _filename = ReadWriteAttribute(jsObject: object, name: Strings.filename) + _lineno = ReadWriteAttribute(jsObject: object, name: Strings.lineno) + _colno = ReadWriteAttribute(jsObject: object, name: Strings.colno) + _error = ReadWriteAttribute(jsObject: object, name: Strings.error) + super.init(unsafelyWrapping: object) + } @ReadWriteAttribute - public var cookie: String + public var message: String + + @ReadWriteAttribute + public var filename: String + + @ReadWriteAttribute + public var lineno: UInt32 + + @ReadWriteAttribute + public var colno: UInt32 + + @ReadWriteAttribute + public var error: JSValue +} + +public class Event: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Event].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) + _target = ReadonlyAttribute(jsObject: jsObject, name: Strings.target) + _srcElement = ReadonlyAttribute(jsObject: jsObject, name: Strings.srcElement) + _currentTarget = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentTarget) + _eventPhase = ReadonlyAttribute(jsObject: jsObject, name: Strings.eventPhase) + _cancelBubble = ReadWriteAttribute(jsObject: jsObject, name: Strings.cancelBubble) + _bubbles = ReadonlyAttribute(jsObject: jsObject, name: Strings.bubbles) + _cancelable = ReadonlyAttribute(jsObject: jsObject, name: Strings.cancelable) + _returnValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.returnValue) + _defaultPrevented = ReadonlyAttribute(jsObject: jsObject, name: Strings.defaultPrevented) + _composed = ReadonlyAttribute(jsObject: jsObject, name: Strings.composed) + _isTrusted = ReadonlyAttribute(jsObject: jsObject, name: Strings.isTrusted) + _timeStamp = ReadonlyAttribute(jsObject: jsObject, name: Strings.timeStamp) + self.jsObject = jsObject + } + + @inlinable public convenience init(type: String, eventInitDict: EventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + } @ReadonlyAttribute - public var lastModified: String + public var type: String @ReadonlyAttribute - public var readyState: DocumentReadyState + public var target: EventTarget? - @inlinable public subscript(key: String) -> JSObject { - jsObject[key].fromJSValue()! + @ReadonlyAttribute + public var srcElement: EventTarget? + + @ReadonlyAttribute + public var currentTarget: EventTarget? + + @inlinable public func composedPath() -> [EventTarget] { + let this = jsObject + return this[Strings.composedPath].function!(this: this, arguments: []).fromJSValue()! } - @ReadWriteAttribute - public var title: String + public static let NONE: UInt16 = 0 - @ReadWriteAttribute - public var dir: String + public static let CAPTURING_PHASE: UInt16 = 1 + + public static let AT_TARGET: UInt16 = 2 - @ReadWriteAttribute - public var body: HTMLElement? + public static let BUBBLING_PHASE: UInt16 = 3 @ReadonlyAttribute - public var head: HTMLHeadElement? + public var eventPhase: UInt16 - @ReadonlyAttribute - public var images: HTMLCollection + @inlinable public func stopPropagation() { + let this = jsObject + _ = this[Strings.stopPropagation].function!(this: this, arguments: []) + } - @ReadonlyAttribute - public var embeds: HTMLCollection + @ReadWriteAttribute + public var cancelBubble: Bool - @ReadonlyAttribute - public var plugins: HTMLCollection + @inlinable public func stopImmediatePropagation() { + let this = jsObject + _ = this[Strings.stopImmediatePropagation].function!(this: this, arguments: []) + } @ReadonlyAttribute - public var links: HTMLCollection + public var bubbles: Bool @ReadonlyAttribute - public var forms: HTMLCollection + public var cancelable: Bool - @ReadonlyAttribute - public var scripts: HTMLCollection + @ReadWriteAttribute + public var returnValue: Bool - @inlinable public func getElementsByName(elementName: String) -> NodeList { + @inlinable public func preventDefault() { let this = jsObject - return this[Strings.getElementsByName].function!(this: this, arguments: [elementName.jsValue]).fromJSValue()! + _ = this[Strings.preventDefault].function!(this: this, arguments: []) } @ReadonlyAttribute - public var currentScript: HTMLOrSVGScriptElement? + public var defaultPrevented: Bool - @inlinable public func open(unused1: String? = nil, unused2: String? = nil) -> Self { - let this = jsObject - return this[Strings.open].function!(this: this, arguments: [unused1?.jsValue ?? .undefined, unused2?.jsValue ?? .undefined]).fromJSValue()! - } + @ReadonlyAttribute + public var composed: Bool - @inlinable public func open(url: String, name: String, features: String) -> WindowProxy? { - let this = jsObject - return this[Strings.open].function!(this: this, arguments: [url.jsValue, name.jsValue, features.jsValue]).fromJSValue()! - } + @ReadonlyAttribute + public var isTrusted: Bool - @inlinable public func close() { + @ReadonlyAttribute + public var timeStamp: DOMHighResTimeStamp + + @inlinable public func initEvent(type: String, bubbles: Bool? = nil, cancelable: Bool? = nil) { let this = jsObject - _ = this[Strings.close].function!(this: this, arguments: []) + _ = this[Strings.initEvent].function!(this: this, arguments: [type.jsValue, bubbles?.jsValue ?? .undefined, cancelable?.jsValue ?? .undefined]) } +} - @inlinable public func write(text: String...) { - let this = jsObject - _ = this[Strings.write].function!(this: this, arguments: text.map(\.jsValue)) +public class EventInit: BridgedDictionary { + public convenience init(bubbles: Bool, cancelable: Bool, composed: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.bubbles] = bubbles.jsValue + object[Strings.cancelable] = cancelable.jsValue + object[Strings.composed] = composed.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func writeln(text: String...) { - let this = jsObject - _ = this[Strings.writeln].function!(this: this, arguments: text.map(\.jsValue)) + public required init(unsafelyWrapping object: JSObject) { + _bubbles = ReadWriteAttribute(jsObject: object, name: Strings.bubbles) + _cancelable = ReadWriteAttribute(jsObject: object, name: Strings.cancelable) + _composed = ReadWriteAttribute(jsObject: object, name: Strings.composed) + super.init(unsafelyWrapping: object) } - @ReadonlyAttribute - public var defaultView: WindowProxy? + @ReadWriteAttribute + public var bubbles: Bool - @inlinable public func hasFocus() -> Bool { - let this = jsObject - return this[Strings.hasFocus].function!(this: this, arguments: []).fromJSValue()! - } + @ReadWriteAttribute + public var cancelable: Bool @ReadWriteAttribute - public var designMode: String + public var composed: Bool +} - @inlinable public func execCommand(commandId: String, showUI: Bool? = nil, value: String? = nil) -> Bool { - let this = jsObject - return this[Strings.execCommand].function!(this: this, arguments: [commandId.jsValue, showUI?.jsValue ?? .undefined, value?.jsValue ?? .undefined]).fromJSValue()! +public class EventListenerOptions: BridgedDictionary { + public convenience init(capture: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.capture] = capture.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func queryCommandEnabled(commandId: String) -> Bool { - let this = jsObject - return this[Strings.queryCommandEnabled].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _capture = ReadWriteAttribute(jsObject: object, name: Strings.capture) + super.init(unsafelyWrapping: object) } - @inlinable public func queryCommandIndeterm(commandId: String) -> Bool { - let this = jsObject - return this[Strings.queryCommandIndeterm].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! - } + @ReadWriteAttribute + public var capture: Bool +} - @inlinable public func queryCommandState(commandId: String) -> Bool { - let this = jsObject - return this[Strings.queryCommandState].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! +public class EventModifierInit: BridgedDictionary { + public convenience init(ctrlKey: Bool, shiftKey: Bool, altKey: Bool, metaKey: Bool, modifierAltGraph: Bool, modifierCapsLock: Bool, modifierFn: Bool, modifierFnLock: Bool, modifierHyper: Bool, modifierNumLock: Bool, modifierScrollLock: Bool, modifierSuper: Bool, modifierSymbol: Bool, modifierSymbolLock: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.ctrlKey] = ctrlKey.jsValue + object[Strings.shiftKey] = shiftKey.jsValue + object[Strings.altKey] = altKey.jsValue + object[Strings.metaKey] = metaKey.jsValue + object[Strings.modifierAltGraph] = modifierAltGraph.jsValue + object[Strings.modifierCapsLock] = modifierCapsLock.jsValue + object[Strings.modifierFn] = modifierFn.jsValue + object[Strings.modifierFnLock] = modifierFnLock.jsValue + object[Strings.modifierHyper] = modifierHyper.jsValue + object[Strings.modifierNumLock] = modifierNumLock.jsValue + object[Strings.modifierScrollLock] = modifierScrollLock.jsValue + object[Strings.modifierSuper] = modifierSuper.jsValue + object[Strings.modifierSymbol] = modifierSymbol.jsValue + object[Strings.modifierSymbolLock] = modifierSymbolLock.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func queryCommandSupported(commandId: String) -> Bool { - let this = jsObject - return this[Strings.queryCommandSupported].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _ctrlKey = ReadWriteAttribute(jsObject: object, name: Strings.ctrlKey) + _shiftKey = ReadWriteAttribute(jsObject: object, name: Strings.shiftKey) + _altKey = ReadWriteAttribute(jsObject: object, name: Strings.altKey) + _metaKey = ReadWriteAttribute(jsObject: object, name: Strings.metaKey) + _modifierAltGraph = ReadWriteAttribute(jsObject: object, name: Strings.modifierAltGraph) + _modifierCapsLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierCapsLock) + _modifierFn = ReadWriteAttribute(jsObject: object, name: Strings.modifierFn) + _modifierFnLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierFnLock) + _modifierHyper = ReadWriteAttribute(jsObject: object, name: Strings.modifierHyper) + _modifierNumLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierNumLock) + _modifierScrollLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierScrollLock) + _modifierSuper = ReadWriteAttribute(jsObject: object, name: Strings.modifierSuper) + _modifierSymbol = ReadWriteAttribute(jsObject: object, name: Strings.modifierSymbol) + _modifierSymbolLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierSymbolLock) + super.init(unsafelyWrapping: object) } - @inlinable public func queryCommandValue(commandId: String) -> String { - let this = jsObject - return this[Strings.queryCommandValue].function!(this: this, arguments: [commandId.jsValue]).fromJSValue()! - } + @ReadWriteAttribute + public var ctrlKey: Bool - @ReadonlyAttribute - public var hidden: Bool + @ReadWriteAttribute + public var shiftKey: Bool - @ReadonlyAttribute - public var visibilityState: DocumentVisibilityState + @ReadWriteAttribute + public var altKey: Bool - @ClosureAttribute1Optional - public var onreadystatechange: EventHandler + @ReadWriteAttribute + public var metaKey: Bool - @ClosureAttribute1Optional - public var onvisibilitychange: EventHandler + @ReadWriteAttribute + public var modifierAltGraph: Bool @ReadWriteAttribute - public var fgColor: String + public var modifierCapsLock: Bool @ReadWriteAttribute - public var linkColor: String + public var modifierFn: Bool @ReadWriteAttribute - public var vlinkColor: String + public var modifierFnLock: Bool @ReadWriteAttribute - public var alinkColor: String + public var modifierHyper: Bool @ReadWriteAttribute - public var bgColor: String + public var modifierNumLock: Bool - @ReadonlyAttribute - public var anchors: HTMLCollection + @ReadWriteAttribute + public var modifierScrollLock: Bool - @ReadonlyAttribute - public var applets: HTMLCollection + @ReadWriteAttribute + public var modifierSuper: Bool - @inlinable public func clear() { - let this = jsObject - _ = this[Strings.clear].function!(this: this, arguments: []) - } + @ReadWriteAttribute + public var modifierSymbol: Bool - @inlinable public func captureEvents() { - let this = jsObject - _ = this[Strings.captureEvents].function!(this: this, arguments: []) + @ReadWriteAttribute + public var modifierSymbolLock: Bool +} + +public class EventSource: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.EventSource].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _url = ReadonlyAttribute(jsObject: jsObject, name: Strings.url) + _withCredentials = ReadonlyAttribute(jsObject: jsObject, name: Strings.withCredentials) + _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) + _onopen = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onopen) + _onmessage = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onmessage) + _onerror = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onerror) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func releaseEvents() { - let this = jsObject - _ = this[Strings.releaseEvents].function!(this: this, arguments: []) + @inlinable public convenience init(url: String, eventSourceInitDict: EventSourceInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [url.jsValue, eventSourceInitDict?.jsValue ?? .undefined])) } @ReadonlyAttribute - public var all: HTMLAllCollection + public var url: String @ReadonlyAttribute - public var timeline: DocumentTimeline + public var withCredentials: Bool - @inlinable public func elementFromPoint(x: Double, y: Double) -> Element? { - let this = jsObject - return this[Strings.elementFromPoint].function!(this: this, arguments: [x.jsValue, y.jsValue]).fromJSValue()! - } + public static let CONNECTING: UInt16 = 0 - @inlinable public func elementsFromPoint(x: Double, y: Double) -> [Element] { - let this = jsObject - return this[Strings.elementsFromPoint].function!(this: this, arguments: [x.jsValue, y.jsValue]).fromJSValue()! - } + public static let OPEN: UInt16 = 1 - @inlinable public func caretPositionFromPoint(x: Double, y: Double) -> CaretPosition? { - let this = jsObject - return this[Strings.caretPositionFromPoint].function!(this: this, arguments: [x.jsValue, y.jsValue]).fromJSValue()! - } + public static let CLOSED: UInt16 = 2 @ReadonlyAttribute - public var scrollingElement: Element? -} + public var readyState: UInt16 -public protocol DocumentAndElementEventHandlers: JSBridgedClass {} -public extension DocumentAndElementEventHandlers { - @inlinable var oncopy: EventHandler { - get { ClosureAttribute1Optional[Strings.oncopy, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncopy, in: jsObject] = newValue } + @ClosureAttribute1Optional + public var onopen: EventHandler + + @ClosureAttribute1Optional + public var onmessage: EventHandler + + @ClosureAttribute1Optional + public var onerror: EventHandler + + @inlinable public func close() { + let this = jsObject + _ = this[Strings.close].function!(this: this, arguments: []) } +} - @inlinable var oncut: EventHandler { - get { ClosureAttribute1Optional[Strings.oncut, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncut, in: jsObject] = newValue } +public class EventSourceInit: BridgedDictionary { + public convenience init(withCredentials: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.withCredentials] = withCredentials.jsValue + self.init(unsafelyWrapping: object) } - @inlinable var onpaste: EventHandler { - get { ClosureAttribute1Optional[Strings.onpaste, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onpaste, in: jsObject] = newValue } + public required init(unsafelyWrapping object: JSObject) { + _withCredentials = ReadWriteAttribute(jsObject: object, name: Strings.withCredentials) + super.init(unsafelyWrapping: object) } + + @ReadWriteAttribute + public var withCredentials: Bool } -public class DocumentFragment: Node, NonElementParentNode, ParentNode { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DocumentFragment].function! } +public class EventTarget: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.EventTarget].function! } + + public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) + self.jsObject = jsObject } @inlinable public convenience init() { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } -} -public protocol DocumentOrShadowRoot: JSBridgedClass {} -public extension DocumentOrShadowRoot { - @inlinable var activeElement: Element? { ReadonlyAttribute[Strings.activeElement, in: jsObject] } + // XXX: member 'addEventListener' is ignored - @inlinable func getAnimations() -> [Animation] { + // XXX: member 'removeEventListener' is ignored + + @inlinable public func dispatchEvent(event: Event) -> Bool { let this = jsObject - return this[Strings.getAnimations].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.dispatchEvent].function!(this: this, arguments: [event.jsValue]).fromJSValue()! } } -public enum DocumentReadyState: JSString, JSValueCompatible { - case loading = "loading" - case interactive = "interactive" - case complete = "complete" +public class ExtendableEventInit: BridgedDictionary { + public convenience init() { + let object = JSObject.global[Strings.Object].function!.new() - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + self.init(unsafelyWrapping: object) } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + public required init(unsafelyWrapping object: JSObject) { + super.init(unsafelyWrapping: object) } - - @inlinable public var jsValue: JSValue { rawValue.jsValue } } -public class DocumentTimeline: AnimationTimeline { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DocumentTimeline].function! } +public class External: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.External].function! } + + public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) + self.jsObject = jsObject } - @inlinable public convenience init(options: DocumentTimelineOptions? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [options?.jsValue ?? .undefined])) + @inlinable public func AddSearchProvider() { + let this = jsObject + _ = this[Strings.AddSearchProvider].function!(this: this, arguments: []) + } + + @inlinable public func IsSearchProviderInstalled() { + let this = jsObject + _ = this[Strings.IsSearchProviderInstalled].function!(this: this, arguments: []) } } -public class DocumentTimelineOptions: BridgedDictionary { - public convenience init(originTime: DOMHighResTimeStamp) { +public class FetchEventInit: BridgedDictionary { + public convenience init(request: Request, preloadResponse: JSPromise, clientId: String, resultingClientId: String, replacesClientId: String, handled: JSPromise) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.originTime] = originTime.jsValue + object[Strings.request] = request.jsValue + object[Strings.preloadResponse] = preloadResponse.jsValue + object[Strings.clientId] = clientId.jsValue + object[Strings.resultingClientId] = resultingClientId.jsValue + object[Strings.replacesClientId] = replacesClientId.jsValue + object[Strings.handled] = handled.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _originTime = ReadWriteAttribute(jsObject: object, name: Strings.originTime) + _request = ReadWriteAttribute(jsObject: object, name: Strings.request) + _preloadResponse = ReadWriteAttribute(jsObject: object, name: Strings.preloadResponse) + _clientId = ReadWriteAttribute(jsObject: object, name: Strings.clientId) + _resultingClientId = ReadWriteAttribute(jsObject: object, name: Strings.resultingClientId) + _replacesClientId = ReadWriteAttribute(jsObject: object, name: Strings.replacesClientId) + _handled = ReadWriteAttribute(jsObject: object, name: Strings.handled) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var originTime: DOMHighResTimeStamp + public var request: Request + + @ReadWriteAttribute + public var preloadResponse: JSPromise + + @ReadWriteAttribute + public var clientId: String + + @ReadWriteAttribute + public var resultingClientId: String + + @ReadWriteAttribute + public var replacesClientId: String + + @ReadWriteAttribute + public var handled: JSPromise } -public class DocumentType: Node, ChildNode { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DocumentType].function! } +public class File: Blob { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.File].function! } public required init(unsafelyWrapping jsObject: JSObject) { _name = ReadonlyAttribute(jsObject: jsObject, name: Strings.name) - _publicId = ReadonlyAttribute(jsObject: jsObject, name: Strings.publicId) - _systemId = ReadonlyAttribute(jsObject: jsObject, name: Strings.systemId) + _lastModified = ReadonlyAttribute(jsObject: jsObject, name: Strings.lastModified) super.init(unsafelyWrapping: jsObject) } - @ReadonlyAttribute - public var name: String + @inlinable public convenience init(fileBits: [BlobPart], fileName: String, options: FilePropertyBag? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [fileBits.jsValue, fileName.jsValue, options?.jsValue ?? .undefined])) + } @ReadonlyAttribute - public var publicId: String + public var name: String @ReadonlyAttribute - public var systemId: String + public var lastModified: Int64 } -public enum DocumentVisibilityState: JSString, JSValueCompatible { - case visible = "visible" - case hidden = "hidden" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } - - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) - } - - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} +public class FileList: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.FileList].function! } -public class DragEvent: MouseEvent { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.DragEvent].function! } + public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - _dataTransfer = ReadonlyAttribute(jsObject: jsObject, name: Strings.dataTransfer) - super.init(unsafelyWrapping: jsObject) + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + self.jsObject = jsObject } - @inlinable public convenience init(type: String, eventInitDict: DragEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable public subscript(key: Int) -> File? { + jsObject[key].fromJSValue() } @ReadonlyAttribute - public var dataTransfer: DataTransfer? + public var length: UInt32 } -public class DragEventInit: BridgedDictionary { - public convenience init(dataTransfer: DataTransfer?) { +public class FilePropertyBag: BridgedDictionary { + public convenience init(lastModified: Int64) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.dataTransfer] = dataTransfer.jsValue + object[Strings.lastModified] = lastModified.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _dataTransfer = ReadWriteAttribute(jsObject: object, name: Strings.dataTransfer) + _lastModified = ReadWriteAttribute(jsObject: object, name: Strings.lastModified) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var dataTransfer: DataTransfer? + public var lastModified: Int64 } -public class EffectTiming: BridgedDictionary { - public convenience init(delay: Double, endDelay: Double, fill: FillMode, iterationStart: Double, iterations: Double, direction: PlaybackDirection, easing: String) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.delay] = delay.jsValue - object[Strings.endDelay] = endDelay.jsValue - object[Strings.fill] = fill.jsValue - object[Strings.iterationStart] = iterationStart.jsValue - object[Strings.iterations] = iterations.jsValue - object[Strings.direction] = direction.jsValue - object[Strings.easing] = easing.jsValue - self.init(unsafelyWrapping: object) - } +public class FileReader: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.FileReader].function! } - public required init(unsafelyWrapping object: JSObject) { - _delay = ReadWriteAttribute(jsObject: object, name: Strings.delay) - _endDelay = ReadWriteAttribute(jsObject: object, name: Strings.endDelay) - _fill = ReadWriteAttribute(jsObject: object, name: Strings.fill) - _iterationStart = ReadWriteAttribute(jsObject: object, name: Strings.iterationStart) - _iterations = ReadWriteAttribute(jsObject: object, name: Strings.iterations) - _direction = ReadWriteAttribute(jsObject: object, name: Strings.direction) - _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) - super.init(unsafelyWrapping: object) + public required init(unsafelyWrapping jsObject: JSObject) { + _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) + _result = ReadonlyAttribute(jsObject: jsObject, name: Strings.result) + _error = ReadonlyAttribute(jsObject: jsObject, name: Strings.error) + _onloadstart = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onloadstart) + _onprogress = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onprogress) + _onload = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onload) + _onabort = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onabort) + _onerror = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onerror) + _onloadend = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onloadend) + super.init(unsafelyWrapping: jsObject) } - @ReadWriteAttribute - public var delay: Double - - @ReadWriteAttribute - public var endDelay: Double - - @ReadWriteAttribute - public var fill: FillMode - - @ReadWriteAttribute - public var iterationStart: Double - - @ReadWriteAttribute - public var iterations: Double + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } - @ReadWriteAttribute - public var direction: PlaybackDirection + @inlinable public func readAsArrayBuffer(blob: Blob) { + let this = jsObject + _ = this[Strings.readAsArrayBuffer].function!(this: this, arguments: [blob.jsValue]) + } - @ReadWriteAttribute - public var easing: String -} + @inlinable public func readAsBinaryString(blob: Blob) { + let this = jsObject + _ = this[Strings.readAsBinaryString].function!(this: this, arguments: [blob.jsValue]) + } -public class Element: Node, ParentNode, NonDocumentTypeChildNode, ChildNode, Slottable, ARIAMixin, Animatable, GeometryUtils { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.Element].function! } + @inlinable public func readAsText(blob: Blob, encoding: String? = nil) { + let this = jsObject + _ = this[Strings.readAsText].function!(this: this, arguments: [blob.jsValue, encoding?.jsValue ?? .undefined]) + } - public required init(unsafelyWrapping jsObject: JSObject) { - _namespaceURI = ReadonlyAttribute(jsObject: jsObject, name: Strings.namespaceURI) - _prefix = ReadonlyAttribute(jsObject: jsObject, name: Strings.prefix) - _localName = ReadonlyAttribute(jsObject: jsObject, name: Strings.localName) - _tagName = ReadonlyAttribute(jsObject: jsObject, name: Strings.tagName) - _id = ReadWriteAttribute(jsObject: jsObject, name: Strings.id) - _className = ReadWriteAttribute(jsObject: jsObject, name: Strings.className) - _classList = ReadonlyAttribute(jsObject: jsObject, name: Strings.classList) - _slot = ReadWriteAttribute(jsObject: jsObject, name: Strings.slot) - _attributes = ReadonlyAttribute(jsObject: jsObject, name: Strings.attributes) - _shadowRoot = ReadonlyAttribute(jsObject: jsObject, name: Strings.shadowRoot) - _scrollTop = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollTop) - _scrollLeft = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollLeft) - _scrollWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.scrollWidth) - _scrollHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.scrollHeight) - _clientTop = ReadonlyAttribute(jsObject: jsObject, name: Strings.clientTop) - _clientLeft = ReadonlyAttribute(jsObject: jsObject, name: Strings.clientLeft) - _clientWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.clientWidth) - _clientHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.clientHeight) - super.init(unsafelyWrapping: jsObject) + @inlinable public func readAsDataURL(blob: Blob) { + let this = jsObject + _ = this[Strings.readAsDataURL].function!(this: this, arguments: [blob.jsValue]) } - @ReadonlyAttribute - public var namespaceURI: String? + @inlinable public func abort() { + let this = jsObject + _ = this[Strings.abort].function!(this: this, arguments: []) + } - @ReadonlyAttribute - public var prefix: String? + public static let EMPTY: UInt16 = 0 + + public static let LOADING: UInt16 = 1 + + public static let DONE: UInt16 = 2 @ReadonlyAttribute - public var localName: String + public var readyState: UInt16 @ReadonlyAttribute - public var tagName: String + public var result: ArrayBuffer_or_String? - @ReadWriteAttribute - public var id: String + @ReadonlyAttribute + public var error: DOMException? - @ReadWriteAttribute - public var className: String + @ClosureAttribute1Optional + public var onloadstart: EventHandler - @ReadonlyAttribute - public var classList: DOMTokenList + @ClosureAttribute1Optional + public var onprogress: EventHandler - @ReadWriteAttribute - public var slot: String + @ClosureAttribute1Optional + public var onload: EventHandler - @inlinable public func hasAttributes() -> Bool { - let this = jsObject - return this[Strings.hasAttributes].function!(this: this, arguments: []).fromJSValue()! - } + @ClosureAttribute1Optional + public var onabort: EventHandler - @ReadonlyAttribute - public var attributes: NamedNodeMap + @ClosureAttribute1Optional + public var onerror: EventHandler - @inlinable public func getAttributeNames() -> [String] { - let this = jsObject - return this[Strings.getAttributeNames].function!(this: this, arguments: []).fromJSValue()! - } + @ClosureAttribute1Optional + public var onloadend: EventHandler +} - @inlinable public func getAttribute(qualifiedName: String) -> String? { - let this = jsObject - return this[Strings.getAttribute].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! - } +public enum FillMode: JSString, JSValueCompatible { + case none = "none" + case forwards = "forwards" + case backwards = "backwards" + case both = "both" + case auto = "auto" - @inlinable public func getAttributeNS(namespace: String?, localName: String) -> String? { - let this = jsObject - return this[Strings.getAttributeNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable public func setAttribute(qualifiedName: String, value: String) { - let this = jsObject - _ = this[Strings.setAttribute].function!(this: this, arguments: [qualifiedName.jsValue, value.jsValue]) + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @inlinable public func setAttributeNS(namespace: String?, qualifiedName: String, value: String) { - let this = jsObject - _ = this[Strings.setAttributeNS].function!(this: this, arguments: [namespace.jsValue, qualifiedName.jsValue, value.jsValue]) - } + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @inlinable public func removeAttribute(qualifiedName: String) { - let this = jsObject - _ = this[Strings.removeAttribute].function!(this: this, arguments: [qualifiedName.jsValue]) - } +public class FocusEvent: UIEvent { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.FocusEvent].function! } - @inlinable public func removeAttributeNS(namespace: String?, localName: String) { - let this = jsObject - _ = this[Strings.removeAttributeNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]) + public required init(unsafelyWrapping jsObject: JSObject) { + _relatedTarget = ReadonlyAttribute(jsObject: jsObject, name: Strings.relatedTarget) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func toggleAttribute(qualifiedName: String, force: Bool? = nil) -> Bool { - let this = jsObject - return this[Strings.toggleAttribute].function!(this: this, arguments: [qualifiedName.jsValue, force?.jsValue ?? .undefined]).fromJSValue()! + @inlinable public convenience init(type: String, eventInitDict: FocusEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) } - @inlinable public func hasAttribute(qualifiedName: String) -> Bool { - let this = jsObject - return this[Strings.hasAttribute].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! - } + @ReadonlyAttribute + public var relatedTarget: EventTarget? +} - @inlinable public func hasAttributeNS(namespace: String?, localName: String) -> Bool { - let this = jsObject - return this[Strings.hasAttributeNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! +public class FocusEventInit: BridgedDictionary { + public convenience init(relatedTarget: EventTarget?) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.relatedTarget] = relatedTarget.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func getAttributeNode(qualifiedName: String) -> Attr? { - let this = jsObject - return this[Strings.getAttributeNode].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _relatedTarget = ReadWriteAttribute(jsObject: object, name: Strings.relatedTarget) + super.init(unsafelyWrapping: object) } - @inlinable public func getAttributeNodeNS(namespace: String?, localName: String) -> Attr? { - let this = jsObject - return this[Strings.getAttributeNodeNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! - } + @ReadWriteAttribute + public var relatedTarget: EventTarget? +} - @inlinable public func setAttributeNode(attr: Attr) -> Attr? { - let this = jsObject - return this[Strings.setAttributeNode].function!(this: this, arguments: [attr.jsValue]).fromJSValue()! +public class FocusOptions: BridgedDictionary { + public convenience init(preventScroll: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.preventScroll] = preventScroll.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func setAttributeNodeNS(attr: Attr) -> Attr? { - let this = jsObject - return this[Strings.setAttributeNodeNS].function!(this: this, arguments: [attr.jsValue]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _preventScroll = ReadWriteAttribute(jsObject: object, name: Strings.preventScroll) + super.init(unsafelyWrapping: object) } - @inlinable public func removeAttributeNode(attr: Attr) -> Attr { - let this = jsObject - return this[Strings.removeAttributeNode].function!(this: this, arguments: [attr.jsValue]).fromJSValue()! - } + @ReadWriteAttribute + public var preventScroll: Bool +} - @inlinable public func attachShadow(init: ShadowRootInit) -> ShadowRoot { - let this = jsObject - return this[Strings.attachShadow].function!(this: this, arguments: [`init`.jsValue]).fromJSValue()! - } +public class FormData: JSBridgedClass, Sequence { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.FormData].function! } - @ReadonlyAttribute - public var shadowRoot: ShadowRoot? + public let jsObject: JSObject - @inlinable public func closest(selectors: String) -> Element? { - let this = jsObject - return this[Strings.closest].function!(this: this, arguments: [selectors.jsValue]).fromJSValue()! + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject } - @inlinable public func matches(selectors: String) -> Bool { - let this = jsObject - return this[Strings.matches].function!(this: this, arguments: [selectors.jsValue]).fromJSValue()! + @inlinable public convenience init(form: HTMLFormElement? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [form?.jsValue ?? .undefined])) } - @inlinable public func webkitMatchesSelector(selectors: String) -> Bool { + @inlinable public func append(name: String, value: String) { let this = jsObject - return this[Strings.webkitMatchesSelector].function!(this: this, arguments: [selectors.jsValue]).fromJSValue()! + _ = this[Strings.append].function!(this: this, arguments: [name.jsValue, value.jsValue]) } - @inlinable public func getElementsByTagName(qualifiedName: String) -> HTMLCollection { + @inlinable public func append(name: String, blobValue: Blob, filename: String? = nil) { let this = jsObject - return this[Strings.getElementsByTagName].function!(this: this, arguments: [qualifiedName.jsValue]).fromJSValue()! + _ = this[Strings.append].function!(this: this, arguments: [name.jsValue, blobValue.jsValue, filename?.jsValue ?? .undefined]) } - @inlinable public func getElementsByTagNameNS(namespace: String?, localName: String) -> HTMLCollection { + @inlinable public func delete(name: String) { let this = jsObject - return this[Strings.getElementsByTagNameNS].function!(this: this, arguments: [namespace.jsValue, localName.jsValue]).fromJSValue()! + _ = this[Strings.delete].function!(this: this, arguments: [name.jsValue]) } - @inlinable public func getElementsByClassName(classNames: String) -> HTMLCollection { + @inlinable public func get(name: String) -> FormDataEntryValue? { let this = jsObject - return this[Strings.getElementsByClassName].function!(this: this, arguments: [classNames.jsValue]).fromJSValue()! + return this[Strings.get].function!(this: this, arguments: [name.jsValue]).fromJSValue()! } - @inlinable public func insertAdjacentElement(where: String, element: Element) -> Element? { + @inlinable public func getAll(name: String) -> [FormDataEntryValue] { let this = jsObject - return this[Strings.insertAdjacentElement].function!(this: this, arguments: [`where`.jsValue, element.jsValue]).fromJSValue()! + return this[Strings.getAll].function!(this: this, arguments: [name.jsValue]).fromJSValue()! } - @inlinable public func insertAdjacentText(where: String, data: String) { + @inlinable public func has(name: String) -> Bool { let this = jsObject - _ = this[Strings.insertAdjacentText].function!(this: this, arguments: [`where`.jsValue, data.jsValue]) + return this[Strings.has].function!(this: this, arguments: [name.jsValue]).fromJSValue()! } - @inlinable public func pseudo(type: String) -> CSSPseudoElement? { + @inlinable public func set(name: String, value: String) { let this = jsObject - return this[Strings.pseudo].function!(this: this, arguments: [type.jsValue]).fromJSValue()! + _ = this[Strings.set].function!(this: this, arguments: [name.jsValue, value.jsValue]) } - @inlinable public func getClientRects() -> DOMRectList { + @inlinable public func set(name: String, blobValue: Blob, filename: String? = nil) { let this = jsObject - return this[Strings.getClientRects].function!(this: this, arguments: []).fromJSValue()! + _ = this[Strings.set].function!(this: this, arguments: [name.jsValue, blobValue.jsValue, filename?.jsValue ?? .undefined]) } - @inlinable public func getBoundingClientRect() -> DOMRect { - let this = jsObject - return this[Strings.getBoundingClientRect].function!(this: this, arguments: []).fromJSValue()! + public typealias Element = String + public func makeIterator() -> ValueIterableIterator { + ValueIterableIterator(sequence: self) } +} - @inlinable public func isVisible(options: IsVisibleOptions? = nil) -> Bool { - let this = jsObject - return this[Strings.isVisible].function!(this: this, arguments: [options?.jsValue ?? .undefined]).fromJSValue()! +public class FormDataEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.FormDataEvent].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _formData = ReadonlyAttribute(jsObject: jsObject, name: Strings.formData) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func scrollIntoView(arg: Bool_or_ScrollIntoViewOptions? = nil) { - let this = jsObject - _ = this[Strings.scrollIntoView].function!(this: this, arguments: [arg?.jsValue ?? .undefined]) + @inlinable public convenience init(type: String, eventInitDict: FormDataEventInit) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict.jsValue])) } - @inlinable public func scroll(options: ScrollToOptions? = nil) { - let this = jsObject - _ = this[Strings.scroll].function!(this: this, arguments: [options?.jsValue ?? .undefined]) + @ReadonlyAttribute + public var formData: FormData +} + +public class FormDataEventInit: BridgedDictionary { + public convenience init(formData: FormData) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.formData] = formData.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func scroll(x: Double, y: Double) { - let this = jsObject - _ = this[Strings.scroll].function!(this: this, arguments: [x.jsValue, y.jsValue]) + public required init(unsafelyWrapping object: JSObject) { + _formData = ReadWriteAttribute(jsObject: object, name: Strings.formData) + super.init(unsafelyWrapping: object) } - @inlinable public func scrollTo(options: ScrollToOptions? = nil) { - let this = jsObject - _ = this[Strings.scrollTo].function!(this: this, arguments: [options?.jsValue ?? .undefined]) + @ReadWriteAttribute + public var formData: FormData +} + +public enum FrameType: JSString, JSValueCompatible { + case auxiliary = "auxiliary" + case topLevel = "top-level" + case nested = "nested" + case none = "none" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - @inlinable public func scrollTo(x: Double, y: Double) { - let this = jsObject - _ = this[Strings.scrollTo].function!(this: this, arguments: [x.jsValue, y.jsValue]) + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @inlinable public func scrollBy(options: ScrollToOptions? = nil) { - let this = jsObject - _ = this[Strings.scrollBy].function!(this: this, arguments: [options?.jsValue ?? .undefined]) - } + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @inlinable public func scrollBy(x: Double, y: Double) { - let this = jsObject - _ = this[Strings.scrollBy].function!(this: this, arguments: [x.jsValue, y.jsValue]) - } +public class GainNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.GainNode].function! } - @ReadWriteAttribute - public var scrollTop: Double + public required init(unsafelyWrapping jsObject: JSObject) { + _gain = ReadonlyAttribute(jsObject: jsObject, name: Strings.gain) + super.init(unsafelyWrapping: jsObject) + } - @ReadWriteAttribute - public var scrollLeft: Double + @inlinable public convenience init(context: BaseAudioContext, options: GainOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } @ReadonlyAttribute - public var scrollWidth: Int32 + public var gain: AudioParam +} - @ReadonlyAttribute - public var scrollHeight: Int32 +public class GainOptions: BridgedDictionary { + public convenience init(gain: Float) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.gain] = gain.jsValue + self.init(unsafelyWrapping: object) + } - @ReadonlyAttribute - public var clientTop: Int32 + public required init(unsafelyWrapping object: JSObject) { + _gain = ReadWriteAttribute(jsObject: object, name: Strings.gain) + super.init(unsafelyWrapping: object) + } - @ReadonlyAttribute - public var clientLeft: Int32 + @ReadWriteAttribute + public var gain: Float +} - @ReadonlyAttribute - public var clientWidth: Int32 +public protocol GenericTransformStream: JSBridgedClass {} +public extension GenericTransformStream { + @inlinable var readable: ReadableStream { ReadonlyAttribute[Strings.readable, in: jsObject] } - @ReadonlyAttribute - public var clientHeight: Int32 + @inlinable var writable: WritableStream { ReadonlyAttribute[Strings.writable, in: jsObject] } } -public protocol ElementContentEditable: JSBridgedClass {} -public extension ElementContentEditable { - @inlinable var contentEditable: String { - get { ReadWriteAttribute[Strings.contentEditable, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.contentEditable, in: jsObject] = newValue } +public protocol GeometryUtils: JSBridgedClass {} +public extension GeometryUtils { + @inlinable func getBoxQuads(options: BoxQuadOptions? = nil) -> [DOMQuad] { + let this = jsObject + return this[Strings.getBoxQuads].function!(this: this, arguments: [options?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable var enterKeyHint: String { - get { ReadWriteAttribute[Strings.enterKeyHint, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.enterKeyHint, in: jsObject] = newValue } + @inlinable func convertQuadFromNode(quad: DOMQuadInit, from: GeometryNode, options: ConvertCoordinateOptions? = nil) -> DOMQuad { + let this = jsObject + return this[Strings.convertQuadFromNode].function!(this: this, arguments: [quad.jsValue, from.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable var isContentEditable: Bool { ReadonlyAttribute[Strings.isContentEditable, in: jsObject] } + @inlinable func convertRectFromNode(rect: DOMRectReadOnly, from: GeometryNode, options: ConvertCoordinateOptions? = nil) -> DOMQuad { + let this = jsObject + return this[Strings.convertRectFromNode].function!(this: this, arguments: [rect.jsValue, from.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + } - @inlinable var inputMode: String { - get { ReadWriteAttribute[Strings.inputMode, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.inputMode, in: jsObject] = newValue } + @inlinable func convertPointFromNode(point: DOMPointInit, from: GeometryNode, options: ConvertCoordinateOptions? = nil) -> DOMPoint { + let this = jsObject + return this[Strings.convertPointFromNode].function!(this: this, arguments: [point.jsValue, from.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! } } -public class ElementCreationOptions: BridgedDictionary { - public convenience init(is: String) { +public class GetAnimationsOptions: BridgedDictionary { + public convenience init(subtree: Bool) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.is] = `is`.jsValue + object[Strings.subtree] = subtree.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _is = ReadWriteAttribute(jsObject: object, name: Strings.is) + _subtree = ReadWriteAttribute(jsObject: object, name: Strings.subtree) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var `is`: String + public var subtree: Bool } -public class ElementDefinitionOptions: BridgedDictionary { - public convenience init(extends: String) { +public class GetRootNodeOptions: BridgedDictionary { + public convenience init(composed: Bool) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.extends] = extends.jsValue + object[Strings.composed] = composed.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _extends = ReadWriteAttribute(jsObject: object, name: Strings.extends) + _composed = ReadWriteAttribute(jsObject: object, name: Strings.composed) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var extends: String + public var composed: Bool } -public class ElementInternals: JSBridgedClass, ARIAMixin { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ElementInternals].function! } +public protocol GlobalEventHandlers: JSBridgedClass {} +public extension GlobalEventHandlers { + @inlinable var onabort: EventHandler { + get { ClosureAttribute1Optional[Strings.onabort, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onabort, in: jsObject] = newValue } + } - public let jsObject: JSObject + @inlinable var onauxclick: EventHandler { + get { ClosureAttribute1Optional[Strings.onauxclick, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onauxclick, in: jsObject] = newValue } + } - public required init(unsafelyWrapping jsObject: JSObject) { - _shadowRoot = ReadonlyAttribute(jsObject: jsObject, name: Strings.shadowRoot) - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) - _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) - _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) - _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) - self.jsObject = jsObject + @inlinable var onblur: EventHandler { + get { ClosureAttribute1Optional[Strings.onblur, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onblur, in: jsObject] = newValue } } - @ReadonlyAttribute - public var shadowRoot: ShadowRoot? + @inlinable var oncancel: EventHandler { + get { ClosureAttribute1Optional[Strings.oncancel, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncancel, in: jsObject] = newValue } + } - @inlinable public func setFormValue(value: File_or_FormData_or_String?, state: File_or_FormData_or_String? = nil) { - let this = jsObject - _ = this[Strings.setFormValue].function!(this: this, arguments: [value.jsValue, state?.jsValue ?? .undefined]) + @inlinable var oncanplay: EventHandler { + get { ClosureAttribute1Optional[Strings.oncanplay, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncanplay, in: jsObject] = newValue } } - @ReadonlyAttribute - public var form: HTMLFormElement? + @inlinable var oncanplaythrough: EventHandler { + get { ClosureAttribute1Optional[Strings.oncanplaythrough, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncanplaythrough, in: jsObject] = newValue } + } - @inlinable public func setValidity(flags: ValidityStateFlags? = nil, message: String? = nil, anchor: HTMLElement? = nil) { - let this = jsObject - _ = this[Strings.setValidity].function!(this: this, arguments: [flags?.jsValue ?? .undefined, message?.jsValue ?? .undefined, anchor?.jsValue ?? .undefined]) + @inlinable var onchange: EventHandler { + get { ClosureAttribute1Optional[Strings.onchange, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onchange, in: jsObject] = newValue } } - @ReadonlyAttribute - public var willValidate: Bool + @inlinable var onclick: EventHandler { + get { ClosureAttribute1Optional[Strings.onclick, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onclick, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var validity: ValidityState + @inlinable var onclose: EventHandler { + get { ClosureAttribute1Optional[Strings.onclose, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onclose, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var validationMessage: String + @inlinable var oncontextlost: EventHandler { + get { ClosureAttribute1Optional[Strings.oncontextlost, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncontextlost, in: jsObject] = newValue } + } - @inlinable public func checkValidity() -> Bool { - let this = jsObject - return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! + @inlinable var oncontextmenu: EventHandler { + get { ClosureAttribute1Optional[Strings.oncontextmenu, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncontextmenu, in: jsObject] = newValue } } - @inlinable public func reportValidity() -> Bool { - let this = jsObject - return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! + @inlinable var oncontextrestored: EventHandler { + get { ClosureAttribute1Optional[Strings.oncontextrestored, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncontextrestored, in: jsObject] = newValue } } - @ReadonlyAttribute - public var labels: NodeList -} + @inlinable var oncuechange: EventHandler { + get { ClosureAttribute1Optional[Strings.oncuechange, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oncuechange, in: jsObject] = newValue } + } -public enum EndingType: JSString, JSValueCompatible { - case transparent = "transparent" - case native = "native" + @inlinable var ondblclick: EventHandler { + get { ClosureAttribute1Optional[Strings.ondblclick, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondblclick, in: jsObject] = newValue } + } - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @inlinable var ondrag: EventHandler { + get { ClosureAttribute1Optional[Strings.ondrag, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondrag, in: jsObject] = newValue } } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable var ondragend: EventHandler { + get { ClosureAttribute1Optional[Strings.ondragend, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondragend, in: jsObject] = newValue } } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} + @inlinable var ondragenter: EventHandler { + get { ClosureAttribute1Optional[Strings.ondragenter, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondragenter, in: jsObject] = newValue } + } -public class ErrorEvent: Event { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.ErrorEvent].function! } + @inlinable var ondragleave: EventHandler { + get { ClosureAttribute1Optional[Strings.ondragleave, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondragleave, in: jsObject] = newValue } + } - public required init(unsafelyWrapping jsObject: JSObject) { - _message = ReadonlyAttribute(jsObject: jsObject, name: Strings.message) - _filename = ReadonlyAttribute(jsObject: jsObject, name: Strings.filename) - _lineno = ReadonlyAttribute(jsObject: jsObject, name: Strings.lineno) - _colno = ReadonlyAttribute(jsObject: jsObject, name: Strings.colno) - _error = ReadonlyAttribute(jsObject: jsObject, name: Strings.error) - super.init(unsafelyWrapping: jsObject) + @inlinable var ondragover: EventHandler { + get { ClosureAttribute1Optional[Strings.ondragover, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondragover, in: jsObject] = newValue } + } + + @inlinable var ondragstart: EventHandler { + get { ClosureAttribute1Optional[Strings.ondragstart, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondragstart, in: jsObject] = newValue } + } + + @inlinable var ondrop: EventHandler { + get { ClosureAttribute1Optional[Strings.ondrop, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondrop, in: jsObject] = newValue } + } + + @inlinable var ondurationchange: EventHandler { + get { ClosureAttribute1Optional[Strings.ondurationchange, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ondurationchange, in: jsObject] = newValue } + } + + @inlinable var onemptied: EventHandler { + get { ClosureAttribute1Optional[Strings.onemptied, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onemptied, in: jsObject] = newValue } + } + + @inlinable var onended: EventHandler { + get { ClosureAttribute1Optional[Strings.onended, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onended, in: jsObject] = newValue } + } + + @inlinable var onerror: OnErrorEventHandler { + get { ClosureAttribute5Optional[Strings.onerror, in: jsObject] } + nonmutating set { ClosureAttribute5Optional[Strings.onerror, in: jsObject] = newValue } + } + + @inlinable var onfocus: EventHandler { + get { ClosureAttribute1Optional[Strings.onfocus, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onfocus, in: jsObject] = newValue } } - @inlinable public convenience init(type: String, eventInitDict: ErrorEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable var onformdata: EventHandler { + get { ClosureAttribute1Optional[Strings.onformdata, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onformdata, in: jsObject] = newValue } } - @ReadonlyAttribute - public var message: String + @inlinable var oninput: EventHandler { + get { ClosureAttribute1Optional[Strings.oninput, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oninput, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var filename: String + @inlinable var oninvalid: EventHandler { + get { ClosureAttribute1Optional[Strings.oninvalid, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.oninvalid, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var lineno: UInt32 + @inlinable var onkeydown: EventHandler { + get { ClosureAttribute1Optional[Strings.onkeydown, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onkeydown, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var colno: UInt32 + @inlinable var onkeypress: EventHandler { + get { ClosureAttribute1Optional[Strings.onkeypress, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onkeypress, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var error: JSValue -} + @inlinable var onkeyup: EventHandler { + get { ClosureAttribute1Optional[Strings.onkeyup, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onkeyup, in: jsObject] = newValue } + } -public class ErrorEventInit: BridgedDictionary { - public convenience init(message: String, filename: String, lineno: UInt32, colno: UInt32, error: JSValue) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.message] = message.jsValue - object[Strings.filename] = filename.jsValue - object[Strings.lineno] = lineno.jsValue - object[Strings.colno] = colno.jsValue - object[Strings.error] = error.jsValue - self.init(unsafelyWrapping: object) + @inlinable var onload: EventHandler { + get { ClosureAttribute1Optional[Strings.onload, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onload, in: jsObject] = newValue } } - public required init(unsafelyWrapping object: JSObject) { - _message = ReadWriteAttribute(jsObject: object, name: Strings.message) - _filename = ReadWriteAttribute(jsObject: object, name: Strings.filename) - _lineno = ReadWriteAttribute(jsObject: object, name: Strings.lineno) - _colno = ReadWriteAttribute(jsObject: object, name: Strings.colno) - _error = ReadWriteAttribute(jsObject: object, name: Strings.error) - super.init(unsafelyWrapping: object) + @inlinable var onloadeddata: EventHandler { + get { ClosureAttribute1Optional[Strings.onloadeddata, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onloadeddata, in: jsObject] = newValue } } - @ReadWriteAttribute - public var message: String + @inlinable var onloadedmetadata: EventHandler { + get { ClosureAttribute1Optional[Strings.onloadedmetadata, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onloadedmetadata, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var filename: String + @inlinable var onloadstart: EventHandler { + get { ClosureAttribute1Optional[Strings.onloadstart, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onloadstart, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var lineno: UInt32 + @inlinable var onmousedown: EventHandler { + get { ClosureAttribute1Optional[Strings.onmousedown, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onmousedown, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var colno: UInt32 + @inlinable var onmouseenter: EventHandler { + get { ClosureAttribute1Optional[Strings.onmouseenter, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onmouseenter, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var error: JSValue -} + @inlinable var onmouseleave: EventHandler { + get { ClosureAttribute1Optional[Strings.onmouseleave, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onmouseleave, in: jsObject] = newValue } + } -public class Event: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Event].function! } + @inlinable var onmousemove: EventHandler { + get { ClosureAttribute1Optional[Strings.onmousemove, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onmousemove, in: jsObject] = newValue } + } - public let jsObject: JSObject + @inlinable var onmouseout: EventHandler { + get { ClosureAttribute1Optional[Strings.onmouseout, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onmouseout, in: jsObject] = newValue } + } - public required init(unsafelyWrapping jsObject: JSObject) { - _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) - _target = ReadonlyAttribute(jsObject: jsObject, name: Strings.target) - _srcElement = ReadonlyAttribute(jsObject: jsObject, name: Strings.srcElement) - _currentTarget = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentTarget) - _eventPhase = ReadonlyAttribute(jsObject: jsObject, name: Strings.eventPhase) - _cancelBubble = ReadWriteAttribute(jsObject: jsObject, name: Strings.cancelBubble) - _bubbles = ReadonlyAttribute(jsObject: jsObject, name: Strings.bubbles) - _cancelable = ReadonlyAttribute(jsObject: jsObject, name: Strings.cancelable) - _returnValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.returnValue) - _defaultPrevented = ReadonlyAttribute(jsObject: jsObject, name: Strings.defaultPrevented) - _composed = ReadonlyAttribute(jsObject: jsObject, name: Strings.composed) - _isTrusted = ReadonlyAttribute(jsObject: jsObject, name: Strings.isTrusted) - _timeStamp = ReadonlyAttribute(jsObject: jsObject, name: Strings.timeStamp) - self.jsObject = jsObject + @inlinable var onmouseover: EventHandler { + get { ClosureAttribute1Optional[Strings.onmouseover, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onmouseover, in: jsObject] = newValue } } - @inlinable public convenience init(type: String, eventInitDict: EventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable var onmouseup: EventHandler { + get { ClosureAttribute1Optional[Strings.onmouseup, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onmouseup, in: jsObject] = newValue } } - @ReadonlyAttribute - public var type: String + @inlinable var onpause: EventHandler { + get { ClosureAttribute1Optional[Strings.onpause, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onpause, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var target: EventTarget? + @inlinable var onplay: EventHandler { + get { ClosureAttribute1Optional[Strings.onplay, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onplay, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var srcElement: EventTarget? + @inlinable var onplaying: EventHandler { + get { ClosureAttribute1Optional[Strings.onplaying, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onplaying, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var currentTarget: EventTarget? + @inlinable var onprogress: EventHandler { + get { ClosureAttribute1Optional[Strings.onprogress, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onprogress, in: jsObject] = newValue } + } - @inlinable public func composedPath() -> [EventTarget] { - let this = jsObject - return this[Strings.composedPath].function!(this: this, arguments: []).fromJSValue()! + @inlinable var onratechange: EventHandler { + get { ClosureAttribute1Optional[Strings.onratechange, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onratechange, in: jsObject] = newValue } } - public static let NONE: UInt16 = 0 + @inlinable var onreset: EventHandler { + get { ClosureAttribute1Optional[Strings.onreset, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onreset, in: jsObject] = newValue } + } - public static let CAPTURING_PHASE: UInt16 = 1 + @inlinable var onresize: EventHandler { + get { ClosureAttribute1Optional[Strings.onresize, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onresize, in: jsObject] = newValue } + } - public static let AT_TARGET: UInt16 = 2 + @inlinable var onscroll: EventHandler { + get { ClosureAttribute1Optional[Strings.onscroll, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onscroll, in: jsObject] = newValue } + } - public static let BUBBLING_PHASE: UInt16 = 3 + @inlinable var onsecuritypolicyviolation: EventHandler { + get { ClosureAttribute1Optional[Strings.onsecuritypolicyviolation, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onsecuritypolicyviolation, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var eventPhase: UInt16 + @inlinable var onseeked: EventHandler { + get { ClosureAttribute1Optional[Strings.onseeked, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onseeked, in: jsObject] = newValue } + } - @inlinable public func stopPropagation() { - let this = jsObject - _ = this[Strings.stopPropagation].function!(this: this, arguments: []) + @inlinable var onseeking: EventHandler { + get { ClosureAttribute1Optional[Strings.onseeking, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onseeking, in: jsObject] = newValue } } - @ReadWriteAttribute - public var cancelBubble: Bool + @inlinable var onselect: EventHandler { + get { ClosureAttribute1Optional[Strings.onselect, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onselect, in: jsObject] = newValue } + } - @inlinable public func stopImmediatePropagation() { - let this = jsObject - _ = this[Strings.stopImmediatePropagation].function!(this: this, arguments: []) + @inlinable var onslotchange: EventHandler { + get { ClosureAttribute1Optional[Strings.onslotchange, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onslotchange, in: jsObject] = newValue } } - @ReadonlyAttribute - public var bubbles: Bool + @inlinable var onstalled: EventHandler { + get { ClosureAttribute1Optional[Strings.onstalled, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onstalled, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var cancelable: Bool + @inlinable var onsubmit: EventHandler { + get { ClosureAttribute1Optional[Strings.onsubmit, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onsubmit, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var returnValue: Bool + @inlinable var onsuspend: EventHandler { + get { ClosureAttribute1Optional[Strings.onsuspend, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onsuspend, in: jsObject] = newValue } + } - @inlinable public func preventDefault() { - let this = jsObject - _ = this[Strings.preventDefault].function!(this: this, arguments: []) + @inlinable var ontimeupdate: EventHandler { + get { ClosureAttribute1Optional[Strings.ontimeupdate, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ontimeupdate, in: jsObject] = newValue } } - @ReadonlyAttribute - public var defaultPrevented: Bool + @inlinable var ontoggle: EventHandler { + get { ClosureAttribute1Optional[Strings.ontoggle, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.ontoggle, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var composed: Bool + @inlinable var onvolumechange: EventHandler { + get { ClosureAttribute1Optional[Strings.onvolumechange, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onvolumechange, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var isTrusted: Bool + @inlinable var onwaiting: EventHandler { + get { ClosureAttribute1Optional[Strings.onwaiting, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onwaiting, in: jsObject] = newValue } + } - @ReadonlyAttribute - public var timeStamp: DOMHighResTimeStamp + @inlinable var onwebkitanimationend: EventHandler { + get { ClosureAttribute1Optional[Strings.onwebkitanimationend, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onwebkitanimationend, in: jsObject] = newValue } + } - @inlinable public func initEvent(type: String, bubbles: Bool? = nil, cancelable: Bool? = nil) { - let this = jsObject - _ = this[Strings.initEvent].function!(this: this, arguments: [type.jsValue, bubbles?.jsValue ?? .undefined, cancelable?.jsValue ?? .undefined]) + @inlinable var onwebkitanimationiteration: EventHandler { + get { ClosureAttribute1Optional[Strings.onwebkitanimationiteration, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onwebkitanimationiteration, in: jsObject] = newValue } + } + + @inlinable var onwebkitanimationstart: EventHandler { + get { ClosureAttribute1Optional[Strings.onwebkitanimationstart, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onwebkitanimationstart, in: jsObject] = newValue } } -} -public class EventInit: BridgedDictionary { - public convenience init(bubbles: Bool, cancelable: Bool, composed: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.bubbles] = bubbles.jsValue - object[Strings.cancelable] = cancelable.jsValue - object[Strings.composed] = composed.jsValue - self.init(unsafelyWrapping: object) + @inlinable var onwebkittransitionend: EventHandler { + get { ClosureAttribute1Optional[Strings.onwebkittransitionend, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onwebkittransitionend, in: jsObject] = newValue } } - public required init(unsafelyWrapping object: JSObject) { - _bubbles = ReadWriteAttribute(jsObject: object, name: Strings.bubbles) - _cancelable = ReadWriteAttribute(jsObject: object, name: Strings.cancelable) - _composed = ReadWriteAttribute(jsObject: object, name: Strings.composed) - super.init(unsafelyWrapping: object) + @inlinable var onwheel: EventHandler { + get { ClosureAttribute1Optional[Strings.onwheel, in: jsObject] } + nonmutating set { ClosureAttribute1Optional[Strings.onwheel, in: jsObject] = newValue } } +} - @ReadWriteAttribute - public var bubbles: Bool +public class HTMLAllCollection: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.HTMLAllCollection].function! } - @ReadWriteAttribute - public var cancelable: Bool + public let jsObject: JSObject - @ReadWriteAttribute - public var composed: Bool -} + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + self.jsObject = jsObject + } -public class EventListenerOptions: BridgedDictionary { - public convenience init(capture: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.capture] = capture.jsValue - self.init(unsafelyWrapping: object) + @ReadonlyAttribute + public var length: UInt32 + + @inlinable public subscript(key: Int) -> Element { + jsObject[key].fromJSValue()! } - public required init(unsafelyWrapping object: JSObject) { - _capture = ReadWriteAttribute(jsObject: object, name: Strings.capture) - super.init(unsafelyWrapping: object) + @inlinable public subscript(key: String) -> Element_or_HTMLCollection? { + jsObject[key].fromJSValue() } - @ReadWriteAttribute - public var capture: Bool + @inlinable public func item(nameOrIndex: String? = nil) -> Element_or_HTMLCollection? { + let this = jsObject + return this[Strings.item].function!(this: this, arguments: [nameOrIndex?.jsValue ?? .undefined]).fromJSValue()! + } } -public class EventModifierInit: BridgedDictionary { - public convenience init(ctrlKey: Bool, shiftKey: Bool, altKey: Bool, metaKey: Bool, modifierAltGraph: Bool, modifierCapsLock: Bool, modifierFn: Bool, modifierFnLock: Bool, modifierHyper: Bool, modifierNumLock: Bool, modifierScrollLock: Bool, modifierSuper: Bool, modifierSymbol: Bool, modifierSymbolLock: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.ctrlKey] = ctrlKey.jsValue - object[Strings.shiftKey] = shiftKey.jsValue - object[Strings.altKey] = altKey.jsValue - object[Strings.metaKey] = metaKey.jsValue - object[Strings.modifierAltGraph] = modifierAltGraph.jsValue - object[Strings.modifierCapsLock] = modifierCapsLock.jsValue - object[Strings.modifierFn] = modifierFn.jsValue - object[Strings.modifierFnLock] = modifierFnLock.jsValue - object[Strings.modifierHyper] = modifierHyper.jsValue - object[Strings.modifierNumLock] = modifierNumLock.jsValue - object[Strings.modifierScrollLock] = modifierScrollLock.jsValue - object[Strings.modifierSuper] = modifierSuper.jsValue - object[Strings.modifierSymbol] = modifierSymbol.jsValue - object[Strings.modifierSymbolLock] = modifierSymbolLock.jsValue - self.init(unsafelyWrapping: object) +public class HTMLAnchorElement: HTMLElement, HTMLHyperlinkElementUtils { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLAnchorElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) + _download = ReadWriteAttribute(jsObject: jsObject, name: Strings.download) + _ping = ReadWriteAttribute(jsObject: jsObject, name: Strings.ping) + _rel = ReadWriteAttribute(jsObject: jsObject, name: Strings.rel) + _relList = ReadonlyAttribute(jsObject: jsObject, name: Strings.relList) + _hreflang = ReadWriteAttribute(jsObject: jsObject, name: Strings.hreflang) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) + _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) + _coords = ReadWriteAttribute(jsObject: jsObject, name: Strings.coords) + _charset = ReadWriteAttribute(jsObject: jsObject, name: Strings.charset) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _rev = ReadWriteAttribute(jsObject: jsObject, name: Strings.rev) + _shape = ReadWriteAttribute(jsObject: jsObject, name: Strings.shape) + super.init(unsafelyWrapping: jsObject) } - public required init(unsafelyWrapping object: JSObject) { - _ctrlKey = ReadWriteAttribute(jsObject: object, name: Strings.ctrlKey) - _shiftKey = ReadWriteAttribute(jsObject: object, name: Strings.shiftKey) - _altKey = ReadWriteAttribute(jsObject: object, name: Strings.altKey) - _metaKey = ReadWriteAttribute(jsObject: object, name: Strings.metaKey) - _modifierAltGraph = ReadWriteAttribute(jsObject: object, name: Strings.modifierAltGraph) - _modifierCapsLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierCapsLock) - _modifierFn = ReadWriteAttribute(jsObject: object, name: Strings.modifierFn) - _modifierFnLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierFnLock) - _modifierHyper = ReadWriteAttribute(jsObject: object, name: Strings.modifierHyper) - _modifierNumLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierNumLock) - _modifierScrollLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierScrollLock) - _modifierSuper = ReadWriteAttribute(jsObject: object, name: Strings.modifierSuper) - _modifierSymbol = ReadWriteAttribute(jsObject: object, name: Strings.modifierSymbol) - _modifierSymbolLock = ReadWriteAttribute(jsObject: object, name: Strings.modifierSymbolLock) - super.init(unsafelyWrapping: object) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadWriteAttribute - public var ctrlKey: Bool + public var target: String @ReadWriteAttribute - public var shiftKey: Bool + public var download: String @ReadWriteAttribute - public var altKey: Bool + public var ping: String @ReadWriteAttribute - public var metaKey: Bool + public var rel: String - @ReadWriteAttribute - public var modifierAltGraph: Bool + @ReadonlyAttribute + public var relList: DOMTokenList @ReadWriteAttribute - public var modifierCapsLock: Bool + public var hreflang: String @ReadWriteAttribute - public var modifierFn: Bool + public var type: String @ReadWriteAttribute - public var modifierFnLock: Bool + public var text: String @ReadWriteAttribute - public var modifierHyper: Bool + public var referrerPolicy: String @ReadWriteAttribute - public var modifierNumLock: Bool + public var coords: String @ReadWriteAttribute - public var modifierScrollLock: Bool + public var charset: String @ReadWriteAttribute - public var modifierSuper: Bool + public var name: String @ReadWriteAttribute - public var modifierSymbol: Bool + public var rev: String @ReadWriteAttribute - public var modifierSymbolLock: Bool + public var shape: String } -public class EventSource: EventTarget { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.EventSource].function! } +public class HTMLAreaElement: HTMLElement, HTMLHyperlinkElementUtils { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLAreaElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _url = ReadonlyAttribute(jsObject: jsObject, name: Strings.url) - _withCredentials = ReadonlyAttribute(jsObject: jsObject, name: Strings.withCredentials) - _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) - _onopen = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onopen) - _onmessage = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onmessage) - _onerror = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onerror) + _alt = ReadWriteAttribute(jsObject: jsObject, name: Strings.alt) + _coords = ReadWriteAttribute(jsObject: jsObject, name: Strings.coords) + _shape = ReadWriteAttribute(jsObject: jsObject, name: Strings.shape) + _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) + _download = ReadWriteAttribute(jsObject: jsObject, name: Strings.download) + _ping = ReadWriteAttribute(jsObject: jsObject, name: Strings.ping) + _rel = ReadWriteAttribute(jsObject: jsObject, name: Strings.rel) + _relList = ReadonlyAttribute(jsObject: jsObject, name: Strings.relList) + _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) + _noHref = ReadWriteAttribute(jsObject: jsObject, name: Strings.noHref) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init(url: String, eventSourceInitDict: EventSourceInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [url.jsValue, eventSourceInitDict?.jsValue ?? .undefined])) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadonlyAttribute - public var url: String - - @ReadonlyAttribute - public var withCredentials: Bool - - public static let CONNECTING: UInt16 = 0 - - public static let OPEN: UInt16 = 1 + @ReadWriteAttribute + public var alt: String - public static let CLOSED: UInt16 = 2 + @ReadWriteAttribute + public var coords: String - @ReadonlyAttribute - public var readyState: UInt16 + @ReadWriteAttribute + public var shape: String - @ClosureAttribute1Optional - public var onopen: EventHandler + @ReadWriteAttribute + public var target: String - @ClosureAttribute1Optional - public var onmessage: EventHandler + @ReadWriteAttribute + public var download: String - @ClosureAttribute1Optional - public var onerror: EventHandler + @ReadWriteAttribute + public var ping: String - @inlinable public func close() { - let this = jsObject - _ = this[Strings.close].function!(this: this, arguments: []) - } -} + @ReadWriteAttribute + public var rel: String -public class EventSourceInit: BridgedDictionary { - public convenience init(withCredentials: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.withCredentials] = withCredentials.jsValue - self.init(unsafelyWrapping: object) - } + @ReadonlyAttribute + public var relList: DOMTokenList - public required init(unsafelyWrapping object: JSObject) { - _withCredentials = ReadWriteAttribute(jsObject: object, name: Strings.withCredentials) - super.init(unsafelyWrapping: object) - } + @ReadWriteAttribute + public var referrerPolicy: String @ReadWriteAttribute - public var withCredentials: Bool + public var noHref: Bool } -public class EventTarget: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.EventTarget].function! } - - public let jsObject: JSObject +public class HTMLAudioElement: HTMLMediaElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLAudioElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject + super.init(unsafelyWrapping: jsObject) } @inlinable public convenience init() { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - - // XXX: member 'addEventListener' is ignored - - // XXX: member 'removeEventListener' is ignored - - @inlinable public func dispatchEvent(event: Event) -> Bool { - let this = jsObject - return this[Strings.dispatchEvent].function!(this: this, arguments: [event.jsValue]).fromJSValue()! - } } -public class ExtendableEventInit: BridgedDictionary { - public convenience init() { - let object = JSObject.global[Strings.Object].function!.new() +public class HTMLBRElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLBRElement].function! } - self.init(unsafelyWrapping: object) + public required init(unsafelyWrapping jsObject: JSObject) { + _clear = ReadWriteAttribute(jsObject: jsObject, name: Strings.clear) + super.init(unsafelyWrapping: jsObject) } - public required init(unsafelyWrapping object: JSObject) { - super.init(unsafelyWrapping: object) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } -} -public class External: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.External].function! } + @ReadWriteAttribute + public var clear: String +} - public let jsObject: JSObject +public class HTMLBaseElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLBaseElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject + _href = ReadWriteAttribute(jsObject: jsObject, name: Strings.href) + _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func AddSearchProvider() { - let this = jsObject - _ = this[Strings.AddSearchProvider].function!(this: this, arguments: []) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable public func IsSearchProviderInstalled() { - let this = jsObject - _ = this[Strings.IsSearchProviderInstalled].function!(this: this, arguments: []) - } + @ReadWriteAttribute + public var href: String + + @ReadWriteAttribute + public var target: String } -public class FetchEventInit: BridgedDictionary { - public convenience init(request: Request, preloadResponse: JSPromise, clientId: String, resultingClientId: String, replacesClientId: String, handled: JSPromise) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.request] = request.jsValue - object[Strings.preloadResponse] = preloadResponse.jsValue - object[Strings.clientId] = clientId.jsValue - object[Strings.resultingClientId] = resultingClientId.jsValue - object[Strings.replacesClientId] = replacesClientId.jsValue - object[Strings.handled] = handled.jsValue - self.init(unsafelyWrapping: object) +public class HTMLBodyElement: HTMLElement, WindowEventHandlers { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLBodyElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) + _link = ReadWriteAttribute(jsObject: jsObject, name: Strings.link) + _vLink = ReadWriteAttribute(jsObject: jsObject, name: Strings.vLink) + _aLink = ReadWriteAttribute(jsObject: jsObject, name: Strings.aLink) + _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) + _background = ReadWriteAttribute(jsObject: jsObject, name: Strings.background) + super.init(unsafelyWrapping: jsObject) } - public required init(unsafelyWrapping object: JSObject) { - _request = ReadWriteAttribute(jsObject: object, name: Strings.request) - _preloadResponse = ReadWriteAttribute(jsObject: object, name: Strings.preloadResponse) - _clientId = ReadWriteAttribute(jsObject: object, name: Strings.clientId) - _resultingClientId = ReadWriteAttribute(jsObject: object, name: Strings.resultingClientId) - _replacesClientId = ReadWriteAttribute(jsObject: object, name: Strings.replacesClientId) - _handled = ReadWriteAttribute(jsObject: object, name: Strings.handled) - super.init(unsafelyWrapping: object) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadWriteAttribute - public var request: Request + public var text: String @ReadWriteAttribute - public var preloadResponse: JSPromise + public var link: String @ReadWriteAttribute - public var clientId: String + public var vLink: String @ReadWriteAttribute - public var resultingClientId: String + public var aLink: String @ReadWriteAttribute - public var replacesClientId: String + public var bgColor: String @ReadWriteAttribute - public var handled: JSPromise + public var background: String } -public class File: Blob { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.File].function! } +public class HTMLButtonElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLButtonElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _name = ReadonlyAttribute(jsObject: jsObject, name: Strings.name) - _lastModified = ReadonlyAttribute(jsObject: jsObject, name: Strings.lastModified) + _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) + _formAction = ReadWriteAttribute(jsObject: jsObject, name: Strings.formAction) + _formEnctype = ReadWriteAttribute(jsObject: jsObject, name: Strings.formEnctype) + _formMethod = ReadWriteAttribute(jsObject: jsObject, name: Strings.formMethod) + _formNoValidate = ReadWriteAttribute(jsObject: jsObject, name: Strings.formNoValidate) + _formTarget = ReadWriteAttribute(jsObject: jsObject, name: Strings.formTarget) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) + _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) + _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) + _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init(fileBits: [BlobPart], fileName: String, options: FilePropertyBag? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [fileBits.jsValue, fileName.jsValue, options?.jsValue ?? .undefined])) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadonlyAttribute - public var name: String + @ReadWriteAttribute + public var disabled: Bool @ReadonlyAttribute - public var lastModified: Int64 -} + public var form: HTMLFormElement? -public class FileList: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.FileList].function! } + @ReadWriteAttribute + public var formAction: String - public let jsObject: JSObject + @ReadWriteAttribute + public var formEnctype: String - public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - self.jsObject = jsObject - } + @ReadWriteAttribute + public var formMethod: String - @inlinable public subscript(key: Int) -> File? { - jsObject[key].fromJSValue() - } + @ReadWriteAttribute + public var formNoValidate: Bool + + @ReadWriteAttribute + public var formTarget: String + + @ReadWriteAttribute + public var name: String + + @ReadWriteAttribute + public var type: String + + @ReadWriteAttribute + public var value: String @ReadonlyAttribute - public var length: UInt32 -} + public var willValidate: Bool -public class FilePropertyBag: BridgedDictionary { - public convenience init(lastModified: Int64) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.lastModified] = lastModified.jsValue - self.init(unsafelyWrapping: object) + @ReadonlyAttribute + public var validity: ValidityState + + @ReadonlyAttribute + public var validationMessage: String + + @inlinable public func checkValidity() -> Bool { + let this = jsObject + return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! } - public required init(unsafelyWrapping object: JSObject) { - _lastModified = ReadWriteAttribute(jsObject: object, name: Strings.lastModified) - super.init(unsafelyWrapping: object) + @inlinable public func reportValidity() -> Bool { + let this = jsObject + return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! } - @ReadWriteAttribute - public var lastModified: Int64 + @inlinable public func setCustomValidity(error: String) { + let this = jsObject + _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) + } + + @ReadonlyAttribute + public var labels: NodeList } -public class FileReader: EventTarget { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.FileReader].function! } +public class HTMLCanvasElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLCanvasElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) - _result = ReadonlyAttribute(jsObject: jsObject, name: Strings.result) - _error = ReadonlyAttribute(jsObject: jsObject, name: Strings.error) - _onloadstart = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onloadstart) - _onprogress = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onprogress) - _onload = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onload) - _onabort = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onabort) - _onerror = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onerror) - _onloadend = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onloadend) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) super.init(unsafelyWrapping: jsObject) } @@ -5280,695 +7783,735 @@ public class FileReader: EventTarget { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable public func readAsArrayBuffer(blob: Blob) { - let this = jsObject - _ = this[Strings.readAsArrayBuffer].function!(this: this, arguments: [blob.jsValue]) - } + @ReadWriteAttribute + public var width: UInt32 - @inlinable public func readAsBinaryString(blob: Blob) { - let this = jsObject - _ = this[Strings.readAsBinaryString].function!(this: this, arguments: [blob.jsValue]) - } + @ReadWriteAttribute + public var height: UInt32 - @inlinable public func readAsText(blob: Blob, encoding: String? = nil) { + @inlinable public func getContext(contextId: String, options: JSValue? = nil) -> RenderingContext? { let this = jsObject - _ = this[Strings.readAsText].function!(this: this, arguments: [blob.jsValue, encoding?.jsValue ?? .undefined]) + return this[Strings.getContext].function!(this: this, arguments: [contextId.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public func readAsDataURL(blob: Blob) { + @inlinable public func toDataURL(type: String? = nil, quality: JSValue? = nil) -> String { let this = jsObject - _ = this[Strings.readAsDataURL].function!(this: this, arguments: [blob.jsValue]) + return this[Strings.toDataURL].function!(this: this, arguments: [type?.jsValue ?? .undefined, quality?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public func abort() { + // XXX: member 'toBlob' is ignored + + @inlinable public func transferControlToOffscreen() -> OffscreenCanvas { let this = jsObject - _ = this[Strings.abort].function!(this: this, arguments: []) + return this[Strings.transferControlToOffscreen].function!(this: this, arguments: []).fromJSValue()! } +} - public static let EMPTY: UInt16 = 0 - - public static let LOADING: UInt16 = 1 - - public static let DONE: UInt16 = 2 +public class HTMLCollection: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.HTMLCollection].function! } - @ReadonlyAttribute - public var readyState: UInt16 + public let jsObject: JSObject - @ReadonlyAttribute - public var result: ArrayBuffer_or_String? + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + self.jsObject = jsObject + } @ReadonlyAttribute - public var error: DOMException? + public var length: UInt32 - @ClosureAttribute1Optional - public var onloadstart: EventHandler + @inlinable public subscript(key: Int) -> Element? { + jsObject[key].fromJSValue() + } - @ClosureAttribute1Optional - public var onprogress: EventHandler + @inlinable public subscript(key: String) -> Element? { + jsObject[key].fromJSValue() + } +} - @ClosureAttribute1Optional - public var onload: EventHandler +public class HTMLDListElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDListElement].function! } - @ClosureAttribute1Optional - public var onabort: EventHandler + public required init(unsafelyWrapping jsObject: JSObject) { + _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) + super.init(unsafelyWrapping: jsObject) + } - @ClosureAttribute1Optional - public var onerror: EventHandler + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } - @ClosureAttribute1Optional - public var onloadend: EventHandler + @ReadWriteAttribute + public var compact: Bool } -public enum FillMode: JSString, JSValueCompatible { - case none = "none" - case forwards = "forwards" - case backwards = "backwards" - case both = "both" - case auto = "auto" - - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil +public class HTMLDataElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDataElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + super.init(unsafelyWrapping: jsObject) } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable public var jsValue: JSValue { rawValue.jsValue } + @ReadWriteAttribute + public var value: String } -public class FocusEvent: UIEvent { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.FocusEvent].function! } +public class HTMLDataListElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDataListElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _relatedTarget = ReadonlyAttribute(jsObject: jsObject, name: Strings.relatedTarget) + _options = ReadonlyAttribute(jsObject: jsObject, name: Strings.options) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init(type: String, eventInitDict: FocusEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadonlyAttribute - public var relatedTarget: EventTarget? + public var options: HTMLCollection } -public class FocusEventInit: BridgedDictionary { - public convenience init(relatedTarget: EventTarget?) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.relatedTarget] = relatedTarget.jsValue - self.init(unsafelyWrapping: object) +public class HTMLDetailsElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDetailsElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _open = ReadWriteAttribute(jsObject: jsObject, name: Strings.open) + super.init(unsafelyWrapping: jsObject) } - public required init(unsafelyWrapping object: JSObject) { - _relatedTarget = ReadWriteAttribute(jsObject: object, name: Strings.relatedTarget) - super.init(unsafelyWrapping: object) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadWriteAttribute - public var relatedTarget: EventTarget? + public var open: Bool } -public class FocusOptions: BridgedDictionary { - public convenience init(preventScroll: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.preventScroll] = preventScroll.jsValue - self.init(unsafelyWrapping: object) +public class HTMLDialogElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDialogElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _open = ReadWriteAttribute(jsObject: jsObject, name: Strings.open) + _returnValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.returnValue) + super.init(unsafelyWrapping: jsObject) } - public required init(unsafelyWrapping object: JSObject) { - _preventScroll = ReadWriteAttribute(jsObject: object, name: Strings.preventScroll) - super.init(unsafelyWrapping: object) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadWriteAttribute - public var preventScroll: Bool -} - -public class FormData: JSBridgedClass, Sequence { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.FormData].function! } + public var open: Bool - public let jsObject: JSObject + @ReadWriteAttribute + public var returnValue: String - public required init(unsafelyWrapping jsObject: JSObject) { - self.jsObject = jsObject + @inlinable public func show() { + let this = jsObject + _ = this[Strings.show].function!(this: this, arguments: []) } - @inlinable public convenience init(form: HTMLFormElement? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [form?.jsValue ?? .undefined])) + @inlinable public func showModal() { + let this = jsObject + _ = this[Strings.showModal].function!(this: this, arguments: []) } - @inlinable public func append(name: String, value: String) { + @inlinable public func close(returnValue: String? = nil) { let this = jsObject - _ = this[Strings.append].function!(this: this, arguments: [name.jsValue, value.jsValue]) + _ = this[Strings.close].function!(this: this, arguments: [returnValue?.jsValue ?? .undefined]) } +} - @inlinable public func append(name: String, blobValue: Blob, filename: String? = nil) { - let this = jsObject - _ = this[Strings.append].function!(this: this, arguments: [name.jsValue, blobValue.jsValue, filename?.jsValue ?? .undefined]) +public class HTMLDirectoryElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDirectoryElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func delete(name: String) { - let this = jsObject - _ = this[Strings.delete].function!(this: this, arguments: [name.jsValue]) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable public func get(name: String) -> FormDataEntryValue? { - let this = jsObject - return this[Strings.get].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + @ReadWriteAttribute + public var compact: Bool +} + +public class HTMLDivElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDivElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func getAll(name: String) -> [FormDataEntryValue] { - let this = jsObject - return this[Strings.getAll].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable public func has(name: String) -> Bool { - let this = jsObject - return this[Strings.has].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + @ReadWriteAttribute + public var align: String +} + +public class HTMLElement: Element, GlobalEventHandlers, DocumentAndElementEventHandlers, ElementContentEditable, HTMLOrSVGElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _title = ReadWriteAttribute(jsObject: jsObject, name: Strings.title) + _lang = ReadWriteAttribute(jsObject: jsObject, name: Strings.lang) + _translate = ReadWriteAttribute(jsObject: jsObject, name: Strings.translate) + _dir = ReadWriteAttribute(jsObject: jsObject, name: Strings.dir) + _hidden = ReadWriteAttribute(jsObject: jsObject, name: Strings.hidden) + _inert = ReadWriteAttribute(jsObject: jsObject, name: Strings.inert) + _accessKey = ReadWriteAttribute(jsObject: jsObject, name: Strings.accessKey) + _accessKeyLabel = ReadonlyAttribute(jsObject: jsObject, name: Strings.accessKeyLabel) + _draggable = ReadWriteAttribute(jsObject: jsObject, name: Strings.draggable) + _spellcheck = ReadWriteAttribute(jsObject: jsObject, name: Strings.spellcheck) + _autocapitalize = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocapitalize) + _innerText = ReadWriteAttribute(jsObject: jsObject, name: Strings.innerText) + _outerText = ReadWriteAttribute(jsObject: jsObject, name: Strings.outerText) + _offsetParent = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetParent) + _offsetTop = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetTop) + _offsetLeft = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetLeft) + _offsetWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetWidth) + _offsetHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetHeight) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func set(name: String, value: String) { - let this = jsObject - _ = this[Strings.set].function!(this: this, arguments: [name.jsValue, value.jsValue]) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable public func set(name: String, blobValue: Blob, filename: String? = nil) { + @ReadWriteAttribute + public var title: String + + @ReadWriteAttribute + public var lang: String + + @ReadWriteAttribute + public var translate: Bool + + @ReadWriteAttribute + public var dir: String + + @ReadWriteAttribute + public var hidden: Bool + + @ReadWriteAttribute + public var inert: Bool + + @inlinable public func click() { let this = jsObject - _ = this[Strings.set].function!(this: this, arguments: [name.jsValue, blobValue.jsValue, filename?.jsValue ?? .undefined]) + _ = this[Strings.click].function!(this: this, arguments: []) } - public typealias Element = String - public func makeIterator() -> ValueIterableIterator { - ValueIterableIterator(sequence: self) + @ReadWriteAttribute + public var accessKey: String + + @ReadonlyAttribute + public var accessKeyLabel: String + + @ReadWriteAttribute + public var draggable: Bool + + @ReadWriteAttribute + public var spellcheck: Bool + + @ReadWriteAttribute + public var autocapitalize: String + + @ReadWriteAttribute + public var innerText: String + + @ReadWriteAttribute + public var outerText: String + + @inlinable public func attachInternals() -> ElementInternals { + let this = jsObject + return this[Strings.attachInternals].function!(this: this, arguments: []).fromJSValue()! } + + @ReadonlyAttribute + public var offsetParent: Element? + + @ReadonlyAttribute + public var offsetTop: Int32 + + @ReadonlyAttribute + public var offsetLeft: Int32 + + @ReadonlyAttribute + public var offsetWidth: Int32 + + @ReadonlyAttribute + public var offsetHeight: Int32 } -public class FormDataEvent: Event { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.FormDataEvent].function! } +public class HTMLEmbedElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLEmbedElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _formData = ReadonlyAttribute(jsObject: jsObject, name: Strings.formData) + _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init(type: String, eventInitDict: FormDataEventInit) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict.jsValue])) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadonlyAttribute - public var formData: FormData -} + @ReadWriteAttribute + public var src: String -public class FormDataEventInit: BridgedDictionary { - public convenience init(formData: FormData) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.formData] = formData.jsValue - self.init(unsafelyWrapping: object) - } + @ReadWriteAttribute + public var type: String - public required init(unsafelyWrapping object: JSObject) { - _formData = ReadWriteAttribute(jsObject: object, name: Strings.formData) - super.init(unsafelyWrapping: object) + @ReadWriteAttribute + public var width: String + + @ReadWriteAttribute + public var height: String + + @inlinable public func getSVGDocument() -> Document? { + let this = jsObject + return this[Strings.getSVGDocument].function!(this: this, arguments: []).fromJSValue()! } @ReadWriteAttribute - public var formData: FormData + public var align: String + + @ReadWriteAttribute + public var name: String } -public enum FrameType: JSString, JSValueCompatible { - case auxiliary = "auxiliary" - case topLevel = "top-level" - case nested = "nested" - case none = "none" +public class HTMLFieldSetElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFieldSetElement].function! } - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + public required init(unsafelyWrapping jsObject: JSObject) { + _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) + _elements = ReadonlyAttribute(jsObject: jsObject, name: Strings.elements) + _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) + _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) + _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) + super.init(unsafelyWrapping: jsObject) } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} + @ReadWriteAttribute + public var disabled: Bool -public protocol GenericTransformStream: JSBridgedClass {} -public extension GenericTransformStream { - @inlinable var readable: ReadableStream { ReadonlyAttribute[Strings.readable, in: jsObject] } + @ReadonlyAttribute + public var form: HTMLFormElement? - @inlinable var writable: WritableStream { ReadonlyAttribute[Strings.writable, in: jsObject] } -} + @ReadWriteAttribute + public var name: String -public protocol GeometryUtils: JSBridgedClass {} -public extension GeometryUtils { - @inlinable func getBoxQuads(options: BoxQuadOptions? = nil) -> [DOMQuad] { - let this = jsObject - return this[Strings.getBoxQuads].function!(this: this, arguments: [options?.jsValue ?? .undefined]).fromJSValue()! - } + @ReadonlyAttribute + public var type: String - @inlinable func convertQuadFromNode(quad: DOMQuadInit, from: GeometryNode, options: ConvertCoordinateOptions? = nil) -> DOMQuad { + @ReadonlyAttribute + public var elements: HTMLCollection + + @ReadonlyAttribute + public var willValidate: Bool + + @ReadonlyAttribute + public var validity: ValidityState + + @ReadonlyAttribute + public var validationMessage: String + + @inlinable public func checkValidity() -> Bool { let this = jsObject - return this[Strings.convertQuadFromNode].function!(this: this, arguments: [quad.jsValue, from.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func convertRectFromNode(rect: DOMRectReadOnly, from: GeometryNode, options: ConvertCoordinateOptions? = nil) -> DOMQuad { + @inlinable public func reportValidity() -> Bool { let this = jsObject - return this[Strings.convertRectFromNode].function!(this: this, arguments: [rect.jsValue, from.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func convertPointFromNode(point: DOMPointInit, from: GeometryNode, options: ConvertCoordinateOptions? = nil) -> DOMPoint { + @inlinable public func setCustomValidity(error: String) { let this = jsObject - return this[Strings.convertPointFromNode].function!(this: this, arguments: [point.jsValue, from.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) } } -public class GetAnimationsOptions: BridgedDictionary { - public convenience init(subtree: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.subtree] = subtree.jsValue - self.init(unsafelyWrapping: object) +public class HTMLFontElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFontElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _color = ReadWriteAttribute(jsObject: jsObject, name: Strings.color) + _face = ReadWriteAttribute(jsObject: jsObject, name: Strings.face) + _size = ReadWriteAttribute(jsObject: jsObject, name: Strings.size) + super.init(unsafelyWrapping: jsObject) } - public required init(unsafelyWrapping object: JSObject) { - _subtree = ReadWriteAttribute(jsObject: object, name: Strings.subtree) - super.init(unsafelyWrapping: object) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadWriteAttribute - public var subtree: Bool -} - -public class GetRootNodeOptions: BridgedDictionary { - public convenience init(composed: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.composed] = composed.jsValue - self.init(unsafelyWrapping: object) - } + public var color: String - public required init(unsafelyWrapping object: JSObject) { - _composed = ReadWriteAttribute(jsObject: object, name: Strings.composed) - super.init(unsafelyWrapping: object) - } + @ReadWriteAttribute + public var face: String @ReadWriteAttribute - public var composed: Bool + public var size: String } -public protocol GlobalEventHandlers: JSBridgedClass {} -public extension GlobalEventHandlers { - @inlinable var onabort: EventHandler { - get { ClosureAttribute1Optional[Strings.onabort, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onabort, in: jsObject] = newValue } - } - - @inlinable var onauxclick: EventHandler { - get { ClosureAttribute1Optional[Strings.onauxclick, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onauxclick, in: jsObject] = newValue } - } - - @inlinable var onblur: EventHandler { - get { ClosureAttribute1Optional[Strings.onblur, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onblur, in: jsObject] = newValue } - } - - @inlinable var oncancel: EventHandler { - get { ClosureAttribute1Optional[Strings.oncancel, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncancel, in: jsObject] = newValue } - } +public class HTMLFormControlsCollection: HTMLCollection { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFormControlsCollection].function! } - @inlinable var oncanplay: EventHandler { - get { ClosureAttribute1Optional[Strings.oncanplay, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncanplay, in: jsObject] = newValue } + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) } - @inlinable var oncanplaythrough: EventHandler { - get { ClosureAttribute1Optional[Strings.oncanplaythrough, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncanplaythrough, in: jsObject] = newValue } + @inlinable public subscript(key: String) -> Element_or_RadioNodeList? { + jsObject[key].fromJSValue() } +} - @inlinable var onchange: EventHandler { - get { ClosureAttribute1Optional[Strings.onchange, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onchange, in: jsObject] = newValue } - } +public class HTMLFormElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFormElement].function! } - @inlinable var onclick: EventHandler { - get { ClosureAttribute1Optional[Strings.onclick, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onclick, in: jsObject] = newValue } + public required init(unsafelyWrapping jsObject: JSObject) { + _acceptCharset = ReadWriteAttribute(jsObject: jsObject, name: Strings.acceptCharset) + _action = ReadWriteAttribute(jsObject: jsObject, name: Strings.action) + _autocomplete = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocomplete) + _enctype = ReadWriteAttribute(jsObject: jsObject, name: Strings.enctype) + _encoding = ReadWriteAttribute(jsObject: jsObject, name: Strings.encoding) + _method = ReadWriteAttribute(jsObject: jsObject, name: Strings.method) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _noValidate = ReadWriteAttribute(jsObject: jsObject, name: Strings.noValidate) + _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) + _rel = ReadWriteAttribute(jsObject: jsObject, name: Strings.rel) + _relList = ReadonlyAttribute(jsObject: jsObject, name: Strings.relList) + _elements = ReadonlyAttribute(jsObject: jsObject, name: Strings.elements) + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + super.init(unsafelyWrapping: jsObject) } - @inlinable var onclose: EventHandler { - get { ClosureAttribute1Optional[Strings.onclose, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onclose, in: jsObject] = newValue } + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable var oncontextlost: EventHandler { - get { ClosureAttribute1Optional[Strings.oncontextlost, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncontextlost, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var acceptCharset: String - @inlinable var oncontextmenu: EventHandler { - get { ClosureAttribute1Optional[Strings.oncontextmenu, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncontextmenu, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var action: String - @inlinable var oncontextrestored: EventHandler { - get { ClosureAttribute1Optional[Strings.oncontextrestored, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncontextrestored, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var autocomplete: String - @inlinable var oncuechange: EventHandler { - get { ClosureAttribute1Optional[Strings.oncuechange, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oncuechange, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var enctype: String - @inlinable var ondblclick: EventHandler { - get { ClosureAttribute1Optional[Strings.ondblclick, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondblclick, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var encoding: String - @inlinable var ondrag: EventHandler { - get { ClosureAttribute1Optional[Strings.ondrag, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondrag, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var method: String - @inlinable var ondragend: EventHandler { - get { ClosureAttribute1Optional[Strings.ondragend, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondragend, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var name: String - @inlinable var ondragenter: EventHandler { - get { ClosureAttribute1Optional[Strings.ondragenter, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondragenter, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var noValidate: Bool - @inlinable var ondragleave: EventHandler { - get { ClosureAttribute1Optional[Strings.ondragleave, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondragleave, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var target: String - @inlinable var ondragover: EventHandler { - get { ClosureAttribute1Optional[Strings.ondragover, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondragover, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var rel: String - @inlinable var ondragstart: EventHandler { - get { ClosureAttribute1Optional[Strings.ondragstart, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondragstart, in: jsObject] = newValue } - } + @ReadonlyAttribute + public var relList: DOMTokenList - @inlinable var ondrop: EventHandler { - get { ClosureAttribute1Optional[Strings.ondrop, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondrop, in: jsObject] = newValue } - } + @ReadonlyAttribute + public var elements: HTMLFormControlsCollection - @inlinable var ondurationchange: EventHandler { - get { ClosureAttribute1Optional[Strings.ondurationchange, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ondurationchange, in: jsObject] = newValue } - } + @ReadonlyAttribute + public var length: UInt32 - @inlinable var onemptied: EventHandler { - get { ClosureAttribute1Optional[Strings.onemptied, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onemptied, in: jsObject] = newValue } + @inlinable public subscript(key: Int) -> Element { + jsObject[key].fromJSValue()! } - @inlinable var onended: EventHandler { - get { ClosureAttribute1Optional[Strings.onended, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onended, in: jsObject] = newValue } + @inlinable public subscript(key: String) -> Element_or_RadioNodeList { + jsObject[key].fromJSValue()! } - @inlinable var onerror: OnErrorEventHandler { - get { ClosureAttribute5Optional[Strings.onerror, in: jsObject] } - nonmutating set { ClosureAttribute5Optional[Strings.onerror, in: jsObject] = newValue } + @inlinable public func submit() { + let this = jsObject + _ = this[Strings.submit].function!(this: this, arguments: []) } - @inlinable var onfocus: EventHandler { - get { ClosureAttribute1Optional[Strings.onfocus, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onfocus, in: jsObject] = newValue } + @inlinable public func requestSubmit(submitter: HTMLElement? = nil) { + let this = jsObject + _ = this[Strings.requestSubmit].function!(this: this, arguments: [submitter?.jsValue ?? .undefined]) } - @inlinable var onformdata: EventHandler { - get { ClosureAttribute1Optional[Strings.onformdata, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onformdata, in: jsObject] = newValue } + @inlinable public func reset() { + let this = jsObject + _ = this[Strings.reset].function!(this: this, arguments: []) } - @inlinable var oninput: EventHandler { - get { ClosureAttribute1Optional[Strings.oninput, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oninput, in: jsObject] = newValue } + @inlinable public func checkValidity() -> Bool { + let this = jsObject + return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! } - @inlinable var oninvalid: EventHandler { - get { ClosureAttribute1Optional[Strings.oninvalid, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.oninvalid, in: jsObject] = newValue } + @inlinable public func reportValidity() -> Bool { + let this = jsObject + return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! } +} - @inlinable var onkeydown: EventHandler { - get { ClosureAttribute1Optional[Strings.onkeydown, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onkeydown, in: jsObject] = newValue } - } +public class HTMLFrameElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFrameElement].function! } - @inlinable var onkeypress: EventHandler { - get { ClosureAttribute1Optional[Strings.onkeypress, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onkeypress, in: jsObject] = newValue } + public required init(unsafelyWrapping jsObject: JSObject) { + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _scrolling = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrolling) + _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) + _frameBorder = ReadWriteAttribute(jsObject: jsObject, name: Strings.frameBorder) + _longDesc = ReadWriteAttribute(jsObject: jsObject, name: Strings.longDesc) + _noResize = ReadWriteAttribute(jsObject: jsObject, name: Strings.noResize) + _contentDocument = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentDocument) + _contentWindow = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentWindow) + _marginHeight = ReadWriteAttribute(jsObject: jsObject, name: Strings.marginHeight) + _marginWidth = ReadWriteAttribute(jsObject: jsObject, name: Strings.marginWidth) + super.init(unsafelyWrapping: jsObject) } - @inlinable var onkeyup: EventHandler { - get { ClosureAttribute1Optional[Strings.onkeyup, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onkeyup, in: jsObject] = newValue } + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable var onload: EventHandler { - get { ClosureAttribute1Optional[Strings.onload, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onload, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var name: String - @inlinable var onloadeddata: EventHandler { - get { ClosureAttribute1Optional[Strings.onloadeddata, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onloadeddata, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var scrolling: String - @inlinable var onloadedmetadata: EventHandler { - get { ClosureAttribute1Optional[Strings.onloadedmetadata, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onloadedmetadata, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var src: String - @inlinable var onloadstart: EventHandler { - get { ClosureAttribute1Optional[Strings.onloadstart, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onloadstart, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var frameBorder: String - @inlinable var onmousedown: EventHandler { - get { ClosureAttribute1Optional[Strings.onmousedown, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onmousedown, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var longDesc: String - @inlinable var onmouseenter: EventHandler { - get { ClosureAttribute1Optional[Strings.onmouseenter, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onmouseenter, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var noResize: Bool - @inlinable var onmouseleave: EventHandler { - get { ClosureAttribute1Optional[Strings.onmouseleave, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onmouseleave, in: jsObject] = newValue } - } + @ReadonlyAttribute + public var contentDocument: Document? - @inlinable var onmousemove: EventHandler { - get { ClosureAttribute1Optional[Strings.onmousemove, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onmousemove, in: jsObject] = newValue } - } + @ReadonlyAttribute + public var contentWindow: WindowProxy? - @inlinable var onmouseout: EventHandler { - get { ClosureAttribute1Optional[Strings.onmouseout, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onmouseout, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var marginHeight: String - @inlinable var onmouseover: EventHandler { - get { ClosureAttribute1Optional[Strings.onmouseover, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onmouseover, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var marginWidth: String +} - @inlinable var onmouseup: EventHandler { - get { ClosureAttribute1Optional[Strings.onmouseup, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onmouseup, in: jsObject] = newValue } - } +public class HTMLFrameSetElement: HTMLElement, WindowEventHandlers { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFrameSetElement].function! } - @inlinable var onpause: EventHandler { - get { ClosureAttribute1Optional[Strings.onpause, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onpause, in: jsObject] = newValue } + public required init(unsafelyWrapping jsObject: JSObject) { + _cols = ReadWriteAttribute(jsObject: jsObject, name: Strings.cols) + _rows = ReadWriteAttribute(jsObject: jsObject, name: Strings.rows) + super.init(unsafelyWrapping: jsObject) } - @inlinable var onplay: EventHandler { - get { ClosureAttribute1Optional[Strings.onplay, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onplay, in: jsObject] = newValue } + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable var onplaying: EventHandler { - get { ClosureAttribute1Optional[Strings.onplaying, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onplaying, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var cols: String - @inlinable var onprogress: EventHandler { - get { ClosureAttribute1Optional[Strings.onprogress, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onprogress, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var rows: String +} - @inlinable var onratechange: EventHandler { - get { ClosureAttribute1Optional[Strings.onratechange, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onratechange, in: jsObject] = newValue } - } +public class HTMLHRElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLHRElement].function! } - @inlinable var onreset: EventHandler { - get { ClosureAttribute1Optional[Strings.onreset, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onreset, in: jsObject] = newValue } + public required init(unsafelyWrapping jsObject: JSObject) { + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _color = ReadWriteAttribute(jsObject: jsObject, name: Strings.color) + _noShade = ReadWriteAttribute(jsObject: jsObject, name: Strings.noShade) + _size = ReadWriteAttribute(jsObject: jsObject, name: Strings.size) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + super.init(unsafelyWrapping: jsObject) } - @inlinable var onresize: EventHandler { - get { ClosureAttribute1Optional[Strings.onresize, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onresize, in: jsObject] = newValue } + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable var onscroll: EventHandler { - get { ClosureAttribute1Optional[Strings.onscroll, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onscroll, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var align: String - @inlinable var onsecuritypolicyviolation: EventHandler { - get { ClosureAttribute1Optional[Strings.onsecuritypolicyviolation, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onsecuritypolicyviolation, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var color: String - @inlinable var onseeked: EventHandler { - get { ClosureAttribute1Optional[Strings.onseeked, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onseeked, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var noShade: Bool - @inlinable var onseeking: EventHandler { - get { ClosureAttribute1Optional[Strings.onseeking, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onseeking, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var size: String - @inlinable var onselect: EventHandler { - get { ClosureAttribute1Optional[Strings.onselect, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onselect, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var width: String +} - @inlinable var onslotchange: EventHandler { - get { ClosureAttribute1Optional[Strings.onslotchange, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onslotchange, in: jsObject] = newValue } - } +public class HTMLHeadElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLHeadElement].function! } - @inlinable var onstalled: EventHandler { - get { ClosureAttribute1Optional[Strings.onstalled, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onstalled, in: jsObject] = newValue } + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) } - @inlinable var onsubmit: EventHandler { - get { ClosureAttribute1Optional[Strings.onsubmit, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onsubmit, in: jsObject] = newValue } + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } +} - @inlinable var onsuspend: EventHandler { - get { ClosureAttribute1Optional[Strings.onsuspend, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onsuspend, in: jsObject] = newValue } - } +public class HTMLHeadingElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLHeadingElement].function! } - @inlinable var ontimeupdate: EventHandler { - get { ClosureAttribute1Optional[Strings.ontimeupdate, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ontimeupdate, in: jsObject] = newValue } + public required init(unsafelyWrapping jsObject: JSObject) { + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + super.init(unsafelyWrapping: jsObject) } - @inlinable var ontoggle: EventHandler { - get { ClosureAttribute1Optional[Strings.ontoggle, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.ontoggle, in: jsObject] = newValue } + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable var onvolumechange: EventHandler { - get { ClosureAttribute1Optional[Strings.onvolumechange, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onvolumechange, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var align: String +} - @inlinable var onwaiting: EventHandler { - get { ClosureAttribute1Optional[Strings.onwaiting, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onwaiting, in: jsObject] = newValue } +public class HTMLHtmlElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLHtmlElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _version = ReadWriteAttribute(jsObject: jsObject, name: Strings.version) + super.init(unsafelyWrapping: jsObject) } - @inlinable var onwebkitanimationend: EventHandler { - get { ClosureAttribute1Optional[Strings.onwebkitanimationend, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onwebkitanimationend, in: jsObject] = newValue } + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @inlinable var onwebkitanimationiteration: EventHandler { - get { ClosureAttribute1Optional[Strings.onwebkitanimationiteration, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onwebkitanimationiteration, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var version: String +} - @inlinable var onwebkitanimationstart: EventHandler { - get { ClosureAttribute1Optional[Strings.onwebkitanimationstart, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onwebkitanimationstart, in: jsObject] = newValue } +public protocol HTMLHyperlinkElementUtils: JSBridgedClass {} +public extension HTMLHyperlinkElementUtils { + @inlinable var href: String { + get { ReadWriteAttribute[Strings.href, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.href, in: jsObject] = newValue } } - @inlinable var onwebkittransitionend: EventHandler { - get { ClosureAttribute1Optional[Strings.onwebkittransitionend, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onwebkittransitionend, in: jsObject] = newValue } + @inlinable var origin: String { ReadonlyAttribute[Strings.origin, in: jsObject] } + + @inlinable var `protocol`: String { + get { ReadWriteAttribute[Strings.protocol, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.protocol, in: jsObject] = newValue } } - @inlinable var onwheel: EventHandler { - get { ClosureAttribute1Optional[Strings.onwheel, in: jsObject] } - nonmutating set { ClosureAttribute1Optional[Strings.onwheel, in: jsObject] = newValue } + @inlinable var username: String { + get { ReadWriteAttribute[Strings.username, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.username, in: jsObject] = newValue } } -} -public class HTMLAllCollection: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.HTMLAllCollection].function! } + @inlinable var password: String { + get { ReadWriteAttribute[Strings.password, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.password, in: jsObject] = newValue } + } - public let jsObject: JSObject + @inlinable var host: String { + get { ReadWriteAttribute[Strings.host, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.host, in: jsObject] = newValue } + } - public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - self.jsObject = jsObject + @inlinable var hostname: String { + get { ReadWriteAttribute[Strings.hostname, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.hostname, in: jsObject] = newValue } } - @ReadonlyAttribute - public var length: UInt32 + @inlinable var port: String { + get { ReadWriteAttribute[Strings.port, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.port, in: jsObject] = newValue } + } - @inlinable public subscript(key: Int) -> Element { - jsObject[key].fromJSValue()! + @inlinable var pathname: String { + get { ReadWriteAttribute[Strings.pathname, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.pathname, in: jsObject] = newValue } } - @inlinable public subscript(key: String) -> Element_or_HTMLCollection? { - jsObject[key].fromJSValue() + @inlinable var search: String { + get { ReadWriteAttribute[Strings.search, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.search, in: jsObject] = newValue } } - @inlinable public func item(nameOrIndex: String? = nil) -> Element_or_HTMLCollection? { - let this = jsObject - return this[Strings.item].function!(this: this, arguments: [nameOrIndex?.jsValue ?? .undefined]).fromJSValue()! + @inlinable var hash: String { + get { ReadWriteAttribute[Strings.hash, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.hash, in: jsObject] = newValue } } } -public class HTMLAnchorElement: HTMLElement, HTMLHyperlinkElementUtils { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLAnchorElement].function! } +public class HTMLIFrameElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLIFrameElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) - _download = ReadWriteAttribute(jsObject: jsObject, name: Strings.download) - _ping = ReadWriteAttribute(jsObject: jsObject, name: Strings.ping) - _rel = ReadWriteAttribute(jsObject: jsObject, name: Strings.rel) - _relList = ReadonlyAttribute(jsObject: jsObject, name: Strings.relList) - _hreflang = ReadWriteAttribute(jsObject: jsObject, name: Strings.hreflang) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) - _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) - _coords = ReadWriteAttribute(jsObject: jsObject, name: Strings.coords) - _charset = ReadWriteAttribute(jsObject: jsObject, name: Strings.charset) + _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) + _srcdoc = ReadWriteAttribute(jsObject: jsObject, name: Strings.srcdoc) _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _rev = ReadWriteAttribute(jsObject: jsObject, name: Strings.rev) - _shape = ReadWriteAttribute(jsObject: jsObject, name: Strings.shape) + _sandbox = ReadonlyAttribute(jsObject: jsObject, name: Strings.sandbox) + _allow = ReadWriteAttribute(jsObject: jsObject, name: Strings.allow) + _allowFullscreen = ReadWriteAttribute(jsObject: jsObject, name: Strings.allowFullscreen) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) + _loading = ReadWriteAttribute(jsObject: jsObject, name: Strings.loading) + _contentDocument = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentDocument) + _contentWindow = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentWindow) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _scrolling = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrolling) + _frameBorder = ReadWriteAttribute(jsObject: jsObject, name: Strings.frameBorder) + _longDesc = ReadWriteAttribute(jsObject: jsObject, name: Strings.longDesc) + _marginHeight = ReadWriteAttribute(jsObject: jsObject, name: Strings.marginHeight) + _marginWidth = ReadWriteAttribute(jsObject: jsObject, name: Strings.marginWidth) super.init(unsafelyWrapping: jsObject) } @@ -5977,62 +8520,94 @@ public class HTMLAnchorElement: HTMLElement, HTMLHyperlinkElementUtils { } @ReadWriteAttribute - public var target: String - - @ReadWriteAttribute - public var download: String + public var src: String @ReadWriteAttribute - public var ping: String + public var srcdoc: String @ReadWriteAttribute - public var rel: String + public var name: String @ReadonlyAttribute - public var relList: DOMTokenList + public var sandbox: DOMTokenList @ReadWriteAttribute - public var hreflang: String + public var allow: String @ReadWriteAttribute - public var type: String + public var allowFullscreen: Bool @ReadWriteAttribute - public var text: String + public var width: String + + @ReadWriteAttribute + public var height: String @ReadWriteAttribute public var referrerPolicy: String @ReadWriteAttribute - public var coords: String + public var loading: String + + @ReadonlyAttribute + public var contentDocument: Document? + + @ReadonlyAttribute + public var contentWindow: WindowProxy? + + @inlinable public func getSVGDocument() -> Document? { + let this = jsObject + return this[Strings.getSVGDocument].function!(this: this, arguments: []).fromJSValue()! + } @ReadWriteAttribute - public var charset: String + public var align: String @ReadWriteAttribute - public var name: String + public var scrolling: String @ReadWriteAttribute - public var rev: String + public var frameBorder: String @ReadWriteAttribute - public var shape: String + public var longDesc: String + + @ReadWriteAttribute + public var marginHeight: String + + @ReadWriteAttribute + public var marginWidth: String } -public class HTMLAreaElement: HTMLElement, HTMLHyperlinkElementUtils { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLAreaElement].function! } +public class HTMLImageElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLImageElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { _alt = ReadWriteAttribute(jsObject: jsObject, name: Strings.alt) - _coords = ReadWriteAttribute(jsObject: jsObject, name: Strings.coords) - _shape = ReadWriteAttribute(jsObject: jsObject, name: Strings.shape) - _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) - _download = ReadWriteAttribute(jsObject: jsObject, name: Strings.download) - _ping = ReadWriteAttribute(jsObject: jsObject, name: Strings.ping) - _rel = ReadWriteAttribute(jsObject: jsObject, name: Strings.rel) - _relList = ReadonlyAttribute(jsObject: jsObject, name: Strings.relList) + _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) + _srcset = ReadWriteAttribute(jsObject: jsObject, name: Strings.srcset) + _sizes = ReadWriteAttribute(jsObject: jsObject, name: Strings.sizes) + _crossOrigin = ReadWriteAttribute(jsObject: jsObject, name: Strings.crossOrigin) + _useMap = ReadWriteAttribute(jsObject: jsObject, name: Strings.useMap) + _isMap = ReadWriteAttribute(jsObject: jsObject, name: Strings.isMap) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _naturalWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.naturalWidth) + _naturalHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.naturalHeight) + _complete = ReadonlyAttribute(jsObject: jsObject, name: Strings.complete) + _currentSrc = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentSrc) _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) - _noHref = ReadWriteAttribute(jsObject: jsObject, name: Strings.noHref) + _decoding = ReadWriteAttribute(jsObject: jsObject, name: Strings.decoding) + _loading = ReadWriteAttribute(jsObject: jsObject, name: Strings.loading) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _lowsrc = ReadWriteAttribute(jsObject: jsObject, name: Strings.lowsrc) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _hspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.hspace) + _vspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.vspace) + _longDesc = ReadWriteAttribute(jsObject: jsObject, name: Strings.longDesc) + _border = ReadWriteAttribute(jsObject: jsObject, name: Strings.border) + _x = ReadonlyAttribute(jsObject: jsObject, name: Strings.x) + _y = ReadonlyAttribute(jsObject: jsObject, name: Strings.y) super.init(unsafelyWrapping: jsObject) } @@ -6044,135 +8619,139 @@ public class HTMLAreaElement: HTMLElement, HTMLHyperlinkElementUtils { public var alt: String @ReadWriteAttribute - public var coords: String + public var src: String @ReadWriteAttribute - public var shape: String + public var srcset: String @ReadWriteAttribute - public var target: String + public var sizes: String @ReadWriteAttribute - public var download: String + public var crossOrigin: String? @ReadWriteAttribute - public var ping: String + public var useMap: String @ReadWriteAttribute - public var rel: String - - @ReadonlyAttribute - public var relList: DOMTokenList + public var isMap: Bool @ReadWriteAttribute - public var referrerPolicy: String + public var width: UInt32 @ReadWriteAttribute - public var noHref: Bool -} - -public class HTMLAudioElement: HTMLMediaElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLAudioElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) - } - - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } -} - -public class HTMLBRElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLBRElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _clear = ReadWriteAttribute(jsObject: jsObject, name: Strings.clear) - super.init(unsafelyWrapping: jsObject) - } - - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + public var height: UInt32 - @ReadWriteAttribute - public var clear: String -} + @ReadonlyAttribute + public var naturalWidth: UInt32 -public class HTMLBaseElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLBaseElement].function! } + @ReadonlyAttribute + public var naturalHeight: UInt32 - public required init(unsafelyWrapping jsObject: JSObject) { - _href = ReadWriteAttribute(jsObject: jsObject, name: Strings.href) - _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) - super.init(unsafelyWrapping: jsObject) - } + @ReadonlyAttribute + public var complete: Bool - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadonlyAttribute + public var currentSrc: String @ReadWriteAttribute - public var href: String + public var referrerPolicy: String @ReadWriteAttribute - public var target: String -} + public var decoding: String -public class HTMLBodyElement: HTMLElement, WindowEventHandlers { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLBodyElement].function! } + @ReadWriteAttribute + public var loading: String - public required init(unsafelyWrapping jsObject: JSObject) { - _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) - _link = ReadWriteAttribute(jsObject: jsObject, name: Strings.link) - _vLink = ReadWriteAttribute(jsObject: jsObject, name: Strings.vLink) - _aLink = ReadWriteAttribute(jsObject: jsObject, name: Strings.aLink) - _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) - _background = ReadWriteAttribute(jsObject: jsObject, name: Strings.background) - super.init(unsafelyWrapping: jsObject) + @inlinable public func decode() -> JSPromise { + let this = jsObject + return this[Strings.decode].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func decode() async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.decode].function!(this: this, arguments: []).fromJSValue()! + _ = try await _promise.value } @ReadWriteAttribute - public var text: String + public var name: String @ReadWriteAttribute - public var link: String + public var lowsrc: String @ReadWriteAttribute - public var vLink: String + public var align: String @ReadWriteAttribute - public var aLink: String + public var hspace: UInt32 @ReadWriteAttribute - public var bgColor: String + public var vspace: UInt32 @ReadWriteAttribute - public var background: String + public var longDesc: String + + @ReadWriteAttribute + public var border: String + + @ReadonlyAttribute + public var x: Int32 + + @ReadonlyAttribute + public var y: Int32 } -public class HTMLButtonElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLButtonElement].function! } +public class HTMLInputElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLInputElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { + _accept = ReadWriteAttribute(jsObject: jsObject, name: Strings.accept) + _alt = ReadWriteAttribute(jsObject: jsObject, name: Strings.alt) + _autocomplete = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocomplete) + _defaultChecked = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultChecked) + _checked = ReadWriteAttribute(jsObject: jsObject, name: Strings.checked) + _dirName = ReadWriteAttribute(jsObject: jsObject, name: Strings.dirName) _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) + _files = ReadWriteAttribute(jsObject: jsObject, name: Strings.files) _formAction = ReadWriteAttribute(jsObject: jsObject, name: Strings.formAction) _formEnctype = ReadWriteAttribute(jsObject: jsObject, name: Strings.formEnctype) _formMethod = ReadWriteAttribute(jsObject: jsObject, name: Strings.formMethod) _formNoValidate = ReadWriteAttribute(jsObject: jsObject, name: Strings.formNoValidate) _formTarget = ReadWriteAttribute(jsObject: jsObject, name: Strings.formTarget) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _indeterminate = ReadWriteAttribute(jsObject: jsObject, name: Strings.indeterminate) + _list = ReadonlyAttribute(jsObject: jsObject, name: Strings.list) + _max = ReadWriteAttribute(jsObject: jsObject, name: Strings.max) + _maxLength = ReadWriteAttribute(jsObject: jsObject, name: Strings.maxLength) + _min = ReadWriteAttribute(jsObject: jsObject, name: Strings.min) + _minLength = ReadWriteAttribute(jsObject: jsObject, name: Strings.minLength) + _multiple = ReadWriteAttribute(jsObject: jsObject, name: Strings.multiple) _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _pattern = ReadWriteAttribute(jsObject: jsObject, name: Strings.pattern) + _placeholder = ReadWriteAttribute(jsObject: jsObject, name: Strings.placeholder) + _readOnly = ReadWriteAttribute(jsObject: jsObject, name: Strings.readOnly) + _required = ReadWriteAttribute(jsObject: jsObject, name: Strings.required) + _size = ReadWriteAttribute(jsObject: jsObject, name: Strings.size) + _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) + _step = ReadWriteAttribute(jsObject: jsObject, name: Strings.step) _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _defaultValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultValue) _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _valueAsDate = ReadWriteAttribute(jsObject: jsObject, name: Strings.valueAsDate) + _valueAsNumber = ReadWriteAttribute(jsObject: jsObject, name: Strings.valueAsNumber) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) + _selectionStart = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionStart) + _selectionEnd = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionEnd) + _selectionDirection = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionDirection) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _useMap = ReadWriteAttribute(jsObject: jsObject, name: Strings.useMap) super.init(unsafelyWrapping: jsObject) } @@ -6180,12 +8759,33 @@ public class HTMLButtonElement: HTMLElement { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } + @ReadWriteAttribute + public var accept: String + + @ReadWriteAttribute + public var alt: String + + @ReadWriteAttribute + public var autocomplete: String + + @ReadWriteAttribute + public var defaultChecked: Bool + + @ReadWriteAttribute + public var checked: Bool + + @ReadWriteAttribute + public var dirName: String + @ReadWriteAttribute public var disabled: Bool @ReadonlyAttribute public var form: HTMLFormElement? + @ReadWriteAttribute + public var files: FileList? + @ReadWriteAttribute public var formAction: String @@ -6202,221 +8802,155 @@ public class HTMLButtonElement: HTMLElement { public var formTarget: String @ReadWriteAttribute - public var name: String - - @ReadWriteAttribute - public var type: String + public var height: UInt32 @ReadWriteAttribute - public var value: String - - @ReadonlyAttribute - public var willValidate: Bool - - @ReadonlyAttribute - public var validity: ValidityState - - @ReadonlyAttribute - public var validationMessage: String - - @inlinable public func checkValidity() -> Bool { - let this = jsObject - return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! - } - - @inlinable public func reportValidity() -> Bool { - let this = jsObject - return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! - } - - @inlinable public func setCustomValidity(error: String) { - let this = jsObject - _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) - } + public var indeterminate: Bool @ReadonlyAttribute - public var labels: NodeList -} - -public class HTMLCanvasElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLCanvasElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) - super.init(unsafelyWrapping: jsObject) - } - - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + public var list: HTMLElement? @ReadWriteAttribute - public var width: UInt32 + public var max: String @ReadWriteAttribute - public var height: UInt32 - - @inlinable public func getContext(contextId: String, options: JSValue? = nil) -> RenderingContext? { - let this = jsObject - return this[Strings.getContext].function!(this: this, arguments: [contextId.jsValue, options?.jsValue ?? .undefined]).fromJSValue()! - } - - @inlinable public func toDataURL(type: String? = nil, quality: JSValue? = nil) -> String { - let this = jsObject - return this[Strings.toDataURL].function!(this: this, arguments: [type?.jsValue ?? .undefined, quality?.jsValue ?? .undefined]).fromJSValue()! - } + public var maxLength: Int32 - // XXX: member 'toBlob' is ignored + @ReadWriteAttribute + public var min: String - @inlinable public func transferControlToOffscreen() -> OffscreenCanvas { - let this = jsObject - return this[Strings.transferControlToOffscreen].function!(this: this, arguments: []).fromJSValue()! - } -} + @ReadWriteAttribute + public var minLength: Int32 -public class HTMLCollection: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.HTMLCollection].function! } + @ReadWriteAttribute + public var multiple: Bool - public let jsObject: JSObject + @ReadWriteAttribute + public var name: String - public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - self.jsObject = jsObject - } + @ReadWriteAttribute + public var pattern: String - @ReadonlyAttribute - public var length: UInt32 + @ReadWriteAttribute + public var placeholder: String - @inlinable public subscript(key: Int) -> Element? { - jsObject[key].fromJSValue() - } + @ReadWriteAttribute + public var readOnly: Bool - @inlinable public subscript(key: String) -> Element? { - jsObject[key].fromJSValue() - } -} + @ReadWriteAttribute + public var required: Bool -public class HTMLDListElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDListElement].function! } + @ReadWriteAttribute + public var size: UInt32 - public required init(unsafelyWrapping jsObject: JSObject) { - _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) - super.init(unsafelyWrapping: jsObject) - } + @ReadWriteAttribute + public var src: String - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadWriteAttribute + public var step: String @ReadWriteAttribute - public var compact: Bool -} + public var type: String -public class HTMLDataElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDataElement].function! } + @ReadWriteAttribute + public var defaultValue: String - public required init(unsafelyWrapping jsObject: JSObject) { - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - super.init(unsafelyWrapping: jsObject) - } + @ReadWriteAttribute + public var value: String - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadWriteAttribute + public var valueAsDate: JSObject? @ReadWriteAttribute - public var value: String -} + public var valueAsNumber: Double -public class HTMLDataListElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDataListElement].function! } + @ReadWriteAttribute + public var width: UInt32 - public required init(unsafelyWrapping jsObject: JSObject) { - _options = ReadonlyAttribute(jsObject: jsObject, name: Strings.options) - super.init(unsafelyWrapping: jsObject) + @inlinable public func stepUp(n: Int32? = nil) { + let this = jsObject + _ = this[Strings.stepUp].function!(this: this, arguments: [n?.jsValue ?? .undefined]) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func stepDown(n: Int32? = nil) { + let this = jsObject + _ = this[Strings.stepDown].function!(this: this, arguments: [n?.jsValue ?? .undefined]) } @ReadonlyAttribute - public var options: HTMLCollection -} + public var willValidate: Bool + + @ReadonlyAttribute + public var validity: ValidityState -public class HTMLDetailsElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDetailsElement].function! } + @ReadonlyAttribute + public var validationMessage: String - public required init(unsafelyWrapping jsObject: JSObject) { - _open = ReadWriteAttribute(jsObject: jsObject, name: Strings.open) - super.init(unsafelyWrapping: jsObject) + @inlinable public func checkValidity() -> Bool { + let this = jsObject + return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func reportValidity() -> Bool { + let this = jsObject + return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! } - @ReadWriteAttribute - public var open: Bool -} + @inlinable public func setCustomValidity(error: String) { + let this = jsObject + _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) + } -public class HTMLDialogElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDialogElement].function! } + @ReadonlyAttribute + public var labels: NodeList? - public required init(unsafelyWrapping jsObject: JSObject) { - _open = ReadWriteAttribute(jsObject: jsObject, name: Strings.open) - _returnValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.returnValue) - super.init(unsafelyWrapping: jsObject) + @inlinable public func select() { + let this = jsObject + _ = this[Strings.select].function!(this: this, arguments: []) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadWriteAttribute + public var selectionStart: UInt32? @ReadWriteAttribute - public var open: Bool + public var selectionEnd: UInt32? @ReadWriteAttribute - public var returnValue: String + public var selectionDirection: String? - @inlinable public func show() { + @inlinable public func setRangeText(replacement: String) { let this = jsObject - _ = this[Strings.show].function!(this: this, arguments: []) + _ = this[Strings.setRangeText].function!(this: this, arguments: [replacement.jsValue]) } - @inlinable public func showModal() { + @inlinable public func setRangeText(replacement: String, start: UInt32, end: UInt32, selectionMode: SelectionMode? = nil) { let this = jsObject - _ = this[Strings.showModal].function!(this: this, arguments: []) + _ = this[Strings.setRangeText].function!(this: this, arguments: [replacement.jsValue, start.jsValue, end.jsValue, selectionMode?.jsValue ?? .undefined]) } - @inlinable public func close(returnValue: String? = nil) { + @inlinable public func setSelectionRange(start: UInt32, end: UInt32, direction: String? = nil) { let this = jsObject - _ = this[Strings.close].function!(this: this, arguments: [returnValue?.jsValue ?? .undefined]) + _ = this[Strings.setSelectionRange].function!(this: this, arguments: [start.jsValue, end.jsValue, direction?.jsValue ?? .undefined]) } -} - -public class HTMLDirectoryElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDirectoryElement].function! } - public required init(unsafelyWrapping jsObject: JSObject) { - _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) - super.init(unsafelyWrapping: jsObject) + @inlinable public func showPicker() { + let this = jsObject + _ = this[Strings.showPicker].function!(this: this, arguments: []) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadWriteAttribute + public var align: String @ReadWriteAttribute - public var compact: Bool + public var useMap: String } -public class HTMLDivElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLDivElement].function! } +public class HTMLLIElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLLIElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) super.init(unsafelyWrapping: jsObject) } @@ -6425,31 +8959,19 @@ public class HTMLDivElement: HTMLElement { } @ReadWriteAttribute - public var align: String + public var value: Int32 + + @ReadWriteAttribute + public var type: String } -public class HTMLElement: Element, GlobalEventHandlers, DocumentAndElementEventHandlers, ElementContentEditable, HTMLOrSVGElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLElement].function! } +public class HTMLLabelElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLLabelElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _title = ReadWriteAttribute(jsObject: jsObject, name: Strings.title) - _lang = ReadWriteAttribute(jsObject: jsObject, name: Strings.lang) - _translate = ReadWriteAttribute(jsObject: jsObject, name: Strings.translate) - _dir = ReadWriteAttribute(jsObject: jsObject, name: Strings.dir) - _hidden = ReadWriteAttribute(jsObject: jsObject, name: Strings.hidden) - _inert = ReadWriteAttribute(jsObject: jsObject, name: Strings.inert) - _accessKey = ReadWriteAttribute(jsObject: jsObject, name: Strings.accessKey) - _accessKeyLabel = ReadonlyAttribute(jsObject: jsObject, name: Strings.accessKeyLabel) - _draggable = ReadWriteAttribute(jsObject: jsObject, name: Strings.draggable) - _spellcheck = ReadWriteAttribute(jsObject: jsObject, name: Strings.spellcheck) - _autocapitalize = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocapitalize) - _innerText = ReadWriteAttribute(jsObject: jsObject, name: Strings.innerText) - _outerText = ReadWriteAttribute(jsObject: jsObject, name: Strings.outerText) - _offsetParent = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetParent) - _offsetTop = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetTop) - _offsetLeft = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetLeft) - _offsetWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetWidth) - _offsetHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.offsetHeight) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) + _htmlFor = ReadWriteAttribute(jsObject: jsObject, name: Strings.htmlFor) + _control = ReadonlyAttribute(jsObject: jsObject, name: Strings.control) super.init(unsafelyWrapping: jsObject) } @@ -6457,81 +8979,22 @@ public class HTMLElement: Element, GlobalEventHandlers, DocumentAndElementEventH self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadWriteAttribute - public var title: String - - @ReadWriteAttribute - public var lang: String - - @ReadWriteAttribute - public var translate: Bool - - @ReadWriteAttribute - public var dir: String - - @ReadWriteAttribute - public var hidden: Bool - - @ReadWriteAttribute - public var inert: Bool - - @inlinable public func click() { - let this = jsObject - _ = this[Strings.click].function!(this: this, arguments: []) - } - - @ReadWriteAttribute - public var accessKey: String - @ReadonlyAttribute - public var accessKeyLabel: String - - @ReadWriteAttribute - public var draggable: Bool - - @ReadWriteAttribute - public var spellcheck: Bool - - @ReadWriteAttribute - public var autocapitalize: String - - @ReadWriteAttribute - public var innerText: String + public var form: HTMLFormElement? @ReadWriteAttribute - public var outerText: String - - @inlinable public func attachInternals() -> ElementInternals { - let this = jsObject - return this[Strings.attachInternals].function!(this: this, arguments: []).fromJSValue()! - } - - @ReadonlyAttribute - public var offsetParent: Element? - - @ReadonlyAttribute - public var offsetTop: Int32 - - @ReadonlyAttribute - public var offsetLeft: Int32 - - @ReadonlyAttribute - public var offsetWidth: Int32 + public var htmlFor: String @ReadonlyAttribute - public var offsetHeight: Int32 + public var control: HTMLElement? } -public class HTMLEmbedElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLEmbedElement].function! } +public class HTMLLegendElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLLegendElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) super.init(unsafelyWrapping: jsObject) } @@ -6539,42 +9002,35 @@ public class HTMLEmbedElement: HTMLElement { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadWriteAttribute - public var src: String - - @ReadWriteAttribute - public var type: String - - @ReadWriteAttribute - public var width: String - - @ReadWriteAttribute - public var height: String - - @inlinable public func getSVGDocument() -> Document? { - let this = jsObject - return this[Strings.getSVGDocument].function!(this: this, arguments: []).fromJSValue()! - } + @ReadonlyAttribute + public var form: HTMLFormElement? @ReadWriteAttribute public var align: String - - @ReadWriteAttribute - public var name: String } -public class HTMLFieldSetElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFieldSetElement].function! } +public class HTMLLinkElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLLinkElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { + _href = ReadWriteAttribute(jsObject: jsObject, name: Strings.href) + _crossOrigin = ReadWriteAttribute(jsObject: jsObject, name: Strings.crossOrigin) + _rel = ReadWriteAttribute(jsObject: jsObject, name: Strings.rel) + _as = ReadWriteAttribute(jsObject: jsObject, name: Strings.as) + _relList = ReadonlyAttribute(jsObject: jsObject, name: Strings.relList) + _media = ReadWriteAttribute(jsObject: jsObject, name: Strings.media) + _integrity = ReadWriteAttribute(jsObject: jsObject, name: Strings.integrity) + _hreflang = ReadWriteAttribute(jsObject: jsObject, name: Strings.hreflang) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _sizes = ReadonlyAttribute(jsObject: jsObject, name: Strings.sizes) + _imageSrcset = ReadWriteAttribute(jsObject: jsObject, name: Strings.imageSrcset) + _imageSizes = ReadWriteAttribute(jsObject: jsObject, name: Strings.imageSizes) + _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) + _blocking = ReadonlyAttribute(jsObject: jsObject, name: Strings.blocking) _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) - _elements = ReadonlyAttribute(jsObject: jsObject, name: Strings.elements) - _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) - _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) - _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) + _charset = ReadWriteAttribute(jsObject: jsObject, name: Strings.charset) + _rev = ReadWriteAttribute(jsObject: jsObject, name: Strings.rev) + _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) super.init(unsafelyWrapping: jsObject) } @@ -6583,98 +9039,95 @@ public class HTMLFieldSetElement: HTMLElement { } @ReadWriteAttribute - public var disabled: Bool + public var href: String - @ReadonlyAttribute - public var form: HTMLFormElement? + @ReadWriteAttribute + public var crossOrigin: String? @ReadWriteAttribute - public var name: String + public var rel: String - @ReadonlyAttribute - public var type: String + @ReadWriteAttribute + public var `as`: String @ReadonlyAttribute - public var elements: HTMLCollection + public var relList: DOMTokenList - @ReadonlyAttribute - public var willValidate: Bool + @ReadWriteAttribute + public var media: String + + @ReadWriteAttribute + public var integrity: String + + @ReadWriteAttribute + public var hreflang: String - @ReadonlyAttribute - public var validity: ValidityState + @ReadWriteAttribute + public var type: String @ReadonlyAttribute - public var validationMessage: String - - @inlinable public func checkValidity() -> Bool { - let this = jsObject - return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! - } + public var sizes: DOMTokenList - @inlinable public func reportValidity() -> Bool { - let this = jsObject - return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! - } + @ReadWriteAttribute + public var imageSrcset: String - @inlinable public func setCustomValidity(error: String) { - let this = jsObject - _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) - } -} + @ReadWriteAttribute + public var imageSizes: String -public class HTMLFontElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFontElement].function! } + @ReadWriteAttribute + public var referrerPolicy: String - public required init(unsafelyWrapping jsObject: JSObject) { - _color = ReadWriteAttribute(jsObject: jsObject, name: Strings.color) - _face = ReadWriteAttribute(jsObject: jsObject, name: Strings.face) - _size = ReadWriteAttribute(jsObject: jsObject, name: Strings.size) - super.init(unsafelyWrapping: jsObject) - } + @ReadonlyAttribute + public var blocking: DOMTokenList - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadWriteAttribute + public var disabled: Bool @ReadWriteAttribute - public var color: String + public var charset: String @ReadWriteAttribute - public var face: String + public var rev: String @ReadWriteAttribute - public var size: String + public var target: String } -public class HTMLFormControlsCollection: HTMLCollection { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFormControlsCollection].function! } +public class HTMLMapElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMapElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _areas = ReadonlyAttribute(jsObject: jsObject, name: Strings.areas) super.init(unsafelyWrapping: jsObject) } - @inlinable public subscript(key: String) -> Element_or_RadioNodeList? { - jsObject[key].fromJSValue() + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } + + @ReadWriteAttribute + public var name: String + + @ReadonlyAttribute + public var areas: HTMLCollection } -public class HTMLFormElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFormElement].function! } +public class HTMLMarqueeElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMarqueeElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _acceptCharset = ReadWriteAttribute(jsObject: jsObject, name: Strings.acceptCharset) - _action = ReadWriteAttribute(jsObject: jsObject, name: Strings.action) - _autocomplete = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocomplete) - _enctype = ReadWriteAttribute(jsObject: jsObject, name: Strings.enctype) - _encoding = ReadWriteAttribute(jsObject: jsObject, name: Strings.encoding) - _method = ReadWriteAttribute(jsObject: jsObject, name: Strings.method) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _noValidate = ReadWriteAttribute(jsObject: jsObject, name: Strings.noValidate) - _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) - _rel = ReadWriteAttribute(jsObject: jsObject, name: Strings.rel) - _relList = ReadonlyAttribute(jsObject: jsObject, name: Strings.relList) - _elements = ReadonlyAttribute(jsObject: jsObject, name: Strings.elements) - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + _behavior = ReadWriteAttribute(jsObject: jsObject, name: Strings.behavior) + _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) + _direction = ReadWriteAttribute(jsObject: jsObject, name: Strings.direction) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _hspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.hspace) + _loop = ReadWriteAttribute(jsObject: jsObject, name: Strings.loop) + _scrollAmount = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollAmount) + _scrollDelay = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollDelay) + _trueSpeed = ReadWriteAttribute(jsObject: jsObject, name: Strings.trueSpeed) + _vspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.vspace) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) super.init(unsafelyWrapping: jsObject) } @@ -6683,199 +9136,232 @@ public class HTMLFormElement: HTMLElement { } @ReadWriteAttribute - public var acceptCharset: String + public var behavior: String @ReadWriteAttribute - public var action: String + public var bgColor: String @ReadWriteAttribute - public var autocomplete: String + public var direction: String @ReadWriteAttribute - public var enctype: String + public var height: String @ReadWriteAttribute - public var encoding: String + public var hspace: UInt32 @ReadWriteAttribute - public var method: String + public var loop: Int32 @ReadWriteAttribute - public var name: String + public var scrollAmount: UInt32 @ReadWriteAttribute - public var noValidate: Bool + public var scrollDelay: UInt32 @ReadWriteAttribute - public var target: String + public var trueSpeed: Bool @ReadWriteAttribute - public var rel: String + public var vspace: UInt32 + + @ReadWriteAttribute + public var width: String + + @inlinable public func start() { + let this = jsObject + _ = this[Strings.start].function!(this: this, arguments: []) + } + + @inlinable public func stop() { + let this = jsObject + _ = this[Strings.stop].function!(this: this, arguments: []) + } +} + +public class HTMLMediaElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMediaElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _error = ReadonlyAttribute(jsObject: jsObject, name: Strings.error) + _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) + _currentSrc = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentSrc) + _crossOrigin = ReadWriteAttribute(jsObject: jsObject, name: Strings.crossOrigin) + _networkState = ReadonlyAttribute(jsObject: jsObject, name: Strings.networkState) + _preload = ReadWriteAttribute(jsObject: jsObject, name: Strings.preload) + _buffered = ReadonlyAttribute(jsObject: jsObject, name: Strings.buffered) + _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) + _seeking = ReadonlyAttribute(jsObject: jsObject, name: Strings.seeking) + _currentTime = ReadWriteAttribute(jsObject: jsObject, name: Strings.currentTime) + _duration = ReadonlyAttribute(jsObject: jsObject, name: Strings.duration) + _paused = ReadonlyAttribute(jsObject: jsObject, name: Strings.paused) + _defaultPlaybackRate = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultPlaybackRate) + _playbackRate = ReadWriteAttribute(jsObject: jsObject, name: Strings.playbackRate) + _preservesPitch = ReadWriteAttribute(jsObject: jsObject, name: Strings.preservesPitch) + _played = ReadonlyAttribute(jsObject: jsObject, name: Strings.played) + _seekable = ReadonlyAttribute(jsObject: jsObject, name: Strings.seekable) + _ended = ReadonlyAttribute(jsObject: jsObject, name: Strings.ended) + _autoplay = ReadWriteAttribute(jsObject: jsObject, name: Strings.autoplay) + _loop = ReadWriteAttribute(jsObject: jsObject, name: Strings.loop) + _controls = ReadWriteAttribute(jsObject: jsObject, name: Strings.controls) + _volume = ReadWriteAttribute(jsObject: jsObject, name: Strings.volume) + _muted = ReadWriteAttribute(jsObject: jsObject, name: Strings.muted) + _defaultMuted = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultMuted) + _audioTracks = ReadonlyAttribute(jsObject: jsObject, name: Strings.audioTracks) + _videoTracks = ReadonlyAttribute(jsObject: jsObject, name: Strings.videoTracks) + _textTracks = ReadonlyAttribute(jsObject: jsObject, name: Strings.textTracks) + super.init(unsafelyWrapping: jsObject) + } @ReadonlyAttribute - public var relList: DOMTokenList + public var error: MediaError? + + @ReadWriteAttribute + public var src: String + + // XXX: member 'srcObject' is ignored @ReadonlyAttribute - public var elements: HTMLFormControlsCollection + public var currentSrc: String + + @ReadWriteAttribute + public var crossOrigin: String? + + public static let NETWORK_EMPTY: UInt16 = 0 + + public static let NETWORK_IDLE: UInt16 = 1 + + public static let NETWORK_LOADING: UInt16 = 2 + + public static let NETWORK_NO_SOURCE: UInt16 = 3 @ReadonlyAttribute - public var length: UInt32 + public var networkState: UInt16 - @inlinable public subscript(key: Int) -> Element { - jsObject[key].fromJSValue()! - } + @ReadWriteAttribute + public var preload: String - @inlinable public subscript(key: String) -> Element_or_RadioNodeList { - jsObject[key].fromJSValue()! - } + @ReadonlyAttribute + public var buffered: TimeRanges - @inlinable public func submit() { + @inlinable public func load() { let this = jsObject - _ = this[Strings.submit].function!(this: this, arguments: []) + _ = this[Strings.load].function!(this: this, arguments: []) } - @inlinable public func requestSubmit(submitter: HTMLElement? = nil) { + @inlinable public func canPlayType(type: String) -> CanPlayTypeResult { let this = jsObject - _ = this[Strings.requestSubmit].function!(this: this, arguments: [submitter?.jsValue ?? .undefined]) + return this[Strings.canPlayType].function!(this: this, arguments: [type.jsValue]).fromJSValue()! } - @inlinable public func reset() { - let this = jsObject - _ = this[Strings.reset].function!(this: this, arguments: []) - } + public static let HAVE_NOTHING: UInt16 = 0 - @inlinable public func checkValidity() -> Bool { - let this = jsObject - return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! - } + public static let HAVE_METADATA: UInt16 = 1 - @inlinable public func reportValidity() -> Bool { - let this = jsObject - return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! - } -} + public static let HAVE_CURRENT_DATA: UInt16 = 2 -public class HTMLFrameElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFrameElement].function! } + public static let HAVE_FUTURE_DATA: UInt16 = 3 - public required init(unsafelyWrapping jsObject: JSObject) { - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _scrolling = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrolling) - _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _frameBorder = ReadWriteAttribute(jsObject: jsObject, name: Strings.frameBorder) - _longDesc = ReadWriteAttribute(jsObject: jsObject, name: Strings.longDesc) - _noResize = ReadWriteAttribute(jsObject: jsObject, name: Strings.noResize) - _contentDocument = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentDocument) - _contentWindow = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentWindow) - _marginHeight = ReadWriteAttribute(jsObject: jsObject, name: Strings.marginHeight) - _marginWidth = ReadWriteAttribute(jsObject: jsObject, name: Strings.marginWidth) - super.init(unsafelyWrapping: jsObject) - } + public static let HAVE_ENOUGH_DATA: UInt16 = 4 - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadonlyAttribute + public var readyState: UInt16 - @ReadWriteAttribute - public var name: String + @ReadonlyAttribute + public var seeking: Bool @ReadWriteAttribute - public var scrolling: String + public var currentTime: Double + + @inlinable public func fastSeek(time: Double) { + let this = jsObject + _ = this[Strings.fastSeek].function!(this: this, arguments: [time.jsValue]) + } + + @ReadonlyAttribute + public var duration: Double + + @inlinable public func getStartDate() -> JSObject { + let this = jsObject + return this[Strings.getStartDate].function!(this: this, arguments: []).fromJSValue()! + } - @ReadWriteAttribute - public var src: String + @ReadonlyAttribute + public var paused: Bool @ReadWriteAttribute - public var frameBorder: String + public var defaultPlaybackRate: Double @ReadWriteAttribute - public var longDesc: String + public var playbackRate: Double @ReadWriteAttribute - public var noResize: Bool + public var preservesPitch: Bool @ReadonlyAttribute - public var contentDocument: Document? + public var played: TimeRanges @ReadonlyAttribute - public var contentWindow: WindowProxy? - - @ReadWriteAttribute - public var marginHeight: String - - @ReadWriteAttribute - public var marginWidth: String -} - -public class HTMLFrameSetElement: HTMLElement, WindowEventHandlers { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLFrameSetElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _cols = ReadWriteAttribute(jsObject: jsObject, name: Strings.cols) - _rows = ReadWriteAttribute(jsObject: jsObject, name: Strings.rows) - super.init(unsafelyWrapping: jsObject) - } + public var seekable: TimeRanges - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadonlyAttribute + public var ended: Bool @ReadWriteAttribute - public var cols: String + public var autoplay: Bool @ReadWriteAttribute - public var rows: String -} + public var loop: Bool -public class HTMLHRElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLHRElement].function! } + @inlinable public func play() -> JSPromise { + let this = jsObject + return this[Strings.play].function!(this: this, arguments: []).fromJSValue()! + } - public required init(unsafelyWrapping jsObject: JSObject) { - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _color = ReadWriteAttribute(jsObject: jsObject, name: Strings.color) - _noShade = ReadWriteAttribute(jsObject: jsObject, name: Strings.noShade) - _size = ReadWriteAttribute(jsObject: jsObject, name: Strings.size) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - super.init(unsafelyWrapping: jsObject) + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func play() async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.play].function!(this: this, arguments: []).fromJSValue()! + _ = try await _promise.value } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func pause() { + let this = jsObject + _ = this[Strings.pause].function!(this: this, arguments: []) } @ReadWriteAttribute - public var align: String + public var controls: Bool @ReadWriteAttribute - public var color: String + public var volume: Double @ReadWriteAttribute - public var noShade: Bool + public var muted: Bool @ReadWriteAttribute - public var size: String + public var defaultMuted: Bool - @ReadWriteAttribute - public var width: String -} + @ReadonlyAttribute + public var audioTracks: AudioTrackList -public class HTMLHeadElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLHeadElement].function! } + @ReadonlyAttribute + public var videoTracks: VideoTrackList - public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) - } + @ReadonlyAttribute + public var textTracks: TextTrackList - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func addTextTrack(kind: TextTrackKind, label: String? = nil, language: String? = nil) -> TextTrack { + let this = jsObject + return this[Strings.addTextTrack].function!(this: this, arguments: [kind.jsValue, label?.jsValue ?? .undefined, language?.jsValue ?? .undefined]).fromJSValue()! } } -public class HTMLHeadingElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLHeadingElement].function! } +public class HTMLMenuElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMenuElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) super.init(unsafelyWrapping: jsObject) } @@ -6884,14 +9370,18 @@ public class HTMLHeadingElement: HTMLElement { } @ReadWriteAttribute - public var align: String + public var compact: Bool } -public class HTMLHtmlElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLHtmlElement].function! } +public class HTMLMetaElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMetaElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _version = ReadWriteAttribute(jsObject: jsObject, name: Strings.version) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _httpEquiv = ReadWriteAttribute(jsObject: jsObject, name: Strings.httpEquiv) + _content = ReadWriteAttribute(jsObject: jsObject, name: Strings.content) + _media = ReadWriteAttribute(jsObject: jsObject, name: Strings.media) + _scheme = ReadWriteAttribute(jsObject: jsObject, name: Strings.scheme) super.init(unsafelyWrapping: jsObject) } @@ -6900,86 +9390,32 @@ public class HTMLHtmlElement: HTMLElement { } @ReadWriteAttribute - public var version: String -} - -public protocol HTMLHyperlinkElementUtils: JSBridgedClass {} -public extension HTMLHyperlinkElementUtils { - @inlinable var href: String { - get { ReadWriteAttribute[Strings.href, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.href, in: jsObject] = newValue } - } - - @inlinable var origin: String { ReadonlyAttribute[Strings.origin, in: jsObject] } - - @inlinable var `protocol`: String { - get { ReadWriteAttribute[Strings.protocol, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.protocol, in: jsObject] = newValue } - } - - @inlinable var username: String { - get { ReadWriteAttribute[Strings.username, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.username, in: jsObject] = newValue } - } - - @inlinable var password: String { - get { ReadWriteAttribute[Strings.password, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.password, in: jsObject] = newValue } - } - - @inlinable var host: String { - get { ReadWriteAttribute[Strings.host, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.host, in: jsObject] = newValue } - } - - @inlinable var hostname: String { - get { ReadWriteAttribute[Strings.hostname, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.hostname, in: jsObject] = newValue } - } + public var name: String - @inlinable var port: String { - get { ReadWriteAttribute[Strings.port, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.port, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var httpEquiv: String - @inlinable var pathname: String { - get { ReadWriteAttribute[Strings.pathname, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.pathname, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var content: String - @inlinable var search: String { - get { ReadWriteAttribute[Strings.search, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.search, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var media: String - @inlinable var hash: String { - get { ReadWriteAttribute[Strings.hash, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.hash, in: jsObject] = newValue } - } + @ReadWriteAttribute + public var scheme: String } -public class HTMLIFrameElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLIFrameElement].function! } +public class HTMLMeterElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMeterElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _srcdoc = ReadWriteAttribute(jsObject: jsObject, name: Strings.srcdoc) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _sandbox = ReadonlyAttribute(jsObject: jsObject, name: Strings.sandbox) - _allow = ReadWriteAttribute(jsObject: jsObject, name: Strings.allow) - _allowFullscreen = ReadWriteAttribute(jsObject: jsObject, name: Strings.allowFullscreen) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) - _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) - _loading = ReadWriteAttribute(jsObject: jsObject, name: Strings.loading) - _contentDocument = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentDocument) - _contentWindow = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentWindow) - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _scrolling = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrolling) - _frameBorder = ReadWriteAttribute(jsObject: jsObject, name: Strings.frameBorder) - _longDesc = ReadWriteAttribute(jsObject: jsObject, name: Strings.longDesc) - _marginHeight = ReadWriteAttribute(jsObject: jsObject, name: Strings.marginHeight) - _marginWidth = ReadWriteAttribute(jsObject: jsObject, name: Strings.marginWidth) + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _min = ReadWriteAttribute(jsObject: jsObject, name: Strings.min) + _max = ReadWriteAttribute(jsObject: jsObject, name: Strings.max) + _low = ReadWriteAttribute(jsObject: jsObject, name: Strings.low) + _high = ReadWriteAttribute(jsObject: jsObject, name: Strings.high) + _optimum = ReadWriteAttribute(jsObject: jsObject, name: Strings.optimum) + _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) super.init(unsafelyWrapping: jsObject) } @@ -6988,94 +9424,101 @@ public class HTMLIFrameElement: HTMLElement { } @ReadWriteAttribute - public var src: String - - @ReadWriteAttribute - public var srcdoc: String - - @ReadWriteAttribute - public var name: String - - @ReadonlyAttribute - public var sandbox: DOMTokenList - - @ReadWriteAttribute - public var allow: String + public var value: Double @ReadWriteAttribute - public var allowFullscreen: Bool + public var min: Double @ReadWriteAttribute - public var width: String + public var max: Double @ReadWriteAttribute - public var height: String + public var low: Double @ReadWriteAttribute - public var referrerPolicy: String + public var high: Double @ReadWriteAttribute - public var loading: String + public var optimum: Double @ReadonlyAttribute - public var contentDocument: Document? + public var labels: NodeList +} - @ReadonlyAttribute - public var contentWindow: WindowProxy? +public class HTMLModElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLModElement].function! } - @inlinable public func getSVGDocument() -> Document? { - let this = jsObject - return this[Strings.getSVGDocument].function!(this: this, arguments: []).fromJSValue()! + public required init(unsafelyWrapping jsObject: JSObject) { + _cite = ReadWriteAttribute(jsObject: jsObject, name: Strings.cite) + _dateTime = ReadWriteAttribute(jsObject: jsObject, name: Strings.dateTime) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadWriteAttribute - public var align: String + public var cite: String + + @ReadWriteAttribute + public var dateTime: String +} + +public class HTMLOListElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOListElement].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _reversed = ReadWriteAttribute(jsObject: jsObject, name: Strings.reversed) + _start = ReadWriteAttribute(jsObject: jsObject, name: Strings.start) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) + super.init(unsafelyWrapping: jsObject) + } - @ReadWriteAttribute - public var scrolling: String + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } @ReadWriteAttribute - public var frameBorder: String + public var reversed: Bool @ReadWriteAttribute - public var longDesc: String + public var start: Int32 @ReadWriteAttribute - public var marginHeight: String + public var type: String @ReadWriteAttribute - public var marginWidth: String + public var compact: Bool } -public class HTMLImageElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLImageElement].function! } +public class HTMLObjectElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLObjectElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _alt = ReadWriteAttribute(jsObject: jsObject, name: Strings.alt) - _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _srcset = ReadWriteAttribute(jsObject: jsObject, name: Strings.srcset) - _sizes = ReadWriteAttribute(jsObject: jsObject, name: Strings.sizes) - _crossOrigin = ReadWriteAttribute(jsObject: jsObject, name: Strings.crossOrigin) - _useMap = ReadWriteAttribute(jsObject: jsObject, name: Strings.useMap) - _isMap = ReadWriteAttribute(jsObject: jsObject, name: Strings.isMap) + _data = ReadWriteAttribute(jsObject: jsObject, name: Strings.data) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) - _naturalWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.naturalWidth) - _naturalHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.naturalHeight) - _complete = ReadonlyAttribute(jsObject: jsObject, name: Strings.complete) - _currentSrc = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentSrc) - _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) - _decoding = ReadWriteAttribute(jsObject: jsObject, name: Strings.decoding) - _loading = ReadWriteAttribute(jsObject: jsObject, name: Strings.loading) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _lowsrc = ReadWriteAttribute(jsObject: jsObject, name: Strings.lowsrc) + _contentDocument = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentDocument) + _contentWindow = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentWindow) + _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) + _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) + _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _archive = ReadWriteAttribute(jsObject: jsObject, name: Strings.archive) + _code = ReadWriteAttribute(jsObject: jsObject, name: Strings.code) + _declare = ReadWriteAttribute(jsObject: jsObject, name: Strings.declare) _hspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.hspace) + _standby = ReadWriteAttribute(jsObject: jsObject, name: Strings.standby) _vspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.vspace) - _longDesc = ReadWriteAttribute(jsObject: jsObject, name: Strings.longDesc) + _codeBase = ReadWriteAttribute(jsObject: jsObject, name: Strings.codeBase) + _codeType = ReadWriteAttribute(jsObject: jsObject, name: Strings.codeType) + _useMap = ReadWriteAttribute(jsObject: jsObject, name: Strings.useMap) _border = ReadWriteAttribute(jsObject: jsObject, name: Strings.border) - _x = ReadonlyAttribute(jsObject: jsObject, name: Strings.x) - _y = ReadonlyAttribute(jsObject: jsObject, name: Strings.y) super.init(unsafelyWrapping: jsObject) } @@ -7084,142 +9527,98 @@ public class HTMLImageElement: HTMLElement { } @ReadWriteAttribute - public var alt: String - - @ReadWriteAttribute - public var src: String - - @ReadWriteAttribute - public var srcset: String - - @ReadWriteAttribute - public var sizes: String + public var data: String @ReadWriteAttribute - public var crossOrigin: String? + public var type: String @ReadWriteAttribute - public var useMap: String + public var name: String - @ReadWriteAttribute - public var isMap: Bool + @ReadonlyAttribute + public var form: HTMLFormElement? @ReadWriteAttribute - public var width: UInt32 + public var width: String @ReadWriteAttribute - public var height: UInt32 + public var height: String @ReadonlyAttribute - public var naturalWidth: UInt32 + public var contentDocument: Document? @ReadonlyAttribute - public var naturalHeight: UInt32 + public var contentWindow: WindowProxy? - @ReadonlyAttribute - public var complete: Bool + @inlinable public func getSVGDocument() -> Document? { + let this = jsObject + return this[Strings.getSVGDocument].function!(this: this, arguments: []).fromJSValue()! + } @ReadonlyAttribute - public var currentSrc: String + public var willValidate: Bool - @ReadWriteAttribute - public var referrerPolicy: String + @ReadonlyAttribute + public var validity: ValidityState - @ReadWriteAttribute - public var decoding: String + @ReadonlyAttribute + public var validationMessage: String - @ReadWriteAttribute - public var loading: String + @inlinable public func checkValidity() -> Bool { + let this = jsObject + return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! + } - @inlinable public func decode() -> JSPromise { + @inlinable public func reportValidity() -> Bool { let this = jsObject - return this[Strings.decode].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func decode() async throws { + @inlinable public func setCustomValidity(error: String) { let this = jsObject - let _promise: JSPromise = this[Strings.decode].function!(this: this, arguments: []).fromJSValue()! - _ = try await _promise.value + _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) } @ReadWriteAttribute - public var name: String + public var align: String @ReadWriteAttribute - public var lowsrc: String + public var archive: String @ReadWriteAttribute - public var align: String + public var code: String + + @ReadWriteAttribute + public var declare: Bool @ReadWriteAttribute public var hspace: UInt32 + @ReadWriteAttribute + public var standby: String + @ReadWriteAttribute public var vspace: UInt32 @ReadWriteAttribute - public var longDesc: String + public var codeBase: String @ReadWriteAttribute - public var border: String + public var codeType: String - @ReadonlyAttribute - public var x: Int32 + @ReadWriteAttribute + public var useMap: String - @ReadonlyAttribute - public var y: Int32 + @ReadWriteAttribute + public var border: String } -public class HTMLInputElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLInputElement].function! } +public class HTMLOptGroupElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOptGroupElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _accept = ReadWriteAttribute(jsObject: jsObject, name: Strings.accept) - _alt = ReadWriteAttribute(jsObject: jsObject, name: Strings.alt) - _autocomplete = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocomplete) - _defaultChecked = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultChecked) - _checked = ReadWriteAttribute(jsObject: jsObject, name: Strings.checked) - _dirName = ReadWriteAttribute(jsObject: jsObject, name: Strings.dirName) _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _files = ReadWriteAttribute(jsObject: jsObject, name: Strings.files) - _formAction = ReadWriteAttribute(jsObject: jsObject, name: Strings.formAction) - _formEnctype = ReadWriteAttribute(jsObject: jsObject, name: Strings.formEnctype) - _formMethod = ReadWriteAttribute(jsObject: jsObject, name: Strings.formMethod) - _formNoValidate = ReadWriteAttribute(jsObject: jsObject, name: Strings.formNoValidate) - _formTarget = ReadWriteAttribute(jsObject: jsObject, name: Strings.formTarget) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) - _indeterminate = ReadWriteAttribute(jsObject: jsObject, name: Strings.indeterminate) - _list = ReadonlyAttribute(jsObject: jsObject, name: Strings.list) - _max = ReadWriteAttribute(jsObject: jsObject, name: Strings.max) - _maxLength = ReadWriteAttribute(jsObject: jsObject, name: Strings.maxLength) - _min = ReadWriteAttribute(jsObject: jsObject, name: Strings.min) - _minLength = ReadWriteAttribute(jsObject: jsObject, name: Strings.minLength) - _multiple = ReadWriteAttribute(jsObject: jsObject, name: Strings.multiple) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _pattern = ReadWriteAttribute(jsObject: jsObject, name: Strings.pattern) - _placeholder = ReadWriteAttribute(jsObject: jsObject, name: Strings.placeholder) - _readOnly = ReadWriteAttribute(jsObject: jsObject, name: Strings.readOnly) - _required = ReadWriteAttribute(jsObject: jsObject, name: Strings.required) - _size = ReadWriteAttribute(jsObject: jsObject, name: Strings.size) - _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _step = ReadWriteAttribute(jsObject: jsObject, name: Strings.step) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _defaultValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultValue) - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - _valueAsDate = ReadWriteAttribute(jsObject: jsObject, name: Strings.valueAsDate) - _valueAsNumber = ReadWriteAttribute(jsObject: jsObject, name: Strings.valueAsNumber) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) - _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) - _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) - _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) - _selectionStart = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionStart) - _selectionEnd = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionEnd) - _selectionDirection = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionDirection) - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _useMap = ReadWriteAttribute(jsObject: jsObject, name: Strings.useMap) + _label = ReadWriteAttribute(jsObject: jsObject, name: Strings.label) super.init(unsafelyWrapping: jsObject) } @@ -7228,22 +9627,30 @@ public class HTMLInputElement: HTMLElement { } @ReadWriteAttribute - public var accept: String - - @ReadWriteAttribute - public var alt: String + public var disabled: Bool @ReadWriteAttribute - public var autocomplete: String + public var label: String +} - @ReadWriteAttribute - public var defaultChecked: Bool +public class HTMLOptionElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOptionElement].function! } - @ReadWriteAttribute - public var checked: Bool + public required init(unsafelyWrapping jsObject: JSObject) { + _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) + _label = ReadWriteAttribute(jsObject: jsObject, name: Strings.label) + _defaultSelected = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultSelected) + _selected = ReadWriteAttribute(jsObject: jsObject, name: Strings.selected) + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) + _index = ReadonlyAttribute(jsObject: jsObject, name: Strings.index) + super.init(unsafelyWrapping: jsObject) + } - @ReadWriteAttribute - public var dirName: String + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } @ReadWriteAttribute public var disabled: Bool @@ -7252,72 +9659,116 @@ public class HTMLInputElement: HTMLElement { public var form: HTMLFormElement? @ReadWriteAttribute - public var files: FileList? + public var label: String @ReadWriteAttribute - public var formAction: String + public var defaultSelected: Bool @ReadWriteAttribute - public var formEnctype: String + public var selected: Bool @ReadWriteAttribute - public var formMethod: String + public var value: String @ReadWriteAttribute - public var formNoValidate: Bool + public var text: String - @ReadWriteAttribute - public var formTarget: String + @ReadonlyAttribute + public var index: Int32 +} - @ReadWriteAttribute - public var height: UInt32 +public class HTMLOptionsCollection: HTMLCollection { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOptionsCollection].function! } - @ReadWriteAttribute - public var indeterminate: Bool + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadWriteAttribute(jsObject: jsObject, name: Strings.length) + _selectedIndex = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectedIndex) + super.init(unsafelyWrapping: jsObject) + } - @ReadonlyAttribute - public var list: HTMLElement? + @usableFromInline let _length: ReadWriteAttribute + @inlinable override public var length: UInt32 { + get { _length.wrappedValue } + set { _length.wrappedValue = newValue } + } + + // XXX: unsupported setter for keys of type UInt32 + + @inlinable public func add(element: HTMLOptGroupElement_or_HTMLOptionElement, before: HTMLElement_or_Int32? = nil) { + let this = jsObject + _ = this[Strings.add].function!(this: this, arguments: [element.jsValue, before?.jsValue ?? .undefined]) + } + + @inlinable public func remove(index: Int32) { + let this = jsObject + _ = this[Strings.remove].function!(this: this, arguments: [index.jsValue]) + } @ReadWriteAttribute - public var max: String + public var selectedIndex: Int32 +} - @ReadWriteAttribute - public var maxLength: Int32 +public protocol HTMLOrSVGElement: JSBridgedClass {} +public extension HTMLOrSVGElement { + @inlinable var dataset: DOMStringMap { ReadonlyAttribute[Strings.dataset, in: jsObject] } - @ReadWriteAttribute - public var min: String + @inlinable var nonce: String { + get { ReadWriteAttribute[Strings.nonce, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.nonce, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var minLength: Int32 + @inlinable var autofocus: Bool { + get { ReadWriteAttribute[Strings.autofocus, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.autofocus, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var multiple: Bool + @inlinable var tabIndex: Int32 { + get { ReadWriteAttribute[Strings.tabIndex, in: jsObject] } + nonmutating set { ReadWriteAttribute[Strings.tabIndex, in: jsObject] = newValue } + } - @ReadWriteAttribute - public var name: String + @inlinable func focus(options: FocusOptions? = nil) { + let this = jsObject + _ = this[Strings.focus].function!(this: this, arguments: [options?.jsValue ?? .undefined]) + } - @ReadWriteAttribute - public var pattern: String + @inlinable func blur() { + let this = jsObject + _ = this[Strings.blur].function!(this: this, arguments: []) + } +} - @ReadWriteAttribute - public var placeholder: String +public class HTMLOutputElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOutputElement].function! } - @ReadWriteAttribute - public var readOnly: Bool + public required init(unsafelyWrapping jsObject: JSObject) { + _htmlFor = ReadonlyAttribute(jsObject: jsObject, name: Strings.htmlFor) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) + _defaultValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultValue) + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) + _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) + _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) + _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) + super.init(unsafelyWrapping: jsObject) + } - @ReadWriteAttribute - public var required: Bool + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } - @ReadWriteAttribute - public var size: UInt32 + @ReadonlyAttribute + public var htmlFor: DOMTokenList - @ReadWriteAttribute - public var src: String + @ReadonlyAttribute + public var form: HTMLFormElement? @ReadWriteAttribute - public var step: String + public var name: String - @ReadWriteAttribute + @ReadonlyAttribute public var type: String @ReadWriteAttribute @@ -7326,25 +9777,6 @@ public class HTMLInputElement: HTMLElement { @ReadWriteAttribute public var value: String - @ReadWriteAttribute - public var valueAsDate: JSObject? - - @ReadWriteAttribute - public var valueAsNumber: Double - - @ReadWriteAttribute - public var width: UInt32 - - @inlinable public func stepUp(n: Int32? = nil) { - let this = jsObject - _ = this[Strings.stepUp].function!(this: this, arguments: [n?.jsValue ?? .undefined]) - } - - @inlinable public func stepDown(n: Int32? = nil) { - let this = jsObject - _ = this[Strings.stepDown].function!(this: this, arguments: [n?.jsValue ?? .undefined]) - } - @ReadonlyAttribute public var willValidate: Bool @@ -7370,55 +9802,33 @@ public class HTMLInputElement: HTMLElement { } @ReadonlyAttribute - public var labels: NodeList? - - @inlinable public func select() { - let this = jsObject - _ = this[Strings.select].function!(this: this, arguments: []) - } - - @ReadWriteAttribute - public var selectionStart: UInt32? - - @ReadWriteAttribute - public var selectionEnd: UInt32? - - @ReadWriteAttribute - public var selectionDirection: String? - - @inlinable public func setRangeText(replacement: String) { - let this = jsObject - _ = this[Strings.setRangeText].function!(this: this, arguments: [replacement.jsValue]) - } + public var labels: NodeList +} - @inlinable public func setRangeText(replacement: String, start: UInt32, end: UInt32, selectionMode: SelectionMode? = nil) { - let this = jsObject - _ = this[Strings.setRangeText].function!(this: this, arguments: [replacement.jsValue, start.jsValue, end.jsValue, selectionMode?.jsValue ?? .undefined]) - } +public class HTMLParagraphElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLParagraphElement].function! } - @inlinable public func setSelectionRange(start: UInt32, end: UInt32, direction: String? = nil) { - let this = jsObject - _ = this[Strings.setSelectionRange].function!(this: this, arguments: [start.jsValue, end.jsValue, direction?.jsValue ?? .undefined]) + public required init(unsafelyWrapping jsObject: JSObject) { + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func showPicker() { - let this = jsObject - _ = this[Strings.showPicker].function!(this: this, arguments: []) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadWriteAttribute public var align: String - - @ReadWriteAttribute - public var useMap: String } -public class HTMLLIElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLLIElement].function! } +public class HTMLParamElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLParamElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _valueType = ReadWriteAttribute(jsObject: jsObject, name: Strings.valueType) super.init(unsafelyWrapping: jsObject) } @@ -7427,42 +9837,35 @@ public class HTMLLIElement: HTMLElement { } @ReadWriteAttribute - public var value: Int32 + public var name: String + + @ReadWriteAttribute + public var value: String @ReadWriteAttribute public var type: String + + @ReadWriteAttribute + public var valueType: String } -public class HTMLLabelElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLLabelElement].function! } +public class HTMLPictureElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLPictureElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _htmlFor = ReadWriteAttribute(jsObject: jsObject, name: Strings.htmlFor) - _control = ReadonlyAttribute(jsObject: jsObject, name: Strings.control) super.init(unsafelyWrapping: jsObject) } @inlinable public convenience init() { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - - @ReadonlyAttribute - public var form: HTMLFormElement? - - @ReadWriteAttribute - public var htmlFor: String - - @ReadonlyAttribute - public var control: HTMLElement? } -public class HTMLLegendElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLLegendElement].function! } +public class HTMLPreElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLPreElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) super.init(unsafelyWrapping: jsObject) } @@ -7470,35 +9873,18 @@ public class HTMLLegendElement: HTMLElement { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadonlyAttribute - public var form: HTMLFormElement? - @ReadWriteAttribute - public var align: String + public var width: Int32 } -public class HTMLLinkElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLLinkElement].function! } +public class HTMLProgressElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLProgressElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _href = ReadWriteAttribute(jsObject: jsObject, name: Strings.href) - _crossOrigin = ReadWriteAttribute(jsObject: jsObject, name: Strings.crossOrigin) - _rel = ReadWriteAttribute(jsObject: jsObject, name: Strings.rel) - _as = ReadWriteAttribute(jsObject: jsObject, name: Strings.as) - _relList = ReadonlyAttribute(jsObject: jsObject, name: Strings.relList) - _media = ReadWriteAttribute(jsObject: jsObject, name: Strings.media) - _integrity = ReadWriteAttribute(jsObject: jsObject, name: Strings.integrity) - _hreflang = ReadWriteAttribute(jsObject: jsObject, name: Strings.hreflang) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _sizes = ReadonlyAttribute(jsObject: jsObject, name: Strings.sizes) - _imageSrcset = ReadWriteAttribute(jsObject: jsObject, name: Strings.imageSrcset) - _imageSizes = ReadWriteAttribute(jsObject: jsObject, name: Strings.imageSizes) - _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) - _blocking = ReadonlyAttribute(jsObject: jsObject, name: Strings.blocking) - _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) - _charset = ReadWriteAttribute(jsObject: jsObject, name: Strings.charset) - _rev = ReadWriteAttribute(jsObject: jsObject, name: Strings.rev) - _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _max = ReadWriteAttribute(jsObject: jsObject, name: Strings.max) + _position = ReadonlyAttribute(jsObject: jsObject, name: Strings.position) + _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) super.init(unsafelyWrapping: jsObject) } @@ -7507,66 +9893,23 @@ public class HTMLLinkElement: HTMLElement { } @ReadWriteAttribute - public var href: String - - @ReadWriteAttribute - public var crossOrigin: String? - - @ReadWriteAttribute - public var rel: String - - @ReadWriteAttribute - public var `as`: String - - @ReadonlyAttribute - public var relList: DOMTokenList - - @ReadWriteAttribute - public var media: String - - @ReadWriteAttribute - public var integrity: String - - @ReadWriteAttribute - public var hreflang: String - - @ReadWriteAttribute - public var type: String - - @ReadonlyAttribute - public var sizes: DOMTokenList - - @ReadWriteAttribute - public var imageSrcset: String - - @ReadWriteAttribute - public var imageSizes: String - - @ReadWriteAttribute - public var referrerPolicy: String - - @ReadonlyAttribute - public var blocking: DOMTokenList - - @ReadWriteAttribute - public var disabled: Bool - - @ReadWriteAttribute - public var charset: String - - @ReadWriteAttribute - public var rev: String + public var value: Double @ReadWriteAttribute - public var target: String + public var max: Double + + @ReadonlyAttribute + public var position: Double + + @ReadonlyAttribute + public var labels: NodeList } -public class HTMLMapElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMapElement].function! } +public class HTMLQuoteElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLQuoteElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _areas = ReadonlyAttribute(jsObject: jsObject, name: Strings.areas) + _cite = ReadWriteAttribute(jsObject: jsObject, name: Strings.cite) super.init(unsafelyWrapping: jsObject) } @@ -7575,27 +9918,26 @@ public class HTMLMapElement: HTMLElement { } @ReadWriteAttribute - public var name: String - - @ReadonlyAttribute - public var areas: HTMLCollection + public var cite: String } -public class HTMLMarqueeElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMarqueeElement].function! } +public class HTMLScriptElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLScriptElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _behavior = ReadWriteAttribute(jsObject: jsObject, name: Strings.behavior) - _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) - _direction = ReadWriteAttribute(jsObject: jsObject, name: Strings.direction) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) - _hspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.hspace) - _loop = ReadWriteAttribute(jsObject: jsObject, name: Strings.loop) - _scrollAmount = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollAmount) - _scrollDelay = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollDelay) - _trueSpeed = ReadWriteAttribute(jsObject: jsObject, name: Strings.trueSpeed) - _vspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.vspace) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _noModule = ReadWriteAttribute(jsObject: jsObject, name: Strings.noModule) + _async = ReadWriteAttribute(jsObject: jsObject, name: Strings.async) + _defer = ReadWriteAttribute(jsObject: jsObject, name: Strings.defer) + _crossOrigin = ReadWriteAttribute(jsObject: jsObject, name: Strings.crossOrigin) + _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) + _integrity = ReadWriteAttribute(jsObject: jsObject, name: Strings.integrity) + _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) + _blocking = ReadonlyAttribute(jsObject: jsObject, name: Strings.blocking) + _charset = ReadWriteAttribute(jsObject: jsObject, name: Strings.charset) + _event = ReadWriteAttribute(jsObject: jsObject, name: Strings.event) + _htmlFor = ReadWriteAttribute(jsObject: jsObject, name: Strings.htmlFor) super.init(unsafelyWrapping: jsObject) } @@ -7604,252 +9946,176 @@ public class HTMLMarqueeElement: HTMLElement { } @ReadWriteAttribute - public var behavior: String + public var src: String @ReadWriteAttribute - public var bgColor: String + public var type: String @ReadWriteAttribute - public var direction: String + public var noModule: Bool @ReadWriteAttribute - public var height: String + public var async: Bool @ReadWriteAttribute - public var hspace: UInt32 + public var `defer`: Bool @ReadWriteAttribute - public var loop: Int32 + public var crossOrigin: String? @ReadWriteAttribute - public var scrollAmount: UInt32 + public var text: String @ReadWriteAttribute - public var scrollDelay: UInt32 + public var integrity: String @ReadWriteAttribute - public var trueSpeed: Bool + public var referrerPolicy: String - @ReadWriteAttribute - public var vspace: UInt32 + @ReadonlyAttribute + public var blocking: DOMTokenList + + @inlinable public static func supports(type: String) -> Bool { + let this = constructor + return this[Strings.supports].function!(this: this, arguments: [type.jsValue]).fromJSValue()! + } @ReadWriteAttribute - public var width: String + public var charset: String - @inlinable public func start() { - let this = jsObject - _ = this[Strings.start].function!(this: this, arguments: []) - } + @ReadWriteAttribute + public var event: String - @inlinable public func stop() { - let this = jsObject - _ = this[Strings.stop].function!(this: this, arguments: []) - } + @ReadWriteAttribute + public var htmlFor: String } -public class HTMLMediaElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMediaElement].function! } +public class HTMLSelectElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLSelectElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _error = ReadonlyAttribute(jsObject: jsObject, name: Strings.error) - _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _currentSrc = ReadonlyAttribute(jsObject: jsObject, name: Strings.currentSrc) - _crossOrigin = ReadWriteAttribute(jsObject: jsObject, name: Strings.crossOrigin) - _networkState = ReadonlyAttribute(jsObject: jsObject, name: Strings.networkState) - _preload = ReadWriteAttribute(jsObject: jsObject, name: Strings.preload) - _buffered = ReadonlyAttribute(jsObject: jsObject, name: Strings.buffered) - _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) - _seeking = ReadonlyAttribute(jsObject: jsObject, name: Strings.seeking) - _currentTime = ReadWriteAttribute(jsObject: jsObject, name: Strings.currentTime) - _duration = ReadonlyAttribute(jsObject: jsObject, name: Strings.duration) - _paused = ReadonlyAttribute(jsObject: jsObject, name: Strings.paused) - _defaultPlaybackRate = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultPlaybackRate) - _playbackRate = ReadWriteAttribute(jsObject: jsObject, name: Strings.playbackRate) - _preservesPitch = ReadWriteAttribute(jsObject: jsObject, name: Strings.preservesPitch) - _played = ReadonlyAttribute(jsObject: jsObject, name: Strings.played) - _seekable = ReadonlyAttribute(jsObject: jsObject, name: Strings.seekable) - _ended = ReadonlyAttribute(jsObject: jsObject, name: Strings.ended) - _autoplay = ReadWriteAttribute(jsObject: jsObject, name: Strings.autoplay) - _loop = ReadWriteAttribute(jsObject: jsObject, name: Strings.loop) - _controls = ReadWriteAttribute(jsObject: jsObject, name: Strings.controls) - _volume = ReadWriteAttribute(jsObject: jsObject, name: Strings.volume) - _muted = ReadWriteAttribute(jsObject: jsObject, name: Strings.muted) - _defaultMuted = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultMuted) - _audioTracks = ReadonlyAttribute(jsObject: jsObject, name: Strings.audioTracks) - _videoTracks = ReadonlyAttribute(jsObject: jsObject, name: Strings.videoTracks) - _textTracks = ReadonlyAttribute(jsObject: jsObject, name: Strings.textTracks) + _autocomplete = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocomplete) + _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) + _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) + _multiple = ReadWriteAttribute(jsObject: jsObject, name: Strings.multiple) + _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _required = ReadWriteAttribute(jsObject: jsObject, name: Strings.required) + _size = ReadWriteAttribute(jsObject: jsObject, name: Strings.size) + _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) + _options = ReadonlyAttribute(jsObject: jsObject, name: Strings.options) + _length = ReadWriteAttribute(jsObject: jsObject, name: Strings.length) + _selectedOptions = ReadonlyAttribute(jsObject: jsObject, name: Strings.selectedOptions) + _selectedIndex = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectedIndex) + _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) + _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) + _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) + _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) super.init(unsafelyWrapping: jsObject) } - @ReadonlyAttribute - public var error: MediaError? + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } @ReadWriteAttribute - public var src: String - - // XXX: member 'srcObject' is ignored - - @ReadonlyAttribute - public var currentSrc: String + public var autocomplete: String @ReadWriteAttribute - public var crossOrigin: String? - - public static let NETWORK_EMPTY: UInt16 = 0 - - public static let NETWORK_IDLE: UInt16 = 1 - - public static let NETWORK_LOADING: UInt16 = 2 - - public static let NETWORK_NO_SOURCE: UInt16 = 3 + public var disabled: Bool @ReadonlyAttribute - public var networkState: UInt16 + public var form: HTMLFormElement? @ReadWriteAttribute - public var preload: String - - @ReadonlyAttribute - public var buffered: TimeRanges - - @inlinable public func load() { - let this = jsObject - _ = this[Strings.load].function!(this: this, arguments: []) - } - - @inlinable public func canPlayType(type: String) -> CanPlayTypeResult { - let this = jsObject - return this[Strings.canPlayType].function!(this: this, arguments: [type.jsValue]).fromJSValue()! - } - - public static let HAVE_NOTHING: UInt16 = 0 - - public static let HAVE_METADATA: UInt16 = 1 + public var multiple: Bool - public static let HAVE_CURRENT_DATA: UInt16 = 2 + @ReadWriteAttribute + public var name: String - public static let HAVE_FUTURE_DATA: UInt16 = 3 + @ReadWriteAttribute + public var required: Bool - public static let HAVE_ENOUGH_DATA: UInt16 = 4 + @ReadWriteAttribute + public var size: UInt32 @ReadonlyAttribute - public var readyState: UInt16 + public var type: String @ReadonlyAttribute - public var seeking: Bool + public var options: HTMLOptionsCollection @ReadWriteAttribute - public var currentTime: Double + public var length: UInt32 - @inlinable public func fastSeek(time: Double) { - let this = jsObject - _ = this[Strings.fastSeek].function!(this: this, arguments: [time.jsValue]) + @inlinable public subscript(key: Int) -> HTMLOptionElement? { + jsObject[key].fromJSValue() } - @ReadonlyAttribute - public var duration: Double - - @inlinable public func getStartDate() -> JSObject { + @inlinable public func namedItem(name: String) -> HTMLOptionElement? { let this = jsObject - return this[Strings.getStartDate].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.namedItem].function!(this: this, arguments: [name.jsValue]).fromJSValue()! } - @ReadonlyAttribute - public var paused: Bool - - @ReadWriteAttribute - public var defaultPlaybackRate: Double - - @ReadWriteAttribute - public var playbackRate: Double - - @ReadWriteAttribute - public var preservesPitch: Bool - - @ReadonlyAttribute - public var played: TimeRanges - - @ReadonlyAttribute - public var seekable: TimeRanges - - @ReadonlyAttribute - public var ended: Bool - - @ReadWriteAttribute - public var autoplay: Bool - - @ReadWriteAttribute - public var loop: Bool - - @inlinable public func play() -> JSPromise { + @inlinable public func add(element: HTMLOptGroupElement_or_HTMLOptionElement, before: HTMLElement_or_Int32? = nil) { let this = jsObject - return this[Strings.play].function!(this: this, arguments: []).fromJSValue()! + _ = this[Strings.add].function!(this: this, arguments: [element.jsValue, before?.jsValue ?? .undefined]) } - @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) - @inlinable public func play() async throws { + @inlinable public func remove() { let this = jsObject - let _promise: JSPromise = this[Strings.play].function!(this: this, arguments: []).fromJSValue()! - _ = try await _promise.value + _ = this[Strings.remove].function!(this: this, arguments: []) } - @inlinable public func pause() { + @inlinable public func remove(index: Int32) { let this = jsObject - _ = this[Strings.pause].function!(this: this, arguments: []) + _ = this[Strings.remove].function!(this: this, arguments: [index.jsValue]) } - @ReadWriteAttribute - public var controls: Bool + // XXX: unsupported setter for keys of type UInt32 - @ReadWriteAttribute - public var volume: Double + @ReadonlyAttribute + public var selectedOptions: HTMLCollection @ReadWriteAttribute - public var muted: Bool + public var selectedIndex: Int32 @ReadWriteAttribute - public var defaultMuted: Bool + public var value: String @ReadonlyAttribute - public var audioTracks: AudioTrackList + public var willValidate: Bool @ReadonlyAttribute - public var videoTracks: VideoTrackList + public var validity: ValidityState @ReadonlyAttribute - public var textTracks: TextTrackList + public var validationMessage: String - @inlinable public func addTextTrack(kind: TextTrackKind, label: String? = nil, language: String? = nil) -> TextTrack { + @inlinable public func checkValidity() -> Bool { let this = jsObject - return this[Strings.addTextTrack].function!(this: this, arguments: [kind.jsValue, label?.jsValue ?? .undefined, language?.jsValue ?? .undefined]).fromJSValue()! + return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! } -} -public class HTMLMenuElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMenuElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) - super.init(unsafelyWrapping: jsObject) + @inlinable public func reportValidity() -> Bool { + let this = jsObject + return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func setCustomValidity(error: String) { + let this = jsObject + _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) } - @ReadWriteAttribute - public var compact: Bool + @ReadonlyAttribute + public var labels: NodeList } -public class HTMLMetaElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMetaElement].function! } +public class HTMLSlotElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLSlotElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _httpEquiv = ReadWriteAttribute(jsObject: jsObject, name: Strings.httpEquiv) - _content = ReadWriteAttribute(jsObject: jsObject, name: Strings.content) - _media = ReadWriteAttribute(jsObject: jsObject, name: Strings.media) - _scheme = ReadWriteAttribute(jsObject: jsObject, name: Strings.scheme) super.init(unsafelyWrapping: jsObject) } @@ -7860,30 +10126,33 @@ public class HTMLMetaElement: HTMLElement { @ReadWriteAttribute public var name: String - @ReadWriteAttribute - public var httpEquiv: String - - @ReadWriteAttribute - public var content: String + @inlinable public func assignedNodes(options: AssignedNodesOptions? = nil) -> [Node] { + let this = jsObject + return this[Strings.assignedNodes].function!(this: this, arguments: [options?.jsValue ?? .undefined]).fromJSValue()! + } - @ReadWriteAttribute - public var media: String + @inlinable public func assignedElements(options: AssignedNodesOptions? = nil) -> [Element] { + let this = jsObject + return this[Strings.assignedElements].function!(this: this, arguments: [options?.jsValue ?? .undefined]).fromJSValue()! + } - @ReadWriteAttribute - public var scheme: String + @inlinable public func assign(nodes: Element_or_Text...) { + let this = jsObject + _ = this[Strings.assign].function!(this: this, arguments: nodes.map(\.jsValue)) + } } -public class HTMLMeterElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLMeterElement].function! } +public class HTMLSourceElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLSourceElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - _min = ReadWriteAttribute(jsObject: jsObject, name: Strings.min) - _max = ReadWriteAttribute(jsObject: jsObject, name: Strings.max) - _low = ReadWriteAttribute(jsObject: jsObject, name: Strings.low) - _high = ReadWriteAttribute(jsObject: jsObject, name: Strings.high) - _optimum = ReadWriteAttribute(jsObject: jsObject, name: Strings.optimum) - _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) + _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _srcset = ReadWriteAttribute(jsObject: jsObject, name: Strings.srcset) + _sizes = ReadWriteAttribute(jsObject: jsObject, name: Strings.sizes) + _media = ReadWriteAttribute(jsObject: jsObject, name: Strings.media) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) super.init(unsafelyWrapping: jsObject) } @@ -7892,55 +10161,46 @@ public class HTMLMeterElement: HTMLElement { } @ReadWriteAttribute - public var value: Double + public var src: String @ReadWriteAttribute - public var min: Double + public var type: String @ReadWriteAttribute - public var max: Double + public var srcset: String @ReadWriteAttribute - public var low: Double + public var sizes: String @ReadWriteAttribute - public var high: Double + public var media: String @ReadWriteAttribute - public var optimum: Double + public var width: UInt32 - @ReadonlyAttribute - public var labels: NodeList + @ReadWriteAttribute + public var height: UInt32 } -public class HTMLModElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLModElement].function! } +public class HTMLSpanElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLSpanElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _cite = ReadWriteAttribute(jsObject: jsObject, name: Strings.cite) - _dateTime = ReadWriteAttribute(jsObject: jsObject, name: Strings.dateTime) super.init(unsafelyWrapping: jsObject) } @inlinable public convenience init() { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - - @ReadWriteAttribute - public var cite: String - - @ReadWriteAttribute - public var dateTime: String } -public class HTMLOListElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOListElement].function! } +public class HTMLStyleElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLStyleElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _reversed = ReadWriteAttribute(jsObject: jsObject, name: Strings.reversed) - _start = ReadWriteAttribute(jsObject: jsObject, name: Strings.start) + _media = ReadWriteAttribute(jsObject: jsObject, name: Strings.media) + _blocking = ReadonlyAttribute(jsObject: jsObject, name: Strings.blocking) _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) super.init(unsafelyWrapping: jsObject) } @@ -7949,44 +10209,20 @@ public class HTMLOListElement: HTMLElement { } @ReadWriteAttribute - public var reversed: Bool + public var media: String - @ReadWriteAttribute - public var start: Int32 + @ReadonlyAttribute + public var blocking: DOMTokenList @ReadWriteAttribute public var type: String - - @ReadWriteAttribute - public var compact: Bool } -public class HTMLObjectElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLObjectElement].function! } +public class HTMLTableCaptionElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableCaptionElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _data = ReadWriteAttribute(jsObject: jsObject, name: Strings.data) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) - _contentDocument = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentDocument) - _contentWindow = ReadonlyAttribute(jsObject: jsObject, name: Strings.contentWindow) - _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) - _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) - _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _archive = ReadWriteAttribute(jsObject: jsObject, name: Strings.archive) - _code = ReadWriteAttribute(jsObject: jsObject, name: Strings.code) - _declare = ReadWriteAttribute(jsObject: jsObject, name: Strings.declare) - _hspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.hspace) - _standby = ReadWriteAttribute(jsObject: jsObject, name: Strings.standby) - _vspace = ReadWriteAttribute(jsObject: jsObject, name: Strings.vspace) - _codeBase = ReadWriteAttribute(jsObject: jsObject, name: Strings.codeBase) - _codeType = ReadWriteAttribute(jsObject: jsObject, name: Strings.codeType) - _useMap = ReadWriteAttribute(jsObject: jsObject, name: Strings.useMap) - _border = ReadWriteAttribute(jsObject: jsObject, name: Strings.border) super.init(unsafelyWrapping: jsObject) } @@ -7995,124 +10231,91 @@ public class HTMLObjectElement: HTMLElement { } @ReadWriteAttribute - public var data: String - - @ReadWriteAttribute - public var type: String - - @ReadWriteAttribute - public var name: String - - @ReadonlyAttribute - public var form: HTMLFormElement? - - @ReadWriteAttribute - public var width: String - - @ReadWriteAttribute - public var height: String - - @ReadonlyAttribute - public var contentDocument: Document? - - @ReadonlyAttribute - public var contentWindow: WindowProxy? - - @inlinable public func getSVGDocument() -> Document? { - let this = jsObject - return this[Strings.getSVGDocument].function!(this: this, arguments: []).fromJSValue()! - } - - @ReadonlyAttribute - public var willValidate: Bool - - @ReadonlyAttribute - public var validity: ValidityState - - @ReadonlyAttribute - public var validationMessage: String + public var align: String +} - @inlinable public func checkValidity() -> Bool { - let this = jsObject - return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! - } +public class HTMLTableCellElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableCellElement].function! } - @inlinable public func reportValidity() -> Bool { - let this = jsObject - return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! + public required init(unsafelyWrapping jsObject: JSObject) { + _colSpan = ReadWriteAttribute(jsObject: jsObject, name: Strings.colSpan) + _rowSpan = ReadWriteAttribute(jsObject: jsObject, name: Strings.rowSpan) + _headers = ReadWriteAttribute(jsObject: jsObject, name: Strings.headers) + _cellIndex = ReadonlyAttribute(jsObject: jsObject, name: Strings.cellIndex) + _scope = ReadWriteAttribute(jsObject: jsObject, name: Strings.scope) + _abbr = ReadWriteAttribute(jsObject: jsObject, name: Strings.abbr) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _axis = ReadWriteAttribute(jsObject: jsObject, name: Strings.axis) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _ch = ReadWriteAttribute(jsObject: jsObject, name: Strings.ch) + _chOff = ReadWriteAttribute(jsObject: jsObject, name: Strings.chOff) + _noWrap = ReadWriteAttribute(jsObject: jsObject, name: Strings.noWrap) + _vAlign = ReadWriteAttribute(jsObject: jsObject, name: Strings.vAlign) + _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func setCustomValidity(error: String) { - let this = jsObject - _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } @ReadWriteAttribute - public var align: String - - @ReadWriteAttribute - public var archive: String + public var colSpan: UInt32 @ReadWriteAttribute - public var code: String + public var rowSpan: UInt32 @ReadWriteAttribute - public var declare: Bool + public var headers: String - @ReadWriteAttribute - public var hspace: UInt32 + @ReadonlyAttribute + public var cellIndex: Int32 @ReadWriteAttribute - public var standby: String + public var scope: String @ReadWriteAttribute - public var vspace: UInt32 + public var abbr: String @ReadWriteAttribute - public var codeBase: String + public var align: String @ReadWriteAttribute - public var codeType: String + public var axis: String @ReadWriteAttribute - public var useMap: String + public var height: String @ReadWriteAttribute - public var border: String -} - -public class HTMLOptGroupElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOptGroupElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) - _label = ReadWriteAttribute(jsObject: jsObject, name: Strings.label) - super.init(unsafelyWrapping: jsObject) - } + public var width: String - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadWriteAttribute + public var ch: String @ReadWriteAttribute - public var disabled: Bool + public var chOff: String @ReadWriteAttribute - public var label: String + public var noWrap: Bool + + @ReadWriteAttribute + public var vAlign: String + + @ReadWriteAttribute + public var bgColor: String } -public class HTMLOptionElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOptionElement].function! } +public class HTMLTableColElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableColElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _label = ReadWriteAttribute(jsObject: jsObject, name: Strings.label) - _defaultSelected = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultSelected) - _selected = ReadWriteAttribute(jsObject: jsObject, name: Strings.selected) - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) - _index = ReadonlyAttribute(jsObject: jsObject, name: Strings.index) + _span = ReadWriteAttribute(jsObject: jsObject, name: Strings.span) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _ch = ReadWriteAttribute(jsObject: jsObject, name: Strings.ch) + _chOff = ReadWriteAttribute(jsObject: jsObject, name: Strings.chOff) + _vAlign = ReadWriteAttribute(jsObject: jsObject, name: Strings.vAlign) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) super.init(unsafelyWrapping: jsObject) } @@ -8121,238 +10324,149 @@ public class HTMLOptionElement: HTMLElement { } @ReadWriteAttribute - public var disabled: Bool - - @ReadonlyAttribute - public var form: HTMLFormElement? + public var span: UInt32 @ReadWriteAttribute - public var label: String + public var align: String @ReadWriteAttribute - public var defaultSelected: Bool + public var ch: String @ReadWriteAttribute - public var selected: Bool + public var chOff: String @ReadWriteAttribute - public var value: String + public var vAlign: String @ReadWriteAttribute - public var text: String - - @ReadonlyAttribute - public var index: Int32 + public var width: String } -public class HTMLOptionsCollection: HTMLCollection { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOptionsCollection].function! } +public class HTMLTableElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadWriteAttribute(jsObject: jsObject, name: Strings.length) - _selectedIndex = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectedIndex) + _caption = ReadWriteAttribute(jsObject: jsObject, name: Strings.caption) + _tHead = ReadWriteAttribute(jsObject: jsObject, name: Strings.tHead) + _tFoot = ReadWriteAttribute(jsObject: jsObject, name: Strings.tFoot) + _tBodies = ReadonlyAttribute(jsObject: jsObject, name: Strings.tBodies) + _rows = ReadonlyAttribute(jsObject: jsObject, name: Strings.rows) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _border = ReadWriteAttribute(jsObject: jsObject, name: Strings.border) + _frame = ReadWriteAttribute(jsObject: jsObject, name: Strings.frame) + _rules = ReadWriteAttribute(jsObject: jsObject, name: Strings.rules) + _summary = ReadWriteAttribute(jsObject: jsObject, name: Strings.summary) + _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) + _cellPadding = ReadWriteAttribute(jsObject: jsObject, name: Strings.cellPadding) + _cellSpacing = ReadWriteAttribute(jsObject: jsObject, name: Strings.cellSpacing) super.init(unsafelyWrapping: jsObject) } - @usableFromInline let _length: ReadWriteAttribute - @inlinable override public var length: UInt32 { - get { _length.wrappedValue } - set { _length.wrappedValue = newValue } + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - // XXX: unsupported setter for keys of type UInt32 + @ReadWriteAttribute + public var caption: HTMLTableCaptionElement? - @inlinable public func add(element: HTMLOptGroupElement_or_HTMLOptionElement, before: HTMLElement_or_Int32? = nil) { + @inlinable public func createCaption() -> HTMLTableCaptionElement { let this = jsObject - _ = this[Strings.add].function!(this: this, arguments: [element.jsValue, before?.jsValue ?? .undefined]) + return this[Strings.createCaption].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func remove(index: Int32) { + @inlinable public func deleteCaption() { let this = jsObject - _ = this[Strings.remove].function!(this: this, arguments: [index.jsValue]) + _ = this[Strings.deleteCaption].function!(this: this, arguments: []) } @ReadWriteAttribute - public var selectedIndex: Int32 -} - -public protocol HTMLOrSVGElement: JSBridgedClass {} -public extension HTMLOrSVGElement { - @inlinable var dataset: DOMStringMap { ReadonlyAttribute[Strings.dataset, in: jsObject] } - - @inlinable var nonce: String { - get { ReadWriteAttribute[Strings.nonce, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.nonce, in: jsObject] = newValue } - } - - @inlinable var autofocus: Bool { - get { ReadWriteAttribute[Strings.autofocus, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.autofocus, in: jsObject] = newValue } - } - - @inlinable var tabIndex: Int32 { - get { ReadWriteAttribute[Strings.tabIndex, in: jsObject] } - nonmutating set { ReadWriteAttribute[Strings.tabIndex, in: jsObject] = newValue } - } + public var tHead: HTMLTableSectionElement? - @inlinable func focus(options: FocusOptions? = nil) { + @inlinable public func createTHead() -> HTMLTableSectionElement { let this = jsObject - _ = this[Strings.focus].function!(this: this, arguments: [options?.jsValue ?? .undefined]) + return this[Strings.createTHead].function!(this: this, arguments: []).fromJSValue()! } - @inlinable func blur() { + @inlinable public func deleteTHead() { let this = jsObject - _ = this[Strings.blur].function!(this: this, arguments: []) - } -} - -public class HTMLOutputElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLOutputElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _htmlFor = ReadonlyAttribute(jsObject: jsObject, name: Strings.htmlFor) - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) - _defaultValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultValue) - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) - _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) - _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) - _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) - super.init(unsafelyWrapping: jsObject) - } - - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + _ = this[Strings.deleteTHead].function!(this: this, arguments: []) } - @ReadonlyAttribute - public var htmlFor: DOMTokenList - - @ReadonlyAttribute - public var form: HTMLFormElement? - - @ReadWriteAttribute - public var name: String - - @ReadonlyAttribute - public var type: String - @ReadWriteAttribute - public var defaultValue: String - - @ReadWriteAttribute - public var value: String - - @ReadonlyAttribute - public var willValidate: Bool - - @ReadonlyAttribute - public var validity: ValidityState - - @ReadonlyAttribute - public var validationMessage: String + public var tFoot: HTMLTableSectionElement? - @inlinable public func checkValidity() -> Bool { + @inlinable public func createTFoot() -> HTMLTableSectionElement { let this = jsObject - return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.createTFoot].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func reportValidity() -> Bool { + @inlinable public func deleteTFoot() { let this = jsObject - return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! + _ = this[Strings.deleteTFoot].function!(this: this, arguments: []) } - @inlinable public func setCustomValidity(error: String) { + @ReadonlyAttribute + public var tBodies: HTMLCollection + + @inlinable public func createTBody() -> HTMLTableSectionElement { let this = jsObject - _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) + return this[Strings.createTBody].function!(this: this, arguments: []).fromJSValue()! } @ReadonlyAttribute - public var labels: NodeList -} - -public class HTMLParagraphElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLParagraphElement].function! } + public var rows: HTMLCollection - public required init(unsafelyWrapping jsObject: JSObject) { - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - super.init(unsafelyWrapping: jsObject) + @inlinable public func insertRow(index: Int32? = nil) -> HTMLTableRowElement { + let this = jsObject + return this[Strings.insertRow].function!(this: this, arguments: [index?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func deleteRow(index: Int32) { + let this = jsObject + _ = this[Strings.deleteRow].function!(this: this, arguments: [index.jsValue]) } @ReadWriteAttribute public var align: String -} - -public class HTMLParamElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLParamElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _valueType = ReadWriteAttribute(jsObject: jsObject, name: Strings.valueType) - super.init(unsafelyWrapping: jsObject) - } - - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } @ReadWriteAttribute - public var name: String + public var border: String @ReadWriteAttribute - public var value: String + public var frame: String @ReadWriteAttribute - public var type: String + public var rules: String @ReadWriteAttribute - public var valueType: String -} - -public class HTMLPictureElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLPictureElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) - } - - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } -} + public var summary: String -public class HTMLPreElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLPreElement].function! } + @ReadWriteAttribute + public var width: String - public required init(unsafelyWrapping jsObject: JSObject) { - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - super.init(unsafelyWrapping: jsObject) - } + @ReadWriteAttribute + public var bgColor: String - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadWriteAttribute + public var cellPadding: String @ReadWriteAttribute - public var width: Int32 + public var cellSpacing: String } -public class HTMLProgressElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLProgressElement].function! } +public class HTMLTableRowElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableRowElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - _max = ReadWriteAttribute(jsObject: jsObject, name: Strings.max) - _position = ReadonlyAttribute(jsObject: jsObject, name: Strings.position) - _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) + _rowIndex = ReadonlyAttribute(jsObject: jsObject, name: Strings.rowIndex) + _sectionRowIndex = ReadonlyAttribute(jsObject: jsObject, name: Strings.sectionRowIndex) + _cells = ReadonlyAttribute(jsObject: jsObject, name: Strings.cells) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _ch = ReadWriteAttribute(jsObject: jsObject, name: Strings.ch) + _chOff = ReadWriteAttribute(jsObject: jsObject, name: Strings.chOff) + _vAlign = ReadWriteAttribute(jsObject: jsObject, name: Strings.vAlign) + _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) super.init(unsafelyWrapping: jsObject) } @@ -8360,52 +10474,50 @@ public class HTMLProgressElement: HTMLElement { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadWriteAttribute - public var value: Double - - @ReadWriteAttribute - public var max: Double - @ReadonlyAttribute - public var position: Double + public var rowIndex: Int32 @ReadonlyAttribute - public var labels: NodeList -} + public var sectionRowIndex: Int32 -public class HTMLQuoteElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLQuoteElement].function! } + @ReadonlyAttribute + public var cells: HTMLCollection - public required init(unsafelyWrapping jsObject: JSObject) { - _cite = ReadWriteAttribute(jsObject: jsObject, name: Strings.cite) - super.init(unsafelyWrapping: jsObject) + @inlinable public func insertCell(index: Int32? = nil) -> HTMLTableCellElement { + let this = jsObject + return this[Strings.insertCell].function!(this: this, arguments: [index?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public func deleteCell(index: Int32) { + let this = jsObject + _ = this[Strings.deleteCell].function!(this: this, arguments: [index.jsValue]) } @ReadWriteAttribute - public var cite: String + public var align: String + + @ReadWriteAttribute + public var ch: String + + @ReadWriteAttribute + public var chOff: String + + @ReadWriteAttribute + public var vAlign: String + + @ReadWriteAttribute + public var bgColor: String } -public class HTMLScriptElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLScriptElement].function! } +public class HTMLTableSectionElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableSectionElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _noModule = ReadWriteAttribute(jsObject: jsObject, name: Strings.noModule) - _async = ReadWriteAttribute(jsObject: jsObject, name: Strings.async) - _defer = ReadWriteAttribute(jsObject: jsObject, name: Strings.defer) - _crossOrigin = ReadWriteAttribute(jsObject: jsObject, name: Strings.crossOrigin) - _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) - _integrity = ReadWriteAttribute(jsObject: jsObject, name: Strings.integrity) - _referrerPolicy = ReadWriteAttribute(jsObject: jsObject, name: Strings.referrerPolicy) - _blocking = ReadonlyAttribute(jsObject: jsObject, name: Strings.blocking) - _charset = ReadWriteAttribute(jsObject: jsObject, name: Strings.charset) - _event = ReadWriteAttribute(jsObject: jsObject, name: Strings.event) - _htmlFor = ReadWriteAttribute(jsObject: jsObject, name: Strings.htmlFor) + _rows = ReadonlyAttribute(jsObject: jsObject, name: Strings.rows) + _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) + _ch = ReadWriteAttribute(jsObject: jsObject, name: Strings.ch) + _chOff = ReadWriteAttribute(jsObject: jsObject, name: Strings.chOff) + _vAlign = ReadWriteAttribute(jsObject: jsObject, name: Strings.vAlign) super.init(unsafelyWrapping: jsObject) } @@ -8413,72 +10525,76 @@ public class HTMLScriptElement: HTMLElement { self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadWriteAttribute - public var src: String - - @ReadWriteAttribute - public var type: String - - @ReadWriteAttribute - public var noModule: Bool + @ReadonlyAttribute + public var rows: HTMLCollection - @ReadWriteAttribute - public var async: Bool + @inlinable public func insertRow(index: Int32? = nil) -> HTMLTableRowElement { + let this = jsObject + return this[Strings.insertRow].function!(this: this, arguments: [index?.jsValue ?? .undefined]).fromJSValue()! + } - @ReadWriteAttribute - public var `defer`: Bool + @inlinable public func deleteRow(index: Int32) { + let this = jsObject + _ = this[Strings.deleteRow].function!(this: this, arguments: [index.jsValue]) + } @ReadWriteAttribute - public var crossOrigin: String? + public var align: String @ReadWriteAttribute - public var text: String + public var ch: String @ReadWriteAttribute - public var integrity: String + public var chOff: String @ReadWriteAttribute - public var referrerPolicy: String + public var vAlign: String +} - @ReadonlyAttribute - public var blocking: DOMTokenList +public class HTMLTemplateElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTemplateElement].function! } - @inlinable public static func supports(type: String) -> Bool { - let this = constructor - return this[Strings.supports].function!(this: this, arguments: [type.jsValue]).fromJSValue()! + public required init(unsafelyWrapping jsObject: JSObject) { + _content = ReadonlyAttribute(jsObject: jsObject, name: Strings.content) + super.init(unsafelyWrapping: jsObject) } - @ReadWriteAttribute - public var charset: String - - @ReadWriteAttribute - public var event: String + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + } - @ReadWriteAttribute - public var htmlFor: String + @ReadonlyAttribute + public var content: DocumentFragment } -public class HTMLSelectElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLSelectElement].function! } +public class HTMLTextAreaElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTextAreaElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { _autocomplete = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocomplete) + _cols = ReadWriteAttribute(jsObject: jsObject, name: Strings.cols) + _dirName = ReadWriteAttribute(jsObject: jsObject, name: Strings.dirName) _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _multiple = ReadWriteAttribute(jsObject: jsObject, name: Strings.multiple) + _maxLength = ReadWriteAttribute(jsObject: jsObject, name: Strings.maxLength) + _minLength = ReadWriteAttribute(jsObject: jsObject, name: Strings.minLength) _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _placeholder = ReadWriteAttribute(jsObject: jsObject, name: Strings.placeholder) + _readOnly = ReadWriteAttribute(jsObject: jsObject, name: Strings.readOnly) _required = ReadWriteAttribute(jsObject: jsObject, name: Strings.required) - _size = ReadWriteAttribute(jsObject: jsObject, name: Strings.size) + _rows = ReadWriteAttribute(jsObject: jsObject, name: Strings.rows) + _wrap = ReadWriteAttribute(jsObject: jsObject, name: Strings.wrap) _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) - _options = ReadonlyAttribute(jsObject: jsObject, name: Strings.options) - _length = ReadWriteAttribute(jsObject: jsObject, name: Strings.length) - _selectedOptions = ReadonlyAttribute(jsObject: jsObject, name: Strings.selectedOptions) - _selectedIndex = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectedIndex) + _defaultValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultValue) _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) + _textLength = ReadonlyAttribute(jsObject: jsObject, name: Strings.textLength) _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) + _selectionStart = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionStart) + _selectionEnd = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionEnd) + _selectionDirection = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionDirection) super.init(unsafelyWrapping: jsObject) } @@ -8489,6 +10605,12 @@ public class HTMLSelectElement: HTMLElement { @ReadWriteAttribute public var autocomplete: String + @ReadWriteAttribute + public var cols: UInt32 + + @ReadWriteAttribute + public var dirName: String + @ReadWriteAttribute public var disabled: Bool @@ -8496,61 +10618,41 @@ public class HTMLSelectElement: HTMLElement { public var form: HTMLFormElement? @ReadWriteAttribute - public var multiple: Bool + public var maxLength: Int32 @ReadWriteAttribute - public var name: String + public var minLength: Int32 @ReadWriteAttribute - public var required: Bool + public var name: String @ReadWriteAttribute - public var size: UInt32 - - @ReadonlyAttribute - public var type: String - - @ReadonlyAttribute - public var options: HTMLOptionsCollection + public var placeholder: String @ReadWriteAttribute - public var length: UInt32 - - @inlinable public subscript(key: Int) -> HTMLOptionElement? { - jsObject[key].fromJSValue() - } - - @inlinable public func namedItem(name: String) -> HTMLOptionElement? { - let this = jsObject - return this[Strings.namedItem].function!(this: this, arguments: [name.jsValue]).fromJSValue()! - } - - @inlinable public func add(element: HTMLOptGroupElement_or_HTMLOptionElement, before: HTMLElement_or_Int32? = nil) { - let this = jsObject - _ = this[Strings.add].function!(this: this, arguments: [element.jsValue, before?.jsValue ?? .undefined]) - } + public var readOnly: Bool - @inlinable public func remove() { - let this = jsObject - _ = this[Strings.remove].function!(this: this, arguments: []) - } + @ReadWriteAttribute + public var required: Bool - @inlinable public func remove(index: Int32) { - let this = jsObject - _ = this[Strings.remove].function!(this: this, arguments: [index.jsValue]) - } + @ReadWriteAttribute + public var rows: UInt32 - // XXX: unsupported setter for keys of type UInt32 + @ReadWriteAttribute + public var wrap: String @ReadonlyAttribute - public var selectedOptions: HTMLCollection + public var type: String @ReadWriteAttribute - public var selectedIndex: Int32 + public var defaultValue: String @ReadWriteAttribute public var value: String + @ReadonlyAttribute + public var textLength: UInt32 + @ReadonlyAttribute public var willValidate: Bool @@ -8577,13 +10679,42 @@ public class HTMLSelectElement: HTMLElement { @ReadonlyAttribute public var labels: NodeList + + @inlinable public func select() { + let this = jsObject + _ = this[Strings.select].function!(this: this, arguments: []) + } + + @ReadWriteAttribute + public var selectionStart: UInt32 + + @ReadWriteAttribute + public var selectionEnd: UInt32 + + @ReadWriteAttribute + public var selectionDirection: String + + @inlinable public func setRangeText(replacement: String) { + let this = jsObject + _ = this[Strings.setRangeText].function!(this: this, arguments: [replacement.jsValue]) + } + + @inlinable public func setRangeText(replacement: String, start: UInt32, end: UInt32, selectionMode: SelectionMode? = nil) { + let this = jsObject + _ = this[Strings.setRangeText].function!(this: this, arguments: [replacement.jsValue, start.jsValue, end.jsValue, selectionMode?.jsValue ?? .undefined]) + } + + @inlinable public func setSelectionRange(start: UInt32, end: UInt32, direction: String? = nil) { + let this = jsObject + _ = this[Strings.setSelectionRange].function!(this: this, arguments: [start.jsValue, end.jsValue, direction?.jsValue ?? .undefined]) + } } -public class HTMLSlotElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLSlotElement].function! } +public class HTMLTimeElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTimeElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) + _dateTime = ReadWriteAttribute(jsObject: jsObject, name: Strings.dateTime) super.init(unsafelyWrapping: jsObject) } @@ -8592,35 +10723,36 @@ public class HTMLSlotElement: HTMLElement { } @ReadWriteAttribute - public var name: String + public var dateTime: String +} - @inlinable public func assignedNodes(options: AssignedNodesOptions? = nil) -> [Node] { - let this = jsObject - return this[Strings.assignedNodes].function!(this: this, arguments: [options?.jsValue ?? .undefined]).fromJSValue()! - } +public class HTMLTitleElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTitleElement].function! } - @inlinable public func assignedElements(options: AssignedNodesOptions? = nil) -> [Element] { - let this = jsObject - return this[Strings.assignedElements].function!(this: this, arguments: [options?.jsValue ?? .undefined]).fromJSValue()! + public required init(unsafelyWrapping jsObject: JSObject) { + _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func assign(nodes: Element_or_Text...) { - let this = jsObject - _ = this[Strings.assign].function!(this: this, arguments: nodes.map(\.jsValue)) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } + + @ReadWriteAttribute + public var text: String } -public class HTMLSourceElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLSourceElement].function! } +public class HTMLTrackElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTrackElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { + _kind = ReadWriteAttribute(jsObject: jsObject, name: Strings.kind) _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - _srcset = ReadWriteAttribute(jsObject: jsObject, name: Strings.srcset) - _sizes = ReadWriteAttribute(jsObject: jsObject, name: Strings.sizes) - _media = ReadWriteAttribute(jsObject: jsObject, name: Strings.media) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _srclang = ReadWriteAttribute(jsObject: jsObject, name: Strings.srclang) + _label = ReadWriteAttribute(jsObject: jsObject, name: Strings.label) + _default = ReadWriteAttribute(jsObject: jsObject, name: Strings.default) + _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) + _track = ReadonlyAttribute(jsObject: jsObject, name: Strings.track) super.init(unsafelyWrapping: jsObject) } @@ -8629,45 +10761,40 @@ public class HTMLSourceElement: HTMLElement { } @ReadWriteAttribute - public var src: String + public var kind: String @ReadWriteAttribute - public var type: String + public var src: String @ReadWriteAttribute - public var srcset: String + public var srclang: String @ReadWriteAttribute - public var sizes: String + public var label: String @ReadWriteAttribute - public var media: String + public var `default`: Bool - @ReadWriteAttribute - public var width: UInt32 + public static let NONE: UInt16 = 0 - @ReadWriteAttribute - public var height: UInt32 -} + public static let LOADING: UInt16 = 1 -public class HTMLSpanElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLSpanElement].function! } + public static let LOADED: UInt16 = 2 - public required init(unsafelyWrapping jsObject: JSObject) { - super.init(unsafelyWrapping: jsObject) - } + public static let ERROR: UInt16 = 3 - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + @ReadonlyAttribute + public var readyState: UInt16 + + @ReadonlyAttribute + public var track: TextTrack } -public class HTMLStyleElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLStyleElement].function! } +public class HTMLUListElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLUListElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _media = ReadWriteAttribute(jsObject: jsObject, name: Strings.media) - _blocking = ReadonlyAttribute(jsObject: jsObject, name: Strings.blocking) + _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) super.init(unsafelyWrapping: jsObject) } @@ -8677,50 +10804,30 @@ public class HTMLStyleElement: HTMLElement { } @ReadWriteAttribute - public var media: String - - @ReadonlyAttribute - public var blocking: DOMTokenList + public var compact: Bool @ReadWriteAttribute public var type: String } -public class HTMLTableCaptionElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableCaptionElement].function! } +public class HTMLUnknownElement: HTMLElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLUnknownElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) super.init(unsafelyWrapping: jsObject) } - - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } - - @ReadWriteAttribute - public var align: String } -public class HTMLTableCellElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableCellElement].function! } +public class HTMLVideoElement: HTMLMediaElement { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLVideoElement].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _colSpan = ReadWriteAttribute(jsObject: jsObject, name: Strings.colSpan) - _rowSpan = ReadWriteAttribute(jsObject: jsObject, name: Strings.rowSpan) - _headers = ReadWriteAttribute(jsObject: jsObject, name: Strings.headers) - _cellIndex = ReadonlyAttribute(jsObject: jsObject, name: Strings.cellIndex) - _scope = ReadWriteAttribute(jsObject: jsObject, name: Strings.scope) - _abbr = ReadWriteAttribute(jsObject: jsObject, name: Strings.abbr) - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _axis = ReadWriteAttribute(jsObject: jsObject, name: Strings.axis) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _ch = ReadWriteAttribute(jsObject: jsObject, name: Strings.ch) - _chOff = ReadWriteAttribute(jsObject: jsObject, name: Strings.chOff) - _noWrap = ReadWriteAttribute(jsObject: jsObject, name: Strings.noWrap) - _vAlign = ReadWriteAttribute(jsObject: jsObject, name: Strings.vAlign) - _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) + _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) + _videoWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.videoWidth) + _videoHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.videoHeight) + _poster = ReadWriteAttribute(jsObject: jsObject, name: Strings.poster) + _playsInline = ReadWriteAttribute(jsObject: jsObject, name: Strings.playsInline) super.init(unsafelyWrapping: jsObject) } @@ -8729,1364 +10836,1622 @@ public class HTMLTableCellElement: HTMLElement { } @ReadWriteAttribute - public var colSpan: UInt32 - - @ReadWriteAttribute - public var rowSpan: UInt32 + public var width: UInt32 @ReadWriteAttribute - public var headers: String + public var height: UInt32 @ReadonlyAttribute - public var cellIndex: Int32 - - @ReadWriteAttribute - public var scope: String - - @ReadWriteAttribute - public var abbr: String - - @ReadWriteAttribute - public var align: String - - @ReadWriteAttribute - public var axis: String - - @ReadWriteAttribute - public var height: String - - @ReadWriteAttribute - public var width: String - - @ReadWriteAttribute - public var ch: String - - @ReadWriteAttribute - public var chOff: String + public var videoWidth: UInt32 - @ReadWriteAttribute - public var noWrap: Bool + @ReadonlyAttribute + public var videoHeight: UInt32 @ReadWriteAttribute - public var vAlign: String + public var poster: String @ReadWriteAttribute - public var bgColor: String + public var playsInline: Bool } -public class HTMLTableColElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableColElement].function! } +public class HashChangeEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HashChangeEvent].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _span = ReadWriteAttribute(jsObject: jsObject, name: Strings.span) - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _ch = ReadWriteAttribute(jsObject: jsObject, name: Strings.ch) - _chOff = ReadWriteAttribute(jsObject: jsObject, name: Strings.chOff) - _vAlign = ReadWriteAttribute(jsObject: jsObject, name: Strings.vAlign) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) + _oldURL = ReadonlyAttribute(jsObject: jsObject, name: Strings.oldURL) + _newURL = ReadonlyAttribute(jsObject: jsObject, name: Strings.newURL) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public convenience init(type: String, eventInitDict: HashChangeEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) } - @ReadWriteAttribute - public var span: UInt32 + @ReadonlyAttribute + public var oldURL: String - @ReadWriteAttribute - public var align: String + @ReadonlyAttribute + public var newURL: String +} - @ReadWriteAttribute - public var ch: String +public class HashChangeEventInit: BridgedDictionary { + public convenience init(oldURL: String, newURL: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.oldURL] = oldURL.jsValue + object[Strings.newURL] = newURL.jsValue + self.init(unsafelyWrapping: object) + } - @ReadWriteAttribute - public var chOff: String + public required init(unsafelyWrapping object: JSObject) { + _oldURL = ReadWriteAttribute(jsObject: object, name: Strings.oldURL) + _newURL = ReadWriteAttribute(jsObject: object, name: Strings.newURL) + super.init(unsafelyWrapping: object) + } @ReadWriteAttribute - public var vAlign: String + public var oldURL: String @ReadWriteAttribute - public var width: String + public var newURL: String } -public class HTMLTableElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableElement].function! } +public class Headers: JSBridgedClass, Sequence { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Headers].function! } + + public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - _caption = ReadWriteAttribute(jsObject: jsObject, name: Strings.caption) - _tHead = ReadWriteAttribute(jsObject: jsObject, name: Strings.tHead) - _tFoot = ReadWriteAttribute(jsObject: jsObject, name: Strings.tFoot) - _tBodies = ReadonlyAttribute(jsObject: jsObject, name: Strings.tBodies) - _rows = ReadonlyAttribute(jsObject: jsObject, name: Strings.rows) - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _border = ReadWriteAttribute(jsObject: jsObject, name: Strings.border) - _frame = ReadWriteAttribute(jsObject: jsObject, name: Strings.frame) - _rules = ReadWriteAttribute(jsObject: jsObject, name: Strings.rules) - _summary = ReadWriteAttribute(jsObject: jsObject, name: Strings.summary) - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) - _cellPadding = ReadWriteAttribute(jsObject: jsObject, name: Strings.cellPadding) - _cellSpacing = ReadWriteAttribute(jsObject: jsObject, name: Strings.cellSpacing) - super.init(unsafelyWrapping: jsObject) + self.jsObject = jsObject } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public convenience init(init: HeadersInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`?.jsValue ?? .undefined])) } - @ReadWriteAttribute - public var caption: HTMLTableCaptionElement? + @inlinable public func append(name: String, value: String) { + let this = jsObject + _ = this[Strings.append].function!(this: this, arguments: [name.jsValue, value.jsValue]) + } - @inlinable public func createCaption() -> HTMLTableCaptionElement { + @inlinable public func delete(name: String) { let this = jsObject - return this[Strings.createCaption].function!(this: this, arguments: []).fromJSValue()! + _ = this[Strings.delete].function!(this: this, arguments: [name.jsValue]) } - @inlinable public func deleteCaption() { + @inlinable public func get(name: String) -> String? { let this = jsObject - _ = this[Strings.deleteCaption].function!(this: this, arguments: []) + return this[Strings.get].function!(this: this, arguments: [name.jsValue]).fromJSValue()! } - @ReadWriteAttribute - public var tHead: HTMLTableSectionElement? + @inlinable public func has(name: String) -> Bool { + let this = jsObject + return this[Strings.has].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + } - @inlinable public func createTHead() -> HTMLTableSectionElement { + @inlinable public func set(name: String, value: String) { let this = jsObject - return this[Strings.createTHead].function!(this: this, arguments: []).fromJSValue()! + _ = this[Strings.set].function!(this: this, arguments: [name.jsValue, value.jsValue]) + } + + public typealias Element = String + public func makeIterator() -> ValueIterableIterator { + ValueIterableIterator(sequence: self) + } +} + +public class History: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.History].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + _scrollRestoration = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollRestoration) + _state = ReadonlyAttribute(jsObject: jsObject, name: Strings.state) + self.jsObject = jsObject } - @inlinable public func deleteTHead() { - let this = jsObject - _ = this[Strings.deleteTHead].function!(this: this, arguments: []) - } + @ReadonlyAttribute + public var length: UInt32 @ReadWriteAttribute - public var tFoot: HTMLTableSectionElement? + public var scrollRestoration: ScrollRestoration - @inlinable public func createTFoot() -> HTMLTableSectionElement { + @ReadonlyAttribute + public var state: JSValue + + @inlinable public func go(delta: Int32? = nil) { let this = jsObject - return this[Strings.createTFoot].function!(this: this, arguments: []).fromJSValue()! + _ = this[Strings.go].function!(this: this, arguments: [delta?.jsValue ?? .undefined]) } - @inlinable public func deleteTFoot() { + @inlinable public func back() { let this = jsObject - _ = this[Strings.deleteTFoot].function!(this: this, arguments: []) + _ = this[Strings.back].function!(this: this, arguments: []) } - @ReadonlyAttribute - public var tBodies: HTMLCollection - - @inlinable public func createTBody() -> HTMLTableSectionElement { + @inlinable public func forward() { let this = jsObject - return this[Strings.createTBody].function!(this: this, arguments: []).fromJSValue()! + _ = this[Strings.forward].function!(this: this, arguments: []) } - @ReadonlyAttribute - public var rows: HTMLCollection - - @inlinable public func insertRow(index: Int32? = nil) -> HTMLTableRowElement { + @inlinable public func pushState(data: JSValue, unused: String, url: String? = nil) { let this = jsObject - return this[Strings.insertRow].function!(this: this, arguments: [index?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.pushState].function!(this: this, arguments: [data.jsValue, unused.jsValue, url?.jsValue ?? .undefined]) } - @inlinable public func deleteRow(index: Int32) { + @inlinable public func replaceState(data: JSValue, unused: String, url: String? = nil) { let this = jsObject - _ = this[Strings.deleteRow].function!(this: this, arguments: [index.jsValue]) + _ = this[Strings.replaceState].function!(this: this, arguments: [data.jsValue, unused.jsValue, url?.jsValue ?? .undefined]) } +} - @ReadWriteAttribute - public var align: String - - @ReadWriteAttribute - public var border: String +public class IIRFilterNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.IIRFilterNode].function! } - @ReadWriteAttribute - public var frame: String + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) + } - @ReadWriteAttribute - public var rules: String + @inlinable public convenience init(context: BaseAudioContext, options: IIRFilterOptions) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options.jsValue])) + } - @ReadWriteAttribute - public var summary: String + @inlinable public func getFrequencyResponse(frequencyHz: Float32Array, magResponse: Float32Array, phaseResponse: Float32Array) { + let this = jsObject + _ = this[Strings.getFrequencyResponse].function!(this: this, arguments: [frequencyHz.jsValue, magResponse.jsValue, phaseResponse.jsValue]) + } +} - @ReadWriteAttribute - public var width: String +public class IIRFilterOptions: BridgedDictionary { + public convenience init(feedforward: [Double], feedback: [Double]) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.feedforward] = feedforward.jsValue + object[Strings.feedback] = feedback.jsValue + self.init(unsafelyWrapping: object) + } - @ReadWriteAttribute - public var bgColor: String + public required init(unsafelyWrapping object: JSObject) { + _feedforward = ReadWriteAttribute(jsObject: object, name: Strings.feedforward) + _feedback = ReadWriteAttribute(jsObject: object, name: Strings.feedback) + super.init(unsafelyWrapping: object) + } @ReadWriteAttribute - public var cellPadding: String + public var feedforward: [Double] @ReadWriteAttribute - public var cellSpacing: String + public var feedback: [Double] } -public class HTMLTableRowElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableRowElement].function! } +public class ImageBitmap: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ImageBitmap].function! } - public required init(unsafelyWrapping jsObject: JSObject) { - _rowIndex = ReadonlyAttribute(jsObject: jsObject, name: Strings.rowIndex) - _sectionRowIndex = ReadonlyAttribute(jsObject: jsObject, name: Strings.sectionRowIndex) - _cells = ReadonlyAttribute(jsObject: jsObject, name: Strings.cells) - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _ch = ReadWriteAttribute(jsObject: jsObject, name: Strings.ch) - _chOff = ReadWriteAttribute(jsObject: jsObject, name: Strings.chOff) - _vAlign = ReadWriteAttribute(jsObject: jsObject, name: Strings.vAlign) - _bgColor = ReadWriteAttribute(jsObject: jsObject, name: Strings.bgColor) - super.init(unsafelyWrapping: jsObject) - } + public let jsObject: JSObject - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + public required init(unsafelyWrapping jsObject: JSObject) { + _width = ReadonlyAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadonlyAttribute(jsObject: jsObject, name: Strings.height) + self.jsObject = jsObject } @ReadonlyAttribute - public var rowIndex: Int32 - - @ReadonlyAttribute - public var sectionRowIndex: Int32 + public var width: UInt32 @ReadonlyAttribute - public var cells: HTMLCollection + public var height: UInt32 - @inlinable public func insertCell(index: Int32? = nil) -> HTMLTableCellElement { + @inlinable public func close() { let this = jsObject - return this[Strings.insertCell].function!(this: this, arguments: [index?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.close].function!(this: this, arguments: []) } +} - @inlinable public func deleteCell(index: Int32) { - let this = jsObject - _ = this[Strings.deleteCell].function!(this: this, arguments: [index.jsValue]) +public class ImageBitmapOptions: BridgedDictionary { + public convenience init(imageOrientation: ImageOrientation, premultiplyAlpha: PremultiplyAlpha, colorSpaceConversion: ColorSpaceConversion, resizeWidth: UInt32, resizeHeight: UInt32, resizeQuality: ResizeQuality) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.imageOrientation] = imageOrientation.jsValue + object[Strings.premultiplyAlpha] = premultiplyAlpha.jsValue + object[Strings.colorSpaceConversion] = colorSpaceConversion.jsValue + object[Strings.resizeWidth] = resizeWidth.jsValue + object[Strings.resizeHeight] = resizeHeight.jsValue + object[Strings.resizeQuality] = resizeQuality.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _imageOrientation = ReadWriteAttribute(jsObject: object, name: Strings.imageOrientation) + _premultiplyAlpha = ReadWriteAttribute(jsObject: object, name: Strings.premultiplyAlpha) + _colorSpaceConversion = ReadWriteAttribute(jsObject: object, name: Strings.colorSpaceConversion) + _resizeWidth = ReadWriteAttribute(jsObject: object, name: Strings.resizeWidth) + _resizeHeight = ReadWriteAttribute(jsObject: object, name: Strings.resizeHeight) + _resizeQuality = ReadWriteAttribute(jsObject: object, name: Strings.resizeQuality) + super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var align: String + public var imageOrientation: ImageOrientation @ReadWriteAttribute - public var ch: String + public var premultiplyAlpha: PremultiplyAlpha @ReadWriteAttribute - public var chOff: String + public var colorSpaceConversion: ColorSpaceConversion @ReadWriteAttribute - public var vAlign: String + public var resizeWidth: UInt32 @ReadWriteAttribute - public var bgColor: String + public var resizeHeight: UInt32 + + @ReadWriteAttribute + public var resizeQuality: ResizeQuality } -public class HTMLTableSectionElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTableSectionElement].function! } +public class ImageBitmapRenderingContext: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ImageBitmapRenderingContext].function! } - public required init(unsafelyWrapping jsObject: JSObject) { - _rows = ReadonlyAttribute(jsObject: jsObject, name: Strings.rows) - _align = ReadWriteAttribute(jsObject: jsObject, name: Strings.align) - _ch = ReadWriteAttribute(jsObject: jsObject, name: Strings.ch) - _chOff = ReadWriteAttribute(jsObject: jsObject, name: Strings.chOff) - _vAlign = ReadWriteAttribute(jsObject: jsObject, name: Strings.vAlign) - super.init(unsafelyWrapping: jsObject) - } + public let jsObject: JSObject - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + public required init(unsafelyWrapping jsObject: JSObject) { + _canvas = ReadonlyAttribute(jsObject: jsObject, name: Strings.canvas) + self.jsObject = jsObject } @ReadonlyAttribute - public var rows: HTMLCollection + public var canvas: HTMLCanvasElement_or_OffscreenCanvas - @inlinable public func insertRow(index: Int32? = nil) -> HTMLTableRowElement { + @inlinable public func transferFromImageBitmap(bitmap: ImageBitmap?) { let this = jsObject - return this[Strings.insertRow].function!(this: this, arguments: [index?.jsValue ?? .undefined]).fromJSValue()! + _ = this[Strings.transferFromImageBitmap].function!(this: this, arguments: [bitmap.jsValue]) } +} - @inlinable public func deleteRow(index: Int32) { - let this = jsObject - _ = this[Strings.deleteRow].function!(this: this, arguments: [index.jsValue]) +public class ImageBitmapRenderingContextSettings: BridgedDictionary { + public convenience init(alpha: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.alpha] = alpha.jsValue + self.init(unsafelyWrapping: object) } - @ReadWriteAttribute - public var align: String - - @ReadWriteAttribute - public var ch: String - - @ReadWriteAttribute - public var chOff: String + public required init(unsafelyWrapping object: JSObject) { + _alpha = ReadWriteAttribute(jsObject: object, name: Strings.alpha) + super.init(unsafelyWrapping: object) + } @ReadWriteAttribute - public var vAlign: String + public var alpha: Bool } -public class HTMLTemplateElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTemplateElement].function! } +public class ImageData: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ImageData].function! } + + public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - _content = ReadonlyAttribute(jsObject: jsObject, name: Strings.content) - super.init(unsafelyWrapping: jsObject) + _width = ReadonlyAttribute(jsObject: jsObject, name: Strings.width) + _height = ReadonlyAttribute(jsObject: jsObject, name: Strings.height) + _data = ReadonlyAttribute(jsObject: jsObject, name: Strings.data) + _colorSpace = ReadonlyAttribute(jsObject: jsObject, name: Strings.colorSpace) + self.jsObject = jsObject } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public convenience init(sw: UInt32, sh: UInt32, settings: ImageDataSettings? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [sw.jsValue, sh.jsValue, settings?.jsValue ?? .undefined])) + } + + @inlinable public convenience init(data: Uint8ClampedArray, sw: UInt32, sh: UInt32? = nil, settings: ImageDataSettings? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [data.jsValue, sw.jsValue, sh?.jsValue ?? .undefined, settings?.jsValue ?? .undefined])) } @ReadonlyAttribute - public var content: DocumentFragment + public var width: UInt32 + + @ReadonlyAttribute + public var height: UInt32 + + @ReadonlyAttribute + public var data: Uint8ClampedArray + + @ReadonlyAttribute + public var colorSpace: PredefinedColorSpace } -public class HTMLTextAreaElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTextAreaElement].function! } +public class ImageDataSettings: BridgedDictionary { + public convenience init(colorSpace: PredefinedColorSpace) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.colorSpace] = colorSpace.jsValue + self.init(unsafelyWrapping: object) + } - public required init(unsafelyWrapping jsObject: JSObject) { - _autocomplete = ReadWriteAttribute(jsObject: jsObject, name: Strings.autocomplete) - _cols = ReadWriteAttribute(jsObject: jsObject, name: Strings.cols) - _dirName = ReadWriteAttribute(jsObject: jsObject, name: Strings.dirName) - _disabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.disabled) - _form = ReadonlyAttribute(jsObject: jsObject, name: Strings.form) - _maxLength = ReadWriteAttribute(jsObject: jsObject, name: Strings.maxLength) - _minLength = ReadWriteAttribute(jsObject: jsObject, name: Strings.minLength) - _name = ReadWriteAttribute(jsObject: jsObject, name: Strings.name) - _placeholder = ReadWriteAttribute(jsObject: jsObject, name: Strings.placeholder) - _readOnly = ReadWriteAttribute(jsObject: jsObject, name: Strings.readOnly) - _required = ReadWriteAttribute(jsObject: jsObject, name: Strings.required) - _rows = ReadWriteAttribute(jsObject: jsObject, name: Strings.rows) - _wrap = ReadWriteAttribute(jsObject: jsObject, name: Strings.wrap) - _type = ReadonlyAttribute(jsObject: jsObject, name: Strings.type) - _defaultValue = ReadWriteAttribute(jsObject: jsObject, name: Strings.defaultValue) - _value = ReadWriteAttribute(jsObject: jsObject, name: Strings.value) - _textLength = ReadonlyAttribute(jsObject: jsObject, name: Strings.textLength) - _willValidate = ReadonlyAttribute(jsObject: jsObject, name: Strings.willValidate) - _validity = ReadonlyAttribute(jsObject: jsObject, name: Strings.validity) - _validationMessage = ReadonlyAttribute(jsObject: jsObject, name: Strings.validationMessage) - _labels = ReadonlyAttribute(jsObject: jsObject, name: Strings.labels) - _selectionStart = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionStart) - _selectionEnd = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionEnd) - _selectionDirection = ReadWriteAttribute(jsObject: jsObject, name: Strings.selectionDirection) - super.init(unsafelyWrapping: jsObject) + public required init(unsafelyWrapping object: JSObject) { + _colorSpace = ReadWriteAttribute(jsObject: object, name: Strings.colorSpace) + super.init(unsafelyWrapping: object) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @ReadWriteAttribute + public var colorSpace: PredefinedColorSpace +} + +public class ImageEncodeOptions: BridgedDictionary { + public convenience init(type: String, quality: Double) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.type] = type.jsValue + object[Strings.quality] = quality.jsValue + self.init(unsafelyWrapping: object) } - @ReadWriteAttribute - public var autocomplete: String + public required init(unsafelyWrapping object: JSObject) { + _type = ReadWriteAttribute(jsObject: object, name: Strings.type) + _quality = ReadWriteAttribute(jsObject: object, name: Strings.quality) + super.init(unsafelyWrapping: object) + } @ReadWriteAttribute - public var cols: UInt32 + public var type: String @ReadWriteAttribute - public var dirName: String + public var quality: Double +} - @ReadWriteAttribute - public var disabled: Bool +public enum ImageOrientation: JSString, JSValueCompatible { + case none = "none" + case flipY = "flipY" - @ReadonlyAttribute - public var form: HTMLFormElement? + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - @ReadWriteAttribute - public var maxLength: Int32 + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - @ReadWriteAttribute - public var minLength: Int32 + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @ReadWriteAttribute - public var name: String +public enum ImageSmoothingQuality: JSString, JSValueCompatible { + case low = "low" + case medium = "medium" + case high = "high" - @ReadWriteAttribute - public var placeholder: String + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } - @ReadWriteAttribute - public var readOnly: Bool + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } - @ReadWriteAttribute - public var required: Bool + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - @ReadWriteAttribute - public var rows: UInt32 +public class InputDeviceInfo: MediaDeviceInfo { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.InputDeviceInfo].function! } - @ReadWriteAttribute - public var wrap: String + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) + } - @ReadonlyAttribute - public var type: String + @inlinable public func getCapabilities() -> MediaTrackCapabilities { + let this = jsObject + return this[Strings.getCapabilities].function!(this: this, arguments: []).fromJSValue()! + } +} - @ReadWriteAttribute - public var defaultValue: String +public class InputEvent: UIEvent { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.InputEvent].function! } - @ReadWriteAttribute - public var value: String + public required init(unsafelyWrapping jsObject: JSObject) { + _data = ReadonlyAttribute(jsObject: jsObject, name: Strings.data) + _isComposing = ReadonlyAttribute(jsObject: jsObject, name: Strings.isComposing) + _inputType = ReadonlyAttribute(jsObject: jsObject, name: Strings.inputType) + super.init(unsafelyWrapping: jsObject) + } - @ReadonlyAttribute - public var textLength: UInt32 + @inlinable public convenience init(type: String, eventInitDict: InputEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + } @ReadonlyAttribute - public var willValidate: Bool + public var data: String? @ReadonlyAttribute - public var validity: ValidityState + public var isComposing: Bool @ReadonlyAttribute - public var validationMessage: String - - @inlinable public func checkValidity() -> Bool { - let this = jsObject - return this[Strings.checkValidity].function!(this: this, arguments: []).fromJSValue()! - } - - @inlinable public func reportValidity() -> Bool { - let this = jsObject - return this[Strings.reportValidity].function!(this: this, arguments: []).fromJSValue()! - } + public var inputType: String +} - @inlinable public func setCustomValidity(error: String) { - let this = jsObject - _ = this[Strings.setCustomValidity].function!(this: this, arguments: [error.jsValue]) +public class InputEventInit: BridgedDictionary { + public convenience init(data: String?, isComposing: Bool, inputType: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.data] = data.jsValue + object[Strings.isComposing] = isComposing.jsValue + object[Strings.inputType] = inputType.jsValue + self.init(unsafelyWrapping: object) } - @ReadonlyAttribute - public var labels: NodeList - - @inlinable public func select() { - let this = jsObject - _ = this[Strings.select].function!(this: this, arguments: []) + public required init(unsafelyWrapping object: JSObject) { + _data = ReadWriteAttribute(jsObject: object, name: Strings.data) + _isComposing = ReadWriteAttribute(jsObject: object, name: Strings.isComposing) + _inputType = ReadWriteAttribute(jsObject: object, name: Strings.inputType) + super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var selectionStart: UInt32 + public var data: String? @ReadWriteAttribute - public var selectionEnd: UInt32 + public var isComposing: Bool @ReadWriteAttribute - public var selectionDirection: String + public var inputType: String +} - @inlinable public func setRangeText(replacement: String) { - let this = jsObject - _ = this[Strings.setRangeText].function!(this: this, arguments: [replacement.jsValue]) - } +public class IsVisibleOptions: BridgedDictionary { + public convenience init() { + let object = JSObject.global[Strings.Object].function!.new() - @inlinable public func setRangeText(replacement: String, start: UInt32, end: UInt32, selectionMode: SelectionMode? = nil) { - let this = jsObject - _ = this[Strings.setRangeText].function!(this: this, arguments: [replacement.jsValue, start.jsValue, end.jsValue, selectionMode?.jsValue ?? .undefined]) + self.init(unsafelyWrapping: object) } - @inlinable public func setSelectionRange(start: UInt32, end: UInt32, direction: String? = nil) { - let this = jsObject - _ = this[Strings.setSelectionRange].function!(this: this, arguments: [start.jsValue, end.jsValue, direction?.jsValue ?? .undefined]) + public required init(unsafelyWrapping object: JSObject) { + super.init(unsafelyWrapping: object) } } -public class HTMLTimeElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTimeElement].function! } +public class KeyboardEvent: UIEvent { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.KeyboardEvent].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _dateTime = ReadWriteAttribute(jsObject: jsObject, name: Strings.dateTime) + _key = ReadonlyAttribute(jsObject: jsObject, name: Strings.key) + _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code) + _location = ReadonlyAttribute(jsObject: jsObject, name: Strings.location) + _ctrlKey = ReadonlyAttribute(jsObject: jsObject, name: Strings.ctrlKey) + _shiftKey = ReadonlyAttribute(jsObject: jsObject, name: Strings.shiftKey) + _altKey = ReadonlyAttribute(jsObject: jsObject, name: Strings.altKey) + _metaKey = ReadonlyAttribute(jsObject: jsObject, name: Strings.metaKey) + _repeat = ReadonlyAttribute(jsObject: jsObject, name: Strings.repeat) + _isComposing = ReadonlyAttribute(jsObject: jsObject, name: Strings.isComposing) + _charCode = ReadonlyAttribute(jsObject: jsObject, name: Strings.charCode) + _keyCode = ReadonlyAttribute(jsObject: jsObject, name: Strings.keyCode) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public convenience init(type: String, eventInitDict: KeyboardEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) } - @ReadWriteAttribute - public var dateTime: String -} + public static let DOM_KEY_LOCATION_STANDARD: UInt32 = 0x00 -public class HTMLTitleElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTitleElement].function! } + public static let DOM_KEY_LOCATION_LEFT: UInt32 = 0x01 - public required init(unsafelyWrapping jsObject: JSObject) { - _text = ReadWriteAttribute(jsObject: jsObject, name: Strings.text) - super.init(unsafelyWrapping: jsObject) - } + public static let DOM_KEY_LOCATION_RIGHT: UInt32 = 0x02 - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) - } + public static let DOM_KEY_LOCATION_NUMPAD: UInt32 = 0x03 - @ReadWriteAttribute - public var text: String -} + @ReadonlyAttribute + public var key: String -public class HTMLTrackElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLTrackElement].function! } + @ReadonlyAttribute + public var code: String - public required init(unsafelyWrapping jsObject: JSObject) { - _kind = ReadWriteAttribute(jsObject: jsObject, name: Strings.kind) - _src = ReadWriteAttribute(jsObject: jsObject, name: Strings.src) - _srclang = ReadWriteAttribute(jsObject: jsObject, name: Strings.srclang) - _label = ReadWriteAttribute(jsObject: jsObject, name: Strings.label) - _default = ReadWriteAttribute(jsObject: jsObject, name: Strings.default) - _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) - _track = ReadonlyAttribute(jsObject: jsObject, name: Strings.track) - super.init(unsafelyWrapping: jsObject) + @ReadonlyAttribute + public var location: UInt32 + + @ReadonlyAttribute + public var ctrlKey: Bool + + @ReadonlyAttribute + public var shiftKey: Bool + + @ReadonlyAttribute + public var altKey: Bool + + @ReadonlyAttribute + public var metaKey: Bool + + @ReadonlyAttribute + public var `repeat`: Bool + + @ReadonlyAttribute + public var isComposing: Bool + + @inlinable public func getModifierState(keyArg: String) -> Bool { + let this = jsObject + return this[Strings.getModifierState].function!(this: this, arguments: [keyArg.jsValue]).fromJSValue()! + } + + @inlinable public func initKeyboardEvent(typeArg: String, bubblesArg: Bool? = nil, cancelableArg: Bool? = nil, viewArg: Window? = nil, keyArg: String? = nil, locationArg: UInt32? = nil, ctrlKey: Bool? = nil, altKey: Bool? = nil, shiftKey: Bool? = nil, metaKey: Bool? = nil) { + let _arg0 = typeArg.jsValue + let _arg1 = bubblesArg?.jsValue ?? .undefined + let _arg2 = cancelableArg?.jsValue ?? .undefined + let _arg3 = viewArg?.jsValue ?? .undefined + let _arg4 = keyArg?.jsValue ?? .undefined + let _arg5 = locationArg?.jsValue ?? .undefined + let _arg6 = ctrlKey?.jsValue ?? .undefined + let _arg7 = altKey?.jsValue ?? .undefined + let _arg8 = shiftKey?.jsValue ?? .undefined + let _arg9 = metaKey?.jsValue ?? .undefined + let this = jsObject + _ = this[Strings.initKeyboardEvent].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8, _arg9]) + } + + @ReadonlyAttribute + public var charCode: UInt32 + + @ReadonlyAttribute + public var keyCode: UInt32 +} + +public class KeyboardEventInit: BridgedDictionary { + public convenience init(key: String, code: String, location: UInt32, repeat: Bool, isComposing: Bool, charCode: UInt32, keyCode: UInt32) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.key] = key.jsValue + object[Strings.code] = code.jsValue + object[Strings.location] = location.jsValue + object[Strings.repeat] = `repeat`.jsValue + object[Strings.isComposing] = isComposing.jsValue + object[Strings.charCode] = charCode.jsValue + object[Strings.keyCode] = keyCode.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + public required init(unsafelyWrapping object: JSObject) { + _key = ReadWriteAttribute(jsObject: object, name: Strings.key) + _code = ReadWriteAttribute(jsObject: object, name: Strings.code) + _location = ReadWriteAttribute(jsObject: object, name: Strings.location) + _repeat = ReadWriteAttribute(jsObject: object, name: Strings.repeat) + _isComposing = ReadWriteAttribute(jsObject: object, name: Strings.isComposing) + _charCode = ReadWriteAttribute(jsObject: object, name: Strings.charCode) + _keyCode = ReadWriteAttribute(jsObject: object, name: Strings.keyCode) + super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var kind: String + public var key: String @ReadWriteAttribute - public var src: String + public var code: String @ReadWriteAttribute - public var srclang: String + public var location: UInt32 @ReadWriteAttribute - public var label: String + public var `repeat`: Bool @ReadWriteAttribute - public var `default`: Bool - - public static let NONE: UInt16 = 0 - - public static let LOADING: UInt16 = 1 - - public static let LOADED: UInt16 = 2 - - public static let ERROR: UInt16 = 3 + public var isComposing: Bool - @ReadonlyAttribute - public var readyState: UInt16 + @ReadWriteAttribute + public var charCode: UInt32 - @ReadonlyAttribute - public var track: TextTrack + @ReadWriteAttribute + public var keyCode: UInt32 } -public class HTMLUListElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLUListElement].function! } - - public required init(unsafelyWrapping jsObject: JSObject) { - _compact = ReadWriteAttribute(jsObject: jsObject, name: Strings.compact) - _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) - super.init(unsafelyWrapping: jsObject) +public class KeyframeAnimationOptions: BridgedDictionary { + public convenience init(id: String, timeline: AnimationTimeline?) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.id] = id.jsValue + object[Strings.timeline] = timeline.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + public required init(unsafelyWrapping object: JSObject) { + _id = ReadWriteAttribute(jsObject: object, name: Strings.id) + _timeline = ReadWriteAttribute(jsObject: object, name: Strings.timeline) + super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var compact: Bool + public var id: String @ReadWriteAttribute - public var type: String + public var timeline: AnimationTimeline? } -public class HTMLUnknownElement: HTMLElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLUnknownElement].function! } +public class KeyframeEffect: AnimationEffect { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.KeyframeEffect].function! } public required init(unsafelyWrapping jsObject: JSObject) { + _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) + _pseudoElement = ReadWriteAttribute(jsObject: jsObject, name: Strings.pseudoElement) + _composite = ReadWriteAttribute(jsObject: jsObject, name: Strings.composite) super.init(unsafelyWrapping: jsObject) } -} - -public class HTMLVideoElement: HTMLMediaElement { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HTMLVideoElement].function! } - public required init(unsafelyWrapping jsObject: JSObject) { - _width = ReadWriteAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadWriteAttribute(jsObject: jsObject, name: Strings.height) - _videoWidth = ReadonlyAttribute(jsObject: jsObject, name: Strings.videoWidth) - _videoHeight = ReadonlyAttribute(jsObject: jsObject, name: Strings.videoHeight) - _poster = ReadWriteAttribute(jsObject: jsObject, name: Strings.poster) - _playsInline = ReadWriteAttribute(jsObject: jsObject, name: Strings.playsInline) - super.init(unsafelyWrapping: jsObject) + @inlinable public convenience init(target: Element?, keyframes: JSObject?, options: Double_or_KeyframeEffectOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [target.jsValue, keyframes.jsValue, options?.jsValue ?? .undefined])) } - @inlinable public convenience init() { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) + @inlinable public convenience init(source: KeyframeEffect) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [source.jsValue])) } @ReadWriteAttribute - public var width: UInt32 - - @ReadWriteAttribute - public var height: UInt32 - - @ReadonlyAttribute - public var videoWidth: UInt32 - - @ReadonlyAttribute - public var videoHeight: UInt32 + public var target: Element? @ReadWriteAttribute - public var poster: String + public var pseudoElement: String? @ReadWriteAttribute - public var playsInline: Bool -} - -public class HashChangeEvent: Event { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.HashChangeEvent].function! } + public var composite: CompositeOperation - public required init(unsafelyWrapping jsObject: JSObject) { - _oldURL = ReadonlyAttribute(jsObject: jsObject, name: Strings.oldURL) - _newURL = ReadonlyAttribute(jsObject: jsObject, name: Strings.newURL) - super.init(unsafelyWrapping: jsObject) + @inlinable public func getKeyframes() -> [JSObject] { + let this = jsObject + return this[Strings.getKeyframes].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public convenience init(type: String, eventInitDict: HashChangeEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable public func setKeyframes(keyframes: JSObject?) { + let this = jsObject + _ = this[Strings.setKeyframes].function!(this: this, arguments: [keyframes.jsValue]) } - - @ReadonlyAttribute - public var oldURL: String - - @ReadonlyAttribute - public var newURL: String } -public class HashChangeEventInit: BridgedDictionary { - public convenience init(oldURL: String, newURL: String) { +public class KeyframeEffectOptions: BridgedDictionary { + public convenience init(composite: CompositeOperation, pseudoElement: String?) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.oldURL] = oldURL.jsValue - object[Strings.newURL] = newURL.jsValue + object[Strings.composite] = composite.jsValue + object[Strings.pseudoElement] = pseudoElement.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _oldURL = ReadWriteAttribute(jsObject: object, name: Strings.oldURL) - _newURL = ReadWriteAttribute(jsObject: object, name: Strings.newURL) + _composite = ReadWriteAttribute(jsObject: object, name: Strings.composite) + _pseudoElement = ReadWriteAttribute(jsObject: object, name: Strings.pseudoElement) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var oldURL: String + public var composite: CompositeOperation @ReadWriteAttribute - public var newURL: String + public var pseudoElement: String? } -public class Headers: JSBridgedClass, Sequence { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Headers].function! } +public class Location: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Location].function! } public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { + _href = ReadWriteAttribute(jsObject: jsObject, name: Strings.href) + _origin = ReadonlyAttribute(jsObject: jsObject, name: Strings.origin) + _protocol = ReadWriteAttribute(jsObject: jsObject, name: Strings.protocol) + _host = ReadWriteAttribute(jsObject: jsObject, name: Strings.host) + _hostname = ReadWriteAttribute(jsObject: jsObject, name: Strings.hostname) + _port = ReadWriteAttribute(jsObject: jsObject, name: Strings.port) + _pathname = ReadWriteAttribute(jsObject: jsObject, name: Strings.pathname) + _search = ReadWriteAttribute(jsObject: jsObject, name: Strings.search) + _hash = ReadWriteAttribute(jsObject: jsObject, name: Strings.hash) + _ancestorOrigins = ReadonlyAttribute(jsObject: jsObject, name: Strings.ancestorOrigins) self.jsObject = jsObject } - @inlinable public convenience init(init: HeadersInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [`init`?.jsValue ?? .undefined])) - } + @ReadWriteAttribute + public var href: String - @inlinable public func append(name: String, value: String) { + @ReadonlyAttribute + public var origin: String + + @ReadWriteAttribute + public var `protocol`: String + + @ReadWriteAttribute + public var host: String + + @ReadWriteAttribute + public var hostname: String + + @ReadWriteAttribute + public var port: String + + @ReadWriteAttribute + public var pathname: String + + @ReadWriteAttribute + public var search: String + + @ReadWriteAttribute + public var hash: String + + @inlinable public func assign(url: String) { let this = jsObject - _ = this[Strings.append].function!(this: this, arguments: [name.jsValue, value.jsValue]) + _ = this[Strings.assign].function!(this: this, arguments: [url.jsValue]) } - @inlinable public func delete(name: String) { + @inlinable public func replace(url: String) { let this = jsObject - _ = this[Strings.delete].function!(this: this, arguments: [name.jsValue]) + _ = this[Strings.replace].function!(this: this, arguments: [url.jsValue]) } - @inlinable public func get(name: String) -> String? { + @inlinable public func reload() { let this = jsObject - return this[Strings.get].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + _ = this[Strings.reload].function!(this: this, arguments: []) } - @inlinable public func has(name: String) -> Bool { - let this = jsObject - return this[Strings.has].function!(this: this, arguments: [name.jsValue]).fromJSValue()! + @ReadonlyAttribute + public var ancestorOrigins: DOMStringList +} + +public class MediaDeviceInfo: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.MediaDeviceInfo].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _deviceId = ReadonlyAttribute(jsObject: jsObject, name: Strings.deviceId) + _kind = ReadonlyAttribute(jsObject: jsObject, name: Strings.kind) + _label = ReadonlyAttribute(jsObject: jsObject, name: Strings.label) + _groupId = ReadonlyAttribute(jsObject: jsObject, name: Strings.groupId) + self.jsObject = jsObject } - @inlinable public func set(name: String, value: String) { + @ReadonlyAttribute + public var deviceId: String + + @ReadonlyAttribute + public var kind: MediaDeviceKind + + @ReadonlyAttribute + public var label: String + + @ReadonlyAttribute + public var groupId: String + + @inlinable public func toJSON() -> JSObject { let this = jsObject - _ = this[Strings.set].function!(this: this, arguments: [name.jsValue, value.jsValue]) + return this[Strings.toJSON].function!(this: this, arguments: []).fromJSValue()! } +} - public typealias Element = String - public func makeIterator() -> ValueIterableIterator { - ValueIterableIterator(sequence: self) +public enum MediaDeviceKind: JSString, JSValueCompatible { + case audioinput = "audioinput" + case audiooutput = "audiooutput" + case videoinput = "videoinput" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } -} -public class History: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.History].function! } + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} - public let jsObject: JSObject +public class MediaDevices: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaDevices].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - _scrollRestoration = ReadWriteAttribute(jsObject: jsObject, name: Strings.scrollRestoration) - _state = ReadonlyAttribute(jsObject: jsObject, name: Strings.state) - self.jsObject = jsObject + _ondevicechange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.ondevicechange) + super.init(unsafelyWrapping: jsObject) } - @ReadonlyAttribute - public var length: UInt32 - - @ReadWriteAttribute - public var scrollRestoration: ScrollRestoration - - @ReadonlyAttribute - public var state: JSValue + @ClosureAttribute1Optional + public var ondevicechange: EventHandler - @inlinable public func go(delta: Int32? = nil) { + @inlinable public func enumerateDevices() -> JSPromise { let this = jsObject - _ = this[Strings.go].function!(this: this, arguments: [delta?.jsValue ?? .undefined]) + return this[Strings.enumerateDevices].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func back() { + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func enumerateDevices() async throws -> [MediaDeviceInfo] { let this = jsObject - _ = this[Strings.back].function!(this: this, arguments: []) + let _promise: JSPromise = this[Strings.enumerateDevices].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable public func forward() { + @inlinable public func getSupportedConstraints() -> MediaTrackSupportedConstraints { let this = jsObject - _ = this[Strings.forward].function!(this: this, arguments: []) + return this[Strings.getSupportedConstraints].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func pushState(data: JSValue, unused: String, url: String? = nil) { + @inlinable public func getUserMedia(constraints: MediaStreamConstraints? = nil) -> JSPromise { let this = jsObject - _ = this[Strings.pushState].function!(this: this, arguments: [data.jsValue, unused.jsValue, url?.jsValue ?? .undefined]) + return this[Strings.getUserMedia].function!(this: this, arguments: [constraints?.jsValue ?? .undefined]).fromJSValue()! } - @inlinable public func replaceState(data: JSValue, unused: String, url: String? = nil) { + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func getUserMedia(constraints: MediaStreamConstraints? = nil) async throws -> MediaStream { let this = jsObject - _ = this[Strings.replaceState].function!(this: this, arguments: [data.jsValue, unused.jsValue, url?.jsValue ?? .undefined]) + let _promise: JSPromise = this[Strings.getUserMedia].function!(this: this, arguments: [constraints?.jsValue ?? .undefined]).fromJSValue()! + return try await _promise.value.fromJSValue()! } } -public class ImageBitmap: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ImageBitmap].function! } - - public let jsObject: JSObject +public class MediaElementAudioSourceNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaElementAudioSourceNode].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _width = ReadonlyAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadonlyAttribute(jsObject: jsObject, name: Strings.height) - self.jsObject = jsObject + _mediaElement = ReadonlyAttribute(jsObject: jsObject, name: Strings.mediaElement) + super.init(unsafelyWrapping: jsObject) } - @ReadonlyAttribute - public var width: UInt32 + @inlinable public convenience init(context: AudioContext, options: MediaElementAudioSourceOptions) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options.jsValue])) + } @ReadonlyAttribute - public var height: UInt32 - - @inlinable public func close() { - let this = jsObject - _ = this[Strings.close].function!(this: this, arguments: []) - } + public var mediaElement: HTMLMediaElement } -public class ImageBitmapOptions: BridgedDictionary { - public convenience init(imageOrientation: ImageOrientation, premultiplyAlpha: PremultiplyAlpha, colorSpaceConversion: ColorSpaceConversion, resizeWidth: UInt32, resizeHeight: UInt32, resizeQuality: ResizeQuality) { +public class MediaElementAudioSourceOptions: BridgedDictionary { + public convenience init(mediaElement: HTMLMediaElement) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.imageOrientation] = imageOrientation.jsValue - object[Strings.premultiplyAlpha] = premultiplyAlpha.jsValue - object[Strings.colorSpaceConversion] = colorSpaceConversion.jsValue - object[Strings.resizeWidth] = resizeWidth.jsValue - object[Strings.resizeHeight] = resizeHeight.jsValue - object[Strings.resizeQuality] = resizeQuality.jsValue + object[Strings.mediaElement] = mediaElement.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _imageOrientation = ReadWriteAttribute(jsObject: object, name: Strings.imageOrientation) - _premultiplyAlpha = ReadWriteAttribute(jsObject: object, name: Strings.premultiplyAlpha) - _colorSpaceConversion = ReadWriteAttribute(jsObject: object, name: Strings.colorSpaceConversion) - _resizeWidth = ReadWriteAttribute(jsObject: object, name: Strings.resizeWidth) - _resizeHeight = ReadWriteAttribute(jsObject: object, name: Strings.resizeHeight) - _resizeQuality = ReadWriteAttribute(jsObject: object, name: Strings.resizeQuality) + _mediaElement = ReadWriteAttribute(jsObject: object, name: Strings.mediaElement) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var imageOrientation: ImageOrientation - - @ReadWriteAttribute - public var premultiplyAlpha: PremultiplyAlpha - - @ReadWriteAttribute - public var colorSpaceConversion: ColorSpaceConversion - - @ReadWriteAttribute - public var resizeWidth: UInt32 - - @ReadWriteAttribute - public var resizeHeight: UInt32 - - @ReadWriteAttribute - public var resizeQuality: ResizeQuality + public var mediaElement: HTMLMediaElement } -public class ImageBitmapRenderingContext: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ImageBitmapRenderingContext].function! } +public class MediaError: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.MediaError].function! } public let jsObject: JSObject public required init(unsafelyWrapping jsObject: JSObject) { - _canvas = ReadonlyAttribute(jsObject: jsObject, name: Strings.canvas) + _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code) + _message = ReadonlyAttribute(jsObject: jsObject, name: Strings.message) self.jsObject = jsObject } + public static let MEDIA_ERR_ABORTED: UInt16 = 1 + + public static let MEDIA_ERR_NETWORK: UInt16 = 2 + + public static let MEDIA_ERR_DECODE: UInt16 = 3 + + public static let MEDIA_ERR_SRC_NOT_SUPPORTED: UInt16 = 4 + @ReadonlyAttribute - public var canvas: HTMLCanvasElement_or_OffscreenCanvas + public var code: UInt16 - @inlinable public func transferFromImageBitmap(bitmap: ImageBitmap?) { - let this = jsObject - _ = this[Strings.transferFromImageBitmap].function!(this: this, arguments: [bitmap.jsValue]) - } + @ReadonlyAttribute + public var message: String } -public class ImageBitmapRenderingContextSettings: BridgedDictionary { - public convenience init(alpha: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.alpha] = alpha.jsValue - self.init(unsafelyWrapping: object) - } +public class MediaQueryList: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaQueryList].function! } - public required init(unsafelyWrapping object: JSObject) { - _alpha = ReadWriteAttribute(jsObject: object, name: Strings.alpha) - super.init(unsafelyWrapping: object) + public required init(unsafelyWrapping jsObject: JSObject) { + _media = ReadonlyAttribute(jsObject: jsObject, name: Strings.media) + _matches = ReadonlyAttribute(jsObject: jsObject, name: Strings.matches) + _onchange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onchange) + super.init(unsafelyWrapping: jsObject) } - @ReadWriteAttribute - public var alpha: Bool -} + @ReadonlyAttribute + public var media: String -public class ImageData: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.ImageData].function! } + @ReadonlyAttribute + public var matches: Bool - public let jsObject: JSObject + // XXX: member 'addListener' is ignored - public required init(unsafelyWrapping jsObject: JSObject) { - _width = ReadonlyAttribute(jsObject: jsObject, name: Strings.width) - _height = ReadonlyAttribute(jsObject: jsObject, name: Strings.height) - _data = ReadonlyAttribute(jsObject: jsObject, name: Strings.data) - _colorSpace = ReadonlyAttribute(jsObject: jsObject, name: Strings.colorSpace) - self.jsObject = jsObject - } + // XXX: member 'removeListener' is ignored - @inlinable public convenience init(sw: UInt32, sh: UInt32, settings: ImageDataSettings? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [sw.jsValue, sh.jsValue, settings?.jsValue ?? .undefined])) - } + @ClosureAttribute1Optional + public var onchange: EventHandler +} - @inlinable public convenience init(data: Uint8ClampedArray, sw: UInt32, sh: UInt32? = nil, settings: ImageDataSettings? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [data.jsValue, sw.jsValue, sh?.jsValue ?? .undefined, settings?.jsValue ?? .undefined])) - } +public class MediaQueryListEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaQueryListEvent].function! } - @ReadonlyAttribute - public var width: UInt32 + public required init(unsafelyWrapping jsObject: JSObject) { + _media = ReadonlyAttribute(jsObject: jsObject, name: Strings.media) + _matches = ReadonlyAttribute(jsObject: jsObject, name: Strings.matches) + super.init(unsafelyWrapping: jsObject) + } - @ReadonlyAttribute - public var height: UInt32 + @inlinable public convenience init(type: String, eventInitDict: MediaQueryListEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + } @ReadonlyAttribute - public var data: Uint8ClampedArray + public var media: String @ReadonlyAttribute - public var colorSpace: PredefinedColorSpace + public var matches: Bool } -public class ImageDataSettings: BridgedDictionary { - public convenience init(colorSpace: PredefinedColorSpace) { +public class MediaQueryListEventInit: BridgedDictionary { + public convenience init(media: String, matches: Bool) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.colorSpace] = colorSpace.jsValue + object[Strings.media] = media.jsValue + object[Strings.matches] = matches.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _colorSpace = ReadWriteAttribute(jsObject: object, name: Strings.colorSpace) + _media = ReadWriteAttribute(jsObject: object, name: Strings.media) + _matches = ReadWriteAttribute(jsObject: object, name: Strings.matches) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var colorSpace: PredefinedColorSpace + public var media: String + + @ReadWriteAttribute + public var matches: Bool } -public class ImageEncodeOptions: BridgedDictionary { - public convenience init(type: String, quality: Double) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.type] = type.jsValue - object[Strings.quality] = quality.jsValue - self.init(unsafelyWrapping: object) +public class MediaStream: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaStream].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _id = ReadonlyAttribute(jsObject: jsObject, name: Strings.id) + _active = ReadonlyAttribute(jsObject: jsObject, name: Strings.active) + _onaddtrack = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onaddtrack) + _onremovetrack = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onremovetrack) + super.init(unsafelyWrapping: jsObject) } - public required init(unsafelyWrapping object: JSObject) { - _type = ReadWriteAttribute(jsObject: object, name: Strings.type) - _quality = ReadWriteAttribute(jsObject: object, name: Strings.quality) - super.init(unsafelyWrapping: object) + @inlinable public convenience init() { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [])) } - @ReadWriteAttribute - public var type: String + @inlinable public convenience init(stream: MediaStream) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [stream.jsValue])) + } - @ReadWriteAttribute - public var quality: Double -} + @inlinable public convenience init(tracks: [MediaStreamTrack]) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [tracks.jsValue])) + } -public enum ImageOrientation: JSString, JSValueCompatible { - case none = "none" - case flipY = "flipY" + @ReadonlyAttribute + public var id: String - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @inlinable public func getAudioTracks() -> [MediaStreamTrack] { + let this = jsObject + return this[Strings.getAudioTracks].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable public func getVideoTracks() -> [MediaStreamTrack] { + let this = jsObject + return this[Strings.getVideoTracks].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public var jsValue: JSValue { rawValue.jsValue } -} + @inlinable public func getTracks() -> [MediaStreamTrack] { + let this = jsObject + return this[Strings.getTracks].function!(this: this, arguments: []).fromJSValue()! + } -public enum ImageSmoothingQuality: JSString, JSValueCompatible { - case low = "low" - case medium = "medium" - case high = "high" + @inlinable public func getTrackById(trackId: String) -> MediaStreamTrack? { + let this = jsObject + return this[Strings.getTrackById].function!(this: this, arguments: [trackId.jsValue]).fromJSValue()! + } - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil + @inlinable public func addTrack(track: MediaStreamTrack) { + let this = jsObject + _ = this[Strings.addTrack].function!(this: this, arguments: [track.jsValue]) } - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @inlinable public func removeTrack(track: MediaStreamTrack) { + let this = jsObject + _ = this[Strings.removeTrack].function!(this: this, arguments: [track.jsValue]) + } + + @inlinable public func clone() -> Self { + let this = jsObject + return this[Strings.clone].function!(this: this, arguments: []).fromJSValue()! + } + + @ReadonlyAttribute + public var active: Bool + + @ClosureAttribute1Optional + public var onaddtrack: EventHandler + + @ClosureAttribute1Optional + public var onremovetrack: EventHandler +} + +public class MediaStreamAudioDestinationNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaStreamAudioDestinationNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _stream = ReadonlyAttribute(jsObject: jsObject, name: Strings.stream) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: AudioContext, options: AudioNodeOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) } - @inlinable public var jsValue: JSValue { rawValue.jsValue } + @ReadonlyAttribute + public var stream: MediaStream } -public class InputEvent: UIEvent { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.InputEvent].function! } +public class MediaStreamAudioSourceNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaStreamAudioSourceNode].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _data = ReadonlyAttribute(jsObject: jsObject, name: Strings.data) - _isComposing = ReadonlyAttribute(jsObject: jsObject, name: Strings.isComposing) - _inputType = ReadonlyAttribute(jsObject: jsObject, name: Strings.inputType) + _mediaStream = ReadonlyAttribute(jsObject: jsObject, name: Strings.mediaStream) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init(type: String, eventInitDict: InputEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + @inlinable public convenience init(context: AudioContext, options: MediaStreamAudioSourceOptions) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options.jsValue])) } @ReadonlyAttribute - public var data: String? - - @ReadonlyAttribute - public var isComposing: Bool - - @ReadonlyAttribute - public var inputType: String + public var mediaStream: MediaStream } -public class InputEventInit: BridgedDictionary { - public convenience init(data: String?, isComposing: Bool, inputType: String) { +public class MediaStreamAudioSourceOptions: BridgedDictionary { + public convenience init(mediaStream: MediaStream) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.data] = data.jsValue - object[Strings.isComposing] = isComposing.jsValue - object[Strings.inputType] = inputType.jsValue + object[Strings.mediaStream] = mediaStream.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _data = ReadWriteAttribute(jsObject: object, name: Strings.data) - _isComposing = ReadWriteAttribute(jsObject: object, name: Strings.isComposing) - _inputType = ReadWriteAttribute(jsObject: object, name: Strings.inputType) + _mediaStream = ReadWriteAttribute(jsObject: object, name: Strings.mediaStream) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var data: String? - - @ReadWriteAttribute - public var isComposing: Bool - - @ReadWriteAttribute - public var inputType: String + public var mediaStream: MediaStream } -public class IsVisibleOptions: BridgedDictionary { - public convenience init() { +public class MediaStreamConstraints: BridgedDictionary { + public convenience init(video: Bool_or_MediaTrackConstraints, audio: Bool_or_MediaTrackConstraints) { let object = JSObject.global[Strings.Object].function!.new() - + object[Strings.video] = video.jsValue + object[Strings.audio] = audio.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { + _video = ReadWriteAttribute(jsObject: object, name: Strings.video) + _audio = ReadWriteAttribute(jsObject: object, name: Strings.audio) super.init(unsafelyWrapping: object) } + + @ReadWriteAttribute + public var video: Bool_or_MediaTrackConstraints + + @ReadWriteAttribute + public var audio: Bool_or_MediaTrackConstraints } -public class KeyboardEvent: UIEvent { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.KeyboardEvent].function! } +public class MediaStreamTrack: EventTarget { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaStreamTrack].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _key = ReadonlyAttribute(jsObject: jsObject, name: Strings.key) - _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code) - _location = ReadonlyAttribute(jsObject: jsObject, name: Strings.location) - _ctrlKey = ReadonlyAttribute(jsObject: jsObject, name: Strings.ctrlKey) - _shiftKey = ReadonlyAttribute(jsObject: jsObject, name: Strings.shiftKey) - _altKey = ReadonlyAttribute(jsObject: jsObject, name: Strings.altKey) - _metaKey = ReadonlyAttribute(jsObject: jsObject, name: Strings.metaKey) - _repeat = ReadonlyAttribute(jsObject: jsObject, name: Strings.repeat) - _isComposing = ReadonlyAttribute(jsObject: jsObject, name: Strings.isComposing) - _charCode = ReadonlyAttribute(jsObject: jsObject, name: Strings.charCode) - _keyCode = ReadonlyAttribute(jsObject: jsObject, name: Strings.keyCode) + _kind = ReadonlyAttribute(jsObject: jsObject, name: Strings.kind) + _id = ReadonlyAttribute(jsObject: jsObject, name: Strings.id) + _label = ReadonlyAttribute(jsObject: jsObject, name: Strings.label) + _enabled = ReadWriteAttribute(jsObject: jsObject, name: Strings.enabled) + _muted = ReadonlyAttribute(jsObject: jsObject, name: Strings.muted) + _onmute = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onmute) + _onunmute = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onunmute) + _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState) + _onended = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onended) super.init(unsafelyWrapping: jsObject) } - @inlinable public convenience init(type: String, eventInitDict: KeyboardEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) - } - - public static let DOM_KEY_LOCATION_STANDARD: UInt32 = 0x00 + @ReadonlyAttribute + public var kind: String - public static let DOM_KEY_LOCATION_LEFT: UInt32 = 0x01 + @ReadonlyAttribute + public var id: String - public static let DOM_KEY_LOCATION_RIGHT: UInt32 = 0x02 + @ReadonlyAttribute + public var label: String - public static let DOM_KEY_LOCATION_NUMPAD: UInt32 = 0x03 + @ReadWriteAttribute + public var enabled: Bool @ReadonlyAttribute - public var key: String + public var muted: Bool - @ReadonlyAttribute - public var code: String + @ClosureAttribute1Optional + public var onmute: EventHandler - @ReadonlyAttribute - public var location: UInt32 + @ClosureAttribute1Optional + public var onunmute: EventHandler @ReadonlyAttribute - public var ctrlKey: Bool + public var readyState: MediaStreamTrackState - @ReadonlyAttribute - public var shiftKey: Bool + @ClosureAttribute1Optional + public var onended: EventHandler - @ReadonlyAttribute - public var altKey: Bool + @inlinable public func clone() -> Self { + let this = jsObject + return this[Strings.clone].function!(this: this, arguments: []).fromJSValue()! + } - @ReadonlyAttribute - public var metaKey: Bool + @inlinable public func stop() { + let this = jsObject + _ = this[Strings.stop].function!(this: this, arguments: []) + } - @ReadonlyAttribute - public var `repeat`: Bool + @inlinable public func getCapabilities() -> MediaTrackCapabilities { + let this = jsObject + return this[Strings.getCapabilities].function!(this: this, arguments: []).fromJSValue()! + } - @ReadonlyAttribute - public var isComposing: Bool + @inlinable public func getConstraints() -> MediaTrackConstraints { + let this = jsObject + return this[Strings.getConstraints].function!(this: this, arguments: []).fromJSValue()! + } - @inlinable public func getModifierState(keyArg: String) -> Bool { + @inlinable public func getSettings() -> MediaTrackSettings { let this = jsObject - return this[Strings.getModifierState].function!(this: this, arguments: [keyArg.jsValue]).fromJSValue()! + return this[Strings.getSettings].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func initKeyboardEvent(typeArg: String, bubblesArg: Bool? = nil, cancelableArg: Bool? = nil, viewArg: Window? = nil, keyArg: String? = nil, locationArg: UInt32? = nil, ctrlKey: Bool? = nil, altKey: Bool? = nil, shiftKey: Bool? = nil, metaKey: Bool? = nil) { - let _arg0 = typeArg.jsValue - let _arg1 = bubblesArg?.jsValue ?? .undefined - let _arg2 = cancelableArg?.jsValue ?? .undefined - let _arg3 = viewArg?.jsValue ?? .undefined - let _arg4 = keyArg?.jsValue ?? .undefined - let _arg5 = locationArg?.jsValue ?? .undefined - let _arg6 = ctrlKey?.jsValue ?? .undefined - let _arg7 = altKey?.jsValue ?? .undefined - let _arg8 = shiftKey?.jsValue ?? .undefined - let _arg9 = metaKey?.jsValue ?? .undefined + @inlinable public func applyConstraints(constraints: MediaTrackConstraints? = nil) -> JSPromise { let this = jsObject - _ = this[Strings.initKeyboardEvent].function!(this: this, arguments: [_arg0, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8, _arg9]) + return this[Strings.applyConstraints].function!(this: this, arguments: [constraints?.jsValue ?? .undefined]).fromJSValue()! } - @ReadonlyAttribute - public var charCode: UInt32 + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func applyConstraints(constraints: MediaTrackConstraints? = nil) async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.applyConstraints].function!(this: this, arguments: [constraints?.jsValue ?? .undefined]).fromJSValue()! + _ = try await _promise.value + } +} - @ReadonlyAttribute - public var keyCode: UInt32 +public class MediaStreamTrackAudioSourceNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaStreamTrackAudioSourceNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: AudioContext, options: MediaStreamTrackAudioSourceOptions) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options.jsValue])) + } } -public class KeyboardEventInit: BridgedDictionary { - public convenience init(key: String, code: String, location: UInt32, repeat: Bool, isComposing: Bool, charCode: UInt32, keyCode: UInt32) { +public class MediaStreamTrackAudioSourceOptions: BridgedDictionary { + public convenience init(mediaStreamTrack: MediaStreamTrack) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.key] = key.jsValue - object[Strings.code] = code.jsValue - object[Strings.location] = location.jsValue - object[Strings.repeat] = `repeat`.jsValue - object[Strings.isComposing] = isComposing.jsValue - object[Strings.charCode] = charCode.jsValue - object[Strings.keyCode] = keyCode.jsValue + object[Strings.mediaStreamTrack] = mediaStreamTrack.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _key = ReadWriteAttribute(jsObject: object, name: Strings.key) - _code = ReadWriteAttribute(jsObject: object, name: Strings.code) - _location = ReadWriteAttribute(jsObject: object, name: Strings.location) - _repeat = ReadWriteAttribute(jsObject: object, name: Strings.repeat) - _isComposing = ReadWriteAttribute(jsObject: object, name: Strings.isComposing) - _charCode = ReadWriteAttribute(jsObject: object, name: Strings.charCode) - _keyCode = ReadWriteAttribute(jsObject: object, name: Strings.keyCode) + _mediaStreamTrack = ReadWriteAttribute(jsObject: object, name: Strings.mediaStreamTrack) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var key: String + public var mediaStreamTrack: MediaStreamTrack +} - @ReadWriteAttribute - public var code: String +public class MediaStreamTrackEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaStreamTrackEvent].function! } - @ReadWriteAttribute - public var location: UInt32 + public required init(unsafelyWrapping jsObject: JSObject) { + _track = ReadonlyAttribute(jsObject: jsObject, name: Strings.track) + super.init(unsafelyWrapping: jsObject) + } - @ReadWriteAttribute - public var `repeat`: Bool + @inlinable public convenience init(type: String, eventInitDict: MediaStreamTrackEventInit) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict.jsValue])) + } - @ReadWriteAttribute - public var isComposing: Bool + @ReadonlyAttribute + public var track: MediaStreamTrack +} - @ReadWriteAttribute - public var charCode: UInt32 +public class MediaStreamTrackEventInit: BridgedDictionary { + public convenience init(track: MediaStreamTrack) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.track] = track.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _track = ReadWriteAttribute(jsObject: object, name: Strings.track) + super.init(unsafelyWrapping: object) + } @ReadWriteAttribute - public var keyCode: UInt32 + public var track: MediaStreamTrack } -public class KeyframeAnimationOptions: BridgedDictionary { - public convenience init(id: String, timeline: AnimationTimeline?) { +public enum MediaStreamTrackState: JSString, JSValueCompatible { + case live = "live" + case ended = "ended" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class MediaTrackCapabilities: BridgedDictionary { + public convenience init(width: ULongRange, height: ULongRange, aspectRatio: DoubleRange, frameRate: DoubleRange, facingMode: [String], resizeMode: [String], sampleRate: ULongRange, sampleSize: ULongRange, echoCancellation: [Bool], autoGainControl: [Bool], noiseSuppression: [Bool], latency: DoubleRange, channelCount: ULongRange, deviceId: String, groupId: String) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.id] = id.jsValue - object[Strings.timeline] = timeline.jsValue + object[Strings.width] = width.jsValue + object[Strings.height] = height.jsValue + object[Strings.aspectRatio] = aspectRatio.jsValue + object[Strings.frameRate] = frameRate.jsValue + object[Strings.facingMode] = facingMode.jsValue + object[Strings.resizeMode] = resizeMode.jsValue + object[Strings.sampleRate] = sampleRate.jsValue + object[Strings.sampleSize] = sampleSize.jsValue + object[Strings.echoCancellation] = echoCancellation.jsValue + object[Strings.autoGainControl] = autoGainControl.jsValue + object[Strings.noiseSuppression] = noiseSuppression.jsValue + object[Strings.latency] = latency.jsValue + object[Strings.channelCount] = channelCount.jsValue + object[Strings.deviceId] = deviceId.jsValue + object[Strings.groupId] = groupId.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _id = ReadWriteAttribute(jsObject: object, name: Strings.id) - _timeline = ReadWriteAttribute(jsObject: object, name: Strings.timeline) + _width = ReadWriteAttribute(jsObject: object, name: Strings.width) + _height = ReadWriteAttribute(jsObject: object, name: Strings.height) + _aspectRatio = ReadWriteAttribute(jsObject: object, name: Strings.aspectRatio) + _frameRate = ReadWriteAttribute(jsObject: object, name: Strings.frameRate) + _facingMode = ReadWriteAttribute(jsObject: object, name: Strings.facingMode) + _resizeMode = ReadWriteAttribute(jsObject: object, name: Strings.resizeMode) + _sampleRate = ReadWriteAttribute(jsObject: object, name: Strings.sampleRate) + _sampleSize = ReadWriteAttribute(jsObject: object, name: Strings.sampleSize) + _echoCancellation = ReadWriteAttribute(jsObject: object, name: Strings.echoCancellation) + _autoGainControl = ReadWriteAttribute(jsObject: object, name: Strings.autoGainControl) + _noiseSuppression = ReadWriteAttribute(jsObject: object, name: Strings.noiseSuppression) + _latency = ReadWriteAttribute(jsObject: object, name: Strings.latency) + _channelCount = ReadWriteAttribute(jsObject: object, name: Strings.channelCount) + _deviceId = ReadWriteAttribute(jsObject: object, name: Strings.deviceId) + _groupId = ReadWriteAttribute(jsObject: object, name: Strings.groupId) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var id: String + public var width: ULongRange @ReadWriteAttribute - public var timeline: AnimationTimeline? -} + public var height: ULongRange -public class KeyframeEffect: AnimationEffect { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.KeyframeEffect].function! } + @ReadWriteAttribute + public var aspectRatio: DoubleRange - public required init(unsafelyWrapping jsObject: JSObject) { - _target = ReadWriteAttribute(jsObject: jsObject, name: Strings.target) - _pseudoElement = ReadWriteAttribute(jsObject: jsObject, name: Strings.pseudoElement) - _composite = ReadWriteAttribute(jsObject: jsObject, name: Strings.composite) - super.init(unsafelyWrapping: jsObject) - } + @ReadWriteAttribute + public var frameRate: DoubleRange - @inlinable public convenience init(target: Element?, keyframes: JSObject?, options: Double_or_KeyframeEffectOptions? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [target.jsValue, keyframes.jsValue, options?.jsValue ?? .undefined])) - } + @ReadWriteAttribute + public var facingMode: [String] - @inlinable public convenience init(source: KeyframeEffect) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [source.jsValue])) - } + @ReadWriteAttribute + public var resizeMode: [String] @ReadWriteAttribute - public var target: Element? + public var sampleRate: ULongRange @ReadWriteAttribute - public var pseudoElement: String? + public var sampleSize: ULongRange @ReadWriteAttribute - public var composite: CompositeOperation + public var echoCancellation: [Bool] - @inlinable public func getKeyframes() -> [JSObject] { - let this = jsObject - return this[Strings.getKeyframes].function!(this: this, arguments: []).fromJSValue()! - } + @ReadWriteAttribute + public var autoGainControl: [Bool] - @inlinable public func setKeyframes(keyframes: JSObject?) { - let this = jsObject - _ = this[Strings.setKeyframes].function!(this: this, arguments: [keyframes.jsValue]) - } + @ReadWriteAttribute + public var noiseSuppression: [Bool] + + @ReadWriteAttribute + public var latency: DoubleRange + + @ReadWriteAttribute + public var channelCount: ULongRange + + @ReadWriteAttribute + public var deviceId: String + + @ReadWriteAttribute + public var groupId: String } -public class KeyframeEffectOptions: BridgedDictionary { - public convenience init(composite: CompositeOperation, pseudoElement: String?) { +public class MediaTrackConstraintSet: BridgedDictionary { + public convenience init(width: ConstrainULong, height: ConstrainULong, aspectRatio: ConstrainDouble, frameRate: ConstrainDouble, facingMode: ConstrainDOMString, resizeMode: ConstrainDOMString, sampleRate: ConstrainULong, sampleSize: ConstrainULong, echoCancellation: ConstrainBoolean, autoGainControl: ConstrainBoolean, noiseSuppression: ConstrainBoolean, latency: ConstrainDouble, channelCount: ConstrainULong, deviceId: ConstrainDOMString, groupId: ConstrainDOMString) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.composite] = composite.jsValue - object[Strings.pseudoElement] = pseudoElement.jsValue + object[Strings.width] = width.jsValue + object[Strings.height] = height.jsValue + object[Strings.aspectRatio] = aspectRatio.jsValue + object[Strings.frameRate] = frameRate.jsValue + object[Strings.facingMode] = facingMode.jsValue + object[Strings.resizeMode] = resizeMode.jsValue + object[Strings.sampleRate] = sampleRate.jsValue + object[Strings.sampleSize] = sampleSize.jsValue + object[Strings.echoCancellation] = echoCancellation.jsValue + object[Strings.autoGainControl] = autoGainControl.jsValue + object[Strings.noiseSuppression] = noiseSuppression.jsValue + object[Strings.latency] = latency.jsValue + object[Strings.channelCount] = channelCount.jsValue + object[Strings.deviceId] = deviceId.jsValue + object[Strings.groupId] = groupId.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _composite = ReadWriteAttribute(jsObject: object, name: Strings.composite) - _pseudoElement = ReadWriteAttribute(jsObject: object, name: Strings.pseudoElement) + _width = ReadWriteAttribute(jsObject: object, name: Strings.width) + _height = ReadWriteAttribute(jsObject: object, name: Strings.height) + _aspectRatio = ReadWriteAttribute(jsObject: object, name: Strings.aspectRatio) + _frameRate = ReadWriteAttribute(jsObject: object, name: Strings.frameRate) + _facingMode = ReadWriteAttribute(jsObject: object, name: Strings.facingMode) + _resizeMode = ReadWriteAttribute(jsObject: object, name: Strings.resizeMode) + _sampleRate = ReadWriteAttribute(jsObject: object, name: Strings.sampleRate) + _sampleSize = ReadWriteAttribute(jsObject: object, name: Strings.sampleSize) + _echoCancellation = ReadWriteAttribute(jsObject: object, name: Strings.echoCancellation) + _autoGainControl = ReadWriteAttribute(jsObject: object, name: Strings.autoGainControl) + _noiseSuppression = ReadWriteAttribute(jsObject: object, name: Strings.noiseSuppression) + _latency = ReadWriteAttribute(jsObject: object, name: Strings.latency) + _channelCount = ReadWriteAttribute(jsObject: object, name: Strings.channelCount) + _deviceId = ReadWriteAttribute(jsObject: object, name: Strings.deviceId) + _groupId = ReadWriteAttribute(jsObject: object, name: Strings.groupId) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var composite: CompositeOperation + public var width: ConstrainULong @ReadWriteAttribute - public var pseudoElement: String? -} + public var height: ConstrainULong -public class Location: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Location].function! } + @ReadWriteAttribute + public var aspectRatio: ConstrainDouble - public let jsObject: JSObject + @ReadWriteAttribute + public var frameRate: ConstrainDouble - public required init(unsafelyWrapping jsObject: JSObject) { - _href = ReadWriteAttribute(jsObject: jsObject, name: Strings.href) - _origin = ReadonlyAttribute(jsObject: jsObject, name: Strings.origin) - _protocol = ReadWriteAttribute(jsObject: jsObject, name: Strings.protocol) - _host = ReadWriteAttribute(jsObject: jsObject, name: Strings.host) - _hostname = ReadWriteAttribute(jsObject: jsObject, name: Strings.hostname) - _port = ReadWriteAttribute(jsObject: jsObject, name: Strings.port) - _pathname = ReadWriteAttribute(jsObject: jsObject, name: Strings.pathname) - _search = ReadWriteAttribute(jsObject: jsObject, name: Strings.search) - _hash = ReadWriteAttribute(jsObject: jsObject, name: Strings.hash) - _ancestorOrigins = ReadonlyAttribute(jsObject: jsObject, name: Strings.ancestorOrigins) - self.jsObject = jsObject - } + @ReadWriteAttribute + public var facingMode: ConstrainDOMString @ReadWriteAttribute - public var href: String + public var resizeMode: ConstrainDOMString - @ReadonlyAttribute - public var origin: String + @ReadWriteAttribute + public var sampleRate: ConstrainULong @ReadWriteAttribute - public var `protocol`: String + public var sampleSize: ConstrainULong @ReadWriteAttribute - public var host: String + public var echoCancellation: ConstrainBoolean @ReadWriteAttribute - public var hostname: String + public var autoGainControl: ConstrainBoolean @ReadWriteAttribute - public var port: String + public var noiseSuppression: ConstrainBoolean @ReadWriteAttribute - public var pathname: String + public var latency: ConstrainDouble @ReadWriteAttribute - public var search: String + public var channelCount: ConstrainULong @ReadWriteAttribute - public var hash: String + public var deviceId: ConstrainDOMString - @inlinable public func assign(url: String) { - let this = jsObject - _ = this[Strings.assign].function!(this: this, arguments: [url.jsValue]) - } + @ReadWriteAttribute + public var groupId: ConstrainDOMString +} - @inlinable public func replace(url: String) { - let this = jsObject - _ = this[Strings.replace].function!(this: this, arguments: [url.jsValue]) +public class MediaTrackConstraints: BridgedDictionary { + public convenience init(advanced: [MediaTrackConstraintSet]) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.advanced] = advanced.jsValue + self.init(unsafelyWrapping: object) } - @inlinable public func reload() { - let this = jsObject - _ = this[Strings.reload].function!(this: this, arguments: []) + public required init(unsafelyWrapping object: JSObject) { + _advanced = ReadWriteAttribute(jsObject: object, name: Strings.advanced) + super.init(unsafelyWrapping: object) } - @ReadonlyAttribute - public var ancestorOrigins: DOMStringList + @ReadWriteAttribute + public var advanced: [MediaTrackConstraintSet] } -public class MediaError: JSBridgedClass { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.MediaError].function! } - - public let jsObject: JSObject - - public required init(unsafelyWrapping jsObject: JSObject) { - _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code) - _message = ReadonlyAttribute(jsObject: jsObject, name: Strings.message) - self.jsObject = jsObject +public class MediaTrackSettings: BridgedDictionary { + public convenience init(width: Int32, height: Int32, aspectRatio: Double, frameRate: Double, facingMode: String, resizeMode: String, sampleRate: Int32, sampleSize: Int32, echoCancellation: Bool, autoGainControl: Bool, noiseSuppression: Bool, latency: Double, channelCount: Int32, deviceId: String, groupId: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.width] = width.jsValue + object[Strings.height] = height.jsValue + object[Strings.aspectRatio] = aspectRatio.jsValue + object[Strings.frameRate] = frameRate.jsValue + object[Strings.facingMode] = facingMode.jsValue + object[Strings.resizeMode] = resizeMode.jsValue + object[Strings.sampleRate] = sampleRate.jsValue + object[Strings.sampleSize] = sampleSize.jsValue + object[Strings.echoCancellation] = echoCancellation.jsValue + object[Strings.autoGainControl] = autoGainControl.jsValue + object[Strings.noiseSuppression] = noiseSuppression.jsValue + object[Strings.latency] = latency.jsValue + object[Strings.channelCount] = channelCount.jsValue + object[Strings.deviceId] = deviceId.jsValue + object[Strings.groupId] = groupId.jsValue + self.init(unsafelyWrapping: object) } - public static let MEDIA_ERR_ABORTED: UInt16 = 1 - - public static let MEDIA_ERR_NETWORK: UInt16 = 2 - - public static let MEDIA_ERR_DECODE: UInt16 = 3 + public required init(unsafelyWrapping object: JSObject) { + _width = ReadWriteAttribute(jsObject: object, name: Strings.width) + _height = ReadWriteAttribute(jsObject: object, name: Strings.height) + _aspectRatio = ReadWriteAttribute(jsObject: object, name: Strings.aspectRatio) + _frameRate = ReadWriteAttribute(jsObject: object, name: Strings.frameRate) + _facingMode = ReadWriteAttribute(jsObject: object, name: Strings.facingMode) + _resizeMode = ReadWriteAttribute(jsObject: object, name: Strings.resizeMode) + _sampleRate = ReadWriteAttribute(jsObject: object, name: Strings.sampleRate) + _sampleSize = ReadWriteAttribute(jsObject: object, name: Strings.sampleSize) + _echoCancellation = ReadWriteAttribute(jsObject: object, name: Strings.echoCancellation) + _autoGainControl = ReadWriteAttribute(jsObject: object, name: Strings.autoGainControl) + _noiseSuppression = ReadWriteAttribute(jsObject: object, name: Strings.noiseSuppression) + _latency = ReadWriteAttribute(jsObject: object, name: Strings.latency) + _channelCount = ReadWriteAttribute(jsObject: object, name: Strings.channelCount) + _deviceId = ReadWriteAttribute(jsObject: object, name: Strings.deviceId) + _groupId = ReadWriteAttribute(jsObject: object, name: Strings.groupId) + super.init(unsafelyWrapping: object) + } - public static let MEDIA_ERR_SRC_NOT_SUPPORTED: UInt16 = 4 + @ReadWriteAttribute + public var width: Int32 - @ReadonlyAttribute - public var code: UInt16 + @ReadWriteAttribute + public var height: Int32 - @ReadonlyAttribute - public var message: String -} + @ReadWriteAttribute + public var aspectRatio: Double -public class MediaQueryList: EventTarget { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaQueryList].function! } + @ReadWriteAttribute + public var frameRate: Double - public required init(unsafelyWrapping jsObject: JSObject) { - _media = ReadonlyAttribute(jsObject: jsObject, name: Strings.media) - _matches = ReadonlyAttribute(jsObject: jsObject, name: Strings.matches) - _onchange = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onchange) - super.init(unsafelyWrapping: jsObject) - } + @ReadWriteAttribute + public var facingMode: String - @ReadonlyAttribute - public var media: String + @ReadWriteAttribute + public var resizeMode: String - @ReadonlyAttribute - public var matches: Bool + @ReadWriteAttribute + public var sampleRate: Int32 - // XXX: member 'addListener' is ignored + @ReadWriteAttribute + public var sampleSize: Int32 - // XXX: member 'removeListener' is ignored + @ReadWriteAttribute + public var echoCancellation: Bool - @ClosureAttribute1Optional - public var onchange: EventHandler -} + @ReadWriteAttribute + public var autoGainControl: Bool -public class MediaQueryListEvent: Event { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.MediaQueryListEvent].function! } + @ReadWriteAttribute + public var noiseSuppression: Bool - public required init(unsafelyWrapping jsObject: JSObject) { - _media = ReadonlyAttribute(jsObject: jsObject, name: Strings.media) - _matches = ReadonlyAttribute(jsObject: jsObject, name: Strings.matches) - super.init(unsafelyWrapping: jsObject) - } + @ReadWriteAttribute + public var latency: Double - @inlinable public convenience init(type: String, eventInitDict: MediaQueryListEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) - } + @ReadWriteAttribute + public var channelCount: Int32 - @ReadonlyAttribute - public var media: String + @ReadWriteAttribute + public var deviceId: String - @ReadonlyAttribute - public var matches: Bool + @ReadWriteAttribute + public var groupId: String } -public class MediaQueryListEventInit: BridgedDictionary { - public convenience init(media: String, matches: Bool) { +public class MediaTrackSupportedConstraints: BridgedDictionary { + public convenience init(width: Bool, height: Bool, aspectRatio: Bool, frameRate: Bool, facingMode: Bool, resizeMode: Bool, sampleRate: Bool, sampleSize: Bool, echoCancellation: Bool, autoGainControl: Bool, noiseSuppression: Bool, latency: Bool, channelCount: Bool, deviceId: Bool, groupId: Bool) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.media] = media.jsValue - object[Strings.matches] = matches.jsValue + object[Strings.width] = width.jsValue + object[Strings.height] = height.jsValue + object[Strings.aspectRatio] = aspectRatio.jsValue + object[Strings.frameRate] = frameRate.jsValue + object[Strings.facingMode] = facingMode.jsValue + object[Strings.resizeMode] = resizeMode.jsValue + object[Strings.sampleRate] = sampleRate.jsValue + object[Strings.sampleSize] = sampleSize.jsValue + object[Strings.echoCancellation] = echoCancellation.jsValue + object[Strings.autoGainControl] = autoGainControl.jsValue + object[Strings.noiseSuppression] = noiseSuppression.jsValue + object[Strings.latency] = latency.jsValue + object[Strings.channelCount] = channelCount.jsValue + object[Strings.deviceId] = deviceId.jsValue + object[Strings.groupId] = groupId.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _media = ReadWriteAttribute(jsObject: object, name: Strings.media) - _matches = ReadWriteAttribute(jsObject: object, name: Strings.matches) + _width = ReadWriteAttribute(jsObject: object, name: Strings.width) + _height = ReadWriteAttribute(jsObject: object, name: Strings.height) + _aspectRatio = ReadWriteAttribute(jsObject: object, name: Strings.aspectRatio) + _frameRate = ReadWriteAttribute(jsObject: object, name: Strings.frameRate) + _facingMode = ReadWriteAttribute(jsObject: object, name: Strings.facingMode) + _resizeMode = ReadWriteAttribute(jsObject: object, name: Strings.resizeMode) + _sampleRate = ReadWriteAttribute(jsObject: object, name: Strings.sampleRate) + _sampleSize = ReadWriteAttribute(jsObject: object, name: Strings.sampleSize) + _echoCancellation = ReadWriteAttribute(jsObject: object, name: Strings.echoCancellation) + _autoGainControl = ReadWriteAttribute(jsObject: object, name: Strings.autoGainControl) + _noiseSuppression = ReadWriteAttribute(jsObject: object, name: Strings.noiseSuppression) + _latency = ReadWriteAttribute(jsObject: object, name: Strings.latency) + _channelCount = ReadWriteAttribute(jsObject: object, name: Strings.channelCount) + _deviceId = ReadWriteAttribute(jsObject: object, name: Strings.deviceId) + _groupId = ReadWriteAttribute(jsObject: object, name: Strings.groupId) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var media: String + public var width: Bool @ReadWriteAttribute - public var matches: Bool + public var height: Bool + + @ReadWriteAttribute + public var aspectRatio: Bool + + @ReadWriteAttribute + public var frameRate: Bool + + @ReadWriteAttribute + public var facingMode: Bool + + @ReadWriteAttribute + public var resizeMode: Bool + + @ReadWriteAttribute + public var sampleRate: Bool + + @ReadWriteAttribute + public var sampleSize: Bool + + @ReadWriteAttribute + public var echoCancellation: Bool + + @ReadWriteAttribute + public var autoGainControl: Bool + + @ReadWriteAttribute + public var noiseSuppression: Bool + + @ReadWriteAttribute + public var latency: Bool + + @ReadWriteAttribute + public var channelCount: Bool + + @ReadWriteAttribute + public var deviceId: Bool + + @ReadWriteAttribute + public var groupId: Bool } public class MessageChannel: JSBridgedClass { @@ -10742,11 +13107,17 @@ public class Navigator: JSBridgedClass, NavigatorID, NavigatorLanguage, Navigato public required init(unsafelyWrapping jsObject: JSObject) { _serviceWorker = ReadonlyAttribute(jsObject: jsObject, name: Strings.serviceWorker) + _mediaDevices = ReadonlyAttribute(jsObject: jsObject, name: Strings.mediaDevices) self.jsObject = jsObject } @ReadonlyAttribute public var serviceWorker: ServiceWorkerContainer + + @ReadonlyAttribute + public var mediaDevices: MediaDevices + + // XXX: member 'getUserMedia' is ignored } public protocol NavigatorConcurrentHardware: JSBridgedClass {} @@ -11028,58 +13399,176 @@ public class NodeIterator: JSBridgedClass { // XXX: member 'filter' is ignored - @inlinable public func nextNode() -> Node? { + @inlinable public func nextNode() -> Node? { + let this = jsObject + return this[Strings.nextNode].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public func previousNode() -> Node? { + let this = jsObject + return this[Strings.previousNode].function!(this: this, arguments: []).fromJSValue()! + } + + @inlinable public func detach() { + let this = jsObject + _ = this[Strings.detach].function!(this: this, arguments: []) + } +} + +public class NodeList: JSBridgedClass, Sequence { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.NodeList].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + self.jsObject = jsObject + } + + @inlinable public subscript(key: Int) -> Node? { + jsObject[key].fromJSValue() + } + + @ReadonlyAttribute + public var length: UInt32 + + public typealias Element = Node + public func makeIterator() -> ValueIterableIterator { + ValueIterableIterator(sequence: self) + } +} + +public protocol NonDocumentTypeChildNode: JSBridgedClass {} +public extension NonDocumentTypeChildNode { + @inlinable var previousElementSibling: Element? { ReadonlyAttribute[Strings.previousElementSibling, in: jsObject] } + + @inlinable var nextElementSibling: Element? { ReadonlyAttribute[Strings.nextElementSibling, in: jsObject] } +} + +public protocol NonElementParentNode: JSBridgedClass {} +public extension NonElementParentNode { + @inlinable func getElementById(elementId: String) -> Element? { + let this = jsObject + return this[Strings.getElementById].function!(this: this, arguments: [elementId.jsValue]).fromJSValue()! + } +} + +public class OfflineAudioCompletionEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.OfflineAudioCompletionEvent].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _renderedBuffer = ReadonlyAttribute(jsObject: jsObject, name: Strings.renderedBuffer) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(type: String, eventInitDict: OfflineAudioCompletionEventInit) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict.jsValue])) + } + + @ReadonlyAttribute + public var renderedBuffer: AudioBuffer +} + +public class OfflineAudioCompletionEventInit: BridgedDictionary { + public convenience init(renderedBuffer: AudioBuffer) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.renderedBuffer] = renderedBuffer.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _renderedBuffer = ReadWriteAttribute(jsObject: object, name: Strings.renderedBuffer) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var renderedBuffer: AudioBuffer +} + +public class OfflineAudioContext: BaseAudioContext { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.OfflineAudioContext].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) + _oncomplete = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.oncomplete) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(contextOptions: OfflineAudioContextOptions) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [contextOptions.jsValue])) + } + + @inlinable public convenience init(numberOfChannels: UInt32, length: UInt32, sampleRate: Float) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [numberOfChannels.jsValue, length.jsValue, sampleRate.jsValue])) + } + + @inlinable public func startRendering() -> JSPromise { let this = jsObject - return this[Strings.nextNode].function!(this: this, arguments: []).fromJSValue()! + return this[Strings.startRendering].function!(this: this, arguments: []).fromJSValue()! } - @inlinable public func previousNode() -> Node? { + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func startRendering() async throws -> AudioBuffer { let this = jsObject - return this[Strings.previousNode].function!(this: this, arguments: []).fromJSValue()! + let _promise: JSPromise = this[Strings.startRendering].function!(this: this, arguments: []).fromJSValue()! + return try await _promise.value.fromJSValue()! } - @inlinable public func detach() { + @inlinable public func resume() -> JSPromise { let this = jsObject - _ = this[Strings.detach].function!(this: this, arguments: []) + return this[Strings.resume].function!(this: this, arguments: []).fromJSValue()! } -} - -public class NodeList: JSBridgedClass, Sequence { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.NodeList].function! } - public let jsObject: JSObject + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func resume() async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.resume].function!(this: this, arguments: []).fromJSValue()! + _ = try await _promise.value + } - public required init(unsafelyWrapping jsObject: JSObject) { - _length = ReadonlyAttribute(jsObject: jsObject, name: Strings.length) - self.jsObject = jsObject + @inlinable public func suspend(suspendTime: Double) -> JSPromise { + let this = jsObject + return this[Strings.suspend].function!(this: this, arguments: [suspendTime.jsValue]).fromJSValue()! } - @inlinable public subscript(key: Int) -> Node? { - jsObject[key].fromJSValue() + @available(macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *) + @inlinable public func suspend(suspendTime: Double) async throws { + let this = jsObject + let _promise: JSPromise = this[Strings.suspend].function!(this: this, arguments: [suspendTime.jsValue]).fromJSValue()! + _ = try await _promise.value } @ReadonlyAttribute public var length: UInt32 - public typealias Element = Node - public func makeIterator() -> ValueIterableIterator { - ValueIterableIterator(sequence: self) - } + @ClosureAttribute1Optional + public var oncomplete: EventHandler } -public protocol NonDocumentTypeChildNode: JSBridgedClass {} -public extension NonDocumentTypeChildNode { - @inlinable var previousElementSibling: Element? { ReadonlyAttribute[Strings.previousElementSibling, in: jsObject] } - - @inlinable var nextElementSibling: Element? { ReadonlyAttribute[Strings.nextElementSibling, in: jsObject] } -} +public class OfflineAudioContextOptions: BridgedDictionary { + public convenience init(numberOfChannels: UInt32, length: UInt32, sampleRate: Float) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.numberOfChannels] = numberOfChannels.jsValue + object[Strings.length] = length.jsValue + object[Strings.sampleRate] = sampleRate.jsValue + self.init(unsafelyWrapping: object) + } -public protocol NonElementParentNode: JSBridgedClass {} -public extension NonElementParentNode { - @inlinable func getElementById(elementId: String) -> Element? { - let this = jsObject - return this[Strings.getElementById].function!(this: this, arguments: [elementId.jsValue]).fromJSValue()! + public required init(unsafelyWrapping object: JSObject) { + _numberOfChannels = ReadWriteAttribute(jsObject: object, name: Strings.numberOfChannels) + _length = ReadWriteAttribute(jsObject: object, name: Strings.length) + _sampleRate = ReadWriteAttribute(jsObject: object, name: Strings.sampleRate) + super.init(unsafelyWrapping: object) } + + @ReadWriteAttribute + public var numberOfChannels: UInt32 + + @ReadWriteAttribute + public var length: UInt32 + + @ReadWriteAttribute + public var sampleRate: Float } public class OffscreenCanvas: EventTarget { @@ -11132,127 +13621,420 @@ public class OffscreenCanvas: EventTarget { public var oncontextrestored: EventHandler } -public class OffscreenCanvasRenderingContext2D: JSBridgedClass, CanvasState, CanvasTransform, CanvasCompositing, CanvasImageSmoothing, CanvasFillStrokeStyles, CanvasShadowStyles, CanvasFilters, CanvasRect, CanvasDrawPath, CanvasText, CanvasDrawImage, CanvasImageData, CanvasPathDrawingStyles, CanvasTextDrawingStyles, CanvasPath { - @inlinable public class var constructor: JSFunction { JSObject.global[Strings.OffscreenCanvasRenderingContext2D].function! } - - public let jsObject: JSObject +public class OffscreenCanvasRenderingContext2D: JSBridgedClass, CanvasState, CanvasTransform, CanvasCompositing, CanvasImageSmoothing, CanvasFillStrokeStyles, CanvasShadowStyles, CanvasFilters, CanvasRect, CanvasDrawPath, CanvasText, CanvasDrawImage, CanvasImageData, CanvasPathDrawingStyles, CanvasTextDrawingStyles, CanvasPath { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.OffscreenCanvasRenderingContext2D].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + _canvas = ReadonlyAttribute(jsObject: jsObject, name: Strings.canvas) + self.jsObject = jsObject + } + + @inlinable public func commit() { + let this = jsObject + _ = this[Strings.commit].function!(this: this, arguments: []) + } + + @ReadonlyAttribute + public var canvas: OffscreenCanvas +} + +public enum OffscreenRenderingContextId: JSString, JSValueCompatible { + case _2d = "2d" + case bitmaprenderer = "bitmaprenderer" + case webgl = "webgl" + case webgl2 = "webgl2" + case webgpu = "webgpu" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class OptionalEffectTiming: BridgedDictionary { + public convenience init(delay: Double, endDelay: Double, fill: FillMode, iterationStart: Double, iterations: Double, duration: Double_or_String, direction: PlaybackDirection, easing: String) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.delay] = delay.jsValue + object[Strings.endDelay] = endDelay.jsValue + object[Strings.fill] = fill.jsValue + object[Strings.iterationStart] = iterationStart.jsValue + object[Strings.iterations] = iterations.jsValue + object[Strings.duration] = duration.jsValue + object[Strings.direction] = direction.jsValue + object[Strings.easing] = easing.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _delay = ReadWriteAttribute(jsObject: object, name: Strings.delay) + _endDelay = ReadWriteAttribute(jsObject: object, name: Strings.endDelay) + _fill = ReadWriteAttribute(jsObject: object, name: Strings.fill) + _iterationStart = ReadWriteAttribute(jsObject: object, name: Strings.iterationStart) + _iterations = ReadWriteAttribute(jsObject: object, name: Strings.iterations) + _duration = ReadWriteAttribute(jsObject: object, name: Strings.duration) + _direction = ReadWriteAttribute(jsObject: object, name: Strings.direction) + _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var delay: Double + + @ReadWriteAttribute + public var endDelay: Double + + @ReadWriteAttribute + public var fill: FillMode + + @ReadWriteAttribute + public var iterationStart: Double + + @ReadWriteAttribute + public var iterations: Double + + @ReadWriteAttribute + public var duration: Double_or_String + + @ReadWriteAttribute + public var direction: PlaybackDirection + + @ReadWriteAttribute + public var easing: String +} + +public class OscillatorNode: AudioScheduledSourceNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.OscillatorNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _type = ReadWriteAttribute(jsObject: jsObject, name: Strings.type) + _frequency = ReadonlyAttribute(jsObject: jsObject, name: Strings.frequency) + _detune = ReadonlyAttribute(jsObject: jsObject, name: Strings.detune) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: OscillatorOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } + + @ReadWriteAttribute + public var type: OscillatorType + + @ReadonlyAttribute + public var frequency: AudioParam + + @ReadonlyAttribute + public var detune: AudioParam + + @inlinable public func setPeriodicWave(periodicWave: PeriodicWave) { + let this = jsObject + _ = this[Strings.setPeriodicWave].function!(this: this, arguments: [periodicWave.jsValue]) + } +} + +public class OscillatorOptions: BridgedDictionary { + public convenience init(type: OscillatorType, frequency: Float, detune: Float, periodicWave: PeriodicWave) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.type] = type.jsValue + object[Strings.frequency] = frequency.jsValue + object[Strings.detune] = detune.jsValue + object[Strings.periodicWave] = periodicWave.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _type = ReadWriteAttribute(jsObject: object, name: Strings.type) + _frequency = ReadWriteAttribute(jsObject: object, name: Strings.frequency) + _detune = ReadWriteAttribute(jsObject: object, name: Strings.detune) + _periodicWave = ReadWriteAttribute(jsObject: object, name: Strings.periodicWave) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var type: OscillatorType + + @ReadWriteAttribute + public var frequency: Float + + @ReadWriteAttribute + public var detune: Float + + @ReadWriteAttribute + public var periodicWave: PeriodicWave +} + +public enum OscillatorType: JSString, JSValueCompatible { + case sine = "sine" + case square = "square" + case sawtooth = "sawtooth" + case triangle = "triangle" + case custom = "custom" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public enum OverSampleType: JSString, JSValueCompatible { + case none = "none" + case _2x = "2x" + case _4x = "4x" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public class OverconstrainedError: DOMException { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.OverconstrainedError].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _constraint = ReadonlyAttribute(jsObject: jsObject, name: Strings.constraint) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(constraint: String, message: String? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [constraint.jsValue, message?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var constraint: String +} + +public class PageTransitionEvent: Event { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.PageTransitionEvent].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _persisted = ReadonlyAttribute(jsObject: jsObject, name: Strings.persisted) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(type: String, eventInitDict: PageTransitionEventInit? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var persisted: Bool +} + +public class PageTransitionEventInit: BridgedDictionary { + public convenience init(persisted: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.persisted] = persisted.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _persisted = ReadWriteAttribute(jsObject: object, name: Strings.persisted) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var persisted: Bool +} + +public class PannerNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.PannerNode].function! } public required init(unsafelyWrapping jsObject: JSObject) { - _canvas = ReadonlyAttribute(jsObject: jsObject, name: Strings.canvas) - self.jsObject = jsObject + _panningModel = ReadWriteAttribute(jsObject: jsObject, name: Strings.panningModel) + _positionX = ReadonlyAttribute(jsObject: jsObject, name: Strings.positionX) + _positionY = ReadonlyAttribute(jsObject: jsObject, name: Strings.positionY) + _positionZ = ReadonlyAttribute(jsObject: jsObject, name: Strings.positionZ) + _orientationX = ReadonlyAttribute(jsObject: jsObject, name: Strings.orientationX) + _orientationY = ReadonlyAttribute(jsObject: jsObject, name: Strings.orientationY) + _orientationZ = ReadonlyAttribute(jsObject: jsObject, name: Strings.orientationZ) + _distanceModel = ReadWriteAttribute(jsObject: jsObject, name: Strings.distanceModel) + _refDistance = ReadWriteAttribute(jsObject: jsObject, name: Strings.refDistance) + _maxDistance = ReadWriteAttribute(jsObject: jsObject, name: Strings.maxDistance) + _rolloffFactor = ReadWriteAttribute(jsObject: jsObject, name: Strings.rolloffFactor) + _coneInnerAngle = ReadWriteAttribute(jsObject: jsObject, name: Strings.coneInnerAngle) + _coneOuterAngle = ReadWriteAttribute(jsObject: jsObject, name: Strings.coneOuterAngle) + _coneOuterGain = ReadWriteAttribute(jsObject: jsObject, name: Strings.coneOuterGain) + super.init(unsafelyWrapping: jsObject) } - @inlinable public func commit() { - let this = jsObject - _ = this[Strings.commit].function!(this: this, arguments: []) + @inlinable public convenience init(context: BaseAudioContext, options: PannerOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) } + @ReadWriteAttribute + public var panningModel: PanningModelType + @ReadonlyAttribute - public var canvas: OffscreenCanvas -} + public var positionX: AudioParam -public enum OffscreenRenderingContextId: JSString, JSValueCompatible { - case _2d = "2d" - case bitmaprenderer = "bitmaprenderer" - case webgl = "webgl" - case webgl2 = "webgl2" - case webgpu = "webgpu" + @ReadonlyAttribute + public var positionY: AudioParam - @inlinable public static func construct(from jsValue: JSValue) -> Self? { - if let string = jsValue.jsString { - return Self(rawValue: string) - } - return nil - } + @ReadonlyAttribute + public var positionZ: AudioParam - @inlinable public init?(string: String) { - self.init(rawValue: JSString(string)) + @ReadonlyAttribute + public var orientationX: AudioParam + + @ReadonlyAttribute + public var orientationY: AudioParam + + @ReadonlyAttribute + public var orientationZ: AudioParam + + @ReadWriteAttribute + public var distanceModel: DistanceModelType + + @ReadWriteAttribute + public var refDistance: Double + + @ReadWriteAttribute + public var maxDistance: Double + + @ReadWriteAttribute + public var rolloffFactor: Double + + @ReadWriteAttribute + public var coneInnerAngle: Double + + @ReadWriteAttribute + public var coneOuterAngle: Double + + @ReadWriteAttribute + public var coneOuterGain: Double + + @inlinable public func setPosition(x: Float, y: Float, z: Float) { + let this = jsObject + _ = this[Strings.setPosition].function!(this: this, arguments: [x.jsValue, y.jsValue, z.jsValue]) } - @inlinable public var jsValue: JSValue { rawValue.jsValue } + @inlinable public func setOrientation(x: Float, y: Float, z: Float) { + let this = jsObject + _ = this[Strings.setOrientation].function!(this: this, arguments: [x.jsValue, y.jsValue, z.jsValue]) + } } -public class OptionalEffectTiming: BridgedDictionary { - public convenience init(delay: Double, endDelay: Double, fill: FillMode, iterationStart: Double, iterations: Double, duration: Double_or_String, direction: PlaybackDirection, easing: String) { +public class PannerOptions: BridgedDictionary { + public convenience init(panningModel: PanningModelType, distanceModel: DistanceModelType, positionX: Float, positionY: Float, positionZ: Float, orientationX: Float, orientationY: Float, orientationZ: Float, refDistance: Double, maxDistance: Double, rolloffFactor: Double, coneInnerAngle: Double, coneOuterAngle: Double, coneOuterGain: Double) { let object = JSObject.global[Strings.Object].function!.new() - object[Strings.delay] = delay.jsValue - object[Strings.endDelay] = endDelay.jsValue - object[Strings.fill] = fill.jsValue - object[Strings.iterationStart] = iterationStart.jsValue - object[Strings.iterations] = iterations.jsValue - object[Strings.duration] = duration.jsValue - object[Strings.direction] = direction.jsValue - object[Strings.easing] = easing.jsValue + object[Strings.panningModel] = panningModel.jsValue + object[Strings.distanceModel] = distanceModel.jsValue + object[Strings.positionX] = positionX.jsValue + object[Strings.positionY] = positionY.jsValue + object[Strings.positionZ] = positionZ.jsValue + object[Strings.orientationX] = orientationX.jsValue + object[Strings.orientationY] = orientationY.jsValue + object[Strings.orientationZ] = orientationZ.jsValue + object[Strings.refDistance] = refDistance.jsValue + object[Strings.maxDistance] = maxDistance.jsValue + object[Strings.rolloffFactor] = rolloffFactor.jsValue + object[Strings.coneInnerAngle] = coneInnerAngle.jsValue + object[Strings.coneOuterAngle] = coneOuterAngle.jsValue + object[Strings.coneOuterGain] = coneOuterGain.jsValue self.init(unsafelyWrapping: object) } public required init(unsafelyWrapping object: JSObject) { - _delay = ReadWriteAttribute(jsObject: object, name: Strings.delay) - _endDelay = ReadWriteAttribute(jsObject: object, name: Strings.endDelay) - _fill = ReadWriteAttribute(jsObject: object, name: Strings.fill) - _iterationStart = ReadWriteAttribute(jsObject: object, name: Strings.iterationStart) - _iterations = ReadWriteAttribute(jsObject: object, name: Strings.iterations) - _duration = ReadWriteAttribute(jsObject: object, name: Strings.duration) - _direction = ReadWriteAttribute(jsObject: object, name: Strings.direction) - _easing = ReadWriteAttribute(jsObject: object, name: Strings.easing) + _panningModel = ReadWriteAttribute(jsObject: object, name: Strings.panningModel) + _distanceModel = ReadWriteAttribute(jsObject: object, name: Strings.distanceModel) + _positionX = ReadWriteAttribute(jsObject: object, name: Strings.positionX) + _positionY = ReadWriteAttribute(jsObject: object, name: Strings.positionY) + _positionZ = ReadWriteAttribute(jsObject: object, name: Strings.positionZ) + _orientationX = ReadWriteAttribute(jsObject: object, name: Strings.orientationX) + _orientationY = ReadWriteAttribute(jsObject: object, name: Strings.orientationY) + _orientationZ = ReadWriteAttribute(jsObject: object, name: Strings.orientationZ) + _refDistance = ReadWriteAttribute(jsObject: object, name: Strings.refDistance) + _maxDistance = ReadWriteAttribute(jsObject: object, name: Strings.maxDistance) + _rolloffFactor = ReadWriteAttribute(jsObject: object, name: Strings.rolloffFactor) + _coneInnerAngle = ReadWriteAttribute(jsObject: object, name: Strings.coneInnerAngle) + _coneOuterAngle = ReadWriteAttribute(jsObject: object, name: Strings.coneOuterAngle) + _coneOuterGain = ReadWriteAttribute(jsObject: object, name: Strings.coneOuterGain) super.init(unsafelyWrapping: object) } @ReadWriteAttribute - public var delay: Double + public var panningModel: PanningModelType @ReadWriteAttribute - public var endDelay: Double + public var distanceModel: DistanceModelType @ReadWriteAttribute - public var fill: FillMode + public var positionX: Float @ReadWriteAttribute - public var iterationStart: Double + public var positionY: Float @ReadWriteAttribute - public var iterations: Double + public var positionZ: Float @ReadWriteAttribute - public var duration: Double_or_String + public var orientationX: Float @ReadWriteAttribute - public var direction: PlaybackDirection + public var orientationY: Float @ReadWriteAttribute - public var easing: String -} + public var orientationZ: Float -public class PageTransitionEvent: Event { - @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.PageTransitionEvent].function! } + @ReadWriteAttribute + public var refDistance: Double - public required init(unsafelyWrapping jsObject: JSObject) { - _persisted = ReadonlyAttribute(jsObject: jsObject, name: Strings.persisted) - super.init(unsafelyWrapping: jsObject) - } + @ReadWriteAttribute + public var maxDistance: Double - @inlinable public convenience init(type: String, eventInitDict: PageTransitionEventInit? = nil) { - self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined])) - } + @ReadWriteAttribute + public var rolloffFactor: Double - @ReadonlyAttribute - public var persisted: Bool + @ReadWriteAttribute + public var coneInnerAngle: Double + + @ReadWriteAttribute + public var coneOuterAngle: Double + + @ReadWriteAttribute + public var coneOuterGain: Double } -public class PageTransitionEventInit: BridgedDictionary { - public convenience init(persisted: Bool) { - let object = JSObject.global[Strings.Object].function!.new() - object[Strings.persisted] = persisted.jsValue - self.init(unsafelyWrapping: object) +public enum PanningModelType: JSString, JSValueCompatible { + case equalpower = "equalpower" + case hRTF = "HRTF" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil } - public required init(unsafelyWrapping object: JSObject) { - _persisted = ReadWriteAttribute(jsObject: object, name: Strings.persisted) - super.init(unsafelyWrapping: object) + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) } - @ReadWriteAttribute - public var persisted: Bool + @inlinable public var jsValue: JSValue { rawValue.jsValue } } public protocol ParentNode: JSBridgedClass {} @@ -11332,6 +14114,57 @@ public class Performance: EventTarget { } } +public class PeriodicWave: JSBridgedClass { + @inlinable public class var constructor: JSFunction { JSObject.global[Strings.PeriodicWave].function! } + + public let jsObject: JSObject + + public required init(unsafelyWrapping jsObject: JSObject) { + self.jsObject = jsObject + } + + @inlinable public convenience init(context: BaseAudioContext, options: PeriodicWaveOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } +} + +public class PeriodicWaveConstraints: BridgedDictionary { + public convenience init(disableNormalization: Bool) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.disableNormalization] = disableNormalization.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _disableNormalization = ReadWriteAttribute(jsObject: object, name: Strings.disableNormalization) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var disableNormalization: Bool +} + +public class PeriodicWaveOptions: BridgedDictionary { + public convenience init(real: [Float], imag: [Float]) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.real] = real.jsValue + object[Strings.imag] = imag.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _real = ReadWriteAttribute(jsObject: object, name: Strings.real) + _imag = ReadWriteAttribute(jsObject: object, name: Strings.imag) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var real: [Float] + + @ReadWriteAttribute + public var imag: [Float] +} + public enum PlaybackDirection: JSString, JSValueCompatible { case normal = "normal" case reverse = "reverse" @@ -12610,6 +15443,22 @@ public class Screen: JSBridgedClass { public var pixelDepth: UInt32 } +public class ScriptProcessorNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.ScriptProcessorNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _onaudioprocess = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onaudioprocess) + _bufferSize = ReadonlyAttribute(jsObject: jsObject, name: Strings.bufferSize) + super.init(unsafelyWrapping: jsObject) + } + + @ClosureAttribute1Optional + public var onaudioprocess: EventHandler + + @ReadonlyAttribute + public var bufferSize: Int32 +} + public enum ScrollBehavior: JSString, JSValueCompatible { case auto = "auto" case smooth = "smooth" @@ -13098,6 +15947,38 @@ public class StaticRangeInit: BridgedDictionary { public var endOffset: UInt32 } +public class StereoPannerNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.StereoPannerNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _pan = ReadonlyAttribute(jsObject: jsObject, name: Strings.pan) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: StereoPannerOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } + + @ReadonlyAttribute + public var pan: AudioParam +} + +public class StereoPannerOptions: BridgedDictionary { + public convenience init(pan: Float) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.pan] = pan.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _pan = ReadWriteAttribute(jsObject: object, name: Strings.pan) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var pan: Float +} + public class Storage: JSBridgedClass { @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Storage].function! } @@ -13807,6 +16688,11 @@ public typealias TransformerStartCallback = (TransformStreamDefaultController) - public typealias TransformerFlushCallback = (TransformStreamDefaultController) -> JSPromise public typealias TransformerTransformCallback = (JSValue, TransformStreamDefaultController) -> JSPromise public typealias QueuingStrategySize = (JSValue) -> Double +public typealias NavigatorUserMediaSuccessCallback = (MediaStream) -> Void +public typealias NavigatorUserMediaErrorCallback = (DOMException) -> Void +public typealias DecodeErrorCallback = (DOMException) -> Void +public typealias DecodeSuccessCallback = (AudioBuffer) -> Void +public typealias AudioWorkletProcessCallback = ([[Float32Array]], [[Float32Array]], JSObject) -> Bool public class UIEvent: Event { @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.UIEvent].function! } @@ -13862,6 +16748,27 @@ public class UIEventInit: BridgedDictionary { public var which: UInt32 } +public class ULongRange: BridgedDictionary { + public convenience init(max: UInt32, min: UInt32) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.max] = max.jsValue + object[Strings.min] = min.jsValue + self.init(unsafelyWrapping: object) + } + + public required init(unsafelyWrapping object: JSObject) { + _max = ReadWriteAttribute(jsObject: object, name: Strings.max) + _min = ReadWriteAttribute(jsObject: object, name: Strings.min) + super.init(unsafelyWrapping: object) + } + + @ReadWriteAttribute + public var max: UInt32 + + @ReadWriteAttribute + public var min: UInt32 +} + public class URL: JSBridgedClass { @inlinable public class var constructor: JSFunction { JSObject.global[Strings.URL].function! } @@ -14184,6 +17091,44 @@ public class ValidityStateFlags: BridgedDictionary { public var customError: Bool } +public enum VideoFacingModeEnum: JSString, JSValueCompatible { + case user = "user" + case environment = "environment" + case left = "left" + case right = "right" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + +public enum VideoResizeModeEnum: JSString, JSValueCompatible { + case none = "none" + case cropAndScale = "crop-and-scale" + + @inlinable public static func construct(from jsValue: JSValue) -> Self? { + if let string = jsValue.jsString { + return Self(rawValue: string) + } + return nil + } + + @inlinable public init?(string: String) { + self.init(rawValue: JSString(string)) + } + + @inlinable public var jsValue: JSValue { rawValue.jsValue } +} + public class VideoTrack: JSBridgedClass { @inlinable public class var constructor: JSFunction { JSObject.global[Strings.VideoTrack].function! } @@ -14238,17 +17183,58 @@ public class VideoTrackList: EventTarget { return this[Strings.getTrackById].function!(this: this, arguments: [id.jsValue]).fromJSValue()! } - @ReadonlyAttribute - public var selectedIndex: Int32 + @ReadonlyAttribute + public var selectedIndex: Int32 + + @ClosureAttribute1Optional + public var onchange: EventHandler + + @ClosureAttribute1Optional + public var onaddtrack: EventHandler + + @ClosureAttribute1Optional + public var onremovetrack: EventHandler +} + +public class WaveShaperNode: AudioNode { + @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.WaveShaperNode].function! } + + public required init(unsafelyWrapping jsObject: JSObject) { + _curve = ReadWriteAttribute(jsObject: jsObject, name: Strings.curve) + _oversample = ReadWriteAttribute(jsObject: jsObject, name: Strings.oversample) + super.init(unsafelyWrapping: jsObject) + } + + @inlinable public convenience init(context: BaseAudioContext, options: WaveShaperOptions? = nil) { + self.init(unsafelyWrapping: Self.constructor.new(arguments: [context.jsValue, options?.jsValue ?? .undefined])) + } + + @ReadWriteAttribute + public var curve: Float32Array? + + @ReadWriteAttribute + public var oversample: OverSampleType +} + +public class WaveShaperOptions: BridgedDictionary { + public convenience init(curve: [Float], oversample: OverSampleType) { + let object = JSObject.global[Strings.Object].function!.new() + object[Strings.curve] = curve.jsValue + object[Strings.oversample] = oversample.jsValue + self.init(unsafelyWrapping: object) + } - @ClosureAttribute1Optional - public var onchange: EventHandler + public required init(unsafelyWrapping object: JSObject) { + _curve = ReadWriteAttribute(jsObject: object, name: Strings.curve) + _oversample = ReadWriteAttribute(jsObject: object, name: Strings.oversample) + super.init(unsafelyWrapping: object) + } - @ClosureAttribute1Optional - public var onaddtrack: EventHandler + @ReadWriteAttribute + public var curve: [Float] - @ClosureAttribute1Optional - public var onremovetrack: EventHandler + @ReadWriteAttribute + public var oversample: OverSampleType } public class WebSocket: EventTarget { @@ -15977,6 +18963,70 @@ public enum console { } } +@propertyWrapper public final class ClosureAttribute3 + where A0: JSValueCompatible, A1: JSValueCompatible, A2: JSValueCompatible, ReturnType: JSValueCompatible +{ + @usableFromInline let jsObject: JSObject + @usableFromInline let name: JSString + + public init(jsObject: JSObject, name: JSString) { + self.jsObject = jsObject + self.name = name + } + + @inlinable public var wrappedValue: (A0, A1, A2) -> ReturnType { + get { ClosureAttribute3[name, in: jsObject] } + set { ClosureAttribute3[name, in: jsObject] = newValue } + } + + @inlinable public static subscript(name: JSString, in jsObject: JSObject) -> (A0, A1, A2) -> ReturnType { + get { + let function = jsObject[name].function! + return { function($0.jsValue, $1.jsValue, $2.jsValue).fromJSValue()! } + } + set { + jsObject[name] = JSClosure { + newValue($0[0].fromJSValue()!, $0[1].fromJSValue()!, $0[2].fromJSValue()!).jsValue + }.jsValue + } + } +} + +@propertyWrapper public final class ClosureAttribute3Optional + where A0: JSValueCompatible, A1: JSValueCompatible, A2: JSValueCompatible, ReturnType: JSValueCompatible +{ + @usableFromInline let jsObject: JSObject + @usableFromInline let name: JSString + + public init(jsObject: JSObject, name: JSString) { + self.jsObject = jsObject + self.name = name + } + + @inlinable public var wrappedValue: ((A0, A1, A2) -> ReturnType)? { + get { ClosureAttribute3Optional[name, in: jsObject] } + set { ClosureAttribute3Optional[name, in: jsObject] = newValue } + } + + @inlinable public static subscript(name: JSString, in jsObject: JSObject) -> ((A0, A1, A2) -> ReturnType)? { + get { + guard let function = jsObject[name].function else { + return nil + } + return { function($0.jsValue, $1.jsValue, $2.jsValue).fromJSValue()! } + } + set { + if let newValue = newValue { + jsObject[name] = JSClosure { + newValue($0[0].fromJSValue()!, $0[1].fromJSValue()!, $0[2].fromJSValue()!).jsValue + }.jsValue + } else { + jsObject[name] = .null + } + } + } +} + @propertyWrapper public final class ClosureAttribute5 where A0: JSValueCompatible, A1: JSValueCompatible, A2: JSValueCompatible, A3: JSValueCompatible, A4: JSValueCompatible, ReturnType: JSValueCompatible { @@ -16047,14 +19097,29 @@ public enum console { @usableFromInline static let AbortSignal: JSString = "AbortSignal" @usableFromInline static let AbstractRange: JSString = "AbstractRange" @usableFromInline static let AddSearchProvider: JSString = "AddSearchProvider" + @usableFromInline static let AnalyserNode: JSString = "AnalyserNode" @usableFromInline static let Animation: JSString = "Animation" @usableFromInline static let AnimationEffect: JSString = "AnimationEffect" @usableFromInline static let AnimationTimeline: JSString = "AnimationTimeline" @usableFromInline static let Attr: JSString = "Attr" + @usableFromInline static let AudioBuffer: JSString = "AudioBuffer" + @usableFromInline static let AudioBufferSourceNode: JSString = "AudioBufferSourceNode" + @usableFromInline static let AudioContext: JSString = "AudioContext" + @usableFromInline static let AudioDestinationNode: JSString = "AudioDestinationNode" + @usableFromInline static let AudioListener: JSString = "AudioListener" + @usableFromInline static let AudioNode: JSString = "AudioNode" + @usableFromInline static let AudioParam: JSString = "AudioParam" + @usableFromInline static let AudioParamMap: JSString = "AudioParamMap" + @usableFromInline static let AudioProcessingEvent: JSString = "AudioProcessingEvent" + @usableFromInline static let AudioScheduledSourceNode: JSString = "AudioScheduledSourceNode" @usableFromInline static let AudioTrack: JSString = "AudioTrack" @usableFromInline static let AudioTrackList: JSString = "AudioTrackList" + @usableFromInline static let AudioWorklet: JSString = "AudioWorklet" + @usableFromInline static let AudioWorkletNode: JSString = "AudioWorkletNode" @usableFromInline static let BarProp: JSString = "BarProp" + @usableFromInline static let BaseAudioContext: JSString = "BaseAudioContext" @usableFromInline static let BeforeUnloadEvent: JSString = "BeforeUnloadEvent" + @usableFromInline static let BiquadFilterNode: JSString = "BiquadFilterNode" @usableFromInline static let Blob: JSString = "Blob" @usableFromInline static let BroadcastChannel: JSString = "BroadcastChannel" @usableFromInline static let ByteLengthQueuingStrategy: JSString = "ByteLengthQueuingStrategy" @@ -16067,10 +19132,14 @@ public enum console { @usableFromInline static let CanvasPattern: JSString = "CanvasPattern" @usableFromInline static let CanvasRenderingContext2D: JSString = "CanvasRenderingContext2D" @usableFromInline static let CaretPosition: JSString = "CaretPosition" + @usableFromInline static let ChannelMergerNode: JSString = "ChannelMergerNode" + @usableFromInline static let ChannelSplitterNode: JSString = "ChannelSplitterNode" @usableFromInline static let CharacterData: JSString = "CharacterData" @usableFromInline static let CloseEvent: JSString = "CloseEvent" @usableFromInline static let Comment: JSString = "Comment" @usableFromInline static let CompositionEvent: JSString = "CompositionEvent" + @usableFromInline static let ConstantSourceNode: JSString = "ConstantSourceNode" + @usableFromInline static let ConvolverNode: JSString = "ConvolverNode" @usableFromInline static let CountQueuingStrategy: JSString = "CountQueuingStrategy" @usableFromInline static let CustomElementRegistry: JSString = "CustomElementRegistry" @usableFromInline static let CustomEvent: JSString = "CustomEvent" @@ -16091,11 +19160,13 @@ public enum console { @usableFromInline static let DataTransfer: JSString = "DataTransfer" @usableFromInline static let DataTransferItem: JSString = "DataTransferItem" @usableFromInline static let DataTransferItemList: JSString = "DataTransferItemList" + @usableFromInline static let DelayNode: JSString = "DelayNode" @usableFromInline static let Document: JSString = "Document" @usableFromInline static let DocumentFragment: JSString = "DocumentFragment" @usableFromInline static let DocumentTimeline: JSString = "DocumentTimeline" @usableFromInline static let DocumentType: JSString = "DocumentType" @usableFromInline static let DragEvent: JSString = "DragEvent" + @usableFromInline static let DynamicsCompressorNode: JSString = "DynamicsCompressorNode" @usableFromInline static let Element: JSString = "Element" @usableFromInline static let ElementInternals: JSString = "ElementInternals" @usableFromInline static let ErrorEvent: JSString = "ErrorEvent" @@ -16109,6 +19180,7 @@ public enum console { @usableFromInline static let FocusEvent: JSString = "FocusEvent" @usableFromInline static let FormData: JSString = "FormData" @usableFromInline static let FormDataEvent: JSString = "FormDataEvent" + @usableFromInline static let GainNode: JSString = "GainNode" @usableFromInline static let HTMLAllCollection: JSString = "HTMLAllCollection" @usableFromInline static let HTMLAnchorElement: JSString = "HTMLAnchorElement" @usableFromInline static let HTMLAreaElement: JSString = "HTMLAreaElement" @@ -16187,17 +19259,28 @@ public enum console { @usableFromInline static let HashChangeEvent: JSString = "HashChangeEvent" @usableFromInline static let Headers: JSString = "Headers" @usableFromInline static let History: JSString = "History" + @usableFromInline static let IIRFilterNode: JSString = "IIRFilterNode" @usableFromInline static let ImageBitmap: JSString = "ImageBitmap" @usableFromInline static let ImageBitmapRenderingContext: JSString = "ImageBitmapRenderingContext" @usableFromInline static let ImageData: JSString = "ImageData" + @usableFromInline static let InputDeviceInfo: JSString = "InputDeviceInfo" @usableFromInline static let InputEvent: JSString = "InputEvent" @usableFromInline static let IsSearchProviderInstalled: JSString = "IsSearchProviderInstalled" @usableFromInline static let KeyboardEvent: JSString = "KeyboardEvent" @usableFromInline static let KeyframeEffect: JSString = "KeyframeEffect" @usableFromInline static let Location: JSString = "Location" + @usableFromInline static let MediaDeviceInfo: JSString = "MediaDeviceInfo" + @usableFromInline static let MediaDevices: JSString = "MediaDevices" + @usableFromInline static let MediaElementAudioSourceNode: JSString = "MediaElementAudioSourceNode" @usableFromInline static let MediaError: JSString = "MediaError" @usableFromInline static let MediaQueryList: JSString = "MediaQueryList" @usableFromInline static let MediaQueryListEvent: JSString = "MediaQueryListEvent" + @usableFromInline static let MediaStream: JSString = "MediaStream" + @usableFromInline static let MediaStreamAudioDestinationNode: JSString = "MediaStreamAudioDestinationNode" + @usableFromInline static let MediaStreamAudioSourceNode: JSString = "MediaStreamAudioSourceNode" + @usableFromInline static let MediaStreamTrack: JSString = "MediaStreamTrack" + @usableFromInline static let MediaStreamTrackAudioSourceNode: JSString = "MediaStreamTrackAudioSourceNode" + @usableFromInline static let MediaStreamTrackEvent: JSString = "MediaStreamTrackEvent" @usableFromInline static let MessageChannel: JSString = "MessageChannel" @usableFromInline static let MessageEvent: JSString = "MessageEvent" @usableFromInline static let MessagePort: JSString = "MessagePort" @@ -16214,17 +19297,24 @@ public enum console { @usableFromInline static let NodeIterator: JSString = "NodeIterator" @usableFromInline static let NodeList: JSString = "NodeList" @usableFromInline static let Object: JSString = "Object" + @usableFromInline static let OfflineAudioCompletionEvent: JSString = "OfflineAudioCompletionEvent" + @usableFromInline static let OfflineAudioContext: JSString = "OfflineAudioContext" @usableFromInline static let OffscreenCanvas: JSString = "OffscreenCanvas" @usableFromInline static let OffscreenCanvasRenderingContext2D: JSString = "OffscreenCanvasRenderingContext2D" + @usableFromInline static let OscillatorNode: JSString = "OscillatorNode" + @usableFromInline static let OverconstrainedError: JSString = "OverconstrainedError" @usableFromInline static let PageTransitionEvent: JSString = "PageTransitionEvent" + @usableFromInline static let PannerNode: JSString = "PannerNode" @usableFromInline static let Path2D: JSString = "Path2D" @usableFromInline static let Performance: JSString = "Performance" + @usableFromInline static let PeriodicWave: JSString = "PeriodicWave" @usableFromInline static let Plugin: JSString = "Plugin" @usableFromInline static let PluginArray: JSString = "PluginArray" @usableFromInline static let PopStateEvent: JSString = "PopStateEvent" @usableFromInline static let ProcessingInstruction: JSString = "ProcessingInstruction" @usableFromInline static let ProgressEvent: JSString = "ProgressEvent" @usableFromInline static let PromiseRejectionEvent: JSString = "PromiseRejectionEvent" + @usableFromInline static let Q: JSString = "Q" @usableFromInline static let RadioNodeList: JSString = "RadioNodeList" @usableFromInline static let Range: JSString = "Range" @usableFromInline static let ReadableByteStreamController: JSString = "ReadableByteStreamController" @@ -16236,12 +19326,14 @@ public enum console { @usableFromInline static let Request: JSString = "Request" @usableFromInline static let Response: JSString = "Response" @usableFromInline static let Screen: JSString = "Screen" + @usableFromInline static let ScriptProcessorNode: JSString = "ScriptProcessorNode" @usableFromInline static let ServiceWorker: JSString = "ServiceWorker" @usableFromInline static let ServiceWorkerContainer: JSString = "ServiceWorkerContainer" @usableFromInline static let ServiceWorkerRegistration: JSString = "ServiceWorkerRegistration" @usableFromInline static let ShadowRoot: JSString = "ShadowRoot" @usableFromInline static let SharedWorker: JSString = "SharedWorker" @usableFromInline static let StaticRange: JSString = "StaticRange" + @usableFromInline static let StereoPannerNode: JSString = "StereoPannerNode" @usableFromInline static let Storage: JSString = "Storage" @usableFromInline static let StorageEvent: JSString = "StorageEvent" @usableFromInline static let SubmitEvent: JSString = "SubmitEvent" @@ -16262,6 +19354,7 @@ public enum console { @usableFromInline static let ValidityState: JSString = "ValidityState" @usableFromInline static let VideoTrack: JSString = "VideoTrack" @usableFromInline static let VideoTrackList: JSString = "VideoTrackList" + @usableFromInline static let WaveShaperNode: JSString = "WaveShaperNode" @usableFromInline static let WebSocket: JSString = "WebSocket" @usableFromInline static let WheelEvent: JSString = "WheelEvent" @usableFromInline static let Window: JSString = "Window" @@ -16302,8 +19395,10 @@ public enum console { @usableFromInline static let addModule: JSString = "addModule" @usableFromInline static let addPath: JSString = "addPath" @usableFromInline static let addTextTrack: JSString = "addTextTrack" + @usableFromInline static let addTrack: JSString = "addTrack" @usableFromInline static let addedNodes: JSString = "addedNodes" @usableFromInline static let adoptNode: JSString = "adoptNode" + @usableFromInline static let advanced: JSString = "advanced" @usableFromInline static let after: JSString = "after" @usableFromInline static let alert: JSString = "alert" @usableFromInline static let align: JSString = "align" @@ -16325,6 +19420,7 @@ public enum console { @usableFromInline static let appendChild: JSString = "appendChild" @usableFromInline static let appendData: JSString = "appendData" @usableFromInline static let applets: JSString = "applets" + @usableFromInline static let applyConstraints: JSString = "applyConstraints" @usableFromInline static let arc: JSString = "arc" @usableFromInline static let arcTo: JSString = "arcTo" @usableFromInline static let archive: JSString = "archive" @@ -16371,6 +19467,7 @@ public enum console { @usableFromInline static let ariaValueText: JSString = "ariaValueText" @usableFromInline static let arrayBuffer: JSString = "arrayBuffer" @usableFromInline static let `as`: JSString = "as" + @usableFromInline static let aspectRatio: JSString = "aspectRatio" @usableFromInline static let assert: JSString = "assert" @usableFromInline static let assign: JSString = "assign" @usableFromInline static let assignedElements: JSString = "assignedElements" @@ -16380,6 +19477,7 @@ public enum console { @usableFromInline static let atob: JSString = "atob" @usableFromInline static let attachInternals: JSString = "attachInternals" @usableFromInline static let attachShadow: JSString = "attachShadow" + @usableFromInline static let attack: JSString = "attack" @usableFromInline static let attrChange: JSString = "attrChange" @usableFromInline static let attrName: JSString = "attrName" @usableFromInline static let attributeFilter: JSString = "attributeFilter" @@ -16387,11 +19485,15 @@ public enum console { @usableFromInline static let attributeNamespace: JSString = "attributeNamespace" @usableFromInline static let attributeOldValue: JSString = "attributeOldValue" @usableFromInline static let attributes: JSString = "attributes" + @usableFromInline static let audio: JSString = "audio" @usableFromInline static let audioTracks: JSString = "audioTracks" + @usableFromInline static let audioWorklet: JSString = "audioWorklet" @usableFromInline static let autoAllocateChunkSize: JSString = "autoAllocateChunkSize" + @usableFromInline static let autoGainControl: JSString = "autoGainControl" @usableFromInline static let autocapitalize: JSString = "autocapitalize" @usableFromInline static let autocomplete: JSString = "autocomplete" @usableFromInline static let autofocus: JSString = "autofocus" + @usableFromInline static let automationRate: JSString = "automationRate" @usableFromInline static let autoplay: JSString = "autoplay" @usableFromInline static let availHeight: JSString = "availHeight" @usableFromInline static let availWidth: JSString = "availWidth" @@ -16400,6 +19502,7 @@ public enum console { @usableFromInline static let back: JSString = "back" @usableFromInline static let background: JSString = "background" @usableFromInline static let badInput: JSString = "badInput" + @usableFromInline static let baseLatency: JSString = "baseLatency" @usableFromInline static let baseURI: JSString = "baseURI" @usableFromInline static let before: JSString = "before" @usableFromInline static let beginPath: JSString = "beginPath" @@ -16419,6 +19522,8 @@ public enum console { @usableFromInline static let box: JSString = "box" @usableFromInline static let btoa: JSString = "btoa" @usableFromInline static let bubbles: JSString = "bubbles" + @usableFromInline static let buffer: JSString = "buffer" + @usableFromInline static let bufferSize: JSString = "bufferSize" @usableFromInline static let buffered: JSString = "buffered" @usableFromInline static let bufferedAmount: JSString = "bufferedAmount" @usableFromInline static let button: JSString = "button" @@ -16430,8 +19535,10 @@ public enum console { @usableFromInline static let caches: JSString = "caches" @usableFromInline static let canPlayType: JSString = "canPlayType" @usableFromInline static let cancel: JSString = "cancel" + @usableFromInline static let cancelAndHoldAtTime: JSString = "cancelAndHoldAtTime" @usableFromInline static let cancelAnimationFrame: JSString = "cancelAnimationFrame" @usableFromInline static let cancelBubble: JSString = "cancelBubble" + @usableFromInline static let cancelScheduledValues: JSString = "cancelScheduledValues" @usableFromInline static let cancelable: JSString = "cancelable" @usableFromInline static let canvas: JSString = "canvas" @usableFromInline static let caption: JSString = "caption" @@ -16444,6 +19551,9 @@ public enum console { @usableFromInline static let cells: JSString = "cells" @usableFromInline static let ch: JSString = "ch" @usableFromInline static let chOff: JSString = "chOff" + @usableFromInline static let channelCount: JSString = "channelCount" + @usableFromInline static let channelCountMode: JSString = "channelCountMode" + @usableFromInline static let channelInterpretation: JSString = "channelInterpretation" @usableFromInline static let charCode: JSString = "charCode" @usableFromInline static let characterData: JSString = "characterData" @usableFromInline static let characterDataOldValue: JSString = "characterDataOldValue" @@ -16507,14 +19617,21 @@ public enum console { @usableFromInline static let composedPath: JSString = "composedPath" @usableFromInline static let composite: JSString = "composite" @usableFromInline static let computedOffset: JSString = "computedOffset" + @usableFromInline static let coneInnerAngle: JSString = "coneInnerAngle" + @usableFromInline static let coneOuterAngle: JSString = "coneOuterAngle" + @usableFromInline static let coneOuterGain: JSString = "coneOuterGain" @usableFromInline static let confirm: JSString = "confirm" + @usableFromInline static let connect: JSString = "connect" @usableFromInline static let console: JSString = "console" + @usableFromInline static let constraint: JSString = "constraint" @usableFromInline static let contains: JSString = "contains" @usableFromInline static let content: JSString = "content" @usableFromInline static let contentDocument: JSString = "contentDocument" @usableFromInline static let contentEditable: JSString = "contentEditable" @usableFromInline static let contentType: JSString = "contentType" @usableFromInline static let contentWindow: JSString = "contentWindow" + @usableFromInline static let context: JSString = "context" + @usableFromInline static let contextTime: JSString = "contextTime" @usableFromInline static let control: JSString = "control" @usableFromInline static let controller: JSString = "controller" @usableFromInline static let controls: JSString = "controls" @@ -16525,33 +19642,57 @@ public enum console { @usableFromInline static let cookie: JSString = "cookie" @usableFromInline static let cookieEnabled: JSString = "cookieEnabled" @usableFromInline static let coords: JSString = "coords" + @usableFromInline static let copyFromChannel: JSString = "copyFromChannel" + @usableFromInline static let copyToChannel: JSString = "copyToChannel" @usableFromInline static let count: JSString = "count" @usableFromInline static let countReset: JSString = "countReset" + @usableFromInline static let createAnalyser: JSString = "createAnalyser" @usableFromInline static let createAttribute: JSString = "createAttribute" @usableFromInline static let createAttributeNS: JSString = "createAttributeNS" + @usableFromInline static let createBiquadFilter: JSString = "createBiquadFilter" + @usableFromInline static let createBuffer: JSString = "createBuffer" + @usableFromInline static let createBufferSource: JSString = "createBufferSource" @usableFromInline static let createCDATASection: JSString = "createCDATASection" @usableFromInline static let createCaption: JSString = "createCaption" + @usableFromInline static let createChannelMerger: JSString = "createChannelMerger" + @usableFromInline static let createChannelSplitter: JSString = "createChannelSplitter" @usableFromInline static let createComment: JSString = "createComment" @usableFromInline static let createConicGradient: JSString = "createConicGradient" + @usableFromInline static let createConstantSource: JSString = "createConstantSource" + @usableFromInline static let createConvolver: JSString = "createConvolver" + @usableFromInline static let createDelay: JSString = "createDelay" @usableFromInline static let createDocument: JSString = "createDocument" @usableFromInline static let createDocumentFragment: JSString = "createDocumentFragment" @usableFromInline static let createDocumentType: JSString = "createDocumentType" + @usableFromInline static let createDynamicsCompressor: JSString = "createDynamicsCompressor" @usableFromInline static let createElement: JSString = "createElement" @usableFromInline static let createElementNS: JSString = "createElementNS" @usableFromInline static let createEvent: JSString = "createEvent" + @usableFromInline static let createGain: JSString = "createGain" @usableFromInline static let createHTMLDocument: JSString = "createHTMLDocument" + @usableFromInline static let createIIRFilter: JSString = "createIIRFilter" @usableFromInline static let createImageBitmap: JSString = "createImageBitmap" @usableFromInline static let createImageData: JSString = "createImageData" @usableFromInline static let createLinearGradient: JSString = "createLinearGradient" + @usableFromInline static let createMediaElementSource: JSString = "createMediaElementSource" + @usableFromInline static let createMediaStreamDestination: JSString = "createMediaStreamDestination" + @usableFromInline static let createMediaStreamSource: JSString = "createMediaStreamSource" + @usableFromInline static let createMediaStreamTrackSource: JSString = "createMediaStreamTrackSource" @usableFromInline static let createObjectURL: JSString = "createObjectURL" + @usableFromInline static let createOscillator: JSString = "createOscillator" + @usableFromInline static let createPanner: JSString = "createPanner" @usableFromInline static let createPattern: JSString = "createPattern" + @usableFromInline static let createPeriodicWave: JSString = "createPeriodicWave" @usableFromInline static let createProcessingInstruction: JSString = "createProcessingInstruction" @usableFromInline static let createRadialGradient: JSString = "createRadialGradient" @usableFromInline static let createRange: JSString = "createRange" + @usableFromInline static let createScriptProcessor: JSString = "createScriptProcessor" + @usableFromInline static let createStereoPanner: JSString = "createStereoPanner" @usableFromInline static let createTBody: JSString = "createTBody" @usableFromInline static let createTFoot: JSString = "createTFoot" @usableFromInline static let createTHead: JSString = "createTHead" @usableFromInline static let createTextNode: JSString = "createTextNode" + @usableFromInline static let createWaveShaper: JSString = "createWaveShaper" @usableFromInline static let credentials: JSString = "credentials" @usableFromInline static let crossOrigin: JSString = "crossOrigin" @usableFromInline static let crossOriginIsolated: JSString = "crossOriginIsolated" @@ -16563,6 +19704,7 @@ public enum console { @usableFromInline static let currentSrc: JSString = "currentSrc" @usableFromInline static let currentTarget: JSString = "currentTarget" @usableFromInline static let currentTime: JSString = "currentTime" + @usableFromInline static let curve: JSString = "curve" @usableFromInline static let customElements: JSString = "customElements" @usableFromInline static let customError: JSString = "customError" @usableFromInline static let d: JSString = "d" @@ -16585,6 +19727,7 @@ public enum console { @usableFromInline static let `defer`: JSString = "defer" @usableFromInline static let define: JSString = "define" @usableFromInline static let delay: JSString = "delay" + @usableFromInline static let delayTime: JSString = "delayTime" @usableFromInline static let delegatesFocus: JSString = "delegatesFocus" @usableFromInline static let delete: JSString = "delete" @usableFromInline static let deleteCaption: JSString = "deleteCaption" @@ -16605,15 +19748,19 @@ public enum console { @usableFromInline static let desynchronized: JSString = "desynchronized" @usableFromInline static let detach: JSString = "detach" @usableFromInline static let detail: JSString = "detail" + @usableFromInline static let detune: JSString = "detune" + @usableFromInline static let deviceId: JSString = "deviceId" @usableFromInline static let devicePixelRatio: JSString = "devicePixelRatio" @usableFromInline static let dir: JSString = "dir" @usableFromInline static let dirName: JSString = "dirName" @usableFromInline static let direction: JSString = "direction" @usableFromInline static let dirxml: JSString = "dirxml" @usableFromInline static let disable: JSString = "disable" + @usableFromInline static let disableNormalization: JSString = "disableNormalization" @usableFromInline static let disabled: JSString = "disabled" @usableFromInline static let disconnect: JSString = "disconnect" @usableFromInline static let dispatchEvent: JSString = "dispatchEvent" + @usableFromInline static let distanceModel: JSString = "distanceModel" @usableFromInline static let doctype: JSString = "doctype" @usableFromInline static let document: JSString = "document" @usableFromInline static let documentElement: JSString = "documentElement" @@ -16628,6 +19775,7 @@ public enum console { @usableFromInline static let duration: JSString = "duration" @usableFromInline static let e: JSString = "e" @usableFromInline static let easing: JSString = "easing" + @usableFromInline static let echoCancellation: JSString = "echoCancellation" @usableFromInline static let effect: JSString = "effect" @usableFromInline static let effectAllowed: JSString = "effectAllowed" @usableFromInline static let element: JSString = "element" @@ -16652,19 +19800,26 @@ public enum console { @usableFromInline static let endings: JSString = "endings" @usableFromInline static let enqueue: JSString = "enqueue" @usableFromInline static let enterKeyHint: JSString = "enterKeyHint" + @usableFromInline static let enumerateDevices: JSString = "enumerateDevices" @usableFromInline static let error: JSString = "error" @usableFromInline static let evaluate: JSString = "evaluate" @usableFromInline static let event: JSString = "event" @usableFromInline static let eventPhase: JSString = "eventPhase" + @usableFromInline static let exact: JSString = "exact" @usableFromInline static let execCommand: JSString = "execCommand" + @usableFromInline static let exponentialRampToValueAtTime: JSString = "exponentialRampToValueAtTime" @usableFromInline static let extends: JSString = "extends" @usableFromInline static let extensions: JSString = "extensions" @usableFromInline static let external: JSString = "external" @usableFromInline static let extractContents: JSString = "extractContents" @usableFromInline static let f: JSString = "f" @usableFromInline static let face: JSString = "face" + @usableFromInline static let facingMode: JSString = "facingMode" @usableFromInline static let fastSeek: JSString = "fastSeek" + @usableFromInline static let feedback: JSString = "feedback" + @usableFromInline static let feedforward: JSString = "feedforward" @usableFromInline static let fetch: JSString = "fetch" + @usableFromInline static let fftSize: JSString = "fftSize" @usableFromInline static let fgColor: JSString = "fgColor" @usableFromInline static let filename: JSString = "filename" @usableFromInline static let files: JSString = "files" @@ -16697,10 +19852,16 @@ public enum console { @usableFromInline static let formTarget: JSString = "formTarget" @usableFromInline static let forms: JSString = "forms" @usableFromInline static let forward: JSString = "forward" + @usableFromInline static let forwardX: JSString = "forwardX" + @usableFromInline static let forwardY: JSString = "forwardY" + @usableFromInline static let forwardZ: JSString = "forwardZ" @usableFromInline static let frame: JSString = "frame" @usableFromInline static let frameBorder: JSString = "frameBorder" @usableFromInline static let frameElement: JSString = "frameElement" + @usableFromInline static let frameRate: JSString = "frameRate" @usableFromInline static let frames: JSString = "frames" + @usableFromInline static let frequency: JSString = "frequency" + @usableFromInline static let frequencyBinCount: JSString = "frequencyBinCount" @usableFromInline static let fromBox: JSString = "fromBox" @usableFromInline static let fromFloat32Array: JSString = "fromFloat32Array" @usableFromInline static let fromFloat64Array: JSString = "fromFloat64Array" @@ -16708,6 +19869,7 @@ public enum console { @usableFromInline static let fromPoint: JSString = "fromPoint" @usableFromInline static let fromQuad: JSString = "fromQuad" @usableFromInline static let fromRect: JSString = "fromRect" + @usableFromInline static let gain: JSString = "gain" @usableFromInline static let get: JSString = "get" @usableFromInline static let getAll: JSString = "getAll" @usableFromInline static let getAllResponseHeaders: JSString = "getAllResponseHeaders" @@ -16718,12 +19880,18 @@ public enum console { @usableFromInline static let getAttributeNames: JSString = "getAttributeNames" @usableFromInline static let getAttributeNode: JSString = "getAttributeNode" @usableFromInline static let getAttributeNodeNS: JSString = "getAttributeNodeNS" + @usableFromInline static let getAudioTracks: JSString = "getAudioTracks" @usableFromInline static let getBoundingClientRect: JSString = "getBoundingClientRect" @usableFromInline static let getBounds: JSString = "getBounds" @usableFromInline static let getBoxQuads: JSString = "getBoxQuads" + @usableFromInline static let getByteFrequencyData: JSString = "getByteFrequencyData" + @usableFromInline static let getByteTimeDomainData: JSString = "getByteTimeDomainData" + @usableFromInline static let getCapabilities: JSString = "getCapabilities" + @usableFromInline static let getChannelData: JSString = "getChannelData" @usableFromInline static let getClientRect: JSString = "getClientRect" @usableFromInline static let getClientRects: JSString = "getClientRects" @usableFromInline static let getComputedTiming: JSString = "getComputedTiming" + @usableFromInline static let getConstraints: JSString = "getConstraints" @usableFromInline static let getContext: JSString = "getContext" @usableFromInline static let getContextAttributes: JSString = "getContextAttributes" @usableFromInline static let getCueById: JSString = "getCueById" @@ -16733,11 +19901,15 @@ public enum console { @usableFromInline static let getElementsByName: JSString = "getElementsByName" @usableFromInline static let getElementsByTagName: JSString = "getElementsByTagName" @usableFromInline static let getElementsByTagNameNS: JSString = "getElementsByTagNameNS" + @usableFromInline static let getFloatFrequencyData: JSString = "getFloatFrequencyData" + @usableFromInline static let getFloatTimeDomainData: JSString = "getFloatTimeDomainData" + @usableFromInline static let getFrequencyResponse: JSString = "getFrequencyResponse" @usableFromInline static let getImageData: JSString = "getImageData" @usableFromInline static let getKeyframes: JSString = "getKeyframes" @usableFromInline static let getLineDash: JSString = "getLineDash" @usableFromInline static let getModifierState: JSString = "getModifierState" @usableFromInline static let getNamedItemNS: JSString = "getNamedItemNS" + @usableFromInline static let getOutputTimestamp: JSString = "getOutputTimestamp" @usableFromInline static let getParameter: JSString = "getParameter" @usableFromInline static let getReader: JSString = "getReader" @usableFromInline static let getRegistration: JSString = "getRegistration" @@ -16745,11 +19917,16 @@ public enum console { @usableFromInline static let getResponseHeader: JSString = "getResponseHeader" @usableFromInline static let getRootNode: JSString = "getRootNode" @usableFromInline static let getSVGDocument: JSString = "getSVGDocument" + @usableFromInline static let getSettings: JSString = "getSettings" @usableFromInline static let getStartDate: JSString = "getStartDate" @usableFromInline static let getState: JSString = "getState" + @usableFromInline static let getSupportedConstraints: JSString = "getSupportedConstraints" @usableFromInline static let getTiming: JSString = "getTiming" @usableFromInline static let getTrackById: JSString = "getTrackById" + @usableFromInline static let getTracks: JSString = "getTracks" @usableFromInline static let getTransform: JSString = "getTransform" + @usableFromInline static let getUserMedia: JSString = "getUserMedia" + @usableFromInline static let getVideoTracks: JSString = "getVideoTracks" @usableFromInline static let getWriter: JSString = "getWriter" @usableFromInline static let globalAlpha: JSString = "globalAlpha" @usableFromInline static let globalCompositeOperation: JSString = "globalCompositeOperation" @@ -16757,6 +19934,7 @@ public enum console { @usableFromInline static let group: JSString = "group" @usableFromInline static let groupCollapsed: JSString = "groupCollapsed" @usableFromInline static let groupEnd: JSString = "groupEnd" + @usableFromInline static let groupId: JSString = "groupId" @usableFromInline static let handled: JSString = "handled" @usableFromInline static let hangingBaseline: JSString = "hangingBaseline" @usableFromInline static let hardwareConcurrency: JSString = "hardwareConcurrency" @@ -16784,10 +19962,12 @@ public enum console { @usableFromInline static let htmlFor: JSString = "htmlFor" @usableFromInline static let httpEquiv: JSString = "httpEquiv" @usableFromInline static let id: JSString = "id" + @usableFromInline static let ideal: JSString = "ideal" @usableFromInline static let ideographicBaseline: JSString = "ideographicBaseline" @usableFromInline static let ignoreMethod: JSString = "ignoreMethod" @usableFromInline static let ignoreSearch: JSString = "ignoreSearch" @usableFromInline static let ignoreVary: JSString = "ignoreVary" + @usableFromInline static let imag: JSString = "imag" @usableFromInline static let imageOrientation: JSString = "imageOrientation" @usableFromInline static let imageSizes: JSString = "imageSizes" @usableFromInline static let imageSmoothingEnabled: JSString = "imageSmoothingEnabled" @@ -16816,6 +19996,7 @@ public enum console { @usableFromInline static let innerHeight: JSString = "innerHeight" @usableFromInline static let innerText: JSString = "innerText" @usableFromInline static let innerWidth: JSString = "innerWidth" + @usableFromInline static let inputBuffer: JSString = "inputBuffer" @usableFromInline static let inputEncoding: JSString = "inputEncoding" @usableFromInline static let inputMode: JSString = "inputMode" @usableFromInline static let inputType: JSString = "inputType" @@ -16863,6 +20044,7 @@ public enum console { @usableFromInline static let keyCode: JSString = "keyCode" @usableFromInline static let keys: JSString = "keys" @usableFromInline static let kind: JSString = "kind" + @usableFromInline static let knee: JSString = "knee" @usableFromInline static let label: JSString = "label" @usableFromInline static let labels: JSString = "labels" @usableFromInline static let lang: JSString = "lang" @@ -16872,6 +20054,8 @@ public enum console { @usableFromInline static let lastElementChild: JSString = "lastElementChild" @usableFromInline static let lastEventId: JSString = "lastEventId" @usableFromInline static let lastModified: JSString = "lastModified" + @usableFromInline static let latency: JSString = "latency" + @usableFromInline static let latencyHint: JSString = "latencyHint" @usableFromInline static let left: JSString = "left" @usableFromInline static let length: JSString = "length" @usableFromInline static let lengthComputable: JSString = "lengthComputable" @@ -16881,11 +20065,13 @@ public enum console { @usableFromInline static let lineJoin: JSString = "lineJoin" @usableFromInline static let lineTo: JSString = "lineTo" @usableFromInline static let lineWidth: JSString = "lineWidth" + @usableFromInline static let linearRampToValueAtTime: JSString = "linearRampToValueAtTime" @usableFromInline static let lineno: JSString = "lineno" @usableFromInline static let link: JSString = "link" @usableFromInline static let linkColor: JSString = "linkColor" @usableFromInline static let links: JSString = "links" @usableFromInline static let list: JSString = "list" + @usableFromInline static let listener: JSString = "listener" @usableFromInline static let load: JSString = "load" @usableFromInline static let loaded: JSString = "loaded" @usableFromInline static let loading: JSString = "loading" @@ -16899,6 +20085,8 @@ public enum console { @usableFromInline static let lookupNamespaceURI: JSString = "lookupNamespaceURI" @usableFromInline static let lookupPrefix: JSString = "lookupPrefix" @usableFromInline static let loop: JSString = "loop" + @usableFromInline static let loopEnd: JSString = "loopEnd" + @usableFromInline static let loopStart: JSString = "loopStart" @usableFromInline static let low: JSString = "low" @usableFromInline static let lowsrc: JSString = "lowsrc" @usableFromInline static let m11: JSString = "m11" @@ -16925,16 +20113,27 @@ public enum console { @usableFromInline static let matches: JSString = "matches" @usableFromInline static let matrixTransform: JSString = "matrixTransform" @usableFromInline static let max: JSString = "max" + @usableFromInline static let maxChannelCount: JSString = "maxChannelCount" + @usableFromInline static let maxDecibels: JSString = "maxDecibels" + @usableFromInline static let maxDelayTime: JSString = "maxDelayTime" + @usableFromInline static let maxDistance: JSString = "maxDistance" @usableFromInline static let maxLength: JSString = "maxLength" + @usableFromInline static let maxValue: JSString = "maxValue" @usableFromInline static let measureText: JSString = "measureText" @usableFromInline static let media: JSString = "media" + @usableFromInline static let mediaDevices: JSString = "mediaDevices" + @usableFromInline static let mediaElement: JSString = "mediaElement" + @usableFromInline static let mediaStream: JSString = "mediaStream" + @usableFromInline static let mediaStreamTrack: JSString = "mediaStreamTrack" @usableFromInline static let menubar: JSString = "menubar" @usableFromInline static let message: JSString = "message" @usableFromInline static let metaKey: JSString = "metaKey" @usableFromInline static let method: JSString = "method" @usableFromInline static let mimeTypes: JSString = "mimeTypes" @usableFromInline static let min: JSString = "min" + @usableFromInline static let minDecibels: JSString = "minDecibels" @usableFromInline static let minLength: JSString = "minLength" + @usableFromInline static let minValue: JSString = "minValue" @usableFromInline static let miterLimit: JSString = "miterLimit" @usableFromInline static let mode: JSString = "mode" @usableFromInline static let modifierAltGraph: JSString = "modifierAltGraph" @@ -16975,9 +20174,13 @@ public enum console { @usableFromInline static let nodeName: JSString = "nodeName" @usableFromInline static let nodeType: JSString = "nodeType" @usableFromInline static let nodeValue: JSString = "nodeValue" + @usableFromInline static let noiseSuppression: JSString = "noiseSuppression" @usableFromInline static let nonce: JSString = "nonce" @usableFromInline static let normalize: JSString = "normalize" @usableFromInline static let now: JSString = "now" + @usableFromInline static let numberOfChannels: JSString = "numberOfChannels" + @usableFromInline static let numberOfInputs: JSString = "numberOfInputs" + @usableFromInline static let numberOfOutputs: JSString = "numberOfOutputs" @usableFromInline static let numberValue: JSString = "numberValue" @usableFromInline static let observe: JSString = "observe" @usableFromInline static let offset: JSString = "offset" @@ -16996,6 +20199,7 @@ public enum console { @usableFromInline static let onabort: JSString = "onabort" @usableFromInline static let onaddtrack: JSString = "onaddtrack" @usableFromInline static let onafterprint: JSString = "onafterprint" + @usableFromInline static let onaudioprocess: JSString = "onaudioprocess" @usableFromInline static let onauxclick: JSString = "onauxclick" @usableFromInline static let onbeforeprint: JSString = "onbeforeprint" @usableFromInline static let onbeforeunload: JSString = "onbeforeunload" @@ -17007,6 +20211,7 @@ public enum console { @usableFromInline static let onchange: JSString = "onchange" @usableFromInline static let onclick: JSString = "onclick" @usableFromInline static let onclose: JSString = "onclose" + @usableFromInline static let oncomplete: JSString = "oncomplete" @usableFromInline static let oncontextlost: JSString = "oncontextlost" @usableFromInline static let oncontextmenu: JSString = "oncontextmenu" @usableFromInline static let oncontextrestored: JSString = "oncontextrestored" @@ -17015,6 +20220,7 @@ public enum console { @usableFromInline static let oncuechange: JSString = "oncuechange" @usableFromInline static let oncut: JSString = "oncut" @usableFromInline static let ondblclick: JSString = "ondblclick" + @usableFromInline static let ondevicechange: JSString = "ondevicechange" @usableFromInline static let ondrag: JSString = "ondrag" @usableFromInline static let ondragend: JSString = "ondragend" @usableFromInline static let ondragenter: JSString = "ondragenter" @@ -17052,6 +20258,7 @@ public enum console { @usableFromInline static let onmouseout: JSString = "onmouseout" @usableFromInline static let onmouseover: JSString = "onmouseover" @usableFromInline static let onmouseup: JSString = "onmouseup" + @usableFromInline static let onmute: JSString = "onmute" @usableFromInline static let onoffline: JSString = "onoffline" @usableFromInline static let ononline: JSString = "ononline" @usableFromInline static let onopen: JSString = "onopen" @@ -17062,6 +20269,7 @@ public enum console { @usableFromInline static let onplay: JSString = "onplay" @usableFromInline static let onplaying: JSString = "onplaying" @usableFromInline static let onpopstate: JSString = "onpopstate" + @usableFromInline static let onprocessorerror: JSString = "onprocessorerror" @usableFromInline static let onprogress: JSString = "onprogress" @usableFromInline static let onratechange: JSString = "onratechange" @usableFromInline static let onreadystatechange: JSString = "onreadystatechange" @@ -17086,6 +20294,7 @@ public enum console { @usableFromInline static let ontoggle: JSString = "ontoggle" @usableFromInline static let onunhandledrejection: JSString = "onunhandledrejection" @usableFromInline static let onunload: JSString = "onunload" + @usableFromInline static let onunmute: JSString = "onunmute" @usableFromInline static let onupdatefound: JSString = "onupdatefound" @usableFromInline static let onvisibilitychange: JSString = "onvisibilitychange" @usableFromInline static let onvolumechange: JSString = "onvolumechange" @@ -17099,6 +20308,9 @@ public enum console { @usableFromInline static let opener: JSString = "opener" @usableFromInline static let optimum: JSString = "optimum" @usableFromInline static let options: JSString = "options" + @usableFromInline static let orientationX: JSString = "orientationX" + @usableFromInline static let orientationY: JSString = "orientationY" + @usableFromInline static let orientationZ: JSString = "orientationZ" @usableFromInline static let origin: JSString = "origin" @usableFromInline static let originAgentCluster: JSString = "originAgentCluster" @usableFromInline static let originTime: JSString = "originTime" @@ -17106,7 +20318,11 @@ public enum console { @usableFromInline static let outerHeight: JSString = "outerHeight" @usableFromInline static let outerText: JSString = "outerText" @usableFromInline static let outerWidth: JSString = "outerWidth" + @usableFromInline static let outputBuffer: JSString = "outputBuffer" + @usableFromInline static let outputChannelCount: JSString = "outputChannelCount" + @usableFromInline static let outputLatency: JSString = "outputLatency" @usableFromInline static let overrideMimeType: JSString = "overrideMimeType" + @usableFromInline static let oversample: JSString = "oversample" @usableFromInline static let ownerDocument: JSString = "ownerDocument" @usableFromInline static let ownerElement: JSString = "ownerElement" @usableFromInline static let p1: JSString = "p1" @@ -17117,6 +20333,11 @@ public enum console { @usableFromInline static let pageXOffset: JSString = "pageXOffset" @usableFromInline static let pageY: JSString = "pageY" @usableFromInline static let pageYOffset: JSString = "pageYOffset" + @usableFromInline static let pan: JSString = "pan" + @usableFromInline static let panTiltZoom: JSString = "panTiltZoom" + @usableFromInline static let panningModel: JSString = "panningModel" + @usableFromInline static let parameterData: JSString = "parameterData" + @usableFromInline static let parameters: JSString = "parameters" @usableFromInline static let parent: JSString = "parent" @usableFromInline static let parentElement: JSString = "parentElement" @usableFromInline static let parentNode: JSString = "parentNode" @@ -17132,6 +20353,8 @@ public enum console { @usableFromInline static let pdfViewerEnabled: JSString = "pdfViewerEnabled" @usableFromInline static let pending: JSString = "pending" @usableFromInline static let performance: JSString = "performance" + @usableFromInline static let performanceTime: JSString = "performanceTime" + @usableFromInline static let periodicWave: JSString = "periodicWave" @usableFromInline static let persist: JSString = "persist" @usableFromInline static let persisted: JSString = "persisted" @usableFromInline static let personalbar: JSString = "personalbar" @@ -17145,6 +20368,7 @@ public enum console { @usableFromInline static let play: JSString = "play" @usableFromInline static let playState: JSString = "playState" @usableFromInline static let playbackRate: JSString = "playbackRate" + @usableFromInline static let playbackTime: JSString = "playbackTime" @usableFromInline static let played: JSString = "played" @usableFromInline static let playsInline: JSString = "playsInline" @usableFromInline static let plugins: JSString = "plugins" @@ -17154,6 +20378,9 @@ public enum console { @usableFromInline static let port2: JSString = "port2" @usableFromInline static let ports: JSString = "ports" @usableFromInline static let position: JSString = "position" + @usableFromInline static let positionX: JSString = "positionX" + @usableFromInline static let positionY: JSString = "positionY" + @usableFromInline static let positionZ: JSString = "positionZ" @usableFromInline static let postMessage: JSString = "postMessage" @usableFromInline static let poster: JSString = "poster" @usableFromInline static let preMultiplySelf: JSString = "preMultiplySelf" @@ -17173,6 +20400,7 @@ public enum console { @usableFromInline static let previousNode: JSString = "previousNode" @usableFromInline static let previousSibling: JSString = "previousSibling" @usableFromInline static let print: JSString = "print" + @usableFromInline static let processorOptions: JSString = "processorOptions" @usableFromInline static let product: JSString = "product" @usableFromInline static let productSub: JSString = "productSub" @usableFromInline static let progress: JSString = "progress" @@ -17197,6 +20425,7 @@ public enum console { @usableFromInline static let querySelectorAll: JSString = "querySelectorAll" @usableFromInline static let rangeOverflow: JSString = "rangeOverflow" @usableFromInline static let rangeUnderflow: JSString = "rangeUnderflow" + @usableFromInline static let ratio: JSString = "ratio" @usableFromInline static let read: JSString = "read" @usableFromInline static let readAsArrayBuffer: JSString = "readAsArrayBuffer" @usableFromInline static let readAsBinaryString: JSString = "readAsBinaryString" @@ -17207,10 +20436,13 @@ public enum console { @usableFromInline static let readableType: JSString = "readableType" @usableFromInline static let ready: JSString = "ready" @usableFromInline static let readyState: JSString = "readyState" + @usableFromInline static let real: JSString = "real" @usableFromInline static let reason: JSString = "reason" @usableFromInline static let rect: JSString = "rect" @usableFromInline static let redirect: JSString = "redirect" @usableFromInline static let redirected: JSString = "redirected" + @usableFromInline static let reduction: JSString = "reduction" + @usableFromInline static let refDistance: JSString = "refDistance" @usableFromInline static let referenceNode: JSString = "referenceNode" @usableFromInline static let referrer: JSString = "referrer" @usableFromInline static let referrerPolicy: JSString = "referrerPolicy" @@ -17222,6 +20454,7 @@ public enum console { @usableFromInline static let relatedNode: JSString = "relatedNode" @usableFromInline static let relatedTarget: JSString = "relatedTarget" @usableFromInline static let relativeTo: JSString = "relativeTo" + @usableFromInline static let release: JSString = "release" @usableFromInline static let releaseEvents: JSString = "releaseEvents" @usableFromInline static let releaseLock: JSString = "releaseLock" @usableFromInline static let reload: JSString = "reload" @@ -17234,7 +20467,9 @@ public enum console { @usableFromInline static let removeNamedItem: JSString = "removeNamedItem" @usableFromInline static let removeNamedItemNS: JSString = "removeNamedItemNS" @usableFromInline static let removeParameter: JSString = "removeParameter" + @usableFromInline static let removeTrack: JSString = "removeTrack" @usableFromInline static let removedNodes: JSString = "removedNodes" + @usableFromInline static let renderedBuffer: JSString = "renderedBuffer" @usableFromInline static let `repeat`: JSString = "repeat" @usableFromInline static let replace: JSString = "replace" @usableFromInline static let replaceChild: JSString = "replaceChild" @@ -17252,6 +20487,7 @@ public enum console { @usableFromInline static let resetTransform: JSString = "resetTransform" @usableFromInline static let resizeBy: JSString = "resizeBy" @usableFromInline static let resizeHeight: JSString = "resizeHeight" + @usableFromInline static let resizeMode: JSString = "resizeMode" @usableFromInline static let resizeQuality: JSString = "resizeQuality" @usableFromInline static let resizeTo: JSString = "resizeTo" @usableFromInline static let resizeWidth: JSString = "resizeWidth" @@ -17266,6 +20502,7 @@ public enum console { @usableFromInline static let result: JSString = "result" @usableFromInline static let resultType: JSString = "resultType" @usableFromInline static let resultingClientId: JSString = "resultingClientId" + @usableFromInline static let resume: JSString = "resume" @usableFromInline static let returnValue: JSString = "returnValue" @usableFromInline static let rev: JSString = "rev" @usableFromInline static let reverse: JSString = "reverse" @@ -17273,6 +20510,7 @@ public enum console { @usableFromInline static let revokeObjectURL: JSString = "revokeObjectURL" @usableFromInline static let right: JSString = "right" @usableFromInline static let role: JSString = "role" + @usableFromInline static let rolloffFactor: JSString = "rolloffFactor" @usableFromInline static let root: JSString = "root" @usableFromInline static let rotate: JSString = "rotate" @usableFromInline static let rotateAxisAngle: JSString = "rotateAxisAngle" @@ -17285,6 +20523,8 @@ public enum console { @usableFromInline static let rowSpan: JSString = "rowSpan" @usableFromInline static let rows: JSString = "rows" @usableFromInline static let rules: JSString = "rules" + @usableFromInline static let sampleRate: JSString = "sampleRate" + @usableFromInline static let sampleSize: JSString = "sampleSize" @usableFromInline static let sandbox: JSString = "sandbox" @usableFromInline static let save: JSString = "save" @usableFromInline static let scale: JSString = "scale" @@ -17354,16 +20594,22 @@ public enum console { @usableFromInline static let setMatrixValue: JSString = "setMatrixValue" @usableFromInline static let setNamedItem: JSString = "setNamedItem" @usableFromInline static let setNamedItemNS: JSString = "setNamedItemNS" + @usableFromInline static let setOrientation: JSString = "setOrientation" @usableFromInline static let setParameter: JSString = "setParameter" + @usableFromInline static let setPeriodicWave: JSString = "setPeriodicWave" + @usableFromInline static let setPosition: JSString = "setPosition" @usableFromInline static let setRangeText: JSString = "setRangeText" @usableFromInline static let setRequestHeader: JSString = "setRequestHeader" @usableFromInline static let setSelectionRange: JSString = "setSelectionRange" @usableFromInline static let setStart: JSString = "setStart" @usableFromInline static let setStartAfter: JSString = "setStartAfter" @usableFromInline static let setStartBefore: JSString = "setStartBefore" + @usableFromInline static let setTargetAtTime: JSString = "setTargetAtTime" @usableFromInline static let setTimeout: JSString = "setTimeout" @usableFromInline static let setTransform: JSString = "setTransform" @usableFromInline static let setValidity: JSString = "setValidity" + @usableFromInline static let setValueAtTime: JSString = "setValueAtTime" + @usableFromInline static let setValueCurveAtTime: JSString = "setValueCurveAtTime" @usableFromInline static let shadowBlur: JSString = "shadowBlur" @usableFromInline static let shadowColor: JSString = "shadowColor" @usableFromInline static let shadowOffsetX: JSString = "shadowOffsetX" @@ -17385,6 +20631,7 @@ public enum console { @usableFromInline static let slice: JSString = "slice" @usableFromInline static let slot: JSString = "slot" @usableFromInline static let slotAssignment: JSString = "slotAssignment" + @usableFromInline static let smoothingTimeConstant: JSString = "smoothingTimeConstant" @usableFromInline static let snapshotItem: JSString = "snapshotItem" @usableFromInline static let snapshotLength: JSString = "snapshotLength" @usableFromInline static let sort: JSString = "sort" @@ -17403,6 +20650,7 @@ public enum console { @usableFromInline static let startContainer: JSString = "startContainer" @usableFromInline static let startMessages: JSString = "startMessages" @usableFromInline static let startOffset: JSString = "startOffset" + @usableFromInline static let startRendering: JSString = "startRendering" @usableFromInline static let startTime: JSString = "startTime" @usableFromInline static let state: JSString = "state" @usableFromInline static let status: JSString = "status" @@ -17416,6 +20664,7 @@ public enum console { @usableFromInline static let stopImmediatePropagation: JSString = "stopImmediatePropagation" @usableFromInline static let stopPropagation: JSString = "stopPropagation" @usableFromInline static let storageArea: JSString = "storageArea" + @usableFromInline static let stream: JSString = "stream" @usableFromInline static let stringValue: JSString = "stringValue" @usableFromInline static let stroke: JSString = "stroke" @usableFromInline static let strokeRect: JSString = "strokeRect" @@ -17430,6 +20679,7 @@ public enum console { @usableFromInline static let summary: JSString = "summary" @usableFromInline static let supports: JSString = "supports" @usableFromInline static let surroundContents: JSString = "surroundContents" + @usableFromInline static let suspend: JSString = "suspend" @usableFromInline static let systemId: JSString = "systemId" @usableFromInline static let tBodies: JSString = "tBodies" @usableFromInline static let tFoot: JSString = "tFoot" @@ -17450,6 +20700,7 @@ public enum console { @usableFromInline static let textLength: JSString = "textLength" @usableFromInline static let textRendering: JSString = "textRendering" @usableFromInline static let textTracks: JSString = "textTracks" + @usableFromInline static let threshold: JSString = "threshold" @usableFromInline static let throwIfAborted: JSString = "throwIfAborted" @usableFromInline static let time: JSString = "time" @usableFromInline static let timeEnd: JSString = "timeEnd" @@ -17490,6 +20741,9 @@ public enum console { @usableFromInline static let types: JSString = "types" @usableFromInline static let unregister: JSString = "unregister" @usableFromInline static let unregisterProtocolHandler: JSString = "unregisterProtocolHandler" + @usableFromInline static let upX: JSString = "upX" + @usableFromInline static let upY: JSString = "upY" + @usableFromInline static let upZ: JSString = "upZ" @usableFromInline static let update: JSString = "update" @usableFromInline static let updatePlaybackRate: JSString = "updatePlaybackRate" @usableFromInline static let updateTiming: JSString = "updateTiming" @@ -17513,6 +20767,7 @@ public enum console { @usableFromInline static let vendor: JSString = "vendor" @usableFromInline static let vendorSub: JSString = "vendorSub" @usableFromInline static let version: JSString = "version" + @usableFromInline static let video: JSString = "video" @usableFromInline static let videoHeight: JSString = "videoHeight" @usableFromInline static let videoTracks: JSString = "videoTracks" @usableFromInline static let videoWidth: JSString = "videoWidth" @@ -17589,6 +20844,48 @@ public enum ArrayBuffer_or_String: JSValueCompatible, Any_ArrayBuffer_or_String } } +public protocol Any_AudioContextLatencyCategory_or_Double: ConvertibleToJSValue {} +extension AudioContextLatencyCategory: Any_AudioContextLatencyCategory_or_Double {} +extension Double: Any_AudioContextLatencyCategory_or_Double {} + +public enum AudioContextLatencyCategory_or_Double: JSValueCompatible, Any_AudioContextLatencyCategory_or_Double { + case audioContextLatencyCategory(AudioContextLatencyCategory) + case double(Double) + + var audioContextLatencyCategory: AudioContextLatencyCategory? { + switch self { + case let .audioContextLatencyCategory(audioContextLatencyCategory): return audioContextLatencyCategory + default: return nil + } + } + + var double: Double? { + switch self { + case let .double(double): return double + default: return nil + } + } + + public static func construct(from value: JSValue) -> Self? { + if let audioContextLatencyCategory: AudioContextLatencyCategory = value.fromJSValue() { + return .audioContextLatencyCategory(audioContextLatencyCategory) + } + if let double: Double = value.fromJSValue() { + return .double(double) + } + return nil + } + + public var jsValue: JSValue { + switch self { + case let .audioContextLatencyCategory(audioContextLatencyCategory): + return audioContextLatencyCategory.jsValue + case let .double(double): + return double.jsValue + } + } +} + public protocol Any_AudioTrack_or_TextTrack_or_VideoTrack: ConvertibleToJSValue {} extension AudioTrack: Any_AudioTrack_or_TextTrack_or_VideoTrack {} extension TextTrack: Any_AudioTrack_or_TextTrack_or_VideoTrack {} @@ -17701,6 +20998,48 @@ public enum BlobPart: JSValueCompatible, Any_BlobPart { } } +public protocol Any_Bool_or_MediaTrackConstraints: ConvertibleToJSValue {} +extension Bool: Any_Bool_or_MediaTrackConstraints {} +extension MediaTrackConstraints: Any_Bool_or_MediaTrackConstraints {} + +public enum Bool_or_MediaTrackConstraints: JSValueCompatible, Any_Bool_or_MediaTrackConstraints { + case bool(Bool) + case mediaTrackConstraints(MediaTrackConstraints) + + var bool: Bool? { + switch self { + case let .bool(bool): return bool + default: return nil + } + } + + var mediaTrackConstraints: MediaTrackConstraints? { + switch self { + case let .mediaTrackConstraints(mediaTrackConstraints): return mediaTrackConstraints + default: return nil + } + } + + public static func construct(from value: JSValue) -> Self? { + if let bool: Bool = value.fromJSValue() { + return .bool(bool) + } + if let mediaTrackConstraints: MediaTrackConstraints = value.fromJSValue() { + return .mediaTrackConstraints(mediaTrackConstraints) + } + return nil + } + + public var jsValue: JSValue { + switch self { + case let .bool(bool): + return bool.jsValue + case let .mediaTrackConstraints(mediaTrackConstraints): + return mediaTrackConstraints.jsValue + } + } +} + public protocol Any_Bool_or_ScrollIntoViewOptions: ConvertibleToJSValue {} extension Bool: Any_Bool_or_ScrollIntoViewOptions {} extension ScrollIntoViewOptions: Any_Bool_or_ScrollIntoViewOptions {} @@ -18009,6 +21348,188 @@ public enum CompositeOperationOrAuto_or_seq_of_CompositeOperationOrAuto: JSValue } } +public protocol Any_ConstrainBoolean: ConvertibleToJSValue {} +extension Bool: Any_ConstrainBoolean {} +extension ConstrainBooleanParameters: Any_ConstrainBoolean {} + +public enum ConstrainBoolean: JSValueCompatible, Any_ConstrainBoolean { + case bool(Bool) + case constrainBooleanParameters(ConstrainBooleanParameters) + + var bool: Bool? { + switch self { + case let .bool(bool): return bool + default: return nil + } + } + + var constrainBooleanParameters: ConstrainBooleanParameters? { + switch self { + case let .constrainBooleanParameters(constrainBooleanParameters): return constrainBooleanParameters + default: return nil + } + } + + public static func construct(from value: JSValue) -> Self? { + if let bool: Bool = value.fromJSValue() { + return .bool(bool) + } + if let constrainBooleanParameters: ConstrainBooleanParameters = value.fromJSValue() { + return .constrainBooleanParameters(constrainBooleanParameters) + } + return nil + } + + public var jsValue: JSValue { + switch self { + case let .bool(bool): + return bool.jsValue + case let .constrainBooleanParameters(constrainBooleanParameters): + return constrainBooleanParameters.jsValue + } + } +} + +public protocol Any_ConstrainDOMString: ConvertibleToJSValue {} +extension ConstrainDOMStringParameters: Any_ConstrainDOMString {} +extension String: Any_ConstrainDOMString {} +extension Array: Any_ConstrainDOMString where Element == String {} + +public enum ConstrainDOMString: JSValueCompatible, Any_ConstrainDOMString { + case constrainDOMStringParameters(ConstrainDOMStringParameters) + case string(String) + case seq_of_String([String]) + + var constrainDOMStringParameters: ConstrainDOMStringParameters? { + switch self { + case let .constrainDOMStringParameters(constrainDOMStringParameters): return constrainDOMStringParameters + default: return nil + } + } + + var string: String? { + switch self { + case let .string(string): return string + default: return nil + } + } + + var seq_of_String: [String]? { + switch self { + case let .seq_of_String(seq_of_String): return seq_of_String + default: return nil + } + } + + public static func construct(from value: JSValue) -> Self? { + if let constrainDOMStringParameters: ConstrainDOMStringParameters = value.fromJSValue() { + return .constrainDOMStringParameters(constrainDOMStringParameters) + } + if let string: String = value.fromJSValue() { + return .string(string) + } + if let seq_of_String: [String] = value.fromJSValue() { + return .seq_of_String(seq_of_String) + } + return nil + } + + public var jsValue: JSValue { + switch self { + case let .constrainDOMStringParameters(constrainDOMStringParameters): + return constrainDOMStringParameters.jsValue + case let .string(string): + return string.jsValue + case let .seq_of_String(seq_of_String): + return seq_of_String.jsValue + } + } +} + +public protocol Any_ConstrainDouble: ConvertibleToJSValue {} +extension ConstrainDoubleRange: Any_ConstrainDouble {} +extension Double: Any_ConstrainDouble {} + +public enum ConstrainDouble: JSValueCompatible, Any_ConstrainDouble { + case constrainDoubleRange(ConstrainDoubleRange) + case double(Double) + + var constrainDoubleRange: ConstrainDoubleRange? { + switch self { + case let .constrainDoubleRange(constrainDoubleRange): return constrainDoubleRange + default: return nil + } + } + + var double: Double? { + switch self { + case let .double(double): return double + default: return nil + } + } + + public static func construct(from value: JSValue) -> Self? { + if let constrainDoubleRange: ConstrainDoubleRange = value.fromJSValue() { + return .constrainDoubleRange(constrainDoubleRange) + } + if let double: Double = value.fromJSValue() { + return .double(double) + } + return nil + } + + public var jsValue: JSValue { + switch self { + case let .constrainDoubleRange(constrainDoubleRange): + return constrainDoubleRange.jsValue + case let .double(double): + return double.jsValue + } + } +} + +public protocol Any_ConstrainULong: ConvertibleToJSValue {} +extension ConstrainULongRange: Any_ConstrainULong {} +extension UInt32: Any_ConstrainULong {} + +public enum ConstrainULong: JSValueCompatible, Any_ConstrainULong { + case constrainULongRange(ConstrainULongRange) + case uInt32(UInt32) + + var constrainULongRange: ConstrainULongRange? { + switch self { + case let .constrainULongRange(constrainULongRange): return constrainULongRange + default: return nil + } + } + + var uInt32: UInt32? { + switch self { + case let .uInt32(uInt32): return uInt32 + default: return nil + } + } + + public static func construct(from value: JSValue) -> Self? { + if let constrainULongRange: ConstrainULongRange = value.fromJSValue() { + return .constrainULongRange(constrainULongRange) + } + if let uInt32: UInt32 = value.fromJSValue() { + return .uInt32(uInt32) + } + return nil + } + + public var jsValue: JSValue { + switch self { + case let .constrainULongRange(constrainULongRange): + return constrainULongRange.jsValue + case let .uInt32(uInt32): + return uInt32.jsValue + } + } +} + public protocol Any_DOMPointInit_or_Double: ConvertibleToJSValue {} extension DOMPointInit: Any_DOMPointInit_or_Double {} extension Double: Any_DOMPointInit_or_Double {} diff --git a/parse-idl/parse-all.js b/parse-idl/parse-all.js index 9c105097..7976b633 100644 --- a/parse-idl/parse-all.js +++ b/parse-idl/parse-all.js @@ -7,6 +7,7 @@ const parsedFiles = await parseAll(); console.log( JSON.stringify( [ + "console", "dom", "fetch", "FileAPI", @@ -22,10 +23,11 @@ console.log( "service-workers", "url", "streams", - "console", "websockets", "css-pseudo", "cssom-view", + "mediacapture-streams", + "webaudio", ].map((key) => parsedFiles[key]), null, 2