import { GpuShaderDefinition } from '../../gpu/porters'; import { d } from '../../gpu/kit'; import { transformColor } from '../../utilities/transformations'; export interface ComponentProps { /** * Primary fog color * * Accepts hex strings (`#ff0000`), RGB objects (`{ r, g, b }`), or CSS color names (`limegreen`). * @default "#e0e0e0" */ colorA: Parameters[0]; /** * Secondary fog color — creates variation across the field * * Accepts hex strings (`#ff0000`), RGB objects (`{ r, g, b }`), or CSS color names (`limegreen`). * @default "#888888" */ colorB: Parameters[0]; /** * Deterministic starting pattern — different seeds produce different fog configurations * * Accepts a number between 0 and 999. * @default 0 */ seed: number; /** * Simulation speed multiplier * * Accepts a number between 0.1 and 3. * @default 1 */ speed: number; /** * Ambient motion strength * * Accepts a number between 0 and 3. * @default 1 */ turbulence: number; /** * Fine-scale swirling structure — higher values produce more intricate wisps and vortices * * Accepts a number between 0 and 50. * @default 15 */ detail: number; /** * How much the two colors blend together — 0 behaves like oil & water (colors stay distinct with sharp boundaries), 1 behaves like food coloring (colors fully mix) * * Accepts a number between 0 and 1. * @default 0.3 */ blending: number; /** * Strength of cursor influence — move the cursor to push fog * * Accepts a number between 0 and 2. * @default 0.1 */ mouseInfluence: number; /** * Radius of cursor influence area * * Accepts a number between 0.02 and 0.5. * @default 0.1 */ mouseRadius: number; /** * Color space for color interpolation * * Accepts one of the predefined option values. * @default "linear" */ colorSpace: string; } export declare const initKernel: import('typegpu').TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>; export declare const forceKernel: import('typegpu').TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>; export declare const curlKernel: (cx: number, cy: number) => void, vorticityKernel: (cx: number, cy: number) => void, divergenceKernel: (cx: number, cy: number) => void, jacobiKernel: (cx: number, cy: number) => void, gradSubtractKernel: (cx: number, cy: number) => void, advectVelKernel: (cx: number, cy: number) => void, copyVelKernel: (cx: number, cy: number) => void, advectDensKernel: ((cx: number, cy: number) => void) | undefined, copyDensKernel: ((cx: number, cy: number) => void) | undefined; export declare const colorRestoreKernel: import('typegpu').TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>; export declare const outputKernel: import('typegpu').TgpuFn<(cx: d.U32, cy: d.U32) => d.Void>; export declare const componentDefinition: GpuShaderDefinition; export default componentDefinition; //# sourceMappingURL=index.d.ts.map