From 72c77188da84d5714f1437640fd81d5dd49783f6 Mon Sep 17 00:00:00 2001 From: Kagami Sascha Rosylight Date: Sun, 15 Feb 2026 11:31:35 +0100 Subject: [PATCH] Add GPUDevice.createBindGroupLayout --- baselines/dom.generated.d.ts | 50 ++++++++++++++++++++ baselines/serviceworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/sharedworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.5/dom.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.5/serviceworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.5/sharedworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.5/webworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.6/dom.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.6/serviceworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.6/sharedworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.6/webworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.9/dom.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.9/serviceworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.9/sharedworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/ts5.9/webworker.generated.d.ts | 50 ++++++++++++++++++++ baselines/webworker.generated.d.ts | 50 ++++++++++++++++++++ inputfiles/overridingTypes.jsonc | 7 --- 17 files changed, 800 insertions(+), 7 deletions(-) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index dfaf26be5..bab28b612 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -815,6 +815,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -832,6 +846,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -915,6 +935,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; source: HTMLVideoElement | VideoFrame; @@ -1033,6 +1056,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -1057,6 +1084,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -1074,6 +1107,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -15494,6 +15533,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -44023,6 +44068,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -44140,6 +44186,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -44156,11 +44203,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/serviceworker.generated.d.ts b/baselines/serviceworker.generated.d.ts index 12465501d..b82af8476 100644 --- a/baselines/serviceworker.generated.d.ts +++ b/baselines/serviceworker.generated.d.ts @@ -282,6 +282,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -299,6 +313,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -382,6 +402,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; } @@ -499,6 +522,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -523,6 +550,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -540,6 +573,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -4936,6 +4975,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -13213,6 +13258,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -13272,6 +13318,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -13288,11 +13335,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/sharedworker.generated.d.ts b/baselines/sharedworker.generated.d.ts index 7b4f59c07..ce1126334 100644 --- a/baselines/sharedworker.generated.d.ts +++ b/baselines/sharedworker.generated.d.ts @@ -226,6 +226,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -243,6 +257,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -326,6 +346,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; } @@ -443,6 +466,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -467,6 +494,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -484,6 +517,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -4619,6 +4658,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -12889,6 +12934,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -12944,6 +12990,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -12960,11 +13007,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.5/dom.generated.d.ts b/baselines/ts5.5/dom.generated.d.ts index 1ce53a2c8..277cb3bc1 100644 --- a/baselines/ts5.5/dom.generated.d.ts +++ b/baselines/ts5.5/dom.generated.d.ts @@ -812,6 +812,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -829,6 +843,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -912,6 +932,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; source: HTMLVideoElement | VideoFrame; @@ -1030,6 +1053,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -1054,6 +1081,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -1071,6 +1104,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -15480,6 +15519,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -43997,6 +44042,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -44114,6 +44160,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -44130,11 +44177,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.5/serviceworker.generated.d.ts b/baselines/ts5.5/serviceworker.generated.d.ts index bc350b781..7d83f93c7 100644 --- a/baselines/ts5.5/serviceworker.generated.d.ts +++ b/baselines/ts5.5/serviceworker.generated.d.ts @@ -279,6 +279,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -296,6 +310,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -379,6 +399,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; } @@ -496,6 +519,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -520,6 +547,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -537,6 +570,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -4933,6 +4972,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -13210,6 +13255,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -13269,6 +13315,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -13285,11 +13332,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.5/sharedworker.generated.d.ts b/baselines/ts5.5/sharedworker.generated.d.ts index 9ee1cdd38..f684639d9 100644 --- a/baselines/ts5.5/sharedworker.generated.d.ts +++ b/baselines/ts5.5/sharedworker.generated.d.ts @@ -223,6 +223,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -240,6 +254,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -323,6 +343,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; } @@ -440,6 +463,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -464,6 +491,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -481,6 +514,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -4616,6 +4655,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -12886,6 +12931,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -12941,6 +12987,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -12957,11 +13004,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.5/webworker.generated.d.ts b/baselines/ts5.5/webworker.generated.d.ts index f7144dfe0..b4729b491 100644 --- a/baselines/ts5.5/webworker.generated.d.ts +++ b/baselines/ts5.5/webworker.generated.d.ts @@ -369,6 +369,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -386,6 +400,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -469,6 +489,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; source: VideoFrame; @@ -587,6 +610,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -611,6 +638,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -628,6 +661,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -5636,6 +5675,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -14888,6 +14933,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -14956,6 +15002,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -14972,11 +15019,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.6/dom.generated.d.ts b/baselines/ts5.6/dom.generated.d.ts index cf928b92c..6e1691d21 100644 --- a/baselines/ts5.6/dom.generated.d.ts +++ b/baselines/ts5.6/dom.generated.d.ts @@ -812,6 +812,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -829,6 +843,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -912,6 +932,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; source: HTMLVideoElement | VideoFrame; @@ -1030,6 +1053,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -1054,6 +1081,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -1071,6 +1104,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -15491,6 +15530,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -44020,6 +44065,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -44137,6 +44183,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -44153,11 +44200,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.6/serviceworker.generated.d.ts b/baselines/ts5.6/serviceworker.generated.d.ts index bc350b781..7d83f93c7 100644 --- a/baselines/ts5.6/serviceworker.generated.d.ts +++ b/baselines/ts5.6/serviceworker.generated.d.ts @@ -279,6 +279,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -296,6 +310,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -379,6 +399,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; } @@ -496,6 +519,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -520,6 +547,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -537,6 +570,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -4933,6 +4972,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -13210,6 +13255,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -13269,6 +13315,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -13285,11 +13332,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.6/sharedworker.generated.d.ts b/baselines/ts5.6/sharedworker.generated.d.ts index 9ee1cdd38..f684639d9 100644 --- a/baselines/ts5.6/sharedworker.generated.d.ts +++ b/baselines/ts5.6/sharedworker.generated.d.ts @@ -223,6 +223,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -240,6 +254,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -323,6 +343,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; } @@ -440,6 +463,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -464,6 +491,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -481,6 +514,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -4616,6 +4655,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -12886,6 +12931,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -12941,6 +12987,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -12957,11 +13004,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.6/webworker.generated.d.ts b/baselines/ts5.6/webworker.generated.d.ts index f7144dfe0..b4729b491 100644 --- a/baselines/ts5.6/webworker.generated.d.ts +++ b/baselines/ts5.6/webworker.generated.d.ts @@ -369,6 +369,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -386,6 +400,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -469,6 +489,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; source: VideoFrame; @@ -587,6 +610,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -611,6 +638,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -628,6 +661,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -5636,6 +5675,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -14888,6 +14933,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -14956,6 +15002,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -14972,11 +15019,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.9/dom.generated.d.ts b/baselines/ts5.9/dom.generated.d.ts index 6768d2863..088271bd4 100644 --- a/baselines/ts5.9/dom.generated.d.ts +++ b/baselines/ts5.9/dom.generated.d.ts @@ -812,6 +812,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -829,6 +843,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -912,6 +932,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; source: HTMLVideoElement | VideoFrame; @@ -1030,6 +1053,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -1054,6 +1081,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -1071,6 +1104,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -15491,6 +15530,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -44020,6 +44065,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -44137,6 +44183,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -44153,11 +44200,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.9/serviceworker.generated.d.ts b/baselines/ts5.9/serviceworker.generated.d.ts index aaf99f3ba..430fa6122 100644 --- a/baselines/ts5.9/serviceworker.generated.d.ts +++ b/baselines/ts5.9/serviceworker.generated.d.ts @@ -279,6 +279,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -296,6 +310,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -379,6 +399,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; } @@ -496,6 +519,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -520,6 +547,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -537,6 +570,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -4933,6 +4972,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -13210,6 +13255,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -13269,6 +13315,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -13285,11 +13332,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.9/sharedworker.generated.d.ts b/baselines/ts5.9/sharedworker.generated.d.ts index 07834cd08..de835f48e 100644 --- a/baselines/ts5.9/sharedworker.generated.d.ts +++ b/baselines/ts5.9/sharedworker.generated.d.ts @@ -223,6 +223,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -240,6 +254,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -323,6 +343,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; } @@ -440,6 +463,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -464,6 +491,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -481,6 +514,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -4616,6 +4655,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -12886,6 +12931,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -12941,6 +12987,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -12957,11 +13004,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/ts5.9/webworker.generated.d.ts b/baselines/ts5.9/webworker.generated.d.ts index 2e78daf81..5809aeba6 100644 --- a/baselines/ts5.9/webworker.generated.d.ts +++ b/baselines/ts5.9/webworker.generated.d.ts @@ -369,6 +369,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -386,6 +400,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -469,6 +489,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; source: VideoFrame; @@ -587,6 +610,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -611,6 +638,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -628,6 +661,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -5636,6 +5675,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -14888,6 +14933,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -14956,6 +15002,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -14972,11 +15019,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/baselines/webworker.generated.d.ts b/baselines/webworker.generated.d.ts index 0933ee960..bfac8fa28 100644 --- a/baselines/webworker.generated.d.ts +++ b/baselines/webworker.generated.d.ts @@ -372,6 +372,20 @@ interface GPUBindGroupEntry { resource: GPUBindingResource; } +interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase { + entries: GPUBindGroupLayoutEntry[]; +} + +interface GPUBindGroupLayoutEntry { + binding: GPUIndex32; + buffer?: GPUBufferBindingLayout; + externalTexture?: GPUExternalTextureBindingLayout; + sampler?: GPUSamplerBindingLayout; + storageTexture?: GPUStorageTextureBindingLayout; + texture?: GPUTextureBindingLayout; + visibility: GPUShaderStageFlags; +} + interface GPUBlendComponent { dstFactor?: GPUBlendFactor; operation?: GPUBlendOperation; @@ -389,6 +403,12 @@ interface GPUBufferBinding { size?: GPUSize64; } +interface GPUBufferBindingLayout { + hasDynamicOffset?: boolean; + minBindingSize?: GPUSize64; + type?: GPUBufferBindingType; +} + interface GPUBufferDescriptor extends GPUObjectDescriptorBase { mappedAtCreation?: boolean; size: GPUSize64; @@ -472,6 +492,9 @@ interface GPUExtent3DDict { width: GPUIntegerCoordinate; } +interface GPUExternalTextureBindingLayout { +} + interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase { colorSpace?: PredefinedColorSpace; source: VideoFrame; @@ -590,6 +613,10 @@ interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase { vertex: GPUVertexState; } +interface GPUSamplerBindingLayout { + type?: GPUSamplerBindingType; +} + interface GPUSamplerDescriptor extends GPUObjectDescriptorBase { addressModeU?: GPUAddressMode; addressModeV?: GPUAddressMode; @@ -614,6 +641,12 @@ interface GPUStencilFaceState { passOp?: GPUStencilOperation; } +interface GPUStorageTextureBindingLayout { + access?: GPUStorageTextureAccess; + format: GPUTextureFormat; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout { buffer: GPUBuffer; } @@ -631,6 +664,12 @@ interface GPUTexelCopyTextureInfo { texture: GPUTexture; } +interface GPUTextureBindingLayout { + multisampled?: boolean; + sampleType?: GPUTextureSampleType; + viewDimension?: GPUTextureViewDimension; +} + interface GPUTextureDescriptor extends GPUObjectDescriptorBase { dimension?: GPUTextureDimension; format: GPUTextureFormat; @@ -5639,6 +5678,12 @@ interface GPUDevice extends EventTarget, GPUObjectBase { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */ createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup; + /** + * 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. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) + */ + createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout; /** * The **`createBuffer()`** method of the GPUDevice interface creates a GPUBuffer in which to store raw data to use in GPU operations. * @@ -14891,6 +14936,7 @@ type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict; type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict; type GPUPipelineConstantValue = number; type GPUSampleMask = number; +type GPUShaderStageFlags = number; type GPUSignedOffset32 = number; type GPUSize32 = number; type GPUSize32Out = number; @@ -14959,6 +15005,7 @@ type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat"; type GPUAutoLayoutMode = "auto"; 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"; type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract"; +type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform"; type GPUBufferMapState = "mapped" | "pending" | "unmapped"; type GPUCanvasAlphaMode = "opaque" | "premultiplied"; type GPUCanvasToneMappingMode = "extended" | "standard"; @@ -14975,11 +15022,14 @@ type GPUMipmapFilterMode = "linear" | "nearest"; type GPUPipelineErrorReason = "internal" | "validation"; type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip"; type GPUQueryType = "occlusion" | "timestamp"; +type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering"; type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero"; +type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only"; type GPUStoreOp = "discard" | "store"; type GPUTextureAspect = "all" | "depth-only" | "stencil-only"; type GPUTextureDimension = "1d" | "2d" | "3d"; 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"; +type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float"; type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array"; 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"; type GPUVertexStepMode = "instance" | "vertex"; diff --git a/inputfiles/overridingTypes.jsonc b/inputfiles/overridingTypes.jsonc index 5a40ad4d3..ee54d917f 100644 --- a/inputfiles/overridingTypes.jsonc +++ b/inputfiles/overridingTypes.jsonc @@ -2877,13 +2877,6 @@ "GPUAdapter": { "exposed": "" }, - "GPUDevice": { - "methods": { - "method": { - "createBindGroupLayout": { "exposed": "" }, - } - } - }, "TrustedHTML": { "exposed": "" },