import { default as React } from 'react'; import { BlendMode, PropDriver, TransformConfig, BoundingBoxConfig, LayoutConfig } from '../../core'; import { ComponentProps } from '../../core/shaders/Voxels'; export type { ComponentProps }; /** * Base props that all shader components have */ interface BaseShaderProps { children?: React.ReactNode; blendMode?: BlendMode; opacity?: number; visible?: boolean; id?: string; maskSource?: string; maskType?: string; renderOrder?: number; transform?: Partial; boundingBox?: Partial; flow?: LayoutConfig; absolute?: boolean; ref?: React.Ref; } /** * Component-specific props that merge base props with shader-specific props * Note: ComponentProps are made optional since they have defaults from the shader definition */ type ShaderComponentProps = BaseShaderProps & Partial> & { center?: ComponentProps['center'] | PropDriver; colorVariation?: ComponentProps['colorVariation'] | PropDriver; lightAngle?: ComponentProps['lightAngle'] | PropDriver; lightElevation?: ComponentProps['lightElevation'] | PropDriver; lightIntensity?: ComponentProps['lightIntensity'] | PropDriver; ambient?: ComponentProps['ambient'] | PropDriver; shadows?: ComponentProps['shadows'] | PropDriver; shadowSoftness?: ComponentProps['shadowSoftness'] | PropDriver; ao?: ComponentProps['ao'] | PropDriver; glossiness?: ComponentProps['glossiness'] | PropDriver; specular?: ComponentProps['specular'] | PropDriver; seams?: ComponentProps['seams'] | PropDriver; }; /** * The main React wrapper component for Shader shader nodes */ export declare const ShaderComponent: React.FC; export default ShaderComponent; //# sourceMappingURL=Voxels.d.ts.map