import type { ShaderModule, UniformTypes } from '@luma.gl/shadertools'; import type { DataFilterExtensionOptions, DataFilterExtensionProps } from "./data-filter-extension.js"; export type Defines = { /** * Primitive type of parameter used for category filtering. If undefined, category filtering disabled. */ DATACATEGORY_TYPE?: 'uint' | 'uvec2' | 'uvec3' | 'uvec4'; /** * Number of category filtering channels. Must match dimension of `DATACATEGORY_TYPE` */ DATACATEGORY_CHANNELS?: 1 | 2 | 3 | 4; /** * Primitive type of parameter used for numeric filtering. If undefined, numeric filtering disabled. */ DATAFILTER_TYPE?: 'float' | 'vec2' | 'vec3' | 'vec4'; /** * Enable 64-bit precision in numeric filter. */ DATAFILTER_DOUBLE?: boolean; }; export type CategoryBitMask = Uint32Array; export type DataFilterModuleProps = { extensions: any[]; categoryBitMask?: CategoryBitMask; } & DataFilterExtensionProps; type DataFilterUniforms = { useSoftMargin: boolean; enabled: boolean; transformSize: boolean; transformColor: boolean; min: [number, number, number, number]; softMin: [number, number, number, number]; softMax: [number, number, number, number]; max: [number, number, number, number]; min64High: [number, number, number, number]; max64High: [number, number, number, number]; categoryBitMask: [number, number, number, number]; }; type DataFilterUniformTypeMap = Required>; type UniformTypesFunc = (opts: DataFilterExtensionOptions) => DataFilterUniformTypeMap; export declare const dataFilter: ShaderModule & { uniformTypesFromOptions: UniformTypesFunc; }; export declare const dataFilter64: ShaderModule & { uniformTypesFromOptions: UniformTypesFunc; }; export {}; //# sourceMappingURL=shader-module.d.ts.map