/** This file must only contain pure code and pure imports */ import { NodeMaterialBlock } from "../nodeMaterialBlock.js"; import { type NodeMaterialBuildState } from "../nodeMaterialBuildState.js"; import { type NodeMaterialConnectionPoint } from "../nodeMaterialBlockConnectionPoint.js"; /** * Block used to get the refracted vector from a direction and a normal */ export declare class RefractBlock extends NodeMaterialBlock { /** * Creates a new RefractBlock * @param name defines the block name */ constructor(name: string); /** * Gets the current class name * @returns the class name */ getClassName(): string; /** * Gets the incident component */ get incident(): NodeMaterialConnectionPoint; /** * Gets the normal component */ get normal(): NodeMaterialConnectionPoint; /** * Gets the index of refraction component */ get ior(): NodeMaterialConnectionPoint; /** * Gets the output component */ get output(): NodeMaterialConnectionPoint; protected _buildBlock(state: NodeMaterialBuildState): this; } /** * Register side effects for refractBlock. * Safe to call multiple times; only the first call has an effect. */ export declare function RegisterRefractBlock(): void;