import type { LiveComponent, LiveElement } from '@use-gpu/live'; import type { TextureSource, LambdaSource, Lazy } from '@use-gpu/core'; import type { ShaderSource, ShaderModule } from '@use-gpu/shader'; export type TextureShaderProps = { texture: TextureSource; shader: ShaderModule; source?: ShaderSource; sources?: ShaderSource[]; args?: Lazy[]; render?: (source: LambdaSource) => LiveElement; children?: (source: LambdaSource) => LiveElement; }; /** Texture shader for custom UV sampling of a 2D input texture. Provides: - `@optional @link fn getTextureSize() -> vec2` - `@optional @link fn getTexture(uv: vec2) -> vec4` Unnamed arguments are linked in the order of: args, sources, source. */ export declare const TextureShader: LiveComponent;