export declare const HOLOGRAM_IMAGE_EFFECT_VARIANTS: readonly ["default", "pet", "human"]; export type HologramImageEffectVariant = (typeof HOLOGRAM_IMAGE_EFFECT_VARIANTS)[number]; export type HologramImageEffectRendererOptions = { alphaThreshold: number; ambientLightColor: string; autoRotate: boolean; backgroundColor: string; cameraDistance: number; crossOrigin: '' | 'anonymous' | 'use-credentials' | null; depth: number; directionalLightColor: string; fps: number; glitchStrength: number; hologramColor: string; imageHeight: number; maxDevicePixelRatio: number; maxPointCount: number; pointSize: number; rotationAmplitude: number; rotationSpeed: number; sampleStep: number; scanLineCount: number; scanSpeed: number; showStage: boolean; src: string; stageColor: string; variant: HologramImageEffectVariant; verticalOffset: number; }; export type HologramImageEffectRendererOptionInput = { alphaThreshold?: number; ambientLightColor?: string; autoRotate?: boolean; backgroundColor?: string; cameraDistance?: number; crossOrigin?: '' | 'anonymous' | 'use-credentials' | null; depth?: number; directionalLightColor?: string; fps?: number; glitchStrength?: number; hologramColor?: string; imageHeight?: number; maxDevicePixelRatio?: number; maxPointCount?: number; pointSize?: number; rotationAmplitude?: number; rotationSpeed?: number; sampleStep?: number; scanLineCount?: number; scanSpeed?: number; showStage?: boolean; src?: string; stageColor?: string; variant?: HologramImageEffectVariant; verticalOffset?: number; }; type HologramImageEffectRendererCallbacks = { onError?: (error: Error) => void; onLoad?: () => void; }; export declare const normalizeHologramImageEffectRendererOptions: ({ alphaThreshold, ambientLightColor, autoRotate, backgroundColor, cameraDistance, crossOrigin, depth, directionalLightColor, fps, glitchStrength, hologramColor, imageHeight, maxDevicePixelRatio, maxPointCount, pointSize, rotationAmplitude, rotationSpeed, sampleStep, scanLineCount, scanSpeed, showStage, src, stageColor, variant, verticalOffset, }: HologramImageEffectRendererOptionInput) => HologramImageEffectRendererOptions; export declare class HologramImageEffectRenderer { private ambientLight; private callbacks; private camera; private canvas; private clock; private directionalLight; private disposed; private elapsedSeconds; private frameDuration; private imageBuildKey; private lastFrameTime; private loadId; private loadedImage; private material; private options; private playing; private pointLight; private points; private rafId; private renderer; private scene; private stage; private stageGeometry; private stageMaterial; private viewportAspect; static create(canvas: HTMLCanvasElement, options: HologramImageEffectRendererOptions, callbacks?: HologramImageEffectRendererCallbacks): HologramImageEffectRenderer | null; private constructor(); destroy(): void; drawStatic(): void; pause(): void; play(): void; resize(): void; updateOptions(options: HologramImageEffectRendererOptions): void; private buildPointsFromImage; private clearPoints; private draw; private getImageBuildKey; private loadImage; private tick; private updateCamera; private updateMaterialUniforms; private updatePointsRotation; } export {};