import { GpuShaderDefinition } from '../../gpu/porters'; import { transformAngle, transformPosition } from '../../utilities/transformations'; export interface ComponentProps { /** * The center point of the lens effect — the focus zone, lens warp, circle crop and swirl all pivot around it * * Accepts `{ x, y }` objects with values from 0 to 1, or CSS positions like `top center`. * @default {"x":0.5,"y":0.5} */ center: Parameters[0]; /** * Strength of the color split; how far the color layers are pushed apart (0 is off) * * @default 0.6 */ spread: number; /** * Shifts the colors toward one end of the spread; 0 spaces them evenly * * @default 1 */ bias: number; /** * Direction of the spread in degrees * * @default 0 */ angle: Parameters[0]; /** * Shapes the spread direction from a straight line (0) to a radial burst out from the centre (1) * * @default 0.1 */ perspective: number; /** * Number of sampled color layers along the spread; higher is smoother and costlier * * @default 35 */ count: number; /** * Overall amount of color dispersion; 1 gives each layer its own color from the spectrum, 0 keeps the original color * * @default 1 */ dispersion: number; /** * Balance of the dispersion between a soft circular zone at the centre and the rest; -1 keeps it in the centre only, 1 at the edges only * * @default 0 */ dispersionShift: number; /** * Rotates the dispersion colors around the hue wheel, 0 to 1 for a full turn * * @default 0.6 */ dispersionColor: number; /** * Reduces the spread in a circular zone at the centre; 0 keeps it full to the centre * * @default 0.8 */ focusCenter: number; /** * Reduces the spread toward the edges; 1 restores the original image there * * @default 1 */ focusEdges: number; /** * Rotates the color layers around the centre by an angle growing along the spread; 0 is off * * @default 0.35 */ swirl: number; /** * Scatters the spread direction with noise; 0 is off * * @default 0 */ noise: number; /** * Frequency of the direction noise; higher is finer (no effect with noise at 0) * * @default 0.25 */ noiseFrequency: number; /** * Offsets the noise pattern for a different seed (no effect with noise at 0) * * @default 0 */ noiseOffset: number; /** * Radial lens warp; positive bulges out like a fisheye, negative pinches in like a pincushion * * @default 0 */ lensBulge: number; /** * Squeezes pixels outside the inscribed circle inward so the outline becomes a circle * * @default 0 */ lensCircle: number; /** * Scatters the spread with grain noise, breaking up the edges of the color layers * * @default 0 */ grainMixer: number; /** * Post-processing black/white grain overlay * * @default 0 */ grainOverlay: number; } export declare const componentDefinition: GpuShaderDefinition; export default componentDefinition; //# sourceMappingURL=index.d.ts.map