The reason why we don't use type "GPUBuffer" defined in webgpu.d.ts from @webgpu/types is because "@webgpu/types"
requires "@types/dom-webcodecs" as peer dependency when using TypeScript < v5.1 and its version need to be chosen
carefully according to the TypeScript version being used. This means so far there is not a way to keep every
TypeScript version happy. It turns out that we will easily broke users on some TypeScript version.
type alias for WebGPU buffer
The reason why we don't use type "GPUBuffer" defined in webgpu.d.ts from @webgpu/types is because "@webgpu/types" requires "@types/dom-webcodecs" as peer dependency when using TypeScript < v5.1 and its version need to be chosen carefully according to the TypeScript version being used. This means so far there is not a way to keep every TypeScript version happy. It turns out that we will easily broke users on some TypeScript version.
for more info see https://github.com/gpuweb/types/issues/127