import { JSX } from 'solid-js'; import { BlendMode, PropDriver, TransformConfig, BoundingBoxConfig, LayoutConfig } from '../../core'; import { ComponentProps } from '../../core/shaders/Satin'; export type { ComponentProps }; /** * Base props that all shader components have */ interface BaseShaderProps { children?: JSX.Element; blendMode?: BlendMode; opacity?: number; visible?: boolean; id?: string; maskSource?: string; maskType?: string; renderOrder?: number; transform?: Partial; boundingBox?: Partial; flow?: LayoutConfig; absolute?: boolean; } /** * 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> & { foldDirection?: ComponentProps['foldDirection'] | PropDriver; foldDepth?: ComponentProps['foldDepth'] | PropDriver; foldWidth?: ComponentProps['foldWidth'] | PropDriver; pinning?: ComponentProps['pinning'] | PropDriver; seed?: ComponentProps['seed'] | PropDriver; breeze?: ComponentProps['breeze'] | PropDriver; gloss?: ComponentProps['gloss'] | PropDriver; anisotropy?: ComponentProps['anisotropy'] | PropDriver; bloom?: ComponentProps['bloom'] | PropDriver; sheen?: ComponentProps['sheen'] | PropDriver; weave?: ComponentProps['weave'] | PropDriver; fiberAngle?: ComponentProps['fiberAngle'] | PropDriver; lightAngle?: ComponentProps['lightAngle'] | PropDriver; fill?: ComponentProps['fill'] | PropDriver; }; /** * The main Solid wrapper component for Shader shader nodes */ export default function ShaderComponent(props: ShaderComponentProps): JSX.Element; //# sourceMappingURL=Satin.d.ts.map