import { GpuShaderDefinition } from '../../gpu/porters'; import { transformPosition, transformColor } from '../../utilities/transformations'; import { BoundingBoxOrigin } from '../../types'; export interface ComponentProps { /** * Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre. * * @default "center" */ origin: BoundingBoxOrigin; /** * Center position of the glass shape * * 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]; /** * Scale of the glass shape (1 = default size) * * @default 1 */ scale: number; /** * Rotation of the glass shape in degrees * * Accepts a number between 0 and 360. * @default 0 */ rotation: number; /** * Lens refraction — how aggressively the edges warp content beneath (0 = none, 1 = max) * * @default 1 */ refraction: number; /** * Edge softness — higher values give a wider, softer fade at the glass boundary * * @default 0.1 */ edgeSoftness: number; /** * Frosted blur amount — 0 = clear glass, higher = frosted/diffuse * * Accepts a number between 0 and 20. * @default 0 */ blur: number; /** * Glass depth — how far inward from the edge the refraction extends * */ thickness: number; /** * Chromatic aberration — splits RGB channels along the refraction vector * * @default 0.5 */ aberration: number; /** * Cut out the alpha outside the glass shape * * Accepts a boolean value (`true` or `false`). * @default false */ cutout: boolean; /** * Directional edge highlight — bright rim on the light-facing boundary * * @default 0.05 */ highlight: number; /** * Inner zoom level — magnifies content seen through the glass * * @default 1 */ innerZoom: number; /** * Color of the directional edge highlight and specular glint * */ highlightColor: Parameters[0]; /** * Specular highlight softness * */ highlightSoftness: number; /** * Color tint applied to the internal directional gradient * * Accepts hex strings (`#ff0000`), RGB objects (`{ r, g, b }`), or CSS color names (`limegreen`). * @default "#ffffff" */ tintColor: Parameters[0]; /** * Intensity of the color tint applied to the glass interior * * @default 0 */ tintIntensity: number; /** * Preserve original brightness when tinting * * Accepts a boolean value (`true` or `false`). * @default true */ tintPreserveLuminosity: boolean; /** * Light angle in degrees * * @default 300 */ lightAngle: number; /** * Fresnel rim glow — a soft luminous halo around the glass boundary * */ fresnel: number; fresnelSoftness: number; fresnelColor: Parameters[0]; /** * Serialized shape configuration (JSON) * * @default "DEFAULT_SHAPE_CONFIG" */ shape: string | Record; /** * URL to a pre-generated SDF .bin file — when non-empty, activates SVG mode and triggers a shader recompile * * @default "" */ shapeSdfUrl: string; /** * Active SDF shape type — triggers recompile when shape is switched. When empty, derived from shape JSON at mount time. * * @default "" */ shapeType: string; } export declare const componentDefinition: GpuShaderDefinition; export default componentDefinition; //# sourceMappingURL=index.d.ts.map