/// <reference types="@webgpu/types" />
export interface ComputeBindGroupCacheRequest {
    topologyKey: string;
    layout: GPUBindGroupLayout;
    entries: readonly GPUBindGroupEntry[];
    resourceRefs: readonly unknown[];
}
export interface ComputeBindGroupCache {
    getOrCreate: (request: ComputeBindGroupCacheRequest) => GPUBindGroup | null;
    reset: () => void;
}
/**
 * Pass-local cache for a pipeline-owned heterogeneous compute bind group layout.
 */
export declare function createComputeBindGroupCache(device: GPUDevice): ComputeBindGroupCache;
//# sourceMappingURL=compute-bindgroup-cache.d.ts.map