@typescript/native-preview-linux-arm 7.0.0-dev.20260303.1 → 7.0.0-dev.20260304.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -378,6 +378,73 @@ interface FontFaceSetLoadEventInit extends EventInit {
378
378
  fontfaces?: FontFace[];
379
379
  }
380
380
 
381
+ interface GPUBindGroupDescriptor extends GPUObjectDescriptorBase {
382
+ entries: GPUBindGroupEntry[];
383
+ layout: GPUBindGroupLayout;
384
+ }
385
+
386
+ interface GPUBindGroupEntry {
387
+ binding: GPUIndex32;
388
+ resource: GPUBindingResource;
389
+ }
390
+
391
+ interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase {
392
+ entries: GPUBindGroupLayoutEntry[];
393
+ }
394
+
395
+ interface GPUBindGroupLayoutEntry {
396
+ binding: GPUIndex32;
397
+ buffer?: GPUBufferBindingLayout;
398
+ externalTexture?: GPUExternalTextureBindingLayout;
399
+ sampler?: GPUSamplerBindingLayout;
400
+ storageTexture?: GPUStorageTextureBindingLayout;
401
+ texture?: GPUTextureBindingLayout;
402
+ visibility: GPUShaderStageFlags;
403
+ }
404
+
405
+ interface GPUBlendComponent {
406
+ dstFactor?: GPUBlendFactor;
407
+ operation?: GPUBlendOperation;
408
+ srcFactor?: GPUBlendFactor;
409
+ }
410
+
411
+ interface GPUBlendState {
412
+ alpha: GPUBlendComponent;
413
+ color: GPUBlendComponent;
414
+ }
415
+
416
+ interface GPUBufferBinding {
417
+ buffer: GPUBuffer;
418
+ offset?: GPUSize64;
419
+ size?: GPUSize64;
420
+ }
421
+
422
+ interface GPUBufferBindingLayout {
423
+ hasDynamicOffset?: boolean;
424
+ minBindingSize?: GPUSize64;
425
+ type?: GPUBufferBindingType;
426
+ }
427
+
428
+ interface GPUBufferDescriptor extends GPUObjectDescriptorBase {
429
+ mappedAtCreation?: boolean;
430
+ size: GPUSize64;
431
+ usage: GPUBufferUsageFlags;
432
+ }
433
+
434
+ interface GPUCanvasConfiguration {
435
+ alphaMode?: GPUCanvasAlphaMode;
436
+ colorSpace?: PredefinedColorSpace;
437
+ device: GPUDevice;
438
+ format: GPUTextureFormat;
439
+ toneMapping?: GPUCanvasToneMapping;
440
+ usage?: GPUTextureUsageFlags;
441
+ viewFormats?: GPUTextureFormat[];
442
+ }
443
+
444
+ interface GPUCanvasToneMapping {
445
+ mode?: GPUCanvasToneMappingMode;
446
+ }
447
+
381
448
  interface GPUColorDict {
382
449
  a: number;
383
450
  b: number;
@@ -385,17 +452,264 @@ interface GPUColorDict {
385
452
  r: number;
386
453
  }
387
454
 
455
+ interface GPUColorTargetState {
456
+ blend?: GPUBlendState;
457
+ format: GPUTextureFormat;
458
+ writeMask?: GPUColorWriteFlags;
459
+ }
460
+
461
+ interface GPUCommandBufferDescriptor extends GPUObjectDescriptorBase {
462
+ }
463
+
464
+ interface GPUCommandEncoderDescriptor extends GPUObjectDescriptorBase {
465
+ }
466
+
467
+ interface GPUComputePassDescriptor extends GPUObjectDescriptorBase {
468
+ timestampWrites?: GPUComputePassTimestampWrites;
469
+ }
470
+
471
+ interface GPUComputePassTimestampWrites {
472
+ beginningOfPassWriteIndex?: GPUSize32;
473
+ endOfPassWriteIndex?: GPUSize32;
474
+ querySet: GPUQuerySet;
475
+ }
476
+
477
+ interface GPUComputePipelineDescriptor extends GPUPipelineDescriptorBase {
478
+ compute: GPUProgrammableStage;
479
+ }
480
+
481
+ interface GPUCopyExternalImageDestInfo extends GPUTexelCopyTextureInfo {
482
+ colorSpace?: PredefinedColorSpace;
483
+ premultipliedAlpha?: boolean;
484
+ }
485
+
486
+ interface GPUCopyExternalImageSourceInfo {
487
+ flipY?: boolean;
488
+ origin?: GPUOrigin2D;
489
+ source: GPUCopyExternalImageSource;
490
+ }
491
+
492
+ interface GPUDepthStencilState {
493
+ depthBias?: GPUDepthBias;
494
+ depthBiasClamp?: number;
495
+ depthBiasSlopeScale?: number;
496
+ depthCompare?: GPUCompareFunction;
497
+ depthWriteEnabled?: boolean;
498
+ format: GPUTextureFormat;
499
+ stencilBack?: GPUStencilFaceState;
500
+ stencilFront?: GPUStencilFaceState;
501
+ stencilReadMask?: GPUStencilValue;
502
+ stencilWriteMask?: GPUStencilValue;
503
+ }
504
+
505
+ interface GPUDeviceDescriptor extends GPUObjectDescriptorBase {
506
+ defaultQueue?: GPUQueueDescriptor;
507
+ requiredFeatures?: GPUFeatureName[];
508
+ requiredLimits?: Record<string, GPUSize64 | undefined>;
509
+ }
510
+
511
+ interface GPUExtent3DDict {
512
+ depthOrArrayLayers?: GPUIntegerCoordinate;
513
+ height?: GPUIntegerCoordinate;
514
+ width: GPUIntegerCoordinate;
515
+ }
516
+
517
+ interface GPUExternalTextureBindingLayout {
518
+ }
519
+
520
+ interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase {
521
+ colorSpace?: PredefinedColorSpace;
522
+ source: VideoFrame;
523
+ }
524
+
525
+ interface GPUFragmentState extends GPUProgrammableStage {
526
+ targets: (GPUColorTargetState | null)[];
527
+ }
528
+
529
+ interface GPUMultisampleState {
530
+ alphaToCoverageEnabled?: boolean;
531
+ count?: GPUSize32;
532
+ mask?: GPUSampleMask;
533
+ }
534
+
388
535
  interface GPUObjectDescriptorBase {
389
536
  label?: string;
390
537
  }
391
538
 
539
+ interface GPUOrigin2DDict {
540
+ x?: GPUIntegerCoordinate;
541
+ y?: GPUIntegerCoordinate;
542
+ }
543
+
544
+ interface GPUOrigin3DDict {
545
+ x?: GPUIntegerCoordinate;
546
+ y?: GPUIntegerCoordinate;
547
+ z?: GPUIntegerCoordinate;
548
+ }
549
+
550
+ interface GPUPipelineDescriptorBase extends GPUObjectDescriptorBase {
551
+ layout: GPUPipelineLayout | GPUAutoLayoutMode;
552
+ }
553
+
392
554
  interface GPUPipelineErrorInit {
393
555
  reason: GPUPipelineErrorReason;
394
556
  }
395
557
 
558
+ interface GPUPipelineLayoutDescriptor extends GPUObjectDescriptorBase {
559
+ bindGroupLayouts: (GPUBindGroupLayout | null)[];
560
+ }
561
+
562
+ interface GPUPrimitiveState {
563
+ cullMode?: GPUCullMode;
564
+ frontFace?: GPUFrontFace;
565
+ stripIndexFormat?: GPUIndexFormat;
566
+ topology?: GPUPrimitiveTopology;
567
+ unclippedDepth?: boolean;
568
+ }
569
+
570
+ interface GPUProgrammableStage {
571
+ constants?: Record<string, GPUPipelineConstantValue>;
572
+ entryPoint?: string;
573
+ module: GPUShaderModule;
574
+ }
575
+
576
+ interface GPUQuerySetDescriptor extends GPUObjectDescriptorBase {
577
+ count: GPUSize32;
578
+ type: GPUQueryType;
579
+ }
580
+
581
+ interface GPUQueueDescriptor extends GPUObjectDescriptorBase {
582
+ }
583
+
396
584
  interface GPURenderBundleDescriptor extends GPUObjectDescriptorBase {
397
585
  }
398
586
 
587
+ interface GPURenderBundleEncoderDescriptor extends GPURenderPassLayout {
588
+ depthReadOnly?: boolean;
589
+ stencilReadOnly?: boolean;
590
+ }
591
+
592
+ interface GPURenderPassColorAttachment {
593
+ clearValue?: GPUColor;
594
+ depthSlice?: GPUIntegerCoordinate;
595
+ loadOp: GPULoadOp;
596
+ resolveTarget?: GPUTexture | GPUTextureView;
597
+ storeOp: GPUStoreOp;
598
+ view: GPUTexture | GPUTextureView;
599
+ }
600
+
601
+ interface GPURenderPassDepthStencilAttachment {
602
+ depthClearValue?: number;
603
+ depthLoadOp?: GPULoadOp;
604
+ depthReadOnly?: boolean;
605
+ depthStoreOp?: GPUStoreOp;
606
+ stencilClearValue?: GPUStencilValue;
607
+ stencilLoadOp?: GPULoadOp;
608
+ stencilReadOnly?: boolean;
609
+ stencilStoreOp?: GPUStoreOp;
610
+ view: GPUTexture | GPUTextureView;
611
+ }
612
+
613
+ interface GPURenderPassDescriptor extends GPUObjectDescriptorBase {
614
+ colorAttachments: (GPURenderPassColorAttachment | null)[];
615
+ depthStencilAttachment?: GPURenderPassDepthStencilAttachment;
616
+ maxDrawCount?: GPUSize64;
617
+ occlusionQuerySet?: GPUQuerySet;
618
+ timestampWrites?: GPURenderPassTimestampWrites;
619
+ }
620
+
621
+ interface GPURenderPassLayout extends GPUObjectDescriptorBase {
622
+ colorFormats: (GPUTextureFormat | null)[];
623
+ depthStencilFormat?: GPUTextureFormat;
624
+ sampleCount?: GPUSize32;
625
+ }
626
+
627
+ interface GPURenderPassTimestampWrites {
628
+ beginningOfPassWriteIndex?: GPUSize32;
629
+ endOfPassWriteIndex?: GPUSize32;
630
+ querySet: GPUQuerySet;
631
+ }
632
+
633
+ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase {
634
+ depthStencil?: GPUDepthStencilState;
635
+ fragment?: GPUFragmentState;
636
+ multisample?: GPUMultisampleState;
637
+ primitive?: GPUPrimitiveState;
638
+ vertex: GPUVertexState;
639
+ }
640
+
641
+ interface GPURequestAdapterOptions {
642
+ forceFallbackAdapter?: boolean;
643
+ powerPreference?: GPUPowerPreference;
644
+ }
645
+
646
+ interface GPUSamplerBindingLayout {
647
+ type?: GPUSamplerBindingType;
648
+ }
649
+
650
+ interface GPUSamplerDescriptor extends GPUObjectDescriptorBase {
651
+ addressModeU?: GPUAddressMode;
652
+ addressModeV?: GPUAddressMode;
653
+ addressModeW?: GPUAddressMode;
654
+ compare?: GPUCompareFunction;
655
+ lodMaxClamp?: number;
656
+ lodMinClamp?: number;
657
+ magFilter?: GPUFilterMode;
658
+ maxAnisotropy?: number;
659
+ minFilter?: GPUFilterMode;
660
+ mipmapFilter?: GPUMipmapFilterMode;
661
+ }
662
+
663
+ interface GPUShaderModuleDescriptor extends GPUObjectDescriptorBase {
664
+ code: string;
665
+ }
666
+
667
+ interface GPUStencilFaceState {
668
+ compare?: GPUCompareFunction;
669
+ depthFailOp?: GPUStencilOperation;
670
+ failOp?: GPUStencilOperation;
671
+ passOp?: GPUStencilOperation;
672
+ }
673
+
674
+ interface GPUStorageTextureBindingLayout {
675
+ access?: GPUStorageTextureAccess;
676
+ format: GPUTextureFormat;
677
+ viewDimension?: GPUTextureViewDimension;
678
+ }
679
+
680
+ interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout {
681
+ buffer: GPUBuffer;
682
+ }
683
+
684
+ interface GPUTexelCopyBufferLayout {
685
+ bytesPerRow?: GPUSize32;
686
+ offset?: GPUSize64;
687
+ rowsPerImage?: GPUSize32;
688
+ }
689
+
690
+ interface GPUTexelCopyTextureInfo {
691
+ aspect?: GPUTextureAspect;
692
+ mipLevel?: GPUIntegerCoordinate;
693
+ origin?: GPUOrigin3D;
694
+ texture: GPUTexture;
695
+ }
696
+
697
+ interface GPUTextureBindingLayout {
698
+ multisampled?: boolean;
699
+ sampleType?: GPUTextureSampleType;
700
+ viewDimension?: GPUTextureViewDimension;
701
+ }
702
+
703
+ interface GPUTextureDescriptor extends GPUObjectDescriptorBase {
704
+ dimension?: GPUTextureDimension;
705
+ format: GPUTextureFormat;
706
+ mipLevelCount?: GPUIntegerCoordinate;
707
+ sampleCount?: GPUSize32;
708
+ size: GPUExtent3D;
709
+ usage: GPUTextureUsageFlags;
710
+ viewFormats?: GPUTextureFormat[];
711
+ }
712
+
399
713
  interface GPUTextureViewDescriptor extends GPUObjectDescriptorBase {
400
714
  arrayLayerCount?: GPUIntegerCoordinate;
401
715
  aspect?: GPUTextureAspect;
@@ -411,6 +725,22 @@ interface GPUUncapturedErrorEventInit extends EventInit {
411
725
  error: GPUError;
412
726
  }
413
727
 
728
+ interface GPUVertexAttribute {
729
+ format: GPUVertexFormat;
730
+ offset: GPUSize64;
731
+ shaderLocation: GPUIndex32;
732
+ }
733
+
734
+ interface GPUVertexBufferLayout {
735
+ arrayStride: GPUSize64;
736
+ attributes: GPUVertexAttribute[];
737
+ stepMode?: GPUVertexStepMode;
738
+ }
739
+
740
+ interface GPUVertexState extends GPUProgrammableStage {
741
+ buffers?: (GPUVertexBufferLayout | null)[];
742
+ }
743
+
414
744
  interface GetNotificationOptions {
415
745
  tag?: string;
416
746
  }
@@ -4925,6 +5255,76 @@ declare var FormData: {
4925
5255
  new(): FormData;
4926
5256
  };
4927
5257
 
5258
+ /**
5259
+ * The **`GPU`** interface of the WebGPU API is the starting point for using WebGPU. It can be used to return a GPUAdapter from which you can request devices, configure features and limits, and more.
5260
+ * Available only in secure contexts.
5261
+ *
5262
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPU)
5263
+ */
5264
+ interface GPU {
5265
+ /**
5266
+ * The **`wgslLanguageFeatures`** read-only property of the GPU interface returns a WGSLLanguageFeatures object that reports the WGSL language extensions supported by the WebGPU implementation.
5267
+ *
5268
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPU/wgslLanguageFeatures)
5269
+ */
5270
+ readonly wgslLanguageFeatures: WGSLLanguageFeatures;
5271
+ /**
5272
+ * The **`getPreferredCanvasFormat()`** method of the GPU interface returns the optimal canvas texture format for displaying 8-bit depth, standard dynamic range content on the current system.
5273
+ *
5274
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPU/getPreferredCanvasFormat)
5275
+ */
5276
+ getPreferredCanvasFormat(): GPUTextureFormat;
5277
+ /**
5278
+ * The **`requestAdapter()`** method of the GPU interface returns a Promise that fulfills with a GPUAdapter object instance. From this you can request a GPUDevice, adapter info, features, and limits.
5279
+ *
5280
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPU/requestAdapter)
5281
+ */
5282
+ requestAdapter(options?: GPURequestAdapterOptions): Promise<GPUAdapter | null>;
5283
+ }
5284
+
5285
+ declare var GPU: {
5286
+ prototype: GPU;
5287
+ new(): GPU;
5288
+ };
5289
+
5290
+ /**
5291
+ * The **`GPUAdapter`** interface of the WebGPU API represents a GPU adapter. From this you can request a GPUDevice, adapter info, features, and limits.
5292
+ * Available only in secure contexts.
5293
+ *
5294
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter)
5295
+ */
5296
+ interface GPUAdapter {
5297
+ /**
5298
+ * The **`features`** read-only property of the GPUAdapter interface returns a GPUSupportedFeatures object that describes additional functionality supported by the adapter.
5299
+ *
5300
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/features)
5301
+ */
5302
+ readonly features: GPUSupportedFeatures;
5303
+ /**
5304
+ * The **`info`** read-only property of the GPUAdapter interface returns a GPUAdapterInfo object containing identifying information about the adapter.
5305
+ *
5306
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/info)
5307
+ */
5308
+ readonly info: GPUAdapterInfo;
5309
+ /**
5310
+ * The **`limits`** read-only property of the GPUAdapter interface returns a GPUSupportedLimits object that describes the limits supported by the adapter.
5311
+ *
5312
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/limits)
5313
+ */
5314
+ readonly limits: GPUSupportedLimits;
5315
+ /**
5316
+ * The **`requestDevice()`** method of the GPUAdapter interface returns a Promise that fulfills with a GPUDevice object, which is the primary interface for communicating with the GPU.
5317
+ *
5318
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/requestDevice)
5319
+ */
5320
+ requestDevice(descriptor?: GPUDeviceDescriptor): Promise<GPUDevice>;
5321
+ }
5322
+
5323
+ declare var GPUAdapter: {
5324
+ prototype: GPUAdapter;
5325
+ new(): GPUAdapter;
5326
+ };
5327
+
4928
5328
  /**
4929
5329
  * The **`GPUAdapterInfo`** interface of the WebGPU API contains identifying information about a GPUAdapter.
4930
5330
  * Available only in secure contexts.
@@ -5071,6 +5471,50 @@ declare var GPUBuffer: {
5071
5471
  new(): GPUBuffer;
5072
5472
  };
5073
5473
 
5474
+ /**
5475
+ * The **`GPUCanvasContext`** interface of the WebGPU API represents the WebGPU rendering context of a <canvas> element, returned via an HTMLCanvasElement.getContext() call with a contextType of "webgpu".
5476
+ * Available only in secure contexts.
5477
+ *
5478
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext)
5479
+ */
5480
+ interface GPUCanvasContext {
5481
+ /**
5482
+ * The **`canvas`** read-only property of the GPUCanvasContext interface returns a reference to the canvas that the context was created from.
5483
+ *
5484
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/canvas)
5485
+ */
5486
+ readonly canvas: OffscreenCanvas;
5487
+ /**
5488
+ * The **`configure()`** method of the GPUCanvasContext interface configures the context to use for rendering with a given GPUDevice. When called the canvas will initially be cleared to transparent black.
5489
+ *
5490
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/configure)
5491
+ */
5492
+ configure(configuration: GPUCanvasConfiguration): void;
5493
+ /**
5494
+ * The **`getConfiguration()`** method of the GPUCanvasContext interface returns the current configuration set for the context.
5495
+ *
5496
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/getConfiguration)
5497
+ */
5498
+ getConfiguration(): GPUCanvasConfiguration | null;
5499
+ /**
5500
+ * The **`getCurrentTexture()`** method of the GPUCanvasContext interface returns the next GPUTexture to be composited to the document by the canvas context.
5501
+ *
5502
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/getCurrentTexture)
5503
+ */
5504
+ getCurrentTexture(): GPUTexture;
5505
+ /**
5506
+ * The **`unconfigure()`** method of the GPUCanvasContext interface removes any previously-set context configuration, and destroys any textures returned via getCurrentTexture() while the canvas context was configured.
5507
+ *
5508
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/unconfigure)
5509
+ */
5510
+ unconfigure(): void;
5511
+ }
5512
+
5513
+ declare var GPUCanvasContext: {
5514
+ prototype: GPUCanvasContext;
5515
+ new(): GPUCanvasContext;
5516
+ };
5517
+
5074
5518
  /**
5075
5519
  * The **`GPUCommandBuffer`** interface of the WebGPU API represents a pre-recorded list of GPU commands that can be submitted to a GPUQueue for execution.
5076
5520
  * Available only in secure contexts.
@@ -5085,6 +5529,75 @@ declare var GPUCommandBuffer: {
5085
5529
  new(): GPUCommandBuffer;
5086
5530
  };
5087
5531
 
5532
+ /**
5533
+ * The **`GPUCommandEncoder`** interface of the WebGPU API represents an encoder that collects a sequence of GPU commands to be issued to the GPU.
5534
+ * Available only in secure contexts.
5535
+ *
5536
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder)
5537
+ */
5538
+ interface GPUCommandEncoder extends GPUDebugCommandsMixin, GPUObjectBase {
5539
+ /**
5540
+ * The **`beginComputePass()`** method of the GPUCommandEncoder interface starts encoding a compute pass, returning a GPUComputePassEncoder that can be used to control computation.
5541
+ *
5542
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/beginComputePass)
5543
+ */
5544
+ beginComputePass(descriptor?: GPUComputePassDescriptor): GPUComputePassEncoder;
5545
+ /**
5546
+ * The **`beginRenderPass()`** method of the GPUCommandEncoder interface starts encoding a render pass, returning a GPURenderPassEncoder that can be used to control rendering.
5547
+ *
5548
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/beginRenderPass)
5549
+ */
5550
+ beginRenderPass(descriptor: GPURenderPassDescriptor): GPURenderPassEncoder;
5551
+ /**
5552
+ * The **`clearBuffer()`** method of the GPUCommandEncoder interface encodes a command that fills a region of a GPUBuffer with zeroes.
5553
+ *
5554
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/clearBuffer)
5555
+ */
5556
+ clearBuffer(buffer: GPUBuffer, offset?: GPUSize64, size?: GPUSize64): void;
5557
+ /**
5558
+ * The **`copyBufferToBuffer()`** method of the GPUCommandEncoder interface encodes a command that copies data from one GPUBuffer to another.
5559
+ *
5560
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToBuffer)
5561
+ */
5562
+ copyBufferToBuffer(source: GPUBuffer, destination: GPUBuffer, size?: GPUSize64): void;
5563
+ copyBufferToBuffer(source: GPUBuffer, sourceOffset: GPUSize64, destination: GPUBuffer, destinationOffset: GPUSize64, size?: GPUSize64): void;
5564
+ /**
5565
+ * The **`copyBufferToTexture()`** method of the GPUCommandEncoder interface encodes a command that copies data from a GPUBuffer to a GPUTexture.
5566
+ *
5567
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToTexture)
5568
+ */
5569
+ copyBufferToTexture(source: GPUTexelCopyBufferInfo, destination: GPUTexelCopyTextureInfo, copySize: GPUExtent3D): void;
5570
+ /**
5571
+ * The **`copyTextureToBuffer()`** method of the GPUCommandEncoder interface encodes a command that copies data from a GPUTexture to a GPUBuffer.
5572
+ *
5573
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyTextureToBuffer)
5574
+ */
5575
+ copyTextureToBuffer(source: GPUTexelCopyTextureInfo, destination: GPUTexelCopyBufferInfo, copySize: GPUExtent3D): void;
5576
+ /**
5577
+ * The **`copyTextureToTexture()`** method of the GPUCommandEncoder interface encodes a command that copies data from one GPUTexture to another.
5578
+ *
5579
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyTextureToTexture)
5580
+ */
5581
+ copyTextureToTexture(source: GPUTexelCopyTextureInfo, destination: GPUTexelCopyTextureInfo, copySize: GPUExtent3D): void;
5582
+ /**
5583
+ * The **`finish()`** method of the GPUCommandEncoder interface completes recording of the command sequence encoded on this GPUCommandEncoder, returning a corresponding GPUCommandBuffer.
5584
+ *
5585
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/finish)
5586
+ */
5587
+ finish(descriptor?: GPUCommandBufferDescriptor): GPUCommandBuffer;
5588
+ /**
5589
+ * The **`resolveQuerySet()`** method of the GPUCommandEncoder interface encodes a command that resolves a GPUQuerySet, copying the results into a specified GPUBuffer.
5590
+ *
5591
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/resolveQuerySet)
5592
+ */
5593
+ resolveQuerySet(querySet: GPUQuerySet, firstQuery: GPUSize32, queryCount: GPUSize32, destination: GPUBuffer, destinationOffset: GPUSize64): void;
5594
+ }
5595
+
5596
+ declare var GPUCommandEncoder: {
5597
+ prototype: GPUCommandEncoder;
5598
+ new(): GPUCommandEncoder;
5599
+ };
5600
+
5088
5601
  /**
5089
5602
  * The **`GPUCompilationInfo`** interface of the WebGPU API represents an array of GPUCompilationMessage objects generated by the GPU shader module compiler to help diagnose problems with shader code.
5090
5603
  * Available only in secure contexts.
@@ -5216,6 +5729,168 @@ interface GPUDebugCommandsMixin {
5216
5729
  pushDebugGroup(groupLabel: string): void;
5217
5730
  }
5218
5731
 
5732
+ interface GPUDeviceEventMap {
5733
+ "uncapturederror": GPUUncapturedErrorEvent;
5734
+ }
5735
+
5736
+ /**
5737
+ * The **`GPUDevice`** interface of the WebGPU API represents a logical GPU device. This is the main interface through which the majority of WebGPU functionality is accessed.
5738
+ * Available only in secure contexts.
5739
+ *
5740
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice)
5741
+ */
5742
+ interface GPUDevice extends EventTarget, GPUObjectBase {
5743
+ /**
5744
+ * The **`adapterInfo`** read-only property of the GPUDevice interface returns a GPUAdapterInfo object containing identifying information about the device's originating adapter.
5745
+ *
5746
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/adapterInfo)
5747
+ */
5748
+ readonly adapterInfo: GPUAdapterInfo;
5749
+ /**
5750
+ * The **`features`** read-only property of the GPUDevice interface returns a GPUSupportedFeatures object that describes additional functionality supported by the device. Only features requested during the creation of the device (i.e., when GPUAdapter.requestDevice() is called) are included.
5751
+ *
5752
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/features)
5753
+ */
5754
+ readonly features: GPUSupportedFeatures;
5755
+ /**
5756
+ * The **`limits`** read-only property of the GPUDevice interface returns a GPUSupportedLimits object that describes the limits supported by the device. All limit values will be included, and the limits requested during the creation of the device (i.e., when GPUAdapter.requestDevice() is called) will be reflected in those values.
5757
+ *
5758
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/limits)
5759
+ */
5760
+ readonly limits: GPUSupportedLimits;
5761
+ /**
5762
+ * The **`lost`** read-only property of the GPUDevice interface contains a Promise that remains pending throughout the device's lifetime and resolves with a GPUDeviceLostInfo object when the device is lost.
5763
+ *
5764
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/lost)
5765
+ */
5766
+ readonly lost: Promise<GPUDeviceLostInfo>;
5767
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/uncapturederror_event) */
5768
+ onuncapturederror: ((this: GPUDevice, ev: GPUUncapturedErrorEvent) => any) | null;
5769
+ /**
5770
+ * The **`queue`** read-only property of the GPUDevice interface returns the primary GPUQueue for the device.
5771
+ *
5772
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/queue)
5773
+ */
5774
+ readonly queue: GPUQueue;
5775
+ /**
5776
+ * The **`createBindGroup()`** method of the GPUDevice interface creates a GPUBindGroup based on a GPUBindGroupLayout that defines a set of resources to be bound together in a group and how those resources are used in shader stages.
5777
+ *
5778
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup)
5779
+ */
5780
+ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup;
5781
+ /**
5782
+ * The **`createBindGroupLayout()`** method of the GPUDevice interface creates a GPUBindGroupLayout that defines the structure and purpose of related GPU resources such as buffers that will be used in a pipeline, and is used as a template when creating GPUBindGroups.
5783
+ *
5784
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout)
5785
+ */
5786
+ createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout;
5787
+ /**
5788
+ * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations.
5789
+ *
5790
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBuffer)
5791
+ */
5792
+ createBuffer(descriptor: GPUBufferDescriptor): GPUBuffer;
5793
+ /**
5794
+ * The **`createCommandEncoder()`** method of the GPUDevice interface creates a GPUCommandEncoder, used to encode commands to be issued to the GPU.
5795
+ *
5796
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createCommandEncoder)
5797
+ */
5798
+ createCommandEncoder(descriptor?: GPUCommandEncoderDescriptor): GPUCommandEncoder;
5799
+ /**
5800
+ * The **`createComputePipeline()`** method of the GPUDevice interface creates a GPUComputePipeline that can control the compute shader stage and be used in a GPUComputePassEncoder.
5801
+ *
5802
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createComputePipeline)
5803
+ */
5804
+ createComputePipeline(descriptor: GPUComputePipelineDescriptor): GPUComputePipeline;
5805
+ /**
5806
+ * The **`createComputePipelineAsync()`** method of the GPUDevice interface returns a Promise that fulfills with a GPUComputePipeline, which can control the compute shader stage and be used in a GPUComputePassEncoder, once the pipeline can be used without any stalling.
5807
+ *
5808
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createComputePipelineAsync)
5809
+ */
5810
+ createComputePipelineAsync(descriptor: GPUComputePipelineDescriptor): Promise<GPUComputePipeline>;
5811
+ /**
5812
+ * The **`createPipelineLayout()`** method of the GPUDevice interface creates a GPUPipelineLayout that defines the GPUBindGroupLayouts used by a pipeline. GPUBindGroups used with the pipeline during command encoding must have compatible GPUBindGroupLayouts.
5813
+ *
5814
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createPipelineLayout)
5815
+ */
5816
+ createPipelineLayout(descriptor: GPUPipelineLayoutDescriptor): GPUPipelineLayout;
5817
+ /**
5818
+ * The **`createQuerySet()`** method of the GPUDevice interface creates a GPUQuerySet that can be used to record the results of queries on passes, such as occlusion or timestamp queries.
5819
+ *
5820
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createQuerySet)
5821
+ */
5822
+ createQuerySet(descriptor: GPUQuerySetDescriptor): GPUQuerySet;
5823
+ /**
5824
+ * The **`createRenderBundleEncoder()`** method of the GPUDevice interface creates a GPURenderBundleEncoder that can be used to pre-record bundles of commands. These can be reused in GPURenderPassEncoders via the executeBundles() method, as many times as required.
5825
+ *
5826
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderBundleEncoder)
5827
+ */
5828
+ createRenderBundleEncoder(descriptor: GPURenderBundleEncoderDescriptor): GPURenderBundleEncoder;
5829
+ /**
5830
+ * The **`createRenderPipeline()`** method of the GPUDevice interface creates a GPURenderPipeline that can control the vertex and fragment shader stages and be used in a GPURenderPassEncoder or GPURenderBundleEncoder.
5831
+ *
5832
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderPipeline)
5833
+ */
5834
+ createRenderPipeline(descriptor: GPURenderPipelineDescriptor): GPURenderPipeline;
5835
+ /**
5836
+ * The **`createRenderPipelineAsync()`** method of the GPUDevice interface returns a Promise that fulfills with a GPURenderPipeline, which can control the vertex and fragment shader stages and be used in a GPURenderPassEncoder or GPURenderBundleEncoder, once the pipeline can be used without any stalling.
5837
+ *
5838
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderPipelineAsync)
5839
+ */
5840
+ createRenderPipelineAsync(descriptor: GPURenderPipelineDescriptor): Promise<GPURenderPipeline>;
5841
+ /**
5842
+ * The **`createSampler()`** method of the GPUDevice interface creates a GPUSampler, which controls how shaders transform and filter texture resource data.
5843
+ *
5844
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createSampler)
5845
+ */
5846
+ createSampler(descriptor?: GPUSamplerDescriptor): GPUSampler;
5847
+ /**
5848
+ * The **`createShaderModule()`** method of the GPUDevice interface creates a GPUShaderModule from a string of WGSL source code.
5849
+ *
5850
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createShaderModule)
5851
+ */
5852
+ createShaderModule(descriptor: GPUShaderModuleDescriptor): GPUShaderModule;
5853
+ /**
5854
+ * The **`createTexture()`** method of the GPUDevice interface creates a GPUTexture in which to store 1D, 2D, or 3D arrays of data, such as images, to use in GPU rendering operations.
5855
+ *
5856
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createTexture)
5857
+ */
5858
+ createTexture(descriptor: GPUTextureDescriptor): GPUTexture;
5859
+ /**
5860
+ * The **`destroy()`** method of the GPUDevice interface destroys the device, preventing further operations on it.
5861
+ *
5862
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/destroy)
5863
+ */
5864
+ destroy(): void;
5865
+ /**
5866
+ * The **`importExternalTexture()`** method of the GPUDevice interface takes an HTMLVideoElement or a VideoFrame object as an input and returns a GPUExternalTexture wrapper object containing a snapshot of the video that can be used as a frame in GPU rendering operations.
5867
+ *
5868
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/importExternalTexture)
5869
+ */
5870
+ importExternalTexture(descriptor: GPUExternalTextureDescriptor): GPUExternalTexture;
5871
+ /**
5872
+ * The **`popErrorScope()`** method of the GPUDevice interface pops an existing GPU error scope from the error scope stack (originally pushed using GPUDevice.pushErrorScope()) and returns a Promise that resolves to an object describing the first error captured in the scope, or null if no error occurred.
5873
+ *
5874
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/popErrorScope)
5875
+ */
5876
+ popErrorScope(): Promise<GPUError | null>;
5877
+ /**
5878
+ * The **`pushErrorScope()`** method of the GPUDevice interface pushes a new GPU error scope onto the device's error scope stack, allowing you to capture errors of a particular type.
5879
+ *
5880
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/pushErrorScope)
5881
+ */
5882
+ pushErrorScope(filter: GPUErrorFilter): void;
5883
+ addEventListener<K extends keyof GPUDeviceEventMap>(type: K, listener: (this: GPUDevice, ev: GPUDeviceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
5884
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
5885
+ removeEventListener<K extends keyof GPUDeviceEventMap>(type: K, listener: (this: GPUDevice, ev: GPUDeviceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
5886
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
5887
+ }
5888
+
5889
+ declare var GPUDevice: {
5890
+ prototype: GPUDevice;
5891
+ new(): GPUDevice;
5892
+ };
5893
+
5219
5894
  /**
5220
5895
  * The **`GPUDeviceLostInfo`** interface of the WebGPU API represents the object returned when the GPUDevice.lost Promise resolves. This provides information as to why a device has been lost.
5221
5896
  * Available only in secure contexts.
@@ -5380,6 +6055,50 @@ declare var GPUQuerySet: {
5380
6055
  new(): GPUQuerySet;
5381
6056
  };
5382
6057
 
6058
+ /**
6059
+ * The **`GPUQueue`** interface of the WebGPU API controls execution of encoded commands on the GPU.
6060
+ * Available only in secure contexts.
6061
+ *
6062
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue)
6063
+ */
6064
+ interface GPUQueue extends GPUObjectBase {
6065
+ /**
6066
+ * The **`copyExternalImageToTexture()`** method of the GPUQueue interface copies a snapshot taken from a source image, video, or canvas into a given GPUTexture.
6067
+ *
6068
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/copyExternalImageToTexture)
6069
+ */
6070
+ copyExternalImageToTexture(source: GPUCopyExternalImageSourceInfo, destination: GPUCopyExternalImageDestInfo, copySize: GPUExtent3D): void;
6071
+ /**
6072
+ * The **`onSubmittedWorkDone()`** method of the GPUQueue interface returns a Promise that resolves when all the work submitted to the GPU via this GPUQueue at the point the method is called has been processed.
6073
+ *
6074
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/onSubmittedWorkDone)
6075
+ */
6076
+ onSubmittedWorkDone(): Promise<void>;
6077
+ /**
6078
+ * The **`submit()`** method of the GPUQueue interface schedules the execution of command buffers represented by one or more GPUCommandBuffer objects by the GPU.
6079
+ *
6080
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/submit)
6081
+ */
6082
+ submit(commandBuffers: GPUCommandBuffer[]): void;
6083
+ /**
6084
+ * The **`writeBuffer()`** method of the GPUQueue interface writes a provided data source into a given GPUBuffer.
6085
+ *
6086
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/writeBuffer)
6087
+ */
6088
+ writeBuffer(buffer: GPUBuffer, bufferOffset: GPUSize64, data: AllowSharedBufferSource, dataOffset?: GPUSize64, size?: GPUSize64): void;
6089
+ /**
6090
+ * The **`writeTexture()`** method of the GPUQueue interface writes a provided data source into a given GPUTexture.
6091
+ *
6092
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/writeTexture)
6093
+ */
6094
+ writeTexture(destination: GPUTexelCopyTextureInfo, data: AllowSharedBufferSource, dataLayout: GPUTexelCopyBufferLayout, size: GPUExtent3D): void;
6095
+ }
6096
+
6097
+ declare var GPUQueue: {
6098
+ prototype: GPUQueue;
6099
+ new(): GPUQueue;
6100
+ };
6101
+
5383
6102
  /**
5384
6103
  * The **`GPURenderBundle`** interface of the WebGPU API represents a container for pre-recorded bundles of commands.
5385
6104
  * Available only in secure contexts.
@@ -6708,19 +7427,6 @@ interface ImportMeta {
6708
7427
  resolve(specifier: string): string;
6709
7428
  }
6710
7429
 
6711
- /**
6712
- * The parameter passed into an install event handler function, the **`InstallEvent`** interface represents an install action that is dispatched on the ServiceWorkerGlobalScope of a ServiceWorker. As a child of ExtendableEvent, it ensures that functional events such as FetchEvent are not dispatched during installation.
6713
- *
6714
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/InstallEvent)
6715
- */
6716
- interface InstallEvent extends ExtendableEvent {
6717
- }
6718
-
6719
- declare var InstallEvent: {
6720
- prototype: InstallEvent;
6721
- new(type: string, eventInitDict?: ExtendableEventInit): InstallEvent;
6722
- };
6723
-
6724
7430
  /**
6725
7431
  * The **`KHR_parallel_shader_compile`** extension is part of the WebGL API and enables a non-blocking poll operation, so that compile/link status availability (COMPLETION_STATUS_KHR) can be queried without potentially incurring stalls. In other words you can check the status of your shaders compiling without blocking the runtime.
6726
7432
  *
@@ -7018,6 +7724,15 @@ interface NavigatorConcurrentHardware {
7018
7724
  readonly hardwareConcurrency: number;
7019
7725
  }
7020
7726
 
7727
+ interface NavigatorGPU {
7728
+ /**
7729
+ * Available only in secure contexts.
7730
+ *
7731
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/gpu)
7732
+ */
7733
+ readonly gpu: GPU;
7734
+ }
7735
+
7021
7736
  interface NavigatorID {
7022
7737
  /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appCodeName) */
7023
7738
  readonly appCodeName: string;
@@ -8577,7 +9292,7 @@ interface ReadableStreamDefaultController<R = any> {
8577
9292
  *
8578
9293
  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/enqueue)
8579
9294
  */
8580
- enqueue(chunk?: R): void;
9295
+ enqueue(chunk: R): void;
8581
9296
  /**
8582
9297
  * The **`error()`** method of the ReadableStreamDefaultController interface causes any future interactions with the associated stream to error.
8583
9298
  *
@@ -13308,7 +14023,7 @@ declare var WorkerLocation: {
13308
14023
  *
13309
14024
  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerNavigator)
13310
14025
  */
13311
- interface WorkerNavigator extends NavigatorBadge, NavigatorConcurrentHardware, NavigatorID, NavigatorLanguage, NavigatorLocks, NavigatorOnLine, NavigatorStorage {
14026
+ interface WorkerNavigator extends NavigatorBadge, NavigatorConcurrentHardware, NavigatorGPU, NavigatorID, NavigatorLanguage, NavigatorLocks, NavigatorOnLine, NavigatorStorage {
13312
14027
  /**
13313
14028
  * The read-only **`mediaCapabilities`** property of the WorkerNavigator interface references a MediaCapabilities object that can expose information about the decoding and encoding capabilities for a given format and output capabilities (as defined by the Media Capabilities API).
13314
14029
  *
@@ -13667,7 +14382,7 @@ declare namespace WebAssembly {
13667
14382
  *
13668
14383
  * [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/Exception/getArg)
13669
14384
  */
13670
- getArg(index: number): any;
14385
+ getArg(exceptionTag: Tag, index: number): any;
13671
14386
  /**
13672
14387
  * The **`is()`** prototype method of the Exception object can be used to test if the Exception matches a given tag.
13673
14388
  *
@@ -14300,13 +15015,24 @@ type GLsizei = number;
14300
15015
  type GLsizeiptr = number;
14301
15016
  type GLuint = number;
14302
15017
  type GLuint64 = number;
15018
+ type GPUBindingResource = GPUSampler | GPUTexture | GPUTextureView | GPUBuffer | GPUBufferBinding | GPUExternalTexture;
14303
15019
  type GPUBufferDynamicOffset = number;
15020
+ type GPUBufferUsageFlags = number;
14304
15021
  type GPUColor = number[] | GPUColorDict;
15022
+ type GPUColorWriteFlags = number;
15023
+ type GPUCopyExternalImageSource = ImageBitmap | ImageData | VideoFrame | OffscreenCanvas;
15024
+ type GPUDepthBias = number;
15025
+ type GPUExtent3D = GPUIntegerCoordinate[] | GPUExtent3DDict;
14305
15026
  type GPUFlagsConstant = number;
14306
15027
  type GPUIndex32 = number;
14307
15028
  type GPUIntegerCoordinate = number;
14308
15029
  type GPUIntegerCoordinateOut = number;
14309
15030
  type GPUMapModeFlags = number;
15031
+ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict;
15032
+ type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict;
15033
+ type GPUPipelineConstantValue = number;
15034
+ type GPUSampleMask = number;
15035
+ type GPUShaderStageFlags = number;
14310
15036
  type GPUSignedOffset32 = number;
14311
15037
  type GPUSize32 = number;
14312
15038
  type GPUSize32Out = number;
@@ -14323,7 +15049,7 @@ type ImageDataArray = Uint8ClampedArray<ArrayBuffer>;
14323
15049
  type Int32List = Int32Array<ArrayBufferLike> | GLint[];
14324
15050
  type MessageEventSource = MessagePort | ServiceWorker;
14325
15051
  type NamedCurve = string;
14326
- type OffscreenRenderingContext = OffscreenCanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
15052
+ type OffscreenRenderingContext = OffscreenCanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext | GPUCanvasContext;
14327
15053
  type OnErrorEventHandler = OnErrorEventHandlerNonNull | null;
14328
15054
  type PerformanceEntryList = PerformanceEntry[];
14329
15055
  type PushMessageDataInit = BufferSource | string;
@@ -14371,16 +15097,40 @@ type FontDisplay = "auto" | "block" | "fallback" | "optional" | "swap";
14371
15097
  type FontFaceLoadStatus = "error" | "loaded" | "loading" | "unloaded";
14372
15098
  type FontFaceSetLoadStatus = "loaded" | "loading";
14373
15099
  type FrameType = "auxiliary" | "nested" | "none" | "top-level";
15100
+ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat";
15101
+ type GPUAutoLayoutMode = "auto";
15102
+ type GPUBlendFactor = "constant" | "dst" | "dst-alpha" | "one" | "one-minus-constant" | "one-minus-dst" | "one-minus-dst-alpha" | "one-minus-src" | "one-minus-src-alpha" | "src" | "src-alpha" | "src-alpha-saturated" | "zero";
15103
+ type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract";
15104
+ type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform";
14374
15105
  type GPUBufferMapState = "mapped" | "pending" | "unmapped";
15106
+ type GPUCanvasAlphaMode = "opaque" | "premultiplied";
15107
+ type GPUCanvasToneMappingMode = "extended" | "standard";
15108
+ type GPUCompareFunction = "always" | "equal" | "greater" | "greater-equal" | "less" | "less-equal" | "never" | "not-equal";
14375
15109
  type GPUCompilationMessageType = "error" | "info" | "warning";
15110
+ type GPUCullMode = "back" | "front" | "none";
14376
15111
  type GPUDeviceLostReason = "destroyed" | "unknown";
15112
+ type GPUErrorFilter = "internal" | "out-of-memory" | "validation";
15113
+ type GPUFeatureName = "bgra8unorm-storage" | "clip-distances" | "core-features-and-limits" | "depth-clip-control" | "depth32float-stencil8" | "dual-source-blending" | "float32-blendable" | "float32-filterable" | "indirect-first-instance" | "primitive-index" | "rg11b10ufloat-renderable" | "shader-f16" | "subgroups" | "texture-compression-astc" | "texture-compression-astc-sliced-3d" | "texture-compression-bc" | "texture-compression-bc-sliced-3d" | "texture-compression-etc2" | "texture-formats-tier1" | "timestamp-query";
15114
+ type GPUFilterMode = "linear" | "nearest";
15115
+ type GPUFrontFace = "ccw" | "cw";
14377
15116
  type GPUIndexFormat = "uint16" | "uint32";
15117
+ type GPULoadOp = "clear" | "load";
15118
+ type GPUMipmapFilterMode = "linear" | "nearest";
14378
15119
  type GPUPipelineErrorReason = "internal" | "validation";
15120
+ type GPUPowerPreference = "high-performance" | "low-power";
15121
+ type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip";
14379
15122
  type GPUQueryType = "occlusion" | "timestamp";
15123
+ type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering";
15124
+ type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero";
15125
+ type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only";
15126
+ type GPUStoreOp = "discard" | "store";
14380
15127
  type GPUTextureAspect = "all" | "depth-only" | "stencil-only";
14381
15128
  type GPUTextureDimension = "1d" | "2d" | "3d";
14382
15129
  type GPUTextureFormat = "astc-10x10-unorm" | "astc-10x10-unorm-srgb" | "astc-10x5-unorm" | "astc-10x5-unorm-srgb" | "astc-10x6-unorm" | "astc-10x6-unorm-srgb" | "astc-10x8-unorm" | "astc-10x8-unorm-srgb" | "astc-12x10-unorm" | "astc-12x10-unorm-srgb" | "astc-12x12-unorm" | "astc-12x12-unorm-srgb" | "astc-4x4-unorm" | "astc-4x4-unorm-srgb" | "astc-5x4-unorm" | "astc-5x4-unorm-srgb" | "astc-5x5-unorm" | "astc-5x5-unorm-srgb" | "astc-6x5-unorm" | "astc-6x5-unorm-srgb" | "astc-6x6-unorm" | "astc-6x6-unorm-srgb" | "astc-8x5-unorm" | "astc-8x5-unorm-srgb" | "astc-8x6-unorm" | "astc-8x6-unorm-srgb" | "astc-8x8-unorm" | "astc-8x8-unorm-srgb" | "bc1-rgba-unorm" | "bc1-rgba-unorm-srgb" | "bc2-rgba-unorm" | "bc2-rgba-unorm-srgb" | "bc3-rgba-unorm" | "bc3-rgba-unorm-srgb" | "bc4-r-snorm" | "bc4-r-unorm" | "bc5-rg-snorm" | "bc5-rg-unorm" | "bc6h-rgb-float" | "bc6h-rgb-ufloat" | "bc7-rgba-unorm" | "bc7-rgba-unorm-srgb" | "bgra8unorm" | "bgra8unorm-srgb" | "depth16unorm" | "depth24plus" | "depth24plus-stencil8" | "depth32float" | "depth32float-stencil8" | "eac-r11snorm" | "eac-r11unorm" | "eac-rg11snorm" | "eac-rg11unorm" | "etc2-rgb8a1unorm" | "etc2-rgb8a1unorm-srgb" | "etc2-rgb8unorm" | "etc2-rgb8unorm-srgb" | "etc2-rgba8unorm" | "etc2-rgba8unorm-srgb" | "r16float" | "r16sint" | "r16snorm" | "r16uint" | "r16unorm" | "r32float" | "r32sint" | "r32uint" | "r8sint" | "r8snorm" | "r8uint" | "r8unorm" | "rg11b10ufloat" | "rg16float" | "rg16sint" | "rg16snorm" | "rg16uint" | "rg16unorm" | "rg32float" | "rg32sint" | "rg32uint" | "rg8sint" | "rg8snorm" | "rg8uint" | "rg8unorm" | "rgb10a2uint" | "rgb10a2unorm" | "rgb9e5ufloat" | "rgba16float" | "rgba16sint" | "rgba16snorm" | "rgba16uint" | "rgba16unorm" | "rgba32float" | "rgba32sint" | "rgba32uint" | "rgba8sint" | "rgba8snorm" | "rgba8uint" | "rgba8unorm" | "rgba8unorm-srgb" | "stencil8";
15130
+ type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float";
14383
15131
  type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array";
15132
+ type GPUVertexFormat = "float16" | "float16x2" | "float16x4" | "float32" | "float32x2" | "float32x3" | "float32x4" | "sint16" | "sint16x2" | "sint16x4" | "sint32" | "sint32x2" | "sint32x3" | "sint32x4" | "sint8" | "sint8x2" | "sint8x4" | "snorm16" | "snorm16x2" | "snorm16x4" | "snorm8" | "snorm8x2" | "snorm8x4" | "uint16" | "uint16x2" | "uint16x4" | "uint32" | "uint32x2" | "uint32x3" | "uint32x4" | "uint8" | "uint8x2" | "uint8x4" | "unorm10-10-10-2" | "unorm16" | "unorm16x2" | "unorm16x4" | "unorm8" | "unorm8x2" | "unorm8x4" | "unorm8x4-bgra";
15133
+ type GPUVertexStepMode = "instance" | "vertex";
14384
15134
  type GlobalCompositeOperation = "color" | "color-burn" | "color-dodge" | "copy" | "darken" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "lighter" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor";
14385
15135
  type HardwareAcceleration = "no-preference" | "prefer-hardware" | "prefer-software";
14386
15136
  type HdrMetadataType = "smpteSt2086" | "smpteSt2094-10" | "smpteSt2094-40";
@@ -14527,6 +15277,48 @@ interface GPUBindingCommandsMixin {
14527
15277
  setBindGroup(index: GPUIndex32, bindGroup: GPUBindGroup | null, dynamicOffsets?: Iterable<GPUBufferDynamicOffset>): void;
14528
15278
  }
14529
15279
 
15280
+ interface GPUCommandEncoder {
15281
+ /**
15282
+ * The **`copyBufferToTexture()`** method of the GPUCommandEncoder interface encodes a command that copies data from a GPUBuffer to a GPUTexture.
15283
+ *
15284
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToTexture)
15285
+ */
15286
+ copyBufferToTexture(source: GPUTexelCopyBufferInfo, destination: GPUTexelCopyTextureInfo, copySize: Iterable<GPUIntegerCoordinate>): void;
15287
+ /**
15288
+ * The **`copyTextureToBuffer()`** method of the GPUCommandEncoder interface encodes a command that copies data from a GPUTexture to a GPUBuffer.
15289
+ *
15290
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyTextureToBuffer)
15291
+ */
15292
+ copyTextureToBuffer(source: GPUTexelCopyTextureInfo, destination: GPUTexelCopyBufferInfo, copySize: Iterable<GPUIntegerCoordinate>): void;
15293
+ /**
15294
+ * The **`copyTextureToTexture()`** method of the GPUCommandEncoder interface encodes a command that copies data from one GPUTexture to another.
15295
+ *
15296
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyTextureToTexture)
15297
+ */
15298
+ copyTextureToTexture(source: GPUTexelCopyTextureInfo, destination: GPUTexelCopyTextureInfo, copySize: Iterable<GPUIntegerCoordinate>): void;
15299
+ }
15300
+
15301
+ interface GPUQueue {
15302
+ /**
15303
+ * The **`copyExternalImageToTexture()`** method of the GPUQueue interface copies a snapshot taken from a source image, video, or canvas into a given GPUTexture.
15304
+ *
15305
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/copyExternalImageToTexture)
15306
+ */
15307
+ copyExternalImageToTexture(source: GPUCopyExternalImageSourceInfo, destination: GPUCopyExternalImageDestInfo, copySize: Iterable<GPUIntegerCoordinate>): void;
15308
+ /**
15309
+ * The **`submit()`** method of the GPUQueue interface schedules the execution of command buffers represented by one or more GPUCommandBuffer objects by the GPU.
15310
+ *
15311
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/submit)
15312
+ */
15313
+ submit(commandBuffers: Iterable<GPUCommandBuffer>): void;
15314
+ /**
15315
+ * The **`writeTexture()`** method of the GPUQueue interface writes a provided data source into a given GPUTexture.
15316
+ *
15317
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/writeTexture)
15318
+ */
15319
+ writeTexture(destination: GPUTexelCopyTextureInfo, data: AllowSharedBufferSource, dataLayout: GPUTexelCopyBufferLayout, size: Iterable<GPUIntegerCoordinate>): void;
15320
+ }
15321
+
14530
15322
  interface GPURenderPassEncoder {
14531
15323
  /**
14532
15324
  * The **`executeBundles()`** method of the GPURenderPassEncoder interface executes commands previously recorded into the referenced GPURenderBundles, as part of this render pass.