| /* |
| * Copyright 2025 The Emscripten Authors. All rights reserved. |
| * Emscripten is available under two separate licenses, the MIT license and the |
| * University of Illinois/NCSA Open Source License. Both these licenses can be |
| * found in the LICENSE file. |
| * |
| * WebGPU globals |
| * Generated using https://github.com/kainino0x/webidl-to-closure-externs |
| * against the spec's WebIDL: https://gpuweb.github.io/gpuweb/webgpu.idl |
| */ |
| |
| /** @type {?GPU} */ |
| Navigator.prototype.gpu; |
| |
| /** @type {?GPU} */ |
| WorkerNavigator.prototype.gpu; |
| |
| const GPUBufferUsage = {}; |
| /** @type {number} */ |
| GPUBufferUsage.MAP_READ; |
| /** @type {number} */ |
| GPUBufferUsage.MAP_WRITE; |
| /** @type {number} */ |
| GPUBufferUsage.COPY_SRC; |
| /** @type {number} */ |
| GPUBufferUsage.COPY_DST; |
| /** @type {number} */ |
| GPUBufferUsage.INDEX; |
| /** @type {number} */ |
| GPUBufferUsage.VERTEX; |
| /** @type {number} */ |
| GPUBufferUsage.UNIFORM; |
| /** @type {number} */ |
| GPUBufferUsage.STORAGE; |
| /** @type {number} */ |
| GPUBufferUsage.INDIRECT; |
| /** @type {number} */ |
| GPUBufferUsage.QUERY_RESOLVE; |
| |
| const GPUMapMode = {}; |
| /** @type {number} */ |
| GPUMapMode.READ; |
| /** @type {number} */ |
| GPUMapMode.WRITE; |
| |
| const GPUTextureUsage = {}; |
| /** @type {number} */ |
| GPUTextureUsage.COPY_SRC; |
| /** @type {number} */ |
| GPUTextureUsage.COPY_DST; |
| /** @type {number} */ |
| GPUTextureUsage.TEXTURE_BINDING; |
| /** @type {number} */ |
| GPUTextureUsage.STORAGE_BINDING; |
| /** @type {number} */ |
| GPUTextureUsage.RENDER_ATTACHMENT; |
| |
| const GPUShaderStage = {}; |
| /** @type {number} */ |
| GPUShaderStage.VERTEX; |
| /** @type {number} */ |
| GPUShaderStage.FRAGMENT; |
| /** @type {number} */ |
| GPUShaderStage.COMPUTE; |
| |
| const GPUColorWrite = {}; |
| /** @type {number} */ |
| GPUColorWrite.RED; |
| /** @type {number} */ |
| GPUColorWrite.GREEN; |
| /** @type {number} */ |
| GPUColorWrite.BLUE; |
| /** @type {number} */ |
| GPUColorWrite.ALPHA; |
| /** @type {number} */ |
| GPUColorWrite.ALL; |
| |
| /** @constructor */ |
| function GPUSupportedLimits() {} |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxTextureDimension1D; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxTextureDimension2D; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxTextureDimension3D; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxTextureArrayLayers; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxBindGroups; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxBindGroupsPlusVertexBuffers; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxBindingsPerBindGroup; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxDynamicUniformBuffersPerPipelineLayout; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxDynamicStorageBuffersPerPipelineLayout; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxSampledTexturesPerShaderStage; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxSamplersPerShaderStage; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxStorageBuffersPerShaderStage; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxStorageTexturesPerShaderStage; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxUniformBuffersPerShaderStage; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxUniformBufferBindingSize; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxStorageBufferBindingSize; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.minUniformBufferOffsetAlignment; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.minStorageBufferOffsetAlignment; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxVertexBuffers; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxBufferSize; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxVertexAttributes; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxVertexBufferArrayStride; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxInterStageShaderComponents; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxInterStageShaderVariables; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxColorAttachments; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxColorAttachmentBytesPerSample; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxComputeWorkgroupStorageSize; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxComputeInvocationsPerWorkgroup; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxComputeWorkgroupSizeX; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxComputeWorkgroupSizeY; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxComputeWorkgroupSizeZ; |
| /** @type {number} */ |
| GPUSupportedLimits.prototype.maxComputeWorkgroupsPerDimension; |
| |
| /** @constructor */ |
| function GPUSupportedFeatures() {} |
| /** @type {number} */ |
| GPUSupportedFeatures.prototype.size; |
| /** @return {!Iterable<string>} */ |
| GPUSupportedFeatures.prototype.entries = function() {}; |
| /** @return {!Iterable<string>} */ |
| GPUSupportedFeatures.prototype.keys = function() {}; |
| /** @return {!Iterable<string>} */ |
| GPUSupportedFeatures.prototype.values = function() {}; |
| /** @return {undefined} */ |
| GPUSupportedFeatures.prototype.forEach = function() {}; |
| /** @return {boolean} */ |
| GPUSupportedFeatures.prototype.has = function() {}; |
| |
| /** @constructor */ |
| function WGSLLanguageFeatures() {} |
| /** @type {number} */ |
| WGSLLanguageFeatures.prototype.size; |
| /** @return {!Iterable<string>} */ |
| WGSLLanguageFeatures.prototype.entries = function() {}; |
| /** @return {!Iterable<string>} */ |
| WGSLLanguageFeatures.prototype.keys = function() {}; |
| /** @return {!Iterable<string>} */ |
| WGSLLanguageFeatures.prototype.values = function() {}; |
| /** @return {undefined} */ |
| WGSLLanguageFeatures.prototype.forEach = function() {}; |
| /** @return {boolean} */ |
| WGSLLanguageFeatures.prototype.has = function() {}; |
| |
| /** @constructor */ |
| function GPUAdapterInfo() {} |
| /** @type {string} */ |
| GPUAdapterInfo.prototype.vendor; |
| /** @type {string} */ |
| GPUAdapterInfo.prototype.architecture; |
| /** @type {string} */ |
| GPUAdapterInfo.prototype.device; |
| /** @type {string} */ |
| GPUAdapterInfo.prototype.description; |
| /** @type {number} */ |
| GPUAdapterInfo.prototype.subgroupMinSize; |
| /** @type {number} */ |
| GPUAdapterInfo.prototype.subgroupMaxSize; |
| |
| /** @constructor */ |
| function GPU() {} |
| /** @return {!Promise<?GPUAdapter>} */ |
| GPU.prototype.requestAdapter = function() {}; |
| /** @return {string} */ |
| GPU.prototype.getPreferredCanvasFormat = function() {}; |
| /** @type {!WGSLLanguageFeatures} */ |
| GPU.prototype.wgslLanguageFeatures; |
| |
| /** @constructor */ |
| function GPUAdapter() {} |
| /** @type {!GPUSupportedFeatures} */ |
| GPUAdapter.prototype.features; |
| /** @type {!GPUSupportedLimits} */ |
| GPUAdapter.prototype.limits; |
| /** @type {boolean} */ |
| GPUAdapter.prototype.isFallbackAdapter; |
| /** @return {!Promise<!GPUDevice>} */ |
| GPUAdapter.prototype.requestDevice = function() {}; |
| /** @return {!Promise<!GPUAdapterInfo>} */ |
| GPUAdapter.prototype.requestAdapterInfo = function() {}; |
| /** @type {!GPUAdapterInfo} */ |
| GPUAdapter.prototype.info; |
| |
| /** @constructor */ |
| function GPUDevice() {} |
| /** @type {string} */ |
| GPUDevice.prototype.label; |
| /** @type {!GPUSupportedFeatures} */ |
| GPUDevice.prototype.features; |
| /** @type {!GPUSupportedLimits} */ |
| GPUDevice.prototype.limits; |
| /** @type {!GPUQueue} */ |
| GPUDevice.prototype.queue; |
| /** @return {undefined} */ |
| GPUDevice.prototype.destroy = function() {}; |
| /** @return {!GPUBuffer} */ |
| GPUDevice.prototype.createBuffer = function() {}; |
| /** @return {!GPUTexture} */ |
| GPUDevice.prototype.createTexture = function() {}; |
| /** @return {!GPUSampler} */ |
| GPUDevice.prototype.createSampler = function() {}; |
| /** @return {!GPUExternalTexture} */ |
| GPUDevice.prototype.importExternalTexture = function() {}; |
| /** @return {!GPUBindGroupLayout} */ |
| GPUDevice.prototype.createBindGroupLayout = function() {}; |
| /** @return {!GPUPipelineLayout} */ |
| GPUDevice.prototype.createPipelineLayout = function() {}; |
| /** @return {!GPUBindGroup} */ |
| GPUDevice.prototype.createBindGroup = function() {}; |
| /** @return {!GPUShaderModule} */ |
| GPUDevice.prototype.createShaderModule = function() {}; |
| /** @return {!GPUComputePipeline} */ |
| GPUDevice.prototype.createComputePipeline = function() {}; |
| /** @return {!GPURenderPipeline} */ |
| GPUDevice.prototype.createRenderPipeline = function() {}; |
| /** @return {!Promise<!GPUComputePipeline>} */ |
| GPUDevice.prototype.createComputePipelineAsync = function() {}; |
| /** @return {!Promise<!GPURenderPipeline>} */ |
| GPUDevice.prototype.createRenderPipelineAsync = function() {}; |
| /** @return {!GPUCommandEncoder} */ |
| GPUDevice.prototype.createCommandEncoder = function() {}; |
| /** @return {!GPURenderBundleEncoder} */ |
| GPUDevice.prototype.createRenderBundleEncoder = function() {}; |
| /** @return {!GPUQuerySet} */ |
| GPUDevice.prototype.createQuerySet = function() {}; |
| /** @type {!Promise<!GPUDeviceLostInfo>} */ |
| GPUDevice.prototype.lost; |
| /** @return {undefined} */ |
| GPUDevice.prototype.pushErrorScope = function() {}; |
| /** @return {!Promise<?GPUError>} */ |
| GPUDevice.prototype.popErrorScope = function() {}; |
| /** @type {!Function} */ |
| GPUDevice.prototype.onuncapturederror; |
| /** @type {!GPUAdapterInfo} */ |
| GPUDevice.prototype.adapterInfo; |
| |
| /** @constructor */ |
| function GPUBuffer() {} |
| /** @type {string} */ |
| GPUBuffer.prototype.label; |
| /** @type {number} */ |
| GPUBuffer.prototype.size; |
| /** @type {number} */ |
| GPUBuffer.prototype.usage; |
| /** @type {string} */ |
| GPUBuffer.prototype.mapState; |
| /** @return {!Promise<undefined>} */ |
| GPUBuffer.prototype.mapAsync = function() {}; |
| /** @return {!ArrayBuffer} */ |
| GPUBuffer.prototype.getMappedRange = function() {}; |
| /** @return {undefined} */ |
| GPUBuffer.prototype.unmap = function() {}; |
| /** @return {undefined} */ |
| GPUBuffer.prototype.destroy = function() {}; |
| |
| /** @constructor */ |
| function GPUTexture() {} |
| /** @type {string} */ |
| GPUTexture.prototype.label; |
| /** @return {!GPUTextureView} */ |
| GPUTexture.prototype.createView = function() {}; |
| /** @return {undefined} */ |
| GPUTexture.prototype.destroy = function() {}; |
| /** @type {number} */ |
| GPUTexture.prototype.width; |
| /** @type {number} */ |
| GPUTexture.prototype.height; |
| /** @type {number} */ |
| GPUTexture.prototype.depthOrArrayLayers; |
| /** @type {number} */ |
| GPUTexture.prototype.mipLevelCount; |
| /** @type {number} */ |
| GPUTexture.prototype.sampleCount; |
| /** @type {string} */ |
| GPUTexture.prototype.dimension; |
| /** @type {string} */ |
| GPUTexture.prototype.format; |
| /** @type {number} */ |
| GPUTexture.prototype.usage; |
| |
| /** @constructor */ |
| function GPUTextureView() {} |
| /** @type {string} */ |
| GPUTextureView.prototype.label; |
| |
| /** @constructor */ |
| function GPUExternalTexture() {} |
| /** @type {string} */ |
| GPUExternalTexture.prototype.label; |
| |
| /** @constructor */ |
| function GPUSampler() {} |
| /** @type {string} */ |
| GPUSampler.prototype.label; |
| |
| /** @constructor */ |
| function GPUBindGroupLayout() {} |
| /** @type {string} */ |
| GPUBindGroupLayout.prototype.label; |
| |
| /** @constructor */ |
| function GPUBindGroup() {} |
| /** @type {string} */ |
| GPUBindGroup.prototype.label; |
| |
| /** @constructor */ |
| function GPUPipelineLayout() {} |
| /** @type {string} */ |
| GPUPipelineLayout.prototype.label; |
| |
| /** @constructor */ |
| function GPUShaderModule() {} |
| /** @type {string} */ |
| GPUShaderModule.prototype.label; |
| /** @return {!Promise<!GPUCompilationInfo>} */ |
| GPUShaderModule.prototype.getCompilationInfo = function() {}; |
| |
| /** @constructor */ |
| function GPUCompilationMessage() {} |
| /** @type {string} */ |
| GPUCompilationMessage.prototype.message; |
| /** @type {string} */ |
| GPUCompilationMessage.prototype.type; |
| /** @type {number} */ |
| GPUCompilationMessage.prototype.lineNum; |
| /** @type {number} */ |
| GPUCompilationMessage.prototype.linePos; |
| /** @type {number} */ |
| GPUCompilationMessage.prototype.offset; |
| /** @type {number} */ |
| GPUCompilationMessage.prototype.length; |
| |
| /** @constructor */ |
| function GPUCompilationInfo() {} |
| /** @type {!Array<!GPUCompilationMessage>} */ |
| GPUCompilationInfo.prototype.messages; |
| |
| /** @constructor */ |
| function GPUPipelineError() {} |
| /** @type {string} */ |
| GPUPipelineError.prototype.reason; |
| |
| /** @constructor */ |
| function GPUComputePipeline() {} |
| /** @type {string} */ |
| GPUComputePipeline.prototype.label; |
| /** @return {!GPUBindGroupLayout} */ |
| GPUComputePipeline.prototype.getBindGroupLayout = function() {}; |
| |
| /** @constructor */ |
| function GPURenderPipeline() {} |
| /** @type {string} */ |
| GPURenderPipeline.prototype.label; |
| /** @return {!GPUBindGroupLayout} */ |
| GPURenderPipeline.prototype.getBindGroupLayout = function() {}; |
| |
| /** @constructor */ |
| function GPUCommandBuffer() {} |
| /** @type {string} */ |
| GPUCommandBuffer.prototype.label; |
| |
| /** @constructor */ |
| function GPUCommandEncoder() {} |
| /** @type {string} */ |
| GPUCommandEncoder.prototype.label; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.pushDebugGroup = function() {}; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.popDebugGroup = function() {}; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.insertDebugMarker = function() {}; |
| /** @return {!GPURenderPassEncoder} */ |
| GPUCommandEncoder.prototype.beginRenderPass = function() {}; |
| /** @return {!GPUComputePassEncoder} */ |
| GPUCommandEncoder.prototype.beginComputePass = function() {}; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.copyBufferToBuffer = function() {}; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.copyBufferToTexture = function() {}; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.copyTextureToBuffer = function() {}; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.copyTextureToTexture = function() {}; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.clearBuffer = function() {}; |
| /** @return {undefined} */ |
| GPUCommandEncoder.prototype.resolveQuerySet = function() {}; |
| /** @return {!GPUCommandBuffer} */ |
| GPUCommandEncoder.prototype.finish = function() {}; |
| |
| /** @constructor */ |
| function GPUComputePassEncoder() {} |
| /** @type {string} */ |
| GPUComputePassEncoder.prototype.label; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.pushDebugGroup = function() {}; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.popDebugGroup = function() {}; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.insertDebugMarker = function() {}; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.setBindGroup = function() {}; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.setBindGroup = function() {}; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.setPipeline = function() {}; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.dispatchWorkgroups = function() {}; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.dispatchWorkgroupsIndirect = function() {}; |
| /** @return {undefined} */ |
| GPUComputePassEncoder.prototype.end = function() {}; |
| |
| /** @constructor */ |
| function GPURenderPassEncoder() {} |
| /** @type {string} */ |
| GPURenderPassEncoder.prototype.label; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.pushDebugGroup = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.popDebugGroup = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.insertDebugMarker = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setBindGroup = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setBindGroup = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setPipeline = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setIndexBuffer = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setVertexBuffer = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.draw = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.drawIndexed = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.drawIndirect = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.drawIndexedIndirect = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setViewport = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setScissorRect = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setBlendConstant = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.setStencilReference = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.beginOcclusionQuery = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.endOcclusionQuery = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.executeBundles = function() {}; |
| /** @return {undefined} */ |
| GPURenderPassEncoder.prototype.end = function() {}; |
| |
| /** @constructor */ |
| function GPURenderBundle() {} |
| /** @type {string} */ |
| GPURenderBundle.prototype.label; |
| |
| /** @constructor */ |
| function GPURenderBundleEncoder() {} |
| /** @type {string} */ |
| GPURenderBundleEncoder.prototype.label; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.pushDebugGroup = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.popDebugGroup = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.insertDebugMarker = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.setBindGroup = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.setBindGroup = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.setPipeline = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.setIndexBuffer = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.setVertexBuffer = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.draw = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.drawIndexed = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.drawIndirect = function() {}; |
| /** @return {undefined} */ |
| GPURenderBundleEncoder.prototype.drawIndexedIndirect = function() {}; |
| /** @return {!GPURenderBundle} */ |
| GPURenderBundleEncoder.prototype.finish = function() {}; |
| |
| /** @constructor */ |
| function GPUQueue() {} |
| /** @type {string} */ |
| GPUQueue.prototype.label; |
| /** @return {undefined} */ |
| GPUQueue.prototype.submit = function() {}; |
| /** @return {!Promise<undefined>} */ |
| GPUQueue.prototype.onSubmittedWorkDone = function() {}; |
| /** @return {undefined} */ |
| GPUQueue.prototype.writeBuffer = function() {}; |
| /** @return {undefined} */ |
| GPUQueue.prototype.writeTexture = function() {}; |
| /** @return {undefined} */ |
| GPUQueue.prototype.copyExternalImageToTexture = function() {}; |
| |
| /** @constructor */ |
| function GPUQuerySet() {} |
| /** @type {string} */ |
| GPUQuerySet.prototype.label; |
| /** @return {undefined} */ |
| GPUQuerySet.prototype.destroy = function() {}; |
| /** @type {string} */ |
| GPUQuerySet.prototype.type; |
| /** @type {number} */ |
| GPUQuerySet.prototype.count; |
| |
| /** @constructor */ |
| function GPUCanvasContext() {} |
| /** @type {!HTMLCanvasElement|!OffscreenCanvas} */ |
| GPUCanvasContext.prototype.canvas; |
| /** @return {undefined} */ |
| GPUCanvasContext.prototype.configure = function() {}; |
| /** @return {undefined} */ |
| GPUCanvasContext.prototype.unconfigure = function() {}; |
| /** @return {!GPUTexture} */ |
| GPUCanvasContext.prototype.getCurrentTexture = function() {}; |
| |
| /** @constructor */ |
| function GPUDeviceLostInfo() {} |
| /** @type {string} */ |
| GPUDeviceLostInfo.prototype.reason; |
| /** @type {string} */ |
| GPUDeviceLostInfo.prototype.message; |
| |
| /** @constructor */ |
| function GPUError() {} |
| /** @type {string} */ |
| GPUError.prototype.message; |
| |
| /** @constructor */ |
| function GPUValidationError() {} |
| |
| /** @constructor */ |
| function GPUOutOfMemoryError() {} |
| |
| /** @constructor */ |
| function GPUInternalError() {} |
| |
| /** @constructor */ |
| function GPUUncapturedErrorEvent() {} |
| /** @type {!GPUError} */ |
| GPUUncapturedErrorEvent.prototype.error; |