import { ScalarBlendMode } from "./BlendModeConfig"; type Node = any; /** * Handles blending of scalar properties (roughness, metalness, AO) * Provides various blending strategies for different material behaviors */ export declare class ScalarBlender { /** * Blend two scalar values using specified mode * @param baseValue - Base layer value * @param topValue - Top layer value * @param blendFactor - Blend amount (0-1) * @param mode - Blending mode */ blend(baseValue: Node, topValue: Node, blendFactor: Node, mode?: ScalarBlendMode): Node; private min; private max; private multiply; private average; private overlay; private add; private subtract; /** * Specialized blend for roughness that considers physical constraints * Rougher surfaces should generally dominate */ blendRoughness(baseRoughness: Node, topRoughness: Node, blendFactor: Node, mode?: ScalarBlendMode): Node; /** * Specialized blend for metalness * Binary in nature (metal or not), but can be blended for transitions */ blendMetalness(baseMetalness: Node, topMetalness: Node, blendFactor: Node, mode?: ScalarBlendMode): Node; /** * Specialized blend for ambient occlusion * Darker values (more occlusion) should typically dominate */ blendAO(baseAO: Node, topAO: Node, blendFactor: Node, mode?: ScalarBlendMode): Node; } export {}; //# sourceMappingURL=ScalarBlender.d.ts.map