aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
72 lines • 2.02 kB
TypeScript
import React from 'react';
import { type LiquidGlassMaterial, type MaterialVariant } from '../../tokens/glass';
export declare class LiquidGlassGPUDriver {
private gl;
private program;
private canvas;
private uniforms;
private attributes;
private isInitialized;
private animationFrameId;
private backdropTexture;
constructor();
/**
* Initialize WebGL context and shaders
*/
initialize(canvas: HTMLCanvasElement): Promise<boolean>;
/**
* Render liquid glass effect with given parameters
*/
render(params: {
ior: number;
thickness: number;
sheen: number;
tilt: {
x: number;
y: number;
};
enableRefraction: boolean;
enableReflection: boolean;
enableParallax: boolean;
time: number;
}): void;
/**
* Update backdrop texture from DOM element
*/
updateBackdrop(element: HTMLElement): Promise<void>;
/**
* Clean up WebGL resources
*/
dispose(): void;
/**
* Check if GPU acceleration is available
*/
static isSupported(): boolean;
private createShaderProgram;
private compileShader;
private setupUniformsAndAttributes;
private setupGeometry;
private updateUniforms;
private captureElementAsImageData;
}
/**
* React component wrapper for GPU-accelerated Liquid Glass
*/
export interface LiquidGlassGPUProps {
material?: LiquidGlassMaterial;
variant?: MaterialVariant;
ior?: number;
thickness?: number;
sheen?: number;
enableRefraction?: boolean;
enableReflection?: boolean;
enableParallax?: boolean;
adaptToMotion?: boolean;
className?: string;
children?: React.ReactNode;
onFallback?: () => void;
}
export declare const LiquidGlassGPURenderer: React.FC<LiquidGlassGPUProps>;
export declare const LiquidGlassGPU: React.FC<LiquidGlassGPUProps>;
export default LiquidGlassGPURenderer;
//# sourceMappingURL=LiquidGlassGPU.d.ts.map