import type { DataBinding } from '@use-gpu/core'; import type { PassApplyBindGroup, PassBindGroup, PassEnv, PassFlags, PassResources } from './types.d.cts'; import { ViewUniforms } from '@use-gpu/core'; export declare const useMinimalBindGroups: (resources: PassResources) => Record; export declare const useStandardBindGroups: (resources: PassResources, flags: PassFlags) => Record; export declare const useStandardBindGroup: (resources: PassResources, flags?: PassFlags) => PassBindGroup; type ApplyPass = { bindPass?: PassApplyBindGroup; dataBindings: (DataBinding | null)[]; }; export declare const useApplyPassBindGroup: (env: PassEnv, passBindGroup: Partial, label?: string) => ApplyPass; export declare const useNoApplyPassBindGroup: () => void; export declare const useDynamicViewBinding: (passBindGroup: PassBindGroup, maybeUniforms?: ViewUniforms) => { bindGroup: { bind: (env: PassEnv) => (import("@use-gpu/core").StorageSource | import("@use-gpu/shader").ParsedBundle | import("@use-gpu/shader").ParsedModule | import("@use-gpu/shader").StorageSource | import("@use-gpu/shader").LambdaSource> | import("@use-gpu/shader").SamplerSource | null | undefined)[]; key: string | number; layout: GPUBindGroupLayout; attributes: (import("@use-gpu/core").UniformAttribute | null)[]; }; cull: (center: import("gl-matrix").vec3 | number[], radius: number) => number | false; uniforms: ViewUniforms; upload: (values: Record | Record[]) => void; }; export {};