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 TextureAlphaMapParamConfig(Base: TBase): { new (...args: any[]): { /** @param toggle if you want to use an alpha map */ useAlphaMap: import("../../utils/params/ParamsConfig").ParamTemplate; /** @param specify the alpha map COP node */ alphaMap: import("../../utils/params/ParamsConfig").ParamTemplate; }; } & TBase; declare class TextureAlphaMaterial extends Material { alphaMap: Texture | null; } declare type CurrentMaterial = TextureAlphaMaterial | ShaderMaterial; declare const TextureAlphaMapParamsConfig_base: { new (...args: any[]): { /** @param toggle if you want to use an alpha map */ useAlphaMap: import("../../utils/params/ParamsConfig").ParamTemplate; /** @param specify the alpha map COP node */ alphaMap: import("../../utils/params/ParamsConfig").ParamTemplate; }; } & typeof NodeParamsConfig; declare class TextureAlphaMapParamsConfig extends TextureAlphaMapParamsConfig_base { } declare abstract class TextureAlphaMapMatNode extends TypedMatNode { texture_alpha_map_controller: TextureAlphaMapController; abstract create_material(): CurrentMaterial; } export declare class TextureAlphaMapController extends BaseTextureMapController { protected node: TextureAlphaMapMatNode; constructor(node: TextureAlphaMapMatNode, _update_options: UpdateOptions); initializeNode(): void; update(): Promise; static update(node: TextureAlphaMapMatNode): Promise; } export {};