import { Constructor } from '../../../../types/GlobalTypes'; import { Material } from 'three/src/materials/Material'; import { Texture } from 'three/src/textures/Texture'; import { TypedMatNode } from '../_Base'; import { BaseTextureMapController, UpdateOptions } from './_BaseTextureController'; import { ShaderMaterial } from 'three/src/materials/ShaderMaterial'; import { NodeParamsConfig } from '../../utils/params/ParamsConfig'; export declare function TextureMapParamConfig(Base: TBase): { new (...args: any[]): { /** @param toggle on to use a map affecting color */ useMap: import("../../utils/params/ParamsConfig").ParamTemplate; /** @param texture map affecting color */ map: import("../../utils/params/ParamsConfig").ParamTemplate; }; } & TBase; declare class TextureMapMaterial extends Material { map: Texture | null; } declare type CurrentMaterial = TextureMapMaterial | ShaderMaterial; declare const TextureMapParamsConfig_base: { new (...args: any[]): { /** @param toggle on to use a map affecting color */ useMap: import("../../utils/params/ParamsConfig").ParamTemplate; /** @param texture map affecting color */ map: import("../../utils/params/ParamsConfig").ParamTemplate; }; } & typeof NodeParamsConfig; declare class TextureMapParamsConfig extends TextureMapParamsConfig_base { } declare abstract class TextureMapMatNode extends TypedMatNode { texture_map_controller: TextureMapController; abstract create_material(): CurrentMaterial; } export declare class TextureMapController extends BaseTextureMapController { protected node: TextureMapMatNode; constructor(node: TextureMapMatNode, _update_options: UpdateOptions); initializeNode(): void; update(): Promise; static update(node: TextureMapMatNode): Promise; } export {};