github.com/primecitizens/pcz/std@v0.2.1/plat/js/web/apis36_js_wasm.go (about)

     1  // SPDX-License-Identifier: Apache-2.0
     2  // Copyright 2023 The Prime Citizens
     3  
     4  package web
     5  
     6  import (
     7  	"github.com/primecitizens/pcz/std/core/abi"
     8  	"github.com/primecitizens/pcz/std/core/mark"
     9  	"github.com/primecitizens/pcz/std/ffi/js"
    10  	"github.com/primecitizens/pcz/std/plat/js/web/bindings"
    11  )
    12  
    13  func NewGPUInternalError(message js.String) (ret GPUInternalError) {
    14  	ret.ref = bindings.NewGPUInternalErrorByGPUInternalError(
    15  		message.Ref())
    16  	return
    17  }
    18  
    19  type GPUInternalError struct {
    20  	GPUError
    21  }
    22  
    23  func (this GPUInternalError) Once() GPUInternalError {
    24  	this.ref.Once()
    25  	return this
    26  }
    27  
    28  func (this GPUInternalError) Ref() js.Ref {
    29  	return this.GPUError.Ref()
    30  }
    31  
    32  func (this GPUInternalError) FromRef(ref js.Ref) GPUInternalError {
    33  	this.GPUError = this.GPUError.FromRef(ref)
    34  	return this
    35  }
    36  
    37  func (this GPUInternalError) Free() {
    38  	this.ref.Free()
    39  }
    40  
    41  const (
    42  	GPUMapMode_READ  GPUFlagsConstant = 0x0001
    43  	GPUMapMode_WRITE GPUFlagsConstant = 0x0002
    44  )
    45  
    46  type GPUMapMode struct{}
    47  
    48  type GPUObjectDescriptorBase struct {
    49  	// Label is "GPUObjectDescriptorBase.label"
    50  	//
    51  	// Optional, defaults to "".
    52  	Label js.String
    53  
    54  	FFI_USE bool
    55  }
    56  
    57  // FromRef calls UpdateFrom and returns a GPUObjectDescriptorBase with all fields set.
    58  func (p GPUObjectDescriptorBase) FromRef(ref js.Ref) GPUObjectDescriptorBase {
    59  	p.UpdateFrom(ref)
    60  	return p
    61  }
    62  
    63  // New creates a new GPUObjectDescriptorBase in the application heap.
    64  func (p GPUObjectDescriptorBase) New() js.Ref {
    65  	return bindings.GPUObjectDescriptorBaseJSLoad(
    66  		js.Pointer(&p), js.True, 0,
    67  	)
    68  }
    69  
    70  // UpdateFrom copies value of all fields of the heap object to p.
    71  func (p *GPUObjectDescriptorBase) UpdateFrom(ref js.Ref) {
    72  	bindings.GPUObjectDescriptorBaseJSStore(
    73  		js.Pointer(p), ref,
    74  	)
    75  }
    76  
    77  // Update writes all fields of the p to the heap object referenced by ref.
    78  func (p *GPUObjectDescriptorBase) Update(ref js.Ref) {
    79  	bindings.GPUObjectDescriptorBaseJSLoad(
    80  		js.Pointer(p), js.False, ref,
    81  	)
    82  }
    83  
    84  // FreeMembers frees fields with heap reference, if recursive is true
    85  // free all heap references reachable from p.
    86  func (p *GPUObjectDescriptorBase) FreeMembers(recursive bool) {
    87  	js.Free(
    88  		p.Label.Ref(),
    89  	)
    90  	p.Label = p.Label.FromRef(js.Undefined)
    91  }
    92  
    93  func NewGPUOutOfMemoryError(message js.String) (ret GPUOutOfMemoryError) {
    94  	ret.ref = bindings.NewGPUOutOfMemoryErrorByGPUOutOfMemoryError(
    95  		message.Ref())
    96  	return
    97  }
    98  
    99  type GPUOutOfMemoryError struct {
   100  	GPUError
   101  }
   102  
   103  func (this GPUOutOfMemoryError) Once() GPUOutOfMemoryError {
   104  	this.ref.Once()
   105  	return this
   106  }
   107  
   108  func (this GPUOutOfMemoryError) Ref() js.Ref {
   109  	return this.GPUError.Ref()
   110  }
   111  
   112  func (this GPUOutOfMemoryError) FromRef(ref js.Ref) GPUOutOfMemoryError {
   113  	this.GPUError = this.GPUError.FromRef(ref)
   114  	return this
   115  }
   116  
   117  func (this GPUOutOfMemoryError) Free() {
   118  	this.ref.Free()
   119  }
   120  
   121  type GPUPipelineDescriptorBase struct {
   122  	// Layout is "GPUPipelineDescriptorBase.layout"
   123  	//
   124  	// Required
   125  	Layout OneOf_GPUPipelineLayout_GPUAutoLayoutMode
   126  	// Label is "GPUPipelineDescriptorBase.label"
   127  	//
   128  	// Optional, defaults to "".
   129  	Label js.String
   130  
   131  	FFI_USE bool
   132  }
   133  
   134  // FromRef calls UpdateFrom and returns a GPUPipelineDescriptorBase with all fields set.
   135  func (p GPUPipelineDescriptorBase) FromRef(ref js.Ref) GPUPipelineDescriptorBase {
   136  	p.UpdateFrom(ref)
   137  	return p
   138  }
   139  
   140  // New creates a new GPUPipelineDescriptorBase in the application heap.
   141  func (p GPUPipelineDescriptorBase) New() js.Ref {
   142  	return bindings.GPUPipelineDescriptorBaseJSLoad(
   143  		js.Pointer(&p), js.True, 0,
   144  	)
   145  }
   146  
   147  // UpdateFrom copies value of all fields of the heap object to p.
   148  func (p *GPUPipelineDescriptorBase) UpdateFrom(ref js.Ref) {
   149  	bindings.GPUPipelineDescriptorBaseJSStore(
   150  		js.Pointer(p), ref,
   151  	)
   152  }
   153  
   154  // Update writes all fields of the p to the heap object referenced by ref.
   155  func (p *GPUPipelineDescriptorBase) Update(ref js.Ref) {
   156  	bindings.GPUPipelineDescriptorBaseJSLoad(
   157  		js.Pointer(p), js.False, ref,
   158  	)
   159  }
   160  
   161  // FreeMembers frees fields with heap reference, if recursive is true
   162  // free all heap references reachable from p.
   163  func (p *GPUPipelineDescriptorBase) FreeMembers(recursive bool) {
   164  	js.Free(
   165  		p.Layout.Ref(),
   166  		p.Label.Ref(),
   167  	)
   168  	p.Layout = p.Layout.FromRef(js.Undefined)
   169  	p.Label = p.Label.FromRef(js.Undefined)
   170  }
   171  
   172  type GPUPipelineErrorReason uint32
   173  
   174  const (
   175  	_ GPUPipelineErrorReason = iota
   176  
   177  	GPUPipelineErrorReason_VALIDATION
   178  	GPUPipelineErrorReason_INTERNAL
   179  )
   180  
   181  func (GPUPipelineErrorReason) FromRef(str js.Ref) GPUPipelineErrorReason {
   182  	return GPUPipelineErrorReason(bindings.ConstOfGPUPipelineErrorReason(str))
   183  }
   184  
   185  func (x GPUPipelineErrorReason) String() (string, bool) {
   186  	switch x {
   187  	case GPUPipelineErrorReason_VALIDATION:
   188  		return "validation", true
   189  	case GPUPipelineErrorReason_INTERNAL:
   190  		return "internal", true
   191  	default:
   192  		return "", false
   193  	}
   194  }
   195  
   196  type GPUPipelineErrorInit struct {
   197  	// Reason is "GPUPipelineErrorInit.reason"
   198  	//
   199  	// Required
   200  	Reason GPUPipelineErrorReason
   201  
   202  	FFI_USE bool
   203  }
   204  
   205  // FromRef calls UpdateFrom and returns a GPUPipelineErrorInit with all fields set.
   206  func (p GPUPipelineErrorInit) FromRef(ref js.Ref) GPUPipelineErrorInit {
   207  	p.UpdateFrom(ref)
   208  	return p
   209  }
   210  
   211  // New creates a new GPUPipelineErrorInit in the application heap.
   212  func (p GPUPipelineErrorInit) New() js.Ref {
   213  	return bindings.GPUPipelineErrorInitJSLoad(
   214  		js.Pointer(&p), js.True, 0,
   215  	)
   216  }
   217  
   218  // UpdateFrom copies value of all fields of the heap object to p.
   219  func (p *GPUPipelineErrorInit) UpdateFrom(ref js.Ref) {
   220  	bindings.GPUPipelineErrorInitJSStore(
   221  		js.Pointer(p), ref,
   222  	)
   223  }
   224  
   225  // Update writes all fields of the p to the heap object referenced by ref.
   226  func (p *GPUPipelineErrorInit) Update(ref js.Ref) {
   227  	bindings.GPUPipelineErrorInitJSLoad(
   228  		js.Pointer(p), js.False, ref,
   229  	)
   230  }
   231  
   232  // FreeMembers frees fields with heap reference, if recursive is true
   233  // free all heap references reachable from p.
   234  func (p *GPUPipelineErrorInit) FreeMembers(recursive bool) {
   235  }
   236  
   237  func NewGPUPipelineError(message js.String, options GPUPipelineErrorInit) (ret GPUPipelineError) {
   238  	ret.ref = bindings.NewGPUPipelineErrorByGPUPipelineError(
   239  		message.Ref(),
   240  		js.Pointer(&options))
   241  	return
   242  }
   243  
   244  func NewGPUPipelineErrorByGPUPipelineError1() (ret GPUPipelineError) {
   245  	ret.ref = bindings.NewGPUPipelineErrorByGPUPipelineError1()
   246  	return
   247  }
   248  
   249  type GPUPipelineError struct {
   250  	DOMException
   251  }
   252  
   253  func (this GPUPipelineError) Once() GPUPipelineError {
   254  	this.ref.Once()
   255  	return this
   256  }
   257  
   258  func (this GPUPipelineError) Ref() js.Ref {
   259  	return this.DOMException.Ref()
   260  }
   261  
   262  func (this GPUPipelineError) FromRef(ref js.Ref) GPUPipelineError {
   263  	this.DOMException = this.DOMException.FromRef(ref)
   264  	return this
   265  }
   266  
   267  func (this GPUPipelineError) Free() {
   268  	this.ref.Free()
   269  }
   270  
   271  // Reason returns the value of property "GPUPipelineError.reason".
   272  //
   273  // It returns ok=false if there is no such property.
   274  func (this GPUPipelineError) Reason() (ret GPUPipelineErrorReason, ok bool) {
   275  	ok = js.True == bindings.GetGPUPipelineErrorReason(
   276  		this.ref, js.Pointer(&ret),
   277  	)
   278  	return
   279  }
   280  
   281  type GPURenderPassLayout struct {
   282  	// ColorFormats is "GPURenderPassLayout.colorFormats"
   283  	//
   284  	// Required
   285  	ColorFormats js.Array[GPUTextureFormat]
   286  	// DepthStencilFormat is "GPURenderPassLayout.depthStencilFormat"
   287  	//
   288  	// Optional
   289  	DepthStencilFormat GPUTextureFormat
   290  	// SampleCount is "GPURenderPassLayout.sampleCount"
   291  	//
   292  	// Optional, defaults to 1.
   293  	//
   294  	// NOTE: FFI_USE_SampleCount MUST be set to true to make this field effective.
   295  	SampleCount GPUSize32
   296  	// Label is "GPURenderPassLayout.label"
   297  	//
   298  	// Optional, defaults to "".
   299  	Label js.String
   300  
   301  	FFI_USE_SampleCount bool // for SampleCount.
   302  
   303  	FFI_USE bool
   304  }
   305  
   306  // FromRef calls UpdateFrom and returns a GPURenderPassLayout with all fields set.
   307  func (p GPURenderPassLayout) FromRef(ref js.Ref) GPURenderPassLayout {
   308  	p.UpdateFrom(ref)
   309  	return p
   310  }
   311  
   312  // New creates a new GPURenderPassLayout in the application heap.
   313  func (p GPURenderPassLayout) New() js.Ref {
   314  	return bindings.GPURenderPassLayoutJSLoad(
   315  		js.Pointer(&p), js.True, 0,
   316  	)
   317  }
   318  
   319  // UpdateFrom copies value of all fields of the heap object to p.
   320  func (p *GPURenderPassLayout) UpdateFrom(ref js.Ref) {
   321  	bindings.GPURenderPassLayoutJSStore(
   322  		js.Pointer(p), ref,
   323  	)
   324  }
   325  
   326  // Update writes all fields of the p to the heap object referenced by ref.
   327  func (p *GPURenderPassLayout) Update(ref js.Ref) {
   328  	bindings.GPURenderPassLayoutJSLoad(
   329  		js.Pointer(p), js.False, ref,
   330  	)
   331  }
   332  
   333  // FreeMembers frees fields with heap reference, if recursive is true
   334  // free all heap references reachable from p.
   335  func (p *GPURenderPassLayout) FreeMembers(recursive bool) {
   336  	js.Free(
   337  		p.ColorFormats.Ref(),
   338  		p.Label.Ref(),
   339  	)
   340  	p.ColorFormats = p.ColorFormats.FromRef(js.Undefined)
   341  	p.Label = p.Label.FromRef(js.Undefined)
   342  }
   343  
   344  const (
   345  	GPUShaderStage_VERTEX   GPUFlagsConstant = 0x1
   346  	GPUShaderStage_FRAGMENT GPUFlagsConstant = 0x2
   347  	GPUShaderStage_COMPUTE  GPUFlagsConstant = 0x4
   348  )
   349  
   350  type GPUShaderStage struct{}
   351  
   352  const (
   353  	GPUTextureUsage_COPY_SRC          GPUFlagsConstant = 0x01
   354  	GPUTextureUsage_COPY_DST          GPUFlagsConstant = 0x02
   355  	GPUTextureUsage_TEXTURE_BINDING   GPUFlagsConstant = 0x04
   356  	GPUTextureUsage_STORAGE_BINDING   GPUFlagsConstant = 0x08
   357  	GPUTextureUsage_RENDER_ATTACHMENT GPUFlagsConstant = 0x10
   358  )
   359  
   360  type GPUTextureUsage struct{}
   361  
   362  type GPUUncapturedErrorEventInit struct {
   363  	// Error is "GPUUncapturedErrorEventInit.error"
   364  	//
   365  	// Required
   366  	Error GPUError
   367  	// Bubbles is "GPUUncapturedErrorEventInit.bubbles"
   368  	//
   369  	// Optional, defaults to false.
   370  	//
   371  	// NOTE: FFI_USE_Bubbles MUST be set to true to make this field effective.
   372  	Bubbles bool
   373  	// Cancelable is "GPUUncapturedErrorEventInit.cancelable"
   374  	//
   375  	// Optional, defaults to false.
   376  	//
   377  	// NOTE: FFI_USE_Cancelable MUST be set to true to make this field effective.
   378  	Cancelable bool
   379  	// Composed is "GPUUncapturedErrorEventInit.composed"
   380  	//
   381  	// Optional, defaults to false.
   382  	//
   383  	// NOTE: FFI_USE_Composed MUST be set to true to make this field effective.
   384  	Composed bool
   385  
   386  	FFI_USE_Bubbles    bool // for Bubbles.
   387  	FFI_USE_Cancelable bool // for Cancelable.
   388  	FFI_USE_Composed   bool // for Composed.
   389  
   390  	FFI_USE bool
   391  }
   392  
   393  // FromRef calls UpdateFrom and returns a GPUUncapturedErrorEventInit with all fields set.
   394  func (p GPUUncapturedErrorEventInit) FromRef(ref js.Ref) GPUUncapturedErrorEventInit {
   395  	p.UpdateFrom(ref)
   396  	return p
   397  }
   398  
   399  // New creates a new GPUUncapturedErrorEventInit in the application heap.
   400  func (p GPUUncapturedErrorEventInit) New() js.Ref {
   401  	return bindings.GPUUncapturedErrorEventInitJSLoad(
   402  		js.Pointer(&p), js.True, 0,
   403  	)
   404  }
   405  
   406  // UpdateFrom copies value of all fields of the heap object to p.
   407  func (p *GPUUncapturedErrorEventInit) UpdateFrom(ref js.Ref) {
   408  	bindings.GPUUncapturedErrorEventInitJSStore(
   409  		js.Pointer(p), ref,
   410  	)
   411  }
   412  
   413  // Update writes all fields of the p to the heap object referenced by ref.
   414  func (p *GPUUncapturedErrorEventInit) Update(ref js.Ref) {
   415  	bindings.GPUUncapturedErrorEventInitJSLoad(
   416  		js.Pointer(p), js.False, ref,
   417  	)
   418  }
   419  
   420  // FreeMembers frees fields with heap reference, if recursive is true
   421  // free all heap references reachable from p.
   422  func (p *GPUUncapturedErrorEventInit) FreeMembers(recursive bool) {
   423  	js.Free(
   424  		p.Error.Ref(),
   425  	)
   426  	p.Error = p.Error.FromRef(js.Undefined)
   427  }
   428  
   429  func NewGPUUncapturedErrorEvent(typ js.String, gpuUncapturedErrorEventInitDict GPUUncapturedErrorEventInit) (ret GPUUncapturedErrorEvent) {
   430  	ret.ref = bindings.NewGPUUncapturedErrorEventByGPUUncapturedErrorEvent(
   431  		typ.Ref(),
   432  		js.Pointer(&gpuUncapturedErrorEventInitDict))
   433  	return
   434  }
   435  
   436  type GPUUncapturedErrorEvent struct {
   437  	Event
   438  }
   439  
   440  func (this GPUUncapturedErrorEvent) Once() GPUUncapturedErrorEvent {
   441  	this.ref.Once()
   442  	return this
   443  }
   444  
   445  func (this GPUUncapturedErrorEvent) Ref() js.Ref {
   446  	return this.Event.Ref()
   447  }
   448  
   449  func (this GPUUncapturedErrorEvent) FromRef(ref js.Ref) GPUUncapturedErrorEvent {
   450  	this.Event = this.Event.FromRef(ref)
   451  	return this
   452  }
   453  
   454  func (this GPUUncapturedErrorEvent) Free() {
   455  	this.ref.Free()
   456  }
   457  
   458  // Error returns the value of property "GPUUncapturedErrorEvent.error".
   459  //
   460  // It returns ok=false if there is no such property.
   461  func (this GPUUncapturedErrorEvent) Error() (ret GPUError, ok bool) {
   462  	ok = js.True == bindings.GetGPUUncapturedErrorEventError(
   463  		this.ref, js.Pointer(&ret),
   464  	)
   465  	return
   466  }
   467  
   468  func NewGPUValidationError(message js.String) (ret GPUValidationError) {
   469  	ret.ref = bindings.NewGPUValidationErrorByGPUValidationError(
   470  		message.Ref())
   471  	return
   472  }
   473  
   474  type GPUValidationError struct {
   475  	GPUError
   476  }
   477  
   478  func (this GPUValidationError) Once() GPUValidationError {
   479  	this.ref.Once()
   480  	return this
   481  }
   482  
   483  func (this GPUValidationError) Ref() js.Ref {
   484  	return this.GPUError.Ref()
   485  }
   486  
   487  func (this GPUValidationError) FromRef(ref js.Ref) GPUValidationError {
   488  	this.GPUError = this.GPUError.FromRef(ref)
   489  	return this
   490  }
   491  
   492  func (this GPUValidationError) Free() {
   493  	this.ref.Free()
   494  }
   495  
   496  type GamepadEventInit struct {
   497  	// Gamepad is "GamepadEventInit.gamepad"
   498  	//
   499  	// Required
   500  	Gamepad Gamepad
   501  	// Bubbles is "GamepadEventInit.bubbles"
   502  	//
   503  	// Optional, defaults to false.
   504  	//
   505  	// NOTE: FFI_USE_Bubbles MUST be set to true to make this field effective.
   506  	Bubbles bool
   507  	// Cancelable is "GamepadEventInit.cancelable"
   508  	//
   509  	// Optional, defaults to false.
   510  	//
   511  	// NOTE: FFI_USE_Cancelable MUST be set to true to make this field effective.
   512  	Cancelable bool
   513  	// Composed is "GamepadEventInit.composed"
   514  	//
   515  	// Optional, defaults to false.
   516  	//
   517  	// NOTE: FFI_USE_Composed MUST be set to true to make this field effective.
   518  	Composed bool
   519  
   520  	FFI_USE_Bubbles    bool // for Bubbles.
   521  	FFI_USE_Cancelable bool // for Cancelable.
   522  	FFI_USE_Composed   bool // for Composed.
   523  
   524  	FFI_USE bool
   525  }
   526  
   527  // FromRef calls UpdateFrom and returns a GamepadEventInit with all fields set.
   528  func (p GamepadEventInit) FromRef(ref js.Ref) GamepadEventInit {
   529  	p.UpdateFrom(ref)
   530  	return p
   531  }
   532  
   533  // New creates a new GamepadEventInit in the application heap.
   534  func (p GamepadEventInit) New() js.Ref {
   535  	return bindings.GamepadEventInitJSLoad(
   536  		js.Pointer(&p), js.True, 0,
   537  	)
   538  }
   539  
   540  // UpdateFrom copies value of all fields of the heap object to p.
   541  func (p *GamepadEventInit) UpdateFrom(ref js.Ref) {
   542  	bindings.GamepadEventInitJSStore(
   543  		js.Pointer(p), ref,
   544  	)
   545  }
   546  
   547  // Update writes all fields of the p to the heap object referenced by ref.
   548  func (p *GamepadEventInit) Update(ref js.Ref) {
   549  	bindings.GamepadEventInitJSLoad(
   550  		js.Pointer(p), js.False, ref,
   551  	)
   552  }
   553  
   554  // FreeMembers frees fields with heap reference, if recursive is true
   555  // free all heap references reachable from p.
   556  func (p *GamepadEventInit) FreeMembers(recursive bool) {
   557  	js.Free(
   558  		p.Gamepad.Ref(),
   559  	)
   560  	p.Gamepad = p.Gamepad.FromRef(js.Undefined)
   561  }
   562  
   563  func NewGamepadEvent(typ js.String, eventInitDict GamepadEventInit) (ret GamepadEvent) {
   564  	ret.ref = bindings.NewGamepadEventByGamepadEvent(
   565  		typ.Ref(),
   566  		js.Pointer(&eventInitDict))
   567  	return
   568  }
   569  
   570  type GamepadEvent struct {
   571  	Event
   572  }
   573  
   574  func (this GamepadEvent) Once() GamepadEvent {
   575  	this.ref.Once()
   576  	return this
   577  }
   578  
   579  func (this GamepadEvent) Ref() js.Ref {
   580  	return this.Event.Ref()
   581  }
   582  
   583  func (this GamepadEvent) FromRef(ref js.Ref) GamepadEvent {
   584  	this.Event = this.Event.FromRef(ref)
   585  	return this
   586  }
   587  
   588  func (this GamepadEvent) Free() {
   589  	this.ref.Free()
   590  }
   591  
   592  // Gamepad returns the value of property "GamepadEvent.gamepad".
   593  //
   594  // It returns ok=false if there is no such property.
   595  func (this GamepadEvent) Gamepad() (ret Gamepad, ok bool) {
   596  	ok = js.True == bindings.GetGamepadEventGamepad(
   597  		this.ref, js.Pointer(&ret),
   598  	)
   599  	return
   600  }
   601  
   602  type GenerateAssertionCallbackFunc func(this js.Ref, contents js.String, origin js.String, options *RTCIdentityProviderOptions) js.Ref
   603  
   604  func (fn GenerateAssertionCallbackFunc) Register() js.Func[func(contents js.String, origin js.String, options *RTCIdentityProviderOptions) js.Promise[RTCIdentityAssertionResult]] {
   605  	return js.RegisterCallback[func(contents js.String, origin js.String, options *RTCIdentityProviderOptions) js.Promise[RTCIdentityAssertionResult]](
   606  		fn, abi.FuncPCABIInternal(fn),
   607  	)
   608  }
   609  
   610  func (fn GenerateAssertionCallbackFunc) DispatchCallback(
   611  	targetPC uintptr, ctx *js.CallbackContext,
   612  ) {
   613  	args := ctx.Args()
   614  	if len(args) != 3+1 /* js this */ ||
   615  		targetPC != uintptr(abi.FuncPCABIInternal(fn)) {
   616  		js.ThrowInvalidCallbackInvocation()
   617  	}
   618  	var arg2 RTCIdentityProviderOptions
   619  	arg2.UpdateFrom(args[2+1])
   620  	defer arg2.FreeMembers(true)
   621  
   622  	if ctx.Return(fn(
   623  		args[0],
   624  
   625  		js.String{}.FromRef(args[0+1]),
   626  		js.String{}.FromRef(args[1+1]),
   627  		mark.NoEscape(&arg2),
   628  	)) {
   629  		return
   630  	}
   631  
   632  	js.ThrowCallbackValueNotReturned()
   633  }
   634  
   635  type GenerateAssertionCallback[T any] struct {
   636  	Fn  func(arg T, this js.Ref, contents js.String, origin js.String, options *RTCIdentityProviderOptions) js.Ref
   637  	Arg T
   638  }
   639  
   640  func (cb *GenerateAssertionCallback[T]) Register() js.Func[func(contents js.String, origin js.String, options *RTCIdentityProviderOptions) js.Promise[RTCIdentityAssertionResult]] {
   641  	return js.RegisterCallback[func(contents js.String, origin js.String, options *RTCIdentityProviderOptions) js.Promise[RTCIdentityAssertionResult]](
   642  		cb, abi.FuncPCABIInternal(cb.Fn),
   643  	)
   644  }
   645  
   646  func (cb *GenerateAssertionCallback[T]) DispatchCallback(
   647  	targetPC uintptr, ctx *js.CallbackContext,
   648  ) {
   649  	args := ctx.Args()
   650  	if len(args) != 3+1 /* js this */ ||
   651  		targetPC != uintptr(abi.FuncPCABIInternal(cb.Fn)) {
   652  		js.ThrowInvalidCallbackInvocation()
   653  	}
   654  	var arg2 RTCIdentityProviderOptions
   655  	arg2.UpdateFrom(args[2+1])
   656  	defer arg2.FreeMembers(true)
   657  
   658  	if ctx.Return(cb.Fn(
   659  		cb.Arg,
   660  		args[0],
   661  
   662  		js.String{}.FromRef(args[0+1]),
   663  		js.String{}.FromRef(args[1+1]),
   664  		mark.NoEscape(&arg2),
   665  	)) {
   666  		return
   667  	}
   668  
   669  	js.ThrowCallbackValueNotReturned()
   670  }
   671  
   672  type RTCIdentityProviderDetails struct {
   673  	// Domain is "RTCIdentityProviderDetails.domain"
   674  	//
   675  	// Required
   676  	Domain js.String
   677  	// Protocol is "RTCIdentityProviderDetails.protocol"
   678  	//
   679  	// Optional, defaults to "default".
   680  	Protocol js.String
   681  
   682  	FFI_USE bool
   683  }
   684  
   685  // FromRef calls UpdateFrom and returns a RTCIdentityProviderDetails with all fields set.
   686  func (p RTCIdentityProviderDetails) FromRef(ref js.Ref) RTCIdentityProviderDetails {
   687  	p.UpdateFrom(ref)
   688  	return p
   689  }
   690  
   691  // New creates a new RTCIdentityProviderDetails in the application heap.
   692  func (p RTCIdentityProviderDetails) New() js.Ref {
   693  	return bindings.RTCIdentityProviderDetailsJSLoad(
   694  		js.Pointer(&p), js.True, 0,
   695  	)
   696  }
   697  
   698  // UpdateFrom copies value of all fields of the heap object to p.
   699  func (p *RTCIdentityProviderDetails) UpdateFrom(ref js.Ref) {
   700  	bindings.RTCIdentityProviderDetailsJSStore(
   701  		js.Pointer(p), ref,
   702  	)
   703  }
   704  
   705  // Update writes all fields of the p to the heap object referenced by ref.
   706  func (p *RTCIdentityProviderDetails) Update(ref js.Ref) {
   707  	bindings.RTCIdentityProviderDetailsJSLoad(
   708  		js.Pointer(p), js.False, ref,
   709  	)
   710  }
   711  
   712  // FreeMembers frees fields with heap reference, if recursive is true
   713  // free all heap references reachable from p.
   714  func (p *RTCIdentityProviderDetails) FreeMembers(recursive bool) {
   715  	js.Free(
   716  		p.Domain.Ref(),
   717  		p.Protocol.Ref(),
   718  	)
   719  	p.Domain = p.Domain.FromRef(js.Undefined)
   720  	p.Protocol = p.Protocol.FromRef(js.Undefined)
   721  }
   722  
   723  type RTCIdentityAssertionResult struct {
   724  	// Idp is "RTCIdentityAssertionResult.idp"
   725  	//
   726  	// Required
   727  	//
   728  	// NOTE: Idp.FFI_USE MUST be set to true to get Idp used.
   729  	Idp RTCIdentityProviderDetails
   730  	// Assertion is "RTCIdentityAssertionResult.assertion"
   731  	//
   732  	// Required
   733  	Assertion js.String
   734  
   735  	FFI_USE bool
   736  }
   737  
   738  // FromRef calls UpdateFrom and returns a RTCIdentityAssertionResult with all fields set.
   739  func (p RTCIdentityAssertionResult) FromRef(ref js.Ref) RTCIdentityAssertionResult {
   740  	p.UpdateFrom(ref)
   741  	return p
   742  }
   743  
   744  // New creates a new RTCIdentityAssertionResult in the application heap.
   745  func (p RTCIdentityAssertionResult) New() js.Ref {
   746  	return bindings.RTCIdentityAssertionResultJSLoad(
   747  		js.Pointer(&p), js.True, 0,
   748  	)
   749  }
   750  
   751  // UpdateFrom copies value of all fields of the heap object to p.
   752  func (p *RTCIdentityAssertionResult) UpdateFrom(ref js.Ref) {
   753  	bindings.RTCIdentityAssertionResultJSStore(
   754  		js.Pointer(p), ref,
   755  	)
   756  }
   757  
   758  // Update writes all fields of the p to the heap object referenced by ref.
   759  func (p *RTCIdentityAssertionResult) Update(ref js.Ref) {
   760  	bindings.RTCIdentityAssertionResultJSLoad(
   761  		js.Pointer(p), js.False, ref,
   762  	)
   763  }
   764  
   765  // FreeMembers frees fields with heap reference, if recursive is true
   766  // free all heap references reachable from p.
   767  func (p *RTCIdentityAssertionResult) FreeMembers(recursive bool) {
   768  	js.Free(
   769  		p.Assertion.Ref(),
   770  	)
   771  	p.Assertion = p.Assertion.FromRef(js.Undefined)
   772  	if recursive {
   773  		p.Idp.FreeMembers(true)
   774  	}
   775  }
   776  
   777  type RTCIdentityProviderOptions struct {
   778  	// Protocol is "RTCIdentityProviderOptions.protocol"
   779  	//
   780  	// Optional, defaults to "default".
   781  	Protocol js.String
   782  	// UsernameHint is "RTCIdentityProviderOptions.usernameHint"
   783  	//
   784  	// Optional
   785  	UsernameHint js.String
   786  	// PeerIdentity is "RTCIdentityProviderOptions.peerIdentity"
   787  	//
   788  	// Optional
   789  	PeerIdentity js.String
   790  
   791  	FFI_USE bool
   792  }
   793  
   794  // FromRef calls UpdateFrom and returns a RTCIdentityProviderOptions with all fields set.
   795  func (p RTCIdentityProviderOptions) FromRef(ref js.Ref) RTCIdentityProviderOptions {
   796  	p.UpdateFrom(ref)
   797  	return p
   798  }
   799  
   800  // New creates a new RTCIdentityProviderOptions in the application heap.
   801  func (p RTCIdentityProviderOptions) New() js.Ref {
   802  	return bindings.RTCIdentityProviderOptionsJSLoad(
   803  		js.Pointer(&p), js.True, 0,
   804  	)
   805  }
   806  
   807  // UpdateFrom copies value of all fields of the heap object to p.
   808  func (p *RTCIdentityProviderOptions) UpdateFrom(ref js.Ref) {
   809  	bindings.RTCIdentityProviderOptionsJSStore(
   810  		js.Pointer(p), ref,
   811  	)
   812  }
   813  
   814  // Update writes all fields of the p to the heap object referenced by ref.
   815  func (p *RTCIdentityProviderOptions) Update(ref js.Ref) {
   816  	bindings.RTCIdentityProviderOptionsJSLoad(
   817  		js.Pointer(p), js.False, ref,
   818  	)
   819  }
   820  
   821  // FreeMembers frees fields with heap reference, if recursive is true
   822  // free all heap references reachable from p.
   823  func (p *RTCIdentityProviderOptions) FreeMembers(recursive bool) {
   824  	js.Free(
   825  		p.Protocol.Ref(),
   826  		p.UsernameHint.Ref(),
   827  		p.PeerIdentity.Ref(),
   828  	)
   829  	p.Protocol = p.Protocol.FromRef(js.Undefined)
   830  	p.UsernameHint = p.UsernameHint.FromRef(js.Undefined)
   831  	p.PeerIdentity = p.PeerIdentity.FromRef(js.Undefined)
   832  }
   833  
   834  type GenerateBidInterestGroup struct {
   835  	// Owner is "GenerateBidInterestGroup.owner"
   836  	//
   837  	// Required
   838  	Owner js.String
   839  	// Name is "GenerateBidInterestGroup.name"
   840  	//
   841  	// Required
   842  	Name js.String
   843  	// LifetimeMs is "GenerateBidInterestGroup.lifetimeMs"
   844  	//
   845  	// Required
   846  	LifetimeMs float64
   847  	// EnableBiddingSignalsPrioritization is "GenerateBidInterestGroup.enableBiddingSignalsPrioritization"
   848  	//
   849  	// Optional, defaults to false.
   850  	//
   851  	// NOTE: FFI_USE_EnableBiddingSignalsPrioritization MUST be set to true to make this field effective.
   852  	EnableBiddingSignalsPrioritization bool
   853  	// PriorityVector is "GenerateBidInterestGroup.priorityVector"
   854  	//
   855  	// Optional
   856  	PriorityVector js.Record[float64]
   857  	// ExecutionMode is "GenerateBidInterestGroup.executionMode"
   858  	//
   859  	// Optional, defaults to "compatibility".
   860  	ExecutionMode js.String
   861  	// BiddingLogicURL is "GenerateBidInterestGroup.biddingLogicURL"
   862  	//
   863  	// Optional
   864  	BiddingLogicURL js.String
   865  	// BiddingWasmHelperURL is "GenerateBidInterestGroup.biddingWasmHelperURL"
   866  	//
   867  	// Optional
   868  	BiddingWasmHelperURL js.String
   869  	// UpdateURL is "GenerateBidInterestGroup.updateURL"
   870  	//
   871  	// Optional
   872  	UpdateURL js.String
   873  	// TrustedBiddingSignalsURL is "GenerateBidInterestGroup.trustedBiddingSignalsURL"
   874  	//
   875  	// Optional
   876  	TrustedBiddingSignalsURL js.String
   877  	// TrustedBiddingSignalsKeys is "GenerateBidInterestGroup.trustedBiddingSignalsKeys"
   878  	//
   879  	// Optional
   880  	TrustedBiddingSignalsKeys js.Array[js.String]
   881  	// UserBiddingSignals is "GenerateBidInterestGroup.userBiddingSignals"
   882  	//
   883  	// Optional
   884  	UserBiddingSignals js.Any
   885  	// Ads is "GenerateBidInterestGroup.ads"
   886  	//
   887  	// Optional
   888  	Ads js.Array[AuctionAd]
   889  	// AdComponents is "GenerateBidInterestGroup.adComponents"
   890  	//
   891  	// Optional
   892  	AdComponents js.Array[AuctionAd]
   893  
   894  	FFI_USE_EnableBiddingSignalsPrioritization bool // for EnableBiddingSignalsPrioritization.
   895  
   896  	FFI_USE bool
   897  }
   898  
   899  // FromRef calls UpdateFrom and returns a GenerateBidInterestGroup with all fields set.
   900  func (p GenerateBidInterestGroup) FromRef(ref js.Ref) GenerateBidInterestGroup {
   901  	p.UpdateFrom(ref)
   902  	return p
   903  }
   904  
   905  // New creates a new GenerateBidInterestGroup in the application heap.
   906  func (p GenerateBidInterestGroup) New() js.Ref {
   907  	return bindings.GenerateBidInterestGroupJSLoad(
   908  		js.Pointer(&p), js.True, 0,
   909  	)
   910  }
   911  
   912  // UpdateFrom copies value of all fields of the heap object to p.
   913  func (p *GenerateBidInterestGroup) UpdateFrom(ref js.Ref) {
   914  	bindings.GenerateBidInterestGroupJSStore(
   915  		js.Pointer(p), ref,
   916  	)
   917  }
   918  
   919  // Update writes all fields of the p to the heap object referenced by ref.
   920  func (p *GenerateBidInterestGroup) Update(ref js.Ref) {
   921  	bindings.GenerateBidInterestGroupJSLoad(
   922  		js.Pointer(p), js.False, ref,
   923  	)
   924  }
   925  
   926  // FreeMembers frees fields with heap reference, if recursive is true
   927  // free all heap references reachable from p.
   928  func (p *GenerateBidInterestGroup) FreeMembers(recursive bool) {
   929  	js.Free(
   930  		p.Owner.Ref(),
   931  		p.Name.Ref(),
   932  		p.PriorityVector.Ref(),
   933  		p.ExecutionMode.Ref(),
   934  		p.BiddingLogicURL.Ref(),
   935  		p.BiddingWasmHelperURL.Ref(),
   936  		p.UpdateURL.Ref(),
   937  		p.TrustedBiddingSignalsURL.Ref(),
   938  		p.TrustedBiddingSignalsKeys.Ref(),
   939  		p.UserBiddingSignals.Ref(),
   940  		p.Ads.Ref(),
   941  		p.AdComponents.Ref(),
   942  	)
   943  	p.Owner = p.Owner.FromRef(js.Undefined)
   944  	p.Name = p.Name.FromRef(js.Undefined)
   945  	p.PriorityVector = p.PriorityVector.FromRef(js.Undefined)
   946  	p.ExecutionMode = p.ExecutionMode.FromRef(js.Undefined)
   947  	p.BiddingLogicURL = p.BiddingLogicURL.FromRef(js.Undefined)
   948  	p.BiddingWasmHelperURL = p.BiddingWasmHelperURL.FromRef(js.Undefined)
   949  	p.UpdateURL = p.UpdateURL.FromRef(js.Undefined)
   950  	p.TrustedBiddingSignalsURL = p.TrustedBiddingSignalsURL.FromRef(js.Undefined)
   951  	p.TrustedBiddingSignalsKeys = p.TrustedBiddingSignalsKeys.FromRef(js.Undefined)
   952  	p.UserBiddingSignals = p.UserBiddingSignals.FromRef(js.Undefined)
   953  	p.Ads = p.Ads.FromRef(js.Undefined)
   954  	p.AdComponents = p.AdComponents.FromRef(js.Undefined)
   955  }
   956  
   957  type OneOf_String_AdRender struct {
   958  	ref js.Ref
   959  }
   960  
   961  func (x OneOf_String_AdRender) Ref() js.Ref {
   962  	return x.ref
   963  }
   964  
   965  func (x OneOf_String_AdRender) Free() {
   966  	x.ref.Free()
   967  }
   968  
   969  func (x OneOf_String_AdRender) FromRef(ref js.Ref) OneOf_String_AdRender {
   970  	return OneOf_String_AdRender{
   971  		ref: ref,
   972  	}
   973  }
   974  
   975  func (x OneOf_String_AdRender) String() js.String {
   976  	return js.String{}.FromRef(x.ref)
   977  }
   978  
   979  func (x OneOf_String_AdRender) AdRender() AdRender {
   980  	var ret AdRender
   981  	ret.UpdateFrom(x.ref)
   982  	return ret
   983  }
   984  
   985  type GenerateBidOutput struct {
   986  	// Bid is "GenerateBidOutput.bid"
   987  	//
   988  	// Optional, defaults to -1.
   989  	//
   990  	// NOTE: FFI_USE_Bid MUST be set to true to make this field effective.
   991  	Bid float64
   992  	// BidCurrency is "GenerateBidOutput.bidCurrency"
   993  	//
   994  	// Optional
   995  	BidCurrency js.String
   996  	// Render is "GenerateBidOutput.render"
   997  	//
   998  	// Optional
   999  	Render OneOf_String_AdRender
  1000  	// Ad is "GenerateBidOutput.ad"
  1001  	//
  1002  	// Optional
  1003  	Ad js.Any
  1004  	// AdComponents is "GenerateBidOutput.adComponents"
  1005  	//
  1006  	// Optional
  1007  	AdComponents js.Array[OneOf_String_AdRender]
  1008  	// AdCost is "GenerateBidOutput.adCost"
  1009  	//
  1010  	// Optional
  1011  	//
  1012  	// NOTE: FFI_USE_AdCost MUST be set to true to make this field effective.
  1013  	AdCost float64
  1014  	// ModelingSignals is "GenerateBidOutput.modelingSignals"
  1015  	//
  1016  	// Optional
  1017  	//
  1018  	// NOTE: FFI_USE_ModelingSignals MUST be set to true to make this field effective.
  1019  	ModelingSignals float64
  1020  	// AllowComponentAuction is "GenerateBidOutput.allowComponentAuction"
  1021  	//
  1022  	// Optional, defaults to false.
  1023  	//
  1024  	// NOTE: FFI_USE_AllowComponentAuction MUST be set to true to make this field effective.
  1025  	AllowComponentAuction bool
  1026  
  1027  	FFI_USE_Bid                   bool // for Bid.
  1028  	FFI_USE_AdCost                bool // for AdCost.
  1029  	FFI_USE_ModelingSignals       bool // for ModelingSignals.
  1030  	FFI_USE_AllowComponentAuction bool // for AllowComponentAuction.
  1031  
  1032  	FFI_USE bool
  1033  }
  1034  
  1035  // FromRef calls UpdateFrom and returns a GenerateBidOutput with all fields set.
  1036  func (p GenerateBidOutput) FromRef(ref js.Ref) GenerateBidOutput {
  1037  	p.UpdateFrom(ref)
  1038  	return p
  1039  }
  1040  
  1041  // New creates a new GenerateBidOutput in the application heap.
  1042  func (p GenerateBidOutput) New() js.Ref {
  1043  	return bindings.GenerateBidOutputJSLoad(
  1044  		js.Pointer(&p), js.True, 0,
  1045  	)
  1046  }
  1047  
  1048  // UpdateFrom copies value of all fields of the heap object to p.
  1049  func (p *GenerateBidOutput) UpdateFrom(ref js.Ref) {
  1050  	bindings.GenerateBidOutputJSStore(
  1051  		js.Pointer(p), ref,
  1052  	)
  1053  }
  1054  
  1055  // Update writes all fields of the p to the heap object referenced by ref.
  1056  func (p *GenerateBidOutput) Update(ref js.Ref) {
  1057  	bindings.GenerateBidOutputJSLoad(
  1058  		js.Pointer(p), js.False, ref,
  1059  	)
  1060  }
  1061  
  1062  // FreeMembers frees fields with heap reference, if recursive is true
  1063  // free all heap references reachable from p.
  1064  func (p *GenerateBidOutput) FreeMembers(recursive bool) {
  1065  	js.Free(
  1066  		p.BidCurrency.Ref(),
  1067  		p.Render.Ref(),
  1068  		p.Ad.Ref(),
  1069  		p.AdComponents.Ref(),
  1070  	)
  1071  	p.BidCurrency = p.BidCurrency.FromRef(js.Undefined)
  1072  	p.Render = p.Render.FromRef(js.Undefined)
  1073  	p.Ad = p.Ad.FromRef(js.Undefined)
  1074  	p.AdComponents = p.AdComponents.FromRef(js.Undefined)
  1075  }
  1076  
  1077  type GenerateTestReportParameters struct {
  1078  	// Message is "GenerateTestReportParameters.message"
  1079  	//
  1080  	// Required
  1081  	Message js.String
  1082  	// Group is "GenerateTestReportParameters.group"
  1083  	//
  1084  	// Optional, defaults to "default".
  1085  	Group js.String
  1086  
  1087  	FFI_USE bool
  1088  }
  1089  
  1090  // FromRef calls UpdateFrom and returns a GenerateTestReportParameters with all fields set.
  1091  func (p GenerateTestReportParameters) FromRef(ref js.Ref) GenerateTestReportParameters {
  1092  	p.UpdateFrom(ref)
  1093  	return p
  1094  }
  1095  
  1096  // New creates a new GenerateTestReportParameters in the application heap.
  1097  func (p GenerateTestReportParameters) New() js.Ref {
  1098  	return bindings.GenerateTestReportParametersJSLoad(
  1099  		js.Pointer(&p), js.True, 0,
  1100  	)
  1101  }
  1102  
  1103  // UpdateFrom copies value of all fields of the heap object to p.
  1104  func (p *GenerateTestReportParameters) UpdateFrom(ref js.Ref) {
  1105  	bindings.GenerateTestReportParametersJSStore(
  1106  		js.Pointer(p), ref,
  1107  	)
  1108  }
  1109  
  1110  // Update writes all fields of the p to the heap object referenced by ref.
  1111  func (p *GenerateTestReportParameters) Update(ref js.Ref) {
  1112  	bindings.GenerateTestReportParametersJSLoad(
  1113  		js.Pointer(p), js.False, ref,
  1114  	)
  1115  }
  1116  
  1117  // FreeMembers frees fields with heap reference, if recursive is true
  1118  // free all heap references reachable from p.
  1119  func (p *GenerateTestReportParameters) FreeMembers(recursive bool) {
  1120  	js.Free(
  1121  		p.Message.Ref(),
  1122  		p.Group.Ref(),
  1123  	)
  1124  	p.Message = p.Message.FromRef(js.Undefined)
  1125  	p.Group = p.Group.FromRef(js.Undefined)
  1126  }
  1127  
  1128  type GeolocationReadingValues struct {
  1129  	// Latitude is "GeolocationReadingValues.latitude"
  1130  	//
  1131  	// Required
  1132  	Latitude float64
  1133  	// Longitude is "GeolocationReadingValues.longitude"
  1134  	//
  1135  	// Required
  1136  	Longitude float64
  1137  	// Altitude is "GeolocationReadingValues.altitude"
  1138  	//
  1139  	// Required
  1140  	Altitude float64
  1141  	// Accuracy is "GeolocationReadingValues.accuracy"
  1142  	//
  1143  	// Required
  1144  	Accuracy float64
  1145  	// AltitudeAccuracy is "GeolocationReadingValues.altitudeAccuracy"
  1146  	//
  1147  	// Required
  1148  	AltitudeAccuracy float64
  1149  	// Heading is "GeolocationReadingValues.heading"
  1150  	//
  1151  	// Required
  1152  	Heading float64
  1153  	// Speed is "GeolocationReadingValues.speed"
  1154  	//
  1155  	// Required
  1156  	Speed float64
  1157  
  1158  	FFI_USE bool
  1159  }
  1160  
  1161  // FromRef calls UpdateFrom and returns a GeolocationReadingValues with all fields set.
  1162  func (p GeolocationReadingValues) FromRef(ref js.Ref) GeolocationReadingValues {
  1163  	p.UpdateFrom(ref)
  1164  	return p
  1165  }
  1166  
  1167  // New creates a new GeolocationReadingValues in the application heap.
  1168  func (p GeolocationReadingValues) New() js.Ref {
  1169  	return bindings.GeolocationReadingValuesJSLoad(
  1170  		js.Pointer(&p), js.True, 0,
  1171  	)
  1172  }
  1173  
  1174  // UpdateFrom copies value of all fields of the heap object to p.
  1175  func (p *GeolocationReadingValues) UpdateFrom(ref js.Ref) {
  1176  	bindings.GeolocationReadingValuesJSStore(
  1177  		js.Pointer(p), ref,
  1178  	)
  1179  }
  1180  
  1181  // Update writes all fields of the p to the heap object referenced by ref.
  1182  func (p *GeolocationReadingValues) Update(ref js.Ref) {
  1183  	bindings.GeolocationReadingValuesJSLoad(
  1184  		js.Pointer(p), js.False, ref,
  1185  	)
  1186  }
  1187  
  1188  // FreeMembers frees fields with heap reference, if recursive is true
  1189  // free all heap references reachable from p.
  1190  func (p *GeolocationReadingValues) FreeMembers(recursive bool) {
  1191  }
  1192  
  1193  type GeolocationSensorOptions struct {
  1194  	// Frequency is "GeolocationSensorOptions.frequency"
  1195  	//
  1196  	// Optional
  1197  	//
  1198  	// NOTE: FFI_USE_Frequency MUST be set to true to make this field effective.
  1199  	Frequency float64
  1200  
  1201  	FFI_USE_Frequency bool // for Frequency.
  1202  
  1203  	FFI_USE bool
  1204  }
  1205  
  1206  // FromRef calls UpdateFrom and returns a GeolocationSensorOptions with all fields set.
  1207  func (p GeolocationSensorOptions) FromRef(ref js.Ref) GeolocationSensorOptions {
  1208  	p.UpdateFrom(ref)
  1209  	return p
  1210  }
  1211  
  1212  // New creates a new GeolocationSensorOptions in the application heap.
  1213  func (p GeolocationSensorOptions) New() js.Ref {
  1214  	return bindings.GeolocationSensorOptionsJSLoad(
  1215  		js.Pointer(&p), js.True, 0,
  1216  	)
  1217  }
  1218  
  1219  // UpdateFrom copies value of all fields of the heap object to p.
  1220  func (p *GeolocationSensorOptions) UpdateFrom(ref js.Ref) {
  1221  	bindings.GeolocationSensorOptionsJSStore(
  1222  		js.Pointer(p), ref,
  1223  	)
  1224  }
  1225  
  1226  // Update writes all fields of the p to the heap object referenced by ref.
  1227  func (p *GeolocationSensorOptions) Update(ref js.Ref) {
  1228  	bindings.GeolocationSensorOptionsJSLoad(
  1229  		js.Pointer(p), js.False, ref,
  1230  	)
  1231  }
  1232  
  1233  // FreeMembers frees fields with heap reference, if recursive is true
  1234  // free all heap references reachable from p.
  1235  func (p *GeolocationSensorOptions) FreeMembers(recursive bool) {
  1236  }
  1237  
  1238  type GeolocationSensorReading struct {
  1239  	// Timestamp is "GeolocationSensorReading.timestamp"
  1240  	//
  1241  	// Optional
  1242  	//
  1243  	// NOTE: FFI_USE_Timestamp MUST be set to true to make this field effective.
  1244  	Timestamp DOMHighResTimeStamp
  1245  	// Latitude is "GeolocationSensorReading.latitude"
  1246  	//
  1247  	// Optional
  1248  	//
  1249  	// NOTE: FFI_USE_Latitude MUST be set to true to make this field effective.
  1250  	Latitude float64
  1251  	// Longitude is "GeolocationSensorReading.longitude"
  1252  	//
  1253  	// Optional
  1254  	//
  1255  	// NOTE: FFI_USE_Longitude MUST be set to true to make this field effective.
  1256  	Longitude float64
  1257  	// Altitude is "GeolocationSensorReading.altitude"
  1258  	//
  1259  	// Optional
  1260  	//
  1261  	// NOTE: FFI_USE_Altitude MUST be set to true to make this field effective.
  1262  	Altitude float64
  1263  	// Accuracy is "GeolocationSensorReading.accuracy"
  1264  	//
  1265  	// Optional
  1266  	//
  1267  	// NOTE: FFI_USE_Accuracy MUST be set to true to make this field effective.
  1268  	Accuracy float64
  1269  	// AltitudeAccuracy is "GeolocationSensorReading.altitudeAccuracy"
  1270  	//
  1271  	// Optional
  1272  	//
  1273  	// NOTE: FFI_USE_AltitudeAccuracy MUST be set to true to make this field effective.
  1274  	AltitudeAccuracy float64
  1275  	// Heading is "GeolocationSensorReading.heading"
  1276  	//
  1277  	// Optional
  1278  	//
  1279  	// NOTE: FFI_USE_Heading MUST be set to true to make this field effective.
  1280  	Heading float64
  1281  	// Speed is "GeolocationSensorReading.speed"
  1282  	//
  1283  	// Optional
  1284  	//
  1285  	// NOTE: FFI_USE_Speed MUST be set to true to make this field effective.
  1286  	Speed float64
  1287  
  1288  	FFI_USE_Timestamp        bool // for Timestamp.
  1289  	FFI_USE_Latitude         bool // for Latitude.
  1290  	FFI_USE_Longitude        bool // for Longitude.
  1291  	FFI_USE_Altitude         bool // for Altitude.
  1292  	FFI_USE_Accuracy         bool // for Accuracy.
  1293  	FFI_USE_AltitudeAccuracy bool // for AltitudeAccuracy.
  1294  	FFI_USE_Heading          bool // for Heading.
  1295  	FFI_USE_Speed            bool // for Speed.
  1296  
  1297  	FFI_USE bool
  1298  }
  1299  
  1300  // FromRef calls UpdateFrom and returns a GeolocationSensorReading with all fields set.
  1301  func (p GeolocationSensorReading) FromRef(ref js.Ref) GeolocationSensorReading {
  1302  	p.UpdateFrom(ref)
  1303  	return p
  1304  }
  1305  
  1306  // New creates a new GeolocationSensorReading in the application heap.
  1307  func (p GeolocationSensorReading) New() js.Ref {
  1308  	return bindings.GeolocationSensorReadingJSLoad(
  1309  		js.Pointer(&p), js.True, 0,
  1310  	)
  1311  }
  1312  
  1313  // UpdateFrom copies value of all fields of the heap object to p.
  1314  func (p *GeolocationSensorReading) UpdateFrom(ref js.Ref) {
  1315  	bindings.GeolocationSensorReadingJSStore(
  1316  		js.Pointer(p), ref,
  1317  	)
  1318  }
  1319  
  1320  // Update writes all fields of the p to the heap object referenced by ref.
  1321  func (p *GeolocationSensorReading) Update(ref js.Ref) {
  1322  	bindings.GeolocationSensorReadingJSLoad(
  1323  		js.Pointer(p), js.False, ref,
  1324  	)
  1325  }
  1326  
  1327  // FreeMembers frees fields with heap reference, if recursive is true
  1328  // free all heap references reachable from p.
  1329  func (p *GeolocationSensorReading) FreeMembers(recursive bool) {
  1330  }
  1331  
  1332  type ReadOptions struct {
  1333  	// Signal is "ReadOptions.signal"
  1334  	//
  1335  	// Optional
  1336  	Signal AbortSignal
  1337  	// Frequency is "ReadOptions.frequency"
  1338  	//
  1339  	// Optional
  1340  	//
  1341  	// NOTE: FFI_USE_Frequency MUST be set to true to make this field effective.
  1342  	Frequency float64
  1343  
  1344  	FFI_USE_Frequency bool // for Frequency.
  1345  
  1346  	FFI_USE bool
  1347  }
  1348  
  1349  // FromRef calls UpdateFrom and returns a ReadOptions with all fields set.
  1350  func (p ReadOptions) FromRef(ref js.Ref) ReadOptions {
  1351  	p.UpdateFrom(ref)
  1352  	return p
  1353  }
  1354  
  1355  // New creates a new ReadOptions in the application heap.
  1356  func (p ReadOptions) New() js.Ref {
  1357  	return bindings.ReadOptionsJSLoad(
  1358  		js.Pointer(&p), js.True, 0,
  1359  	)
  1360  }
  1361  
  1362  // UpdateFrom copies value of all fields of the heap object to p.
  1363  func (p *ReadOptions) UpdateFrom(ref js.Ref) {
  1364  	bindings.ReadOptionsJSStore(
  1365  		js.Pointer(p), ref,
  1366  	)
  1367  }
  1368  
  1369  // Update writes all fields of the p to the heap object referenced by ref.
  1370  func (p *ReadOptions) Update(ref js.Ref) {
  1371  	bindings.ReadOptionsJSLoad(
  1372  		js.Pointer(p), js.False, ref,
  1373  	)
  1374  }
  1375  
  1376  // FreeMembers frees fields with heap reference, if recursive is true
  1377  // free all heap references reachable from p.
  1378  func (p *ReadOptions) FreeMembers(recursive bool) {
  1379  	js.Free(
  1380  		p.Signal.Ref(),
  1381  	)
  1382  	p.Signal = p.Signal.FromRef(js.Undefined)
  1383  }
  1384  
  1385  func NewGeolocationSensor(options GeolocationSensorOptions) (ret GeolocationSensor) {
  1386  	ret.ref = bindings.NewGeolocationSensorByGeolocationSensor(
  1387  		js.Pointer(&options))
  1388  	return
  1389  }
  1390  
  1391  func NewGeolocationSensorByGeolocationSensor1() (ret GeolocationSensor) {
  1392  	ret.ref = bindings.NewGeolocationSensorByGeolocationSensor1()
  1393  	return
  1394  }
  1395  
  1396  type GeolocationSensor struct {
  1397  	Sensor
  1398  }
  1399  
  1400  func (this GeolocationSensor) Once() GeolocationSensor {
  1401  	this.ref.Once()
  1402  	return this
  1403  }
  1404  
  1405  func (this GeolocationSensor) Ref() js.Ref {
  1406  	return this.Sensor.Ref()
  1407  }
  1408  
  1409  func (this GeolocationSensor) FromRef(ref js.Ref) GeolocationSensor {
  1410  	this.Sensor = this.Sensor.FromRef(ref)
  1411  	return this
  1412  }
  1413  
  1414  func (this GeolocationSensor) Free() {
  1415  	this.ref.Free()
  1416  }
  1417  
  1418  // Latitude returns the value of property "GeolocationSensor.latitude".
  1419  //
  1420  // It returns ok=false if there is no such property.
  1421  func (this GeolocationSensor) Latitude() (ret float64, ok bool) {
  1422  	ok = js.True == bindings.GetGeolocationSensorLatitude(
  1423  		this.ref, js.Pointer(&ret),
  1424  	)
  1425  	return
  1426  }
  1427  
  1428  // Longitude returns the value of property "GeolocationSensor.longitude".
  1429  //
  1430  // It returns ok=false if there is no such property.
  1431  func (this GeolocationSensor) Longitude() (ret float64, ok bool) {
  1432  	ok = js.True == bindings.GetGeolocationSensorLongitude(
  1433  		this.ref, js.Pointer(&ret),
  1434  	)
  1435  	return
  1436  }
  1437  
  1438  // Altitude returns the value of property "GeolocationSensor.altitude".
  1439  //
  1440  // It returns ok=false if there is no such property.
  1441  func (this GeolocationSensor) Altitude() (ret float64, ok bool) {
  1442  	ok = js.True == bindings.GetGeolocationSensorAltitude(
  1443  		this.ref, js.Pointer(&ret),
  1444  	)
  1445  	return
  1446  }
  1447  
  1448  // Accuracy returns the value of property "GeolocationSensor.accuracy".
  1449  //
  1450  // It returns ok=false if there is no such property.
  1451  func (this GeolocationSensor) Accuracy() (ret float64, ok bool) {
  1452  	ok = js.True == bindings.GetGeolocationSensorAccuracy(
  1453  		this.ref, js.Pointer(&ret),
  1454  	)
  1455  	return
  1456  }
  1457  
  1458  // AltitudeAccuracy returns the value of property "GeolocationSensor.altitudeAccuracy".
  1459  //
  1460  // It returns ok=false if there is no such property.
  1461  func (this GeolocationSensor) AltitudeAccuracy() (ret float64, ok bool) {
  1462  	ok = js.True == bindings.GetGeolocationSensorAltitudeAccuracy(
  1463  		this.ref, js.Pointer(&ret),
  1464  	)
  1465  	return
  1466  }
  1467  
  1468  // Heading returns the value of property "GeolocationSensor.heading".
  1469  //
  1470  // It returns ok=false if there is no such property.
  1471  func (this GeolocationSensor) Heading() (ret float64, ok bool) {
  1472  	ok = js.True == bindings.GetGeolocationSensorHeading(
  1473  		this.ref, js.Pointer(&ret),
  1474  	)
  1475  	return
  1476  }
  1477  
  1478  // Speed returns the value of property "GeolocationSensor.speed".
  1479  //
  1480  // It returns ok=false if there is no such property.
  1481  func (this GeolocationSensor) Speed() (ret float64, ok bool) {
  1482  	ok = js.True == bindings.GetGeolocationSensorSpeed(
  1483  		this.ref, js.Pointer(&ret),
  1484  	)
  1485  	return
  1486  }
  1487  
  1488  // HasFuncRead returns true if the static method "GeolocationSensor.read" exists.
  1489  func (this GeolocationSensor) HasFuncRead() bool {
  1490  	return js.True == bindings.HasFuncGeolocationSensorRead(
  1491  		this.ref,
  1492  	)
  1493  }
  1494  
  1495  // FuncRead returns the static method "GeolocationSensor.read".
  1496  func (this GeolocationSensor) FuncRead() (fn js.Func[func(readOptions ReadOptions) js.Promise[GeolocationSensorReading]]) {
  1497  	bindings.FuncGeolocationSensorRead(
  1498  		this.ref, js.Pointer(&fn),
  1499  	)
  1500  	return
  1501  }
  1502  
  1503  // Read calls the static method "GeolocationSensor.read".
  1504  func (this GeolocationSensor) Read(readOptions ReadOptions) (ret js.Promise[GeolocationSensorReading]) {
  1505  	bindings.CallGeolocationSensorRead(
  1506  		this.ref, js.Pointer(&ret),
  1507  		js.Pointer(&readOptions),
  1508  	)
  1509  
  1510  	return
  1511  }
  1512  
  1513  // TryRead calls the static method "GeolocationSensor.read"
  1514  // in a try/catch block and returns (_, err, ok = false) when it went through
  1515  // the catch clause.
  1516  func (this GeolocationSensor) TryRead(readOptions ReadOptions) (ret js.Promise[GeolocationSensorReading], exception js.Any, ok bool) {
  1517  	ok = js.True == bindings.TryGeolocationSensorRead(
  1518  		this.ref, js.Pointer(&ret), js.Pointer(&exception),
  1519  		js.Pointer(&readOptions),
  1520  	)
  1521  
  1522  	return
  1523  }
  1524  
  1525  // HasFuncRead1 returns true if the static method "GeolocationSensor.read" exists.
  1526  func (this GeolocationSensor) HasFuncRead1() bool {
  1527  	return js.True == bindings.HasFuncGeolocationSensorRead1(
  1528  		this.ref,
  1529  	)
  1530  }
  1531  
  1532  // FuncRead1 returns the static method "GeolocationSensor.read".
  1533  func (this GeolocationSensor) FuncRead1() (fn js.Func[func() js.Promise[GeolocationSensorReading]]) {
  1534  	bindings.FuncGeolocationSensorRead1(
  1535  		this.ref, js.Pointer(&fn),
  1536  	)
  1537  	return
  1538  }
  1539  
  1540  // Read1 calls the static method "GeolocationSensor.read".
  1541  func (this GeolocationSensor) Read1() (ret js.Promise[GeolocationSensorReading]) {
  1542  	bindings.CallGeolocationSensorRead1(
  1543  		this.ref, js.Pointer(&ret),
  1544  	)
  1545  
  1546  	return
  1547  }
  1548  
  1549  // TryRead1 calls the static method "GeolocationSensor.read"
  1550  // in a try/catch block and returns (_, err, ok = false) when it went through
  1551  // the catch clause.
  1552  func (this GeolocationSensor) TryRead1() (ret js.Promise[GeolocationSensorReading], exception js.Any, ok bool) {
  1553  	ok = js.True == bindings.TryGeolocationSensorRead1(
  1554  		this.ref, js.Pointer(&ret), js.Pointer(&exception),
  1555  	)
  1556  
  1557  	return
  1558  }
  1559  
  1560  type ValueType uint32
  1561  
  1562  const (
  1563  	_ ValueType = iota
  1564  
  1565  	ValueType_I32
  1566  	ValueType_I64
  1567  	ValueType_F32
  1568  	ValueType_F64
  1569  	ValueType_V128
  1570  	ValueType_EXTERNREF
  1571  	ValueType_ANYFUNC
  1572  )
  1573  
  1574  func (ValueType) FromRef(str js.Ref) ValueType {
  1575  	return ValueType(bindings.ConstOfValueType(str))
  1576  }
  1577  
  1578  func (x ValueType) String() (string, bool) {
  1579  	switch x {
  1580  	case ValueType_I32:
  1581  		return "i32", true
  1582  	case ValueType_I64:
  1583  		return "i64", true
  1584  	case ValueType_F32:
  1585  		return "f32", true
  1586  	case ValueType_F64:
  1587  		return "f64", true
  1588  	case ValueType_V128:
  1589  		return "v128", true
  1590  	case ValueType_EXTERNREF:
  1591  		return "externref", true
  1592  	case ValueType_ANYFUNC:
  1593  		return "anyfunc", true
  1594  	default:
  1595  		return "", false
  1596  	}
  1597  }
  1598  
  1599  type GlobalDescriptor struct {
  1600  	// Value is "GlobalDescriptor.value"
  1601  	//
  1602  	// Required
  1603  	Value ValueType
  1604  	// Mutable is "GlobalDescriptor.mutable"
  1605  	//
  1606  	// Optional, defaults to false.
  1607  	//
  1608  	// NOTE: FFI_USE_Mutable MUST be set to true to make this field effective.
  1609  	Mutable bool
  1610  
  1611  	FFI_USE_Mutable bool // for Mutable.
  1612  
  1613  	FFI_USE bool
  1614  }
  1615  
  1616  // FromRef calls UpdateFrom and returns a GlobalDescriptor with all fields set.
  1617  func (p GlobalDescriptor) FromRef(ref js.Ref) GlobalDescriptor {
  1618  	p.UpdateFrom(ref)
  1619  	return p
  1620  }
  1621  
  1622  // New creates a new GlobalDescriptor in the application heap.
  1623  func (p GlobalDescriptor) New() js.Ref {
  1624  	return bindings.GlobalDescriptorJSLoad(
  1625  		js.Pointer(&p), js.True, 0,
  1626  	)
  1627  }
  1628  
  1629  // UpdateFrom copies value of all fields of the heap object to p.
  1630  func (p *GlobalDescriptor) UpdateFrom(ref js.Ref) {
  1631  	bindings.GlobalDescriptorJSStore(
  1632  		js.Pointer(p), ref,
  1633  	)
  1634  }
  1635  
  1636  // Update writes all fields of the p to the heap object referenced by ref.
  1637  func (p *GlobalDescriptor) Update(ref js.Ref) {
  1638  	bindings.GlobalDescriptorJSLoad(
  1639  		js.Pointer(p), js.False, ref,
  1640  	)
  1641  }
  1642  
  1643  // FreeMembers frees fields with heap reference, if recursive is true
  1644  // free all heap references reachable from p.
  1645  func (p *GlobalDescriptor) FreeMembers(recursive bool) {
  1646  }
  1647  
  1648  func NewGlobal(descriptor GlobalDescriptor, v js.Any) (ret Global) {
  1649  	ret.ref = bindings.NewGlobalByGlobal(
  1650  		js.Pointer(&descriptor),
  1651  		v.Ref())
  1652  	return
  1653  }
  1654  
  1655  func NewGlobalByGlobal1(descriptor GlobalDescriptor) (ret Global) {
  1656  	ret.ref = bindings.NewGlobalByGlobal1(
  1657  		js.Pointer(&descriptor))
  1658  	return
  1659  }
  1660  
  1661  type Global struct {
  1662  	ref js.Ref
  1663  }
  1664  
  1665  func (this Global) Once() Global {
  1666  	this.ref.Once()
  1667  	return this
  1668  }
  1669  
  1670  func (this Global) Ref() js.Ref {
  1671  	return this.ref
  1672  }
  1673  
  1674  func (this Global) FromRef(ref js.Ref) Global {
  1675  	this.ref = ref
  1676  	return this
  1677  }
  1678  
  1679  func (this Global) Free() {
  1680  	this.ref.Free()
  1681  }
  1682  
  1683  // Value returns the value of property "Global.value".
  1684  //
  1685  // It returns ok=false if there is no such property.
  1686  func (this Global) Value() (ret js.Any, ok bool) {
  1687  	ok = js.True == bindings.GetGlobalValue(
  1688  		this.ref, js.Pointer(&ret),
  1689  	)
  1690  	return
  1691  }
  1692  
  1693  // SetValue sets the value of property "Global.value" to val.
  1694  //
  1695  // It returns false if the property cannot be set.
  1696  func (this Global) SetValue(val js.Any) bool {
  1697  	return js.True == bindings.SetGlobalValue(
  1698  		this.ref,
  1699  		val.Ref(),
  1700  	)
  1701  }
  1702  
  1703  // HasFuncValueOf returns true if the method "Global.valueOf" exists.
  1704  func (this Global) HasFuncValueOf() bool {
  1705  	return js.True == bindings.HasFuncGlobalValueOf(
  1706  		this.ref,
  1707  	)
  1708  }
  1709  
  1710  // FuncValueOf returns the method "Global.valueOf".
  1711  func (this Global) FuncValueOf() (fn js.Func[func() js.Any]) {
  1712  	bindings.FuncGlobalValueOf(
  1713  		this.ref, js.Pointer(&fn),
  1714  	)
  1715  	return
  1716  }
  1717  
  1718  // ValueOf calls the method "Global.valueOf".
  1719  func (this Global) ValueOf() (ret js.Any) {
  1720  	bindings.CallGlobalValueOf(
  1721  		this.ref, js.Pointer(&ret),
  1722  	)
  1723  
  1724  	return
  1725  }
  1726  
  1727  // TryValueOf calls the method "Global.valueOf"
  1728  // in a try/catch block and returns (_, err, ok = false) when it went through
  1729  // the catch clause.
  1730  func (this Global) TryValueOf() (ret js.Any, exception js.Any, ok bool) {
  1731  	ok = js.True == bindings.TryGlobalValueOf(
  1732  		this.ref, js.Pointer(&ret), js.Pointer(&exception),
  1733  	)
  1734  
  1735  	return
  1736  }
  1737  
  1738  type GravityReadingValues struct {
  1739  	// X is "GravityReadingValues.x"
  1740  	//
  1741  	// Required
  1742  	X float64
  1743  	// Y is "GravityReadingValues.y"
  1744  	//
  1745  	// Required
  1746  	Y float64
  1747  	// Z is "GravityReadingValues.z"
  1748  	//
  1749  	// Required
  1750  	Z float64
  1751  
  1752  	FFI_USE bool
  1753  }
  1754  
  1755  // FromRef calls UpdateFrom and returns a GravityReadingValues with all fields set.
  1756  func (p GravityReadingValues) FromRef(ref js.Ref) GravityReadingValues {
  1757  	p.UpdateFrom(ref)
  1758  	return p
  1759  }
  1760  
  1761  // New creates a new GravityReadingValues in the application heap.
  1762  func (p GravityReadingValues) New() js.Ref {
  1763  	return bindings.GravityReadingValuesJSLoad(
  1764  		js.Pointer(&p), js.True, 0,
  1765  	)
  1766  }
  1767  
  1768  // UpdateFrom copies value of all fields of the heap object to p.
  1769  func (p *GravityReadingValues) UpdateFrom(ref js.Ref) {
  1770  	bindings.GravityReadingValuesJSStore(
  1771  		js.Pointer(p), ref,
  1772  	)
  1773  }
  1774  
  1775  // Update writes all fields of the p to the heap object referenced by ref.
  1776  func (p *GravityReadingValues) Update(ref js.Ref) {
  1777  	bindings.GravityReadingValuesJSLoad(
  1778  		js.Pointer(p), js.False, ref,
  1779  	)
  1780  }
  1781  
  1782  // FreeMembers frees fields with heap reference, if recursive is true
  1783  // free all heap references reachable from p.
  1784  func (p *GravityReadingValues) FreeMembers(recursive bool) {
  1785  }
  1786  
  1787  func NewGravitySensor(options AccelerometerSensorOptions) (ret GravitySensor) {
  1788  	ret.ref = bindings.NewGravitySensorByGravitySensor(
  1789  		js.Pointer(&options))
  1790  	return
  1791  }
  1792  
  1793  func NewGravitySensorByGravitySensor1() (ret GravitySensor) {
  1794  	ret.ref = bindings.NewGravitySensorByGravitySensor1()
  1795  	return
  1796  }
  1797  
  1798  type GravitySensor struct {
  1799  	Accelerometer
  1800  }
  1801  
  1802  func (this GravitySensor) Once() GravitySensor {
  1803  	this.ref.Once()
  1804  	return this
  1805  }
  1806  
  1807  func (this GravitySensor) Ref() js.Ref {
  1808  	return this.Accelerometer.Ref()
  1809  }
  1810  
  1811  func (this GravitySensor) FromRef(ref js.Ref) GravitySensor {
  1812  	this.Accelerometer = this.Accelerometer.FromRef(ref)
  1813  	return this
  1814  }
  1815  
  1816  func (this GravitySensor) Free() {
  1817  	this.ref.Free()
  1818  }
  1819  
  1820  type GyroscopeLocalCoordinateSystem uint32
  1821  
  1822  const (
  1823  	_ GyroscopeLocalCoordinateSystem = iota
  1824  
  1825  	GyroscopeLocalCoordinateSystem_DEVICE
  1826  	GyroscopeLocalCoordinateSystem_SCREEN
  1827  )
  1828  
  1829  func (GyroscopeLocalCoordinateSystem) FromRef(str js.Ref) GyroscopeLocalCoordinateSystem {
  1830  	return GyroscopeLocalCoordinateSystem(bindings.ConstOfGyroscopeLocalCoordinateSystem(str))
  1831  }
  1832  
  1833  func (x GyroscopeLocalCoordinateSystem) String() (string, bool) {
  1834  	switch x {
  1835  	case GyroscopeLocalCoordinateSystem_DEVICE:
  1836  		return "device", true
  1837  	case GyroscopeLocalCoordinateSystem_SCREEN:
  1838  		return "screen", true
  1839  	default:
  1840  		return "", false
  1841  	}
  1842  }
  1843  
  1844  type GyroscopeSensorOptions struct {
  1845  	// ReferenceFrame is "GyroscopeSensorOptions.referenceFrame"
  1846  	//
  1847  	// Optional, defaults to "device".
  1848  	ReferenceFrame GyroscopeLocalCoordinateSystem
  1849  	// Frequency is "GyroscopeSensorOptions.frequency"
  1850  	//
  1851  	// Optional
  1852  	//
  1853  	// NOTE: FFI_USE_Frequency MUST be set to true to make this field effective.
  1854  	Frequency float64
  1855  
  1856  	FFI_USE_Frequency bool // for Frequency.
  1857  
  1858  	FFI_USE bool
  1859  }
  1860  
  1861  // FromRef calls UpdateFrom and returns a GyroscopeSensorOptions with all fields set.
  1862  func (p GyroscopeSensorOptions) FromRef(ref js.Ref) GyroscopeSensorOptions {
  1863  	p.UpdateFrom(ref)
  1864  	return p
  1865  }
  1866  
  1867  // New creates a new GyroscopeSensorOptions in the application heap.
  1868  func (p GyroscopeSensorOptions) New() js.Ref {
  1869  	return bindings.GyroscopeSensorOptionsJSLoad(
  1870  		js.Pointer(&p), js.True, 0,
  1871  	)
  1872  }
  1873  
  1874  // UpdateFrom copies value of all fields of the heap object to p.
  1875  func (p *GyroscopeSensorOptions) UpdateFrom(ref js.Ref) {
  1876  	bindings.GyroscopeSensorOptionsJSStore(
  1877  		js.Pointer(p), ref,
  1878  	)
  1879  }
  1880  
  1881  // Update writes all fields of the p to the heap object referenced by ref.
  1882  func (p *GyroscopeSensorOptions) Update(ref js.Ref) {
  1883  	bindings.GyroscopeSensorOptionsJSLoad(
  1884  		js.Pointer(p), js.False, ref,
  1885  	)
  1886  }
  1887  
  1888  // FreeMembers frees fields with heap reference, if recursive is true
  1889  // free all heap references reachable from p.
  1890  func (p *GyroscopeSensorOptions) FreeMembers(recursive bool) {
  1891  }
  1892  
  1893  func NewGyroscope(sensorOptions GyroscopeSensorOptions) (ret Gyroscope) {
  1894  	ret.ref = bindings.NewGyroscopeByGyroscope(
  1895  		js.Pointer(&sensorOptions))
  1896  	return
  1897  }
  1898  
  1899  func NewGyroscopeByGyroscope1() (ret Gyroscope) {
  1900  	ret.ref = bindings.NewGyroscopeByGyroscope1()
  1901  	return
  1902  }
  1903  
  1904  type Gyroscope struct {
  1905  	Sensor
  1906  }
  1907  
  1908  func (this Gyroscope) Once() Gyroscope {
  1909  	this.ref.Once()
  1910  	return this
  1911  }
  1912  
  1913  func (this Gyroscope) Ref() js.Ref {
  1914  	return this.Sensor.Ref()
  1915  }
  1916  
  1917  func (this Gyroscope) FromRef(ref js.Ref) Gyroscope {
  1918  	this.Sensor = this.Sensor.FromRef(ref)
  1919  	return this
  1920  }
  1921  
  1922  func (this Gyroscope) Free() {
  1923  	this.ref.Free()
  1924  }
  1925  
  1926  // X returns the value of property "Gyroscope.x".
  1927  //
  1928  // It returns ok=false if there is no such property.
  1929  func (this Gyroscope) X() (ret float64, ok bool) {
  1930  	ok = js.True == bindings.GetGyroscopeX(
  1931  		this.ref, js.Pointer(&ret),
  1932  	)
  1933  	return
  1934  }
  1935  
  1936  // Y returns the value of property "Gyroscope.y".
  1937  //
  1938  // It returns ok=false if there is no such property.
  1939  func (this Gyroscope) Y() (ret float64, ok bool) {
  1940  	ok = js.True == bindings.GetGyroscopeY(
  1941  		this.ref, js.Pointer(&ret),
  1942  	)
  1943  	return
  1944  }
  1945  
  1946  // Z returns the value of property "Gyroscope.z".
  1947  //
  1948  // It returns ok=false if there is no such property.
  1949  func (this Gyroscope) Z() (ret float64, ok bool) {
  1950  	ok = js.True == bindings.GetGyroscopeZ(
  1951  		this.ref, js.Pointer(&ret),
  1952  	)
  1953  	return
  1954  }
  1955  
  1956  type GyroscopeReadingValues struct {
  1957  	// X is "GyroscopeReadingValues.x"
  1958  	//
  1959  	// Required
  1960  	X float64
  1961  	// Y is "GyroscopeReadingValues.y"
  1962  	//
  1963  	// Required
  1964  	Y float64
  1965  	// Z is "GyroscopeReadingValues.z"
  1966  	//
  1967  	// Required
  1968  	Z float64
  1969  
  1970  	FFI_USE bool
  1971  }
  1972  
  1973  // FromRef calls UpdateFrom and returns a GyroscopeReadingValues with all fields set.
  1974  func (p GyroscopeReadingValues) FromRef(ref js.Ref) GyroscopeReadingValues {
  1975  	p.UpdateFrom(ref)
  1976  	return p
  1977  }
  1978  
  1979  // New creates a new GyroscopeReadingValues in the application heap.
  1980  func (p GyroscopeReadingValues) New() js.Ref {
  1981  	return bindings.GyroscopeReadingValuesJSLoad(
  1982  		js.Pointer(&p), js.True, 0,
  1983  	)
  1984  }
  1985  
  1986  // UpdateFrom copies value of all fields of the heap object to p.
  1987  func (p *GyroscopeReadingValues) UpdateFrom(ref js.Ref) {
  1988  	bindings.GyroscopeReadingValuesJSStore(
  1989  		js.Pointer(p), ref,
  1990  	)
  1991  }
  1992  
  1993  // Update writes all fields of the p to the heap object referenced by ref.
  1994  func (p *GyroscopeReadingValues) Update(ref js.Ref) {
  1995  	bindings.GyroscopeReadingValuesJSLoad(
  1996  		js.Pointer(p), js.False, ref,
  1997  	)
  1998  }
  1999  
  2000  // FreeMembers frees fields with heap reference, if recursive is true
  2001  // free all heap references reachable from p.
  2002  func (p *GyroscopeReadingValues) FreeMembers(recursive bool) {
  2003  }
  2004  
  2005  type HIDConnectionEventInit struct {
  2006  	// Device is "HIDConnectionEventInit.device"
  2007  	//
  2008  	// Required
  2009  	Device HIDDevice
  2010  	// Bubbles is "HIDConnectionEventInit.bubbles"
  2011  	//
  2012  	// Optional, defaults to false.
  2013  	//
  2014  	// NOTE: FFI_USE_Bubbles MUST be set to true to make this field effective.
  2015  	Bubbles bool
  2016  	// Cancelable is "HIDConnectionEventInit.cancelable"
  2017  	//
  2018  	// Optional, defaults to false.
  2019  	//
  2020  	// NOTE: FFI_USE_Cancelable MUST be set to true to make this field effective.
  2021  	Cancelable bool
  2022  	// Composed is "HIDConnectionEventInit.composed"
  2023  	//
  2024  	// Optional, defaults to false.
  2025  	//
  2026  	// NOTE: FFI_USE_Composed MUST be set to true to make this field effective.
  2027  	Composed bool
  2028  
  2029  	FFI_USE_Bubbles    bool // for Bubbles.
  2030  	FFI_USE_Cancelable bool // for Cancelable.
  2031  	FFI_USE_Composed   bool // for Composed.
  2032  
  2033  	FFI_USE bool
  2034  }
  2035  
  2036  // FromRef calls UpdateFrom and returns a HIDConnectionEventInit with all fields set.
  2037  func (p HIDConnectionEventInit) FromRef(ref js.Ref) HIDConnectionEventInit {
  2038  	p.UpdateFrom(ref)
  2039  	return p
  2040  }
  2041  
  2042  // New creates a new HIDConnectionEventInit in the application heap.
  2043  func (p HIDConnectionEventInit) New() js.Ref {
  2044  	return bindings.HIDConnectionEventInitJSLoad(
  2045  		js.Pointer(&p), js.True, 0,
  2046  	)
  2047  }
  2048  
  2049  // UpdateFrom copies value of all fields of the heap object to p.
  2050  func (p *HIDConnectionEventInit) UpdateFrom(ref js.Ref) {
  2051  	bindings.HIDConnectionEventInitJSStore(
  2052  		js.Pointer(p), ref,
  2053  	)
  2054  }
  2055  
  2056  // Update writes all fields of the p to the heap object referenced by ref.
  2057  func (p *HIDConnectionEventInit) Update(ref js.Ref) {
  2058  	bindings.HIDConnectionEventInitJSLoad(
  2059  		js.Pointer(p), js.False, ref,
  2060  	)
  2061  }
  2062  
  2063  // FreeMembers frees fields with heap reference, if recursive is true
  2064  // free all heap references reachable from p.
  2065  func (p *HIDConnectionEventInit) FreeMembers(recursive bool) {
  2066  	js.Free(
  2067  		p.Device.Ref(),
  2068  	)
  2069  	p.Device = p.Device.FromRef(js.Undefined)
  2070  }
  2071  
  2072  func NewHIDConnectionEvent(typ js.String, eventInitDict HIDConnectionEventInit) (ret HIDConnectionEvent) {
  2073  	ret.ref = bindings.NewHIDConnectionEventByHIDConnectionEvent(
  2074  		typ.Ref(),
  2075  		js.Pointer(&eventInitDict))
  2076  	return
  2077  }
  2078  
  2079  type HIDConnectionEvent struct {
  2080  	Event
  2081  }
  2082  
  2083  func (this HIDConnectionEvent) Once() HIDConnectionEvent {
  2084  	this.ref.Once()
  2085  	return this
  2086  }
  2087  
  2088  func (this HIDConnectionEvent) Ref() js.Ref {
  2089  	return this.Event.Ref()
  2090  }
  2091  
  2092  func (this HIDConnectionEvent) FromRef(ref js.Ref) HIDConnectionEvent {
  2093  	this.Event = this.Event.FromRef(ref)
  2094  	return this
  2095  }
  2096  
  2097  func (this HIDConnectionEvent) Free() {
  2098  	this.ref.Free()
  2099  }
  2100  
  2101  // Device returns the value of property "HIDConnectionEvent.device".
  2102  //
  2103  // It returns ok=false if there is no such property.
  2104  func (this HIDConnectionEvent) Device() (ret HIDDevice, ok bool) {
  2105  	ok = js.True == bindings.GetHIDConnectionEventDevice(
  2106  		this.ref, js.Pointer(&ret),
  2107  	)
  2108  	return
  2109  }
  2110  
  2111  type HIDInputReportEventInit struct {
  2112  	// Device is "HIDInputReportEventInit.device"
  2113  	//
  2114  	// Required
  2115  	Device HIDDevice
  2116  	// ReportId is "HIDInputReportEventInit.reportId"
  2117  	//
  2118  	// Required
  2119  	ReportId uint8
  2120  	// Data is "HIDInputReportEventInit.data"
  2121  	//
  2122  	// Required
  2123  	Data js.DataView
  2124  	// Bubbles is "HIDInputReportEventInit.bubbles"
  2125  	//
  2126  	// Optional, defaults to false.
  2127  	//
  2128  	// NOTE: FFI_USE_Bubbles MUST be set to true to make this field effective.
  2129  	Bubbles bool
  2130  	// Cancelable is "HIDInputReportEventInit.cancelable"
  2131  	//
  2132  	// Optional, defaults to false.
  2133  	//
  2134  	// NOTE: FFI_USE_Cancelable MUST be set to true to make this field effective.
  2135  	Cancelable bool
  2136  	// Composed is "HIDInputReportEventInit.composed"
  2137  	//
  2138  	// Optional, defaults to false.
  2139  	//
  2140  	// NOTE: FFI_USE_Composed MUST be set to true to make this field effective.
  2141  	Composed bool
  2142  
  2143  	FFI_USE_Bubbles    bool // for Bubbles.
  2144  	FFI_USE_Cancelable bool // for Cancelable.
  2145  	FFI_USE_Composed   bool // for Composed.
  2146  
  2147  	FFI_USE bool
  2148  }
  2149  
  2150  // FromRef calls UpdateFrom and returns a HIDInputReportEventInit with all fields set.
  2151  func (p HIDInputReportEventInit) FromRef(ref js.Ref) HIDInputReportEventInit {
  2152  	p.UpdateFrom(ref)
  2153  	return p
  2154  }
  2155  
  2156  // New creates a new HIDInputReportEventInit in the application heap.
  2157  func (p HIDInputReportEventInit) New() js.Ref {
  2158  	return bindings.HIDInputReportEventInitJSLoad(
  2159  		js.Pointer(&p), js.True, 0,
  2160  	)
  2161  }
  2162  
  2163  // UpdateFrom copies value of all fields of the heap object to p.
  2164  func (p *HIDInputReportEventInit) UpdateFrom(ref js.Ref) {
  2165  	bindings.HIDInputReportEventInitJSStore(
  2166  		js.Pointer(p), ref,
  2167  	)
  2168  }
  2169  
  2170  // Update writes all fields of the p to the heap object referenced by ref.
  2171  func (p *HIDInputReportEventInit) Update(ref js.Ref) {
  2172  	bindings.HIDInputReportEventInitJSLoad(
  2173  		js.Pointer(p), js.False, ref,
  2174  	)
  2175  }
  2176  
  2177  // FreeMembers frees fields with heap reference, if recursive is true
  2178  // free all heap references reachable from p.
  2179  func (p *HIDInputReportEventInit) FreeMembers(recursive bool) {
  2180  	js.Free(
  2181  		p.Device.Ref(),
  2182  		p.Data.Ref(),
  2183  	)
  2184  	p.Device = p.Device.FromRef(js.Undefined)
  2185  	p.Data = p.Data.FromRef(js.Undefined)
  2186  }
  2187  
  2188  func NewHIDInputReportEvent(typ js.String, eventInitDict HIDInputReportEventInit) (ret HIDInputReportEvent) {
  2189  	ret.ref = bindings.NewHIDInputReportEventByHIDInputReportEvent(
  2190  		typ.Ref(),
  2191  		js.Pointer(&eventInitDict))
  2192  	return
  2193  }
  2194  
  2195  type HIDInputReportEvent struct {
  2196  	Event
  2197  }
  2198  
  2199  func (this HIDInputReportEvent) Once() HIDInputReportEvent {
  2200  	this.ref.Once()
  2201  	return this
  2202  }
  2203  
  2204  func (this HIDInputReportEvent) Ref() js.Ref {
  2205  	return this.Event.Ref()
  2206  }
  2207  
  2208  func (this HIDInputReportEvent) FromRef(ref js.Ref) HIDInputReportEvent {
  2209  	this.Event = this.Event.FromRef(ref)
  2210  	return this
  2211  }
  2212  
  2213  func (this HIDInputReportEvent) Free() {
  2214  	this.ref.Free()
  2215  }
  2216  
  2217  // Device returns the value of property "HIDInputReportEvent.device".
  2218  //
  2219  // It returns ok=false if there is no such property.
  2220  func (this HIDInputReportEvent) Device() (ret HIDDevice, ok bool) {
  2221  	ok = js.True == bindings.GetHIDInputReportEventDevice(
  2222  		this.ref, js.Pointer(&ret),
  2223  	)
  2224  	return
  2225  }
  2226  
  2227  // ReportId returns the value of property "HIDInputReportEvent.reportId".
  2228  //
  2229  // It returns ok=false if there is no such property.
  2230  func (this HIDInputReportEvent) ReportId() (ret uint8, ok bool) {
  2231  	ok = js.True == bindings.GetHIDInputReportEventReportId(
  2232  		this.ref, js.Pointer(&ret),
  2233  	)
  2234  	return
  2235  }
  2236  
  2237  // Data returns the value of property "HIDInputReportEvent.data".
  2238  //
  2239  // It returns ok=false if there is no such property.
  2240  func (this HIDInputReportEvent) Data() (ret js.DataView, ok bool) {
  2241  	ok = js.True == bindings.GetHIDInputReportEventData(
  2242  		this.ref, js.Pointer(&ret),
  2243  	)
  2244  	return
  2245  }
  2246  
  2247  type HTMLAnchorElement struct {
  2248  	HTMLElement
  2249  }
  2250  
  2251  func (this HTMLAnchorElement) Once() HTMLAnchorElement {
  2252  	this.ref.Once()
  2253  	return this
  2254  }
  2255  
  2256  func (this HTMLAnchorElement) Ref() js.Ref {
  2257  	return this.HTMLElement.Ref()
  2258  }
  2259  
  2260  func (this HTMLAnchorElement) FromRef(ref js.Ref) HTMLAnchorElement {
  2261  	this.HTMLElement = this.HTMLElement.FromRef(ref)
  2262  	return this
  2263  }
  2264  
  2265  func (this HTMLAnchorElement) Free() {
  2266  	this.ref.Free()
  2267  }
  2268  
  2269  // Target returns the value of property "HTMLAnchorElement.target".
  2270  //
  2271  // It returns ok=false if there is no such property.
  2272  func (this HTMLAnchorElement) Target() (ret js.String, ok bool) {
  2273  	ok = js.True == bindings.GetHTMLAnchorElementTarget(
  2274  		this.ref, js.Pointer(&ret),
  2275  	)
  2276  	return
  2277  }
  2278  
  2279  // SetTarget sets the value of property "HTMLAnchorElement.target" to val.
  2280  //
  2281  // It returns false if the property cannot be set.
  2282  func (this HTMLAnchorElement) SetTarget(val js.String) bool {
  2283  	return js.True == bindings.SetHTMLAnchorElementTarget(
  2284  		this.ref,
  2285  		val.Ref(),
  2286  	)
  2287  }
  2288  
  2289  // Download returns the value of property "HTMLAnchorElement.download".
  2290  //
  2291  // It returns ok=false if there is no such property.
  2292  func (this HTMLAnchorElement) Download() (ret js.String, ok bool) {
  2293  	ok = js.True == bindings.GetHTMLAnchorElementDownload(
  2294  		this.ref, js.Pointer(&ret),
  2295  	)
  2296  	return
  2297  }
  2298  
  2299  // SetDownload sets the value of property "HTMLAnchorElement.download" to val.
  2300  //
  2301  // It returns false if the property cannot be set.
  2302  func (this HTMLAnchorElement) SetDownload(val js.String) bool {
  2303  	return js.True == bindings.SetHTMLAnchorElementDownload(
  2304  		this.ref,
  2305  		val.Ref(),
  2306  	)
  2307  }
  2308  
  2309  // Ping returns the value of property "HTMLAnchorElement.ping".
  2310  //
  2311  // It returns ok=false if there is no such property.
  2312  func (this HTMLAnchorElement) Ping() (ret js.String, ok bool) {
  2313  	ok = js.True == bindings.GetHTMLAnchorElementPing(
  2314  		this.ref, js.Pointer(&ret),
  2315  	)
  2316  	return
  2317  }
  2318  
  2319  // SetPing sets the value of property "HTMLAnchorElement.ping" to val.
  2320  //
  2321  // It returns false if the property cannot be set.
  2322  func (this HTMLAnchorElement) SetPing(val js.String) bool {
  2323  	return js.True == bindings.SetHTMLAnchorElementPing(
  2324  		this.ref,
  2325  		val.Ref(),
  2326  	)
  2327  }
  2328  
  2329  // Rel returns the value of property "HTMLAnchorElement.rel".
  2330  //
  2331  // It returns ok=false if there is no such property.
  2332  func (this HTMLAnchorElement) Rel() (ret js.String, ok bool) {
  2333  	ok = js.True == bindings.GetHTMLAnchorElementRel(
  2334  		this.ref, js.Pointer(&ret),
  2335  	)
  2336  	return
  2337  }
  2338  
  2339  // SetRel sets the value of property "HTMLAnchorElement.rel" to val.
  2340  //
  2341  // It returns false if the property cannot be set.
  2342  func (this HTMLAnchorElement) SetRel(val js.String) bool {
  2343  	return js.True == bindings.SetHTMLAnchorElementRel(
  2344  		this.ref,
  2345  		val.Ref(),
  2346  	)
  2347  }
  2348  
  2349  // RelList returns the value of property "HTMLAnchorElement.relList".
  2350  //
  2351  // It returns ok=false if there is no such property.
  2352  func (this HTMLAnchorElement) RelList() (ret DOMTokenList, ok bool) {
  2353  	ok = js.True == bindings.GetHTMLAnchorElementRelList(
  2354  		this.ref, js.Pointer(&ret),
  2355  	)
  2356  	return
  2357  }
  2358  
  2359  // Hreflang returns the value of property "HTMLAnchorElement.hreflang".
  2360  //
  2361  // It returns ok=false if there is no such property.
  2362  func (this HTMLAnchorElement) Hreflang() (ret js.String, ok bool) {
  2363  	ok = js.True == bindings.GetHTMLAnchorElementHreflang(
  2364  		this.ref, js.Pointer(&ret),
  2365  	)
  2366  	return
  2367  }
  2368  
  2369  // SetHreflang sets the value of property "HTMLAnchorElement.hreflang" to val.
  2370  //
  2371  // It returns false if the property cannot be set.
  2372  func (this HTMLAnchorElement) SetHreflang(val js.String) bool {
  2373  	return js.True == bindings.SetHTMLAnchorElementHreflang(
  2374  		this.ref,
  2375  		val.Ref(),
  2376  	)
  2377  }
  2378  
  2379  // Type returns the value of property "HTMLAnchorElement.type".
  2380  //
  2381  // It returns ok=false if there is no such property.
  2382  func (this HTMLAnchorElement) Type() (ret js.String, ok bool) {
  2383  	ok = js.True == bindings.GetHTMLAnchorElementType(
  2384  		this.ref, js.Pointer(&ret),
  2385  	)
  2386  	return
  2387  }
  2388  
  2389  // SetType sets the value of property "HTMLAnchorElement.type" to val.
  2390  //
  2391  // It returns false if the property cannot be set.
  2392  func (this HTMLAnchorElement) SetType(val js.String) bool {
  2393  	return js.True == bindings.SetHTMLAnchorElementType(
  2394  		this.ref,
  2395  		val.Ref(),
  2396  	)
  2397  }
  2398  
  2399  // Text returns the value of property "HTMLAnchorElement.text".
  2400  //
  2401  // It returns ok=false if there is no such property.
  2402  func (this HTMLAnchorElement) Text() (ret js.String, ok bool) {
  2403  	ok = js.True == bindings.GetHTMLAnchorElementText(
  2404  		this.ref, js.Pointer(&ret),
  2405  	)
  2406  	return
  2407  }
  2408  
  2409  // SetText sets the value of property "HTMLAnchorElement.text" to val.
  2410  //
  2411  // It returns false if the property cannot be set.
  2412  func (this HTMLAnchorElement) SetText(val js.String) bool {
  2413  	return js.True == bindings.SetHTMLAnchorElementText(
  2414  		this.ref,
  2415  		val.Ref(),
  2416  	)
  2417  }
  2418  
  2419  // ReferrerPolicy returns the value of property "HTMLAnchorElement.referrerPolicy".
  2420  //
  2421  // It returns ok=false if there is no such property.
  2422  func (this HTMLAnchorElement) ReferrerPolicy() (ret js.String, ok bool) {
  2423  	ok = js.True == bindings.GetHTMLAnchorElementReferrerPolicy(
  2424  		this.ref, js.Pointer(&ret),
  2425  	)
  2426  	return
  2427  }
  2428  
  2429  // SetReferrerPolicy sets the value of property "HTMLAnchorElement.referrerPolicy" to val.
  2430  //
  2431  // It returns false if the property cannot be set.
  2432  func (this HTMLAnchorElement) SetReferrerPolicy(val js.String) bool {
  2433  	return js.True == bindings.SetHTMLAnchorElementReferrerPolicy(
  2434  		this.ref,
  2435  		val.Ref(),
  2436  	)
  2437  }
  2438  
  2439  // AttributionSourceId returns the value of property "HTMLAnchorElement.attributionSourceId".
  2440  //
  2441  // It returns ok=false if there is no such property.
  2442  func (this HTMLAnchorElement) AttributionSourceId() (ret uint32, ok bool) {
  2443  	ok = js.True == bindings.GetHTMLAnchorElementAttributionSourceId(
  2444  		this.ref, js.Pointer(&ret),
  2445  	)
  2446  	return
  2447  }
  2448  
  2449  // SetAttributionSourceId sets the value of property "HTMLAnchorElement.attributionSourceId" to val.
  2450  //
  2451  // It returns false if the property cannot be set.
  2452  func (this HTMLAnchorElement) SetAttributionSourceId(val uint32) bool {
  2453  	return js.True == bindings.SetHTMLAnchorElementAttributionSourceId(
  2454  		this.ref,
  2455  		uint32(val),
  2456  	)
  2457  }
  2458  
  2459  // Coords returns the value of property "HTMLAnchorElement.coords".
  2460  //
  2461  // It returns ok=false if there is no such property.
  2462  func (this HTMLAnchorElement) Coords() (ret js.String, ok bool) {
  2463  	ok = js.True == bindings.GetHTMLAnchorElementCoords(
  2464  		this.ref, js.Pointer(&ret),
  2465  	)
  2466  	return
  2467  }
  2468  
  2469  // SetCoords sets the value of property "HTMLAnchorElement.coords" to val.
  2470  //
  2471  // It returns false if the property cannot be set.
  2472  func (this HTMLAnchorElement) SetCoords(val js.String) bool {
  2473  	return js.True == bindings.SetHTMLAnchorElementCoords(
  2474  		this.ref,
  2475  		val.Ref(),
  2476  	)
  2477  }
  2478  
  2479  // Charset returns the value of property "HTMLAnchorElement.charset".
  2480  //
  2481  // It returns ok=false if there is no such property.
  2482  func (this HTMLAnchorElement) Charset() (ret js.String, ok bool) {
  2483  	ok = js.True == bindings.GetHTMLAnchorElementCharset(
  2484  		this.ref, js.Pointer(&ret),
  2485  	)
  2486  	return
  2487  }
  2488  
  2489  // SetCharset sets the value of property "HTMLAnchorElement.charset" to val.
  2490  //
  2491  // It returns false if the property cannot be set.
  2492  func (this HTMLAnchorElement) SetCharset(val js.String) bool {
  2493  	return js.True == bindings.SetHTMLAnchorElementCharset(
  2494  		this.ref,
  2495  		val.Ref(),
  2496  	)
  2497  }
  2498  
  2499  // Name returns the value of property "HTMLAnchorElement.name".
  2500  //
  2501  // It returns ok=false if there is no such property.
  2502  func (this HTMLAnchorElement) Name() (ret js.String, ok bool) {
  2503  	ok = js.True == bindings.GetHTMLAnchorElementName(
  2504  		this.ref, js.Pointer(&ret),
  2505  	)
  2506  	return
  2507  }
  2508  
  2509  // SetName sets the value of property "HTMLAnchorElement.name" to val.
  2510  //
  2511  // It returns false if the property cannot be set.
  2512  func (this HTMLAnchorElement) SetName(val js.String) bool {
  2513  	return js.True == bindings.SetHTMLAnchorElementName(
  2514  		this.ref,
  2515  		val.Ref(),
  2516  	)
  2517  }
  2518  
  2519  // Rev returns the value of property "HTMLAnchorElement.rev".
  2520  //
  2521  // It returns ok=false if there is no such property.
  2522  func (this HTMLAnchorElement) Rev() (ret js.String, ok bool) {
  2523  	ok = js.True == bindings.GetHTMLAnchorElementRev(
  2524  		this.ref, js.Pointer(&ret),
  2525  	)
  2526  	return
  2527  }
  2528  
  2529  // SetRev sets the value of property "HTMLAnchorElement.rev" to val.
  2530  //
  2531  // It returns false if the property cannot be set.
  2532  func (this HTMLAnchorElement) SetRev(val js.String) bool {
  2533  	return js.True == bindings.SetHTMLAnchorElementRev(
  2534  		this.ref,
  2535  		val.Ref(),
  2536  	)
  2537  }
  2538  
  2539  // Shape returns the value of property "HTMLAnchorElement.shape".
  2540  //
  2541  // It returns ok=false if there is no such property.
  2542  func (this HTMLAnchorElement) Shape() (ret js.String, ok bool) {
  2543  	ok = js.True == bindings.GetHTMLAnchorElementShape(
  2544  		this.ref, js.Pointer(&ret),
  2545  	)
  2546  	return
  2547  }
  2548  
  2549  // SetShape sets the value of property "HTMLAnchorElement.shape" to val.
  2550  //
  2551  // It returns false if the property cannot be set.
  2552  func (this HTMLAnchorElement) SetShape(val js.String) bool {
  2553  	return js.True == bindings.SetHTMLAnchorElementShape(
  2554  		this.ref,
  2555  		val.Ref(),
  2556  	)
  2557  }
  2558  
  2559  // Href returns the value of property "HTMLAnchorElement.href".
  2560  //
  2561  // It returns ok=false if there is no such property.
  2562  func (this HTMLAnchorElement) Href() (ret js.String, ok bool) {
  2563  	ok = js.True == bindings.GetHTMLAnchorElementHref(
  2564  		this.ref, js.Pointer(&ret),
  2565  	)
  2566  	return
  2567  }
  2568  
  2569  // SetHref sets the value of property "HTMLAnchorElement.href" to val.
  2570  //
  2571  // It returns false if the property cannot be set.
  2572  func (this HTMLAnchorElement) SetHref(val js.String) bool {
  2573  	return js.True == bindings.SetHTMLAnchorElementHref(
  2574  		this.ref,
  2575  		val.Ref(),
  2576  	)
  2577  }
  2578  
  2579  // Origin returns the value of property "HTMLAnchorElement.origin".
  2580  //
  2581  // It returns ok=false if there is no such property.
  2582  func (this HTMLAnchorElement) Origin() (ret js.String, ok bool) {
  2583  	ok = js.True == bindings.GetHTMLAnchorElementOrigin(
  2584  		this.ref, js.Pointer(&ret),
  2585  	)
  2586  	return
  2587  }
  2588  
  2589  // Protocol returns the value of property "HTMLAnchorElement.protocol".
  2590  //
  2591  // It returns ok=false if there is no such property.
  2592  func (this HTMLAnchorElement) Protocol() (ret js.String, ok bool) {
  2593  	ok = js.True == bindings.GetHTMLAnchorElementProtocol(
  2594  		this.ref, js.Pointer(&ret),
  2595  	)
  2596  	return
  2597  }
  2598  
  2599  // SetProtocol sets the value of property "HTMLAnchorElement.protocol" to val.
  2600  //
  2601  // It returns false if the property cannot be set.
  2602  func (this HTMLAnchorElement) SetProtocol(val js.String) bool {
  2603  	return js.True == bindings.SetHTMLAnchorElementProtocol(
  2604  		this.ref,
  2605  		val.Ref(),
  2606  	)
  2607  }
  2608  
  2609  // Username returns the value of property "HTMLAnchorElement.username".
  2610  //
  2611  // It returns ok=false if there is no such property.
  2612  func (this HTMLAnchorElement) Username() (ret js.String, ok bool) {
  2613  	ok = js.True == bindings.GetHTMLAnchorElementUsername(
  2614  		this.ref, js.Pointer(&ret),
  2615  	)
  2616  	return
  2617  }
  2618  
  2619  // SetUsername sets the value of property "HTMLAnchorElement.username" to val.
  2620  //
  2621  // It returns false if the property cannot be set.
  2622  func (this HTMLAnchorElement) SetUsername(val js.String) bool {
  2623  	return js.True == bindings.SetHTMLAnchorElementUsername(
  2624  		this.ref,
  2625  		val.Ref(),
  2626  	)
  2627  }
  2628  
  2629  // Password returns the value of property "HTMLAnchorElement.password".
  2630  //
  2631  // It returns ok=false if there is no such property.
  2632  func (this HTMLAnchorElement) Password() (ret js.String, ok bool) {
  2633  	ok = js.True == bindings.GetHTMLAnchorElementPassword(
  2634  		this.ref, js.Pointer(&ret),
  2635  	)
  2636  	return
  2637  }
  2638  
  2639  // SetPassword sets the value of property "HTMLAnchorElement.password" to val.
  2640  //
  2641  // It returns false if the property cannot be set.
  2642  func (this HTMLAnchorElement) SetPassword(val js.String) bool {
  2643  	return js.True == bindings.SetHTMLAnchorElementPassword(
  2644  		this.ref,
  2645  		val.Ref(),
  2646  	)
  2647  }
  2648  
  2649  // Host returns the value of property "HTMLAnchorElement.host".
  2650  //
  2651  // It returns ok=false if there is no such property.
  2652  func (this HTMLAnchorElement) Host() (ret js.String, ok bool) {
  2653  	ok = js.True == bindings.GetHTMLAnchorElementHost(
  2654  		this.ref, js.Pointer(&ret),
  2655  	)
  2656  	return
  2657  }
  2658  
  2659  // SetHost sets the value of property "HTMLAnchorElement.host" to val.
  2660  //
  2661  // It returns false if the property cannot be set.
  2662  func (this HTMLAnchorElement) SetHost(val js.String) bool {
  2663  	return js.True == bindings.SetHTMLAnchorElementHost(
  2664  		this.ref,
  2665  		val.Ref(),
  2666  	)
  2667  }
  2668  
  2669  // Hostname returns the value of property "HTMLAnchorElement.hostname".
  2670  //
  2671  // It returns ok=false if there is no such property.
  2672  func (this HTMLAnchorElement) Hostname() (ret js.String, ok bool) {
  2673  	ok = js.True == bindings.GetHTMLAnchorElementHostname(
  2674  		this.ref, js.Pointer(&ret),
  2675  	)
  2676  	return
  2677  }
  2678  
  2679  // SetHostname sets the value of property "HTMLAnchorElement.hostname" to val.
  2680  //
  2681  // It returns false if the property cannot be set.
  2682  func (this HTMLAnchorElement) SetHostname(val js.String) bool {
  2683  	return js.True == bindings.SetHTMLAnchorElementHostname(
  2684  		this.ref,
  2685  		val.Ref(),
  2686  	)
  2687  }
  2688  
  2689  // Port returns the value of property "HTMLAnchorElement.port".
  2690  //
  2691  // It returns ok=false if there is no such property.
  2692  func (this HTMLAnchorElement) Port() (ret js.String, ok bool) {
  2693  	ok = js.True == bindings.GetHTMLAnchorElementPort(
  2694  		this.ref, js.Pointer(&ret),
  2695  	)
  2696  	return
  2697  }
  2698  
  2699  // SetPort sets the value of property "HTMLAnchorElement.port" to val.
  2700  //
  2701  // It returns false if the property cannot be set.
  2702  func (this HTMLAnchorElement) SetPort(val js.String) bool {
  2703  	return js.True == bindings.SetHTMLAnchorElementPort(
  2704  		this.ref,
  2705  		val.Ref(),
  2706  	)
  2707  }
  2708  
  2709  // Pathname returns the value of property "HTMLAnchorElement.pathname".
  2710  //
  2711  // It returns ok=false if there is no such property.
  2712  func (this HTMLAnchorElement) Pathname() (ret js.String, ok bool) {
  2713  	ok = js.True == bindings.GetHTMLAnchorElementPathname(
  2714  		this.ref, js.Pointer(&ret),
  2715  	)
  2716  	return
  2717  }
  2718  
  2719  // SetPathname sets the value of property "HTMLAnchorElement.pathname" to val.
  2720  //
  2721  // It returns false if the property cannot be set.
  2722  func (this HTMLAnchorElement) SetPathname(val js.String) bool {
  2723  	return js.True == bindings.SetHTMLAnchorElementPathname(
  2724  		this.ref,
  2725  		val.Ref(),
  2726  	)
  2727  }
  2728  
  2729  // Search returns the value of property "HTMLAnchorElement.search".
  2730  //
  2731  // It returns ok=false if there is no such property.
  2732  func (this HTMLAnchorElement) Search() (ret js.String, ok bool) {
  2733  	ok = js.True == bindings.GetHTMLAnchorElementSearch(
  2734  		this.ref, js.Pointer(&ret),
  2735  	)
  2736  	return
  2737  }
  2738  
  2739  // SetSearch sets the value of property "HTMLAnchorElement.search" to val.
  2740  //
  2741  // It returns false if the property cannot be set.
  2742  func (this HTMLAnchorElement) SetSearch(val js.String) bool {
  2743  	return js.True == bindings.SetHTMLAnchorElementSearch(
  2744  		this.ref,
  2745  		val.Ref(),
  2746  	)
  2747  }
  2748  
  2749  // Hash returns the value of property "HTMLAnchorElement.hash".
  2750  //
  2751  // It returns ok=false if there is no such property.
  2752  func (this HTMLAnchorElement) Hash() (ret js.String, ok bool) {
  2753  	ok = js.True == bindings.GetHTMLAnchorElementHash(
  2754  		this.ref, js.Pointer(&ret),
  2755  	)
  2756  	return
  2757  }
  2758  
  2759  // SetHash sets the value of property "HTMLAnchorElement.hash" to val.
  2760  //
  2761  // It returns false if the property cannot be set.
  2762  func (this HTMLAnchorElement) SetHash(val js.String) bool {
  2763  	return js.True == bindings.SetHTMLAnchorElementHash(
  2764  		this.ref,
  2765  		val.Ref(),
  2766  	)
  2767  }
  2768  
  2769  // AttributionSrc returns the value of property "HTMLAnchorElement.attributionSrc".
  2770  //
  2771  // It returns ok=false if there is no such property.
  2772  func (this HTMLAnchorElement) AttributionSrc() (ret js.String, ok bool) {
  2773  	ok = js.True == bindings.GetHTMLAnchorElementAttributionSrc(
  2774  		this.ref, js.Pointer(&ret),
  2775  	)
  2776  	return
  2777  }
  2778  
  2779  // SetAttributionSrc sets the value of property "HTMLAnchorElement.attributionSrc" to val.
  2780  //
  2781  // It returns false if the property cannot be set.
  2782  func (this HTMLAnchorElement) SetAttributionSrc(val js.String) bool {
  2783  	return js.True == bindings.SetHTMLAnchorElementAttributionSrc(
  2784  		this.ref,
  2785  		val.Ref(),
  2786  	)
  2787  }
  2788  
  2789  type HTMLAreaElement struct {
  2790  	HTMLElement
  2791  }
  2792  
  2793  func (this HTMLAreaElement) Once() HTMLAreaElement {
  2794  	this.ref.Once()
  2795  	return this
  2796  }
  2797  
  2798  func (this HTMLAreaElement) Ref() js.Ref {
  2799  	return this.HTMLElement.Ref()
  2800  }
  2801  
  2802  func (this HTMLAreaElement) FromRef(ref js.Ref) HTMLAreaElement {
  2803  	this.HTMLElement = this.HTMLElement.FromRef(ref)
  2804  	return this
  2805  }
  2806  
  2807  func (this HTMLAreaElement) Free() {
  2808  	this.ref.Free()
  2809  }
  2810  
  2811  // Alt returns the value of property "HTMLAreaElement.alt".
  2812  //
  2813  // It returns ok=false if there is no such property.
  2814  func (this HTMLAreaElement) Alt() (ret js.String, ok bool) {
  2815  	ok = js.True == bindings.GetHTMLAreaElementAlt(
  2816  		this.ref, js.Pointer(&ret),
  2817  	)
  2818  	return
  2819  }
  2820  
  2821  // SetAlt sets the value of property "HTMLAreaElement.alt" to val.
  2822  //
  2823  // It returns false if the property cannot be set.
  2824  func (this HTMLAreaElement) SetAlt(val js.String) bool {
  2825  	return js.True == bindings.SetHTMLAreaElementAlt(
  2826  		this.ref,
  2827  		val.Ref(),
  2828  	)
  2829  }
  2830  
  2831  // Coords returns the value of property "HTMLAreaElement.coords".
  2832  //
  2833  // It returns ok=false if there is no such property.
  2834  func (this HTMLAreaElement) Coords() (ret js.String, ok bool) {
  2835  	ok = js.True == bindings.GetHTMLAreaElementCoords(
  2836  		this.ref, js.Pointer(&ret),
  2837  	)
  2838  	return
  2839  }
  2840  
  2841  // SetCoords sets the value of property "HTMLAreaElement.coords" to val.
  2842  //
  2843  // It returns false if the property cannot be set.
  2844  func (this HTMLAreaElement) SetCoords(val js.String) bool {
  2845  	return js.True == bindings.SetHTMLAreaElementCoords(
  2846  		this.ref,
  2847  		val.Ref(),
  2848  	)
  2849  }
  2850  
  2851  // Shape returns the value of property "HTMLAreaElement.shape".
  2852  //
  2853  // It returns ok=false if there is no such property.
  2854  func (this HTMLAreaElement) Shape() (ret js.String, ok bool) {
  2855  	ok = js.True == bindings.GetHTMLAreaElementShape(
  2856  		this.ref, js.Pointer(&ret),
  2857  	)
  2858  	return
  2859  }
  2860  
  2861  // SetShape sets the value of property "HTMLAreaElement.shape" to val.
  2862  //
  2863  // It returns false if the property cannot be set.
  2864  func (this HTMLAreaElement) SetShape(val js.String) bool {
  2865  	return js.True == bindings.SetHTMLAreaElementShape(
  2866  		this.ref,
  2867  		val.Ref(),
  2868  	)
  2869  }
  2870  
  2871  // Target returns the value of property "HTMLAreaElement.target".
  2872  //
  2873  // It returns ok=false if there is no such property.
  2874  func (this HTMLAreaElement) Target() (ret js.String, ok bool) {
  2875  	ok = js.True == bindings.GetHTMLAreaElementTarget(
  2876  		this.ref, js.Pointer(&ret),
  2877  	)
  2878  	return
  2879  }
  2880  
  2881  // SetTarget sets the value of property "HTMLAreaElement.target" to val.
  2882  //
  2883  // It returns false if the property cannot be set.
  2884  func (this HTMLAreaElement) SetTarget(val js.String) bool {
  2885  	return js.True == bindings.SetHTMLAreaElementTarget(
  2886  		this.ref,
  2887  		val.Ref(),
  2888  	)
  2889  }
  2890  
  2891  // Download returns the value of property "HTMLAreaElement.download".
  2892  //
  2893  // It returns ok=false if there is no such property.
  2894  func (this HTMLAreaElement) Download() (ret js.String, ok bool) {
  2895  	ok = js.True == bindings.GetHTMLAreaElementDownload(
  2896  		this.ref, js.Pointer(&ret),
  2897  	)
  2898  	return
  2899  }
  2900  
  2901  // SetDownload sets the value of property "HTMLAreaElement.download" to val.
  2902  //
  2903  // It returns false if the property cannot be set.
  2904  func (this HTMLAreaElement) SetDownload(val js.String) bool {
  2905  	return js.True == bindings.SetHTMLAreaElementDownload(
  2906  		this.ref,
  2907  		val.Ref(),
  2908  	)
  2909  }
  2910  
  2911  // Ping returns the value of property "HTMLAreaElement.ping".
  2912  //
  2913  // It returns ok=false if there is no such property.
  2914  func (this HTMLAreaElement) Ping() (ret js.String, ok bool) {
  2915  	ok = js.True == bindings.GetHTMLAreaElementPing(
  2916  		this.ref, js.Pointer(&ret),
  2917  	)
  2918  	return
  2919  }
  2920  
  2921  // SetPing sets the value of property "HTMLAreaElement.ping" to val.
  2922  //
  2923  // It returns false if the property cannot be set.
  2924  func (this HTMLAreaElement) SetPing(val js.String) bool {
  2925  	return js.True == bindings.SetHTMLAreaElementPing(
  2926  		this.ref,
  2927  		val.Ref(),
  2928  	)
  2929  }
  2930  
  2931  // Rel returns the value of property "HTMLAreaElement.rel".
  2932  //
  2933  // It returns ok=false if there is no such property.
  2934  func (this HTMLAreaElement) Rel() (ret js.String, ok bool) {
  2935  	ok = js.True == bindings.GetHTMLAreaElementRel(
  2936  		this.ref, js.Pointer(&ret),
  2937  	)
  2938  	return
  2939  }
  2940  
  2941  // SetRel sets the value of property "HTMLAreaElement.rel" to val.
  2942  //
  2943  // It returns false if the property cannot be set.
  2944  func (this HTMLAreaElement) SetRel(val js.String) bool {
  2945  	return js.True == bindings.SetHTMLAreaElementRel(
  2946  		this.ref,
  2947  		val.Ref(),
  2948  	)
  2949  }
  2950  
  2951  // RelList returns the value of property "HTMLAreaElement.relList".
  2952  //
  2953  // It returns ok=false if there is no such property.
  2954  func (this HTMLAreaElement) RelList() (ret DOMTokenList, ok bool) {
  2955  	ok = js.True == bindings.GetHTMLAreaElementRelList(
  2956  		this.ref, js.Pointer(&ret),
  2957  	)
  2958  	return
  2959  }
  2960  
  2961  // ReferrerPolicy returns the value of property "HTMLAreaElement.referrerPolicy".
  2962  //
  2963  // It returns ok=false if there is no such property.
  2964  func (this HTMLAreaElement) ReferrerPolicy() (ret js.String, ok bool) {
  2965  	ok = js.True == bindings.GetHTMLAreaElementReferrerPolicy(
  2966  		this.ref, js.Pointer(&ret),
  2967  	)
  2968  	return
  2969  }
  2970  
  2971  // SetReferrerPolicy sets the value of property "HTMLAreaElement.referrerPolicy" to val.
  2972  //
  2973  // It returns false if the property cannot be set.
  2974  func (this HTMLAreaElement) SetReferrerPolicy(val js.String) bool {
  2975  	return js.True == bindings.SetHTMLAreaElementReferrerPolicy(
  2976  		this.ref,
  2977  		val.Ref(),
  2978  	)
  2979  }
  2980  
  2981  // NoHref returns the value of property "HTMLAreaElement.noHref".
  2982  //
  2983  // It returns ok=false if there is no such property.
  2984  func (this HTMLAreaElement) NoHref() (ret bool, ok bool) {
  2985  	ok = js.True == bindings.GetHTMLAreaElementNoHref(
  2986  		this.ref, js.Pointer(&ret),
  2987  	)
  2988  	return
  2989  }
  2990  
  2991  // SetNoHref sets the value of property "HTMLAreaElement.noHref" to val.
  2992  //
  2993  // It returns false if the property cannot be set.
  2994  func (this HTMLAreaElement) SetNoHref(val bool) bool {
  2995  	return js.True == bindings.SetHTMLAreaElementNoHref(
  2996  		this.ref,
  2997  		js.Bool(bool(val)),
  2998  	)
  2999  }
  3000  
  3001  // Href returns the value of property "HTMLAreaElement.href".
  3002  //
  3003  // It returns ok=false if there is no such property.
  3004  func (this HTMLAreaElement) Href() (ret js.String, ok bool) {
  3005  	ok = js.True == bindings.GetHTMLAreaElementHref(
  3006  		this.ref, js.Pointer(&ret),
  3007  	)
  3008  	return
  3009  }
  3010  
  3011  // SetHref sets the value of property "HTMLAreaElement.href" to val.
  3012  //
  3013  // It returns false if the property cannot be set.
  3014  func (this HTMLAreaElement) SetHref(val js.String) bool {
  3015  	return js.True == bindings.SetHTMLAreaElementHref(
  3016  		this.ref,
  3017  		val.Ref(),
  3018  	)
  3019  }
  3020  
  3021  // Origin returns the value of property "HTMLAreaElement.origin".
  3022  //
  3023  // It returns ok=false if there is no such property.
  3024  func (this HTMLAreaElement) Origin() (ret js.String, ok bool) {
  3025  	ok = js.True == bindings.GetHTMLAreaElementOrigin(
  3026  		this.ref, js.Pointer(&ret),
  3027  	)
  3028  	return
  3029  }
  3030  
  3031  // Protocol returns the value of property "HTMLAreaElement.protocol".
  3032  //
  3033  // It returns ok=false if there is no such property.
  3034  func (this HTMLAreaElement) Protocol() (ret js.String, ok bool) {
  3035  	ok = js.True == bindings.GetHTMLAreaElementProtocol(
  3036  		this.ref, js.Pointer(&ret),
  3037  	)
  3038  	return
  3039  }
  3040  
  3041  // SetProtocol sets the value of property "HTMLAreaElement.protocol" to val.
  3042  //
  3043  // It returns false if the property cannot be set.
  3044  func (this HTMLAreaElement) SetProtocol(val js.String) bool {
  3045  	return js.True == bindings.SetHTMLAreaElementProtocol(
  3046  		this.ref,
  3047  		val.Ref(),
  3048  	)
  3049  }
  3050  
  3051  // Username returns the value of property "HTMLAreaElement.username".
  3052  //
  3053  // It returns ok=false if there is no such property.
  3054  func (this HTMLAreaElement) Username() (ret js.String, ok bool) {
  3055  	ok = js.True == bindings.GetHTMLAreaElementUsername(
  3056  		this.ref, js.Pointer(&ret),
  3057  	)
  3058  	return
  3059  }
  3060  
  3061  // SetUsername sets the value of property "HTMLAreaElement.username" to val.
  3062  //
  3063  // It returns false if the property cannot be set.
  3064  func (this HTMLAreaElement) SetUsername(val js.String) bool {
  3065  	return js.True == bindings.SetHTMLAreaElementUsername(
  3066  		this.ref,
  3067  		val.Ref(),
  3068  	)
  3069  }
  3070  
  3071  // Password returns the value of property "HTMLAreaElement.password".
  3072  //
  3073  // It returns ok=false if there is no such property.
  3074  func (this HTMLAreaElement) Password() (ret js.String, ok bool) {
  3075  	ok = js.True == bindings.GetHTMLAreaElementPassword(
  3076  		this.ref, js.Pointer(&ret),
  3077  	)
  3078  	return
  3079  }
  3080  
  3081  // SetPassword sets the value of property "HTMLAreaElement.password" to val.
  3082  //
  3083  // It returns false if the property cannot be set.
  3084  func (this HTMLAreaElement) SetPassword(val js.String) bool {
  3085  	return js.True == bindings.SetHTMLAreaElementPassword(
  3086  		this.ref,
  3087  		val.Ref(),
  3088  	)
  3089  }
  3090  
  3091  // Host returns the value of property "HTMLAreaElement.host".
  3092  //
  3093  // It returns ok=false if there is no such property.
  3094  func (this HTMLAreaElement) Host() (ret js.String, ok bool) {
  3095  	ok = js.True == bindings.GetHTMLAreaElementHost(
  3096  		this.ref, js.Pointer(&ret),
  3097  	)
  3098  	return
  3099  }
  3100  
  3101  // SetHost sets the value of property "HTMLAreaElement.host" to val.
  3102  //
  3103  // It returns false if the property cannot be set.
  3104  func (this HTMLAreaElement) SetHost(val js.String) bool {
  3105  	return js.True == bindings.SetHTMLAreaElementHost(
  3106  		this.ref,
  3107  		val.Ref(),
  3108  	)
  3109  }
  3110  
  3111  // Hostname returns the value of property "HTMLAreaElement.hostname".
  3112  //
  3113  // It returns ok=false if there is no such property.
  3114  func (this HTMLAreaElement) Hostname() (ret js.String, ok bool) {
  3115  	ok = js.True == bindings.GetHTMLAreaElementHostname(
  3116  		this.ref, js.Pointer(&ret),
  3117  	)
  3118  	return
  3119  }
  3120  
  3121  // SetHostname sets the value of property "HTMLAreaElement.hostname" to val.
  3122  //
  3123  // It returns false if the property cannot be set.
  3124  func (this HTMLAreaElement) SetHostname(val js.String) bool {
  3125  	return js.True == bindings.SetHTMLAreaElementHostname(
  3126  		this.ref,
  3127  		val.Ref(),
  3128  	)
  3129  }
  3130  
  3131  // Port returns the value of property "HTMLAreaElement.port".
  3132  //
  3133  // It returns ok=false if there is no such property.
  3134  func (this HTMLAreaElement) Port() (ret js.String, ok bool) {
  3135  	ok = js.True == bindings.GetHTMLAreaElementPort(
  3136  		this.ref, js.Pointer(&ret),
  3137  	)
  3138  	return
  3139  }
  3140  
  3141  // SetPort sets the value of property "HTMLAreaElement.port" to val.
  3142  //
  3143  // It returns false if the property cannot be set.
  3144  func (this HTMLAreaElement) SetPort(val js.String) bool {
  3145  	return js.True == bindings.SetHTMLAreaElementPort(
  3146  		this.ref,
  3147  		val.Ref(),
  3148  	)
  3149  }
  3150  
  3151  // Pathname returns the value of property "HTMLAreaElement.pathname".
  3152  //
  3153  // It returns ok=false if there is no such property.
  3154  func (this HTMLAreaElement) Pathname() (ret js.String, ok bool) {
  3155  	ok = js.True == bindings.GetHTMLAreaElementPathname(
  3156  		this.ref, js.Pointer(&ret),
  3157  	)
  3158  	return
  3159  }
  3160  
  3161  // SetPathname sets the value of property "HTMLAreaElement.pathname" to val.
  3162  //
  3163  // It returns false if the property cannot be set.
  3164  func (this HTMLAreaElement) SetPathname(val js.String) bool {
  3165  	return js.True == bindings.SetHTMLAreaElementPathname(
  3166  		this.ref,
  3167  		val.Ref(),
  3168  	)
  3169  }
  3170  
  3171  // Search returns the value of property "HTMLAreaElement.search".
  3172  //
  3173  // It returns ok=false if there is no such property.
  3174  func (this HTMLAreaElement) Search() (ret js.String, ok bool) {
  3175  	ok = js.True == bindings.GetHTMLAreaElementSearch(
  3176  		this.ref, js.Pointer(&ret),
  3177  	)
  3178  	return
  3179  }
  3180  
  3181  // SetSearch sets the value of property "HTMLAreaElement.search" to val.
  3182  //
  3183  // It returns false if the property cannot be set.
  3184  func (this HTMLAreaElement) SetSearch(val js.String) bool {
  3185  	return js.True == bindings.SetHTMLAreaElementSearch(
  3186  		this.ref,
  3187  		val.Ref(),
  3188  	)
  3189  }
  3190  
  3191  // Hash returns the value of property "HTMLAreaElement.hash".
  3192  //
  3193  // It returns ok=false if there is no such property.
  3194  func (this HTMLAreaElement) Hash() (ret js.String, ok bool) {
  3195  	ok = js.True == bindings.GetHTMLAreaElementHash(
  3196  		this.ref, js.Pointer(&ret),
  3197  	)
  3198  	return
  3199  }
  3200  
  3201  // SetHash sets the value of property "HTMLAreaElement.hash" to val.
  3202  //
  3203  // It returns false if the property cannot be set.
  3204  func (this HTMLAreaElement) SetHash(val js.String) bool {
  3205  	return js.True == bindings.SetHTMLAreaElementHash(
  3206  		this.ref,
  3207  		val.Ref(),
  3208  	)
  3209  }