import { TypedJsNode } from './_Base';
import { ParamType } from '../../poly/ParamType';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { JsLinesCollectionController } from './code/utils/JsLinesCollectionController';
declare class VecToParamsJsConfig extends NodeParamsConfig {
}
declare class BaseVecToJsNode extends TypedJsNode<VecToParamsJsConfig> {
    paramsConfig: VecToParamsJsConfig;
}
declare const Vec2ToFloatJsNode_base: typeof BaseVecToJsNode;
export declare class Vec2ToFloatJsNode extends Vec2ToFloatJsNode_base {
}
declare const Vec3ToFloatJsNode_base: typeof BaseVecToJsNode;
export declare class Vec3ToFloatJsNode extends Vec3ToFloatJsNode_base {
}
declare const Vec4ToFloatJsNode_base: typeof BaseVecToJsNode;
export declare class Vec4ToFloatJsNode extends Vec4ToFloatJsNode_base {
}
declare class Vec3ToVec2ParamsJsConfig extends NodeParamsConfig {
    vec3: import("../utils/params/ParamsConfig").ParamTemplate<ParamType.VECTOR3>;
}
export declare class Vec3ToVec2JsNode extends TypedJsNode<Vec3ToVec2ParamsJsConfig> {
    paramsConfig: Vec3ToVec2ParamsJsConfig;
    static type(): string;
    static readonly OUTPUT_NAME_VEC2 = "vec2";
    static readonly OUTPUT_NAME_Z = "z";
    initializeNode(): void;
    setLines(shadersCollectionController: JsLinesCollectionController): void;
}
declare class Vec2ToVec3ParamsJsConfig extends NodeParamsConfig {
    Vector2: import("../utils/params/ParamsConfig").ParamTemplate<ParamType.VECTOR2>;
    z: import("../utils/params/ParamsConfig").ParamTemplate<ParamType.FLOAT>;
}
export declare class Vec2ToVec3JsNode extends TypedJsNode<Vec2ToVec3ParamsJsConfig> {
    paramsConfig: Vec2ToVec3ParamsJsConfig;
    static type(): string;
    static readonly OUTPUT_NAME_VEC3 = "vec3";
    initializeNode(): void;
    setLines(shadersCollectionController: JsLinesCollectionController): void;
}
declare class Vec3ToVec4ParamsJsConfig extends NodeParamsConfig {
    vec3: import("../utils/params/ParamsConfig").ParamTemplate<ParamType.VECTOR3>;
    w: import("../utils/params/ParamsConfig").ParamTemplate<ParamType.FLOAT>;
}
export declare class Vec3ToVec4JsNode extends TypedJsNode<Vec3ToVec4ParamsJsConfig> {
    paramsConfig: Vec3ToVec4ParamsJsConfig;
    static type(): string;
    static readonly OUTPUT_NAME_VEC4 = "vec4";
    initializeNode(): void;
    setLines(shadersCollectionController: JsLinesCollectionController): void;
}
declare class Vec3ToColorParamsJsConfig extends NodeParamsConfig {
    vec3: import("../utils/params/ParamsConfig").ParamTemplate<ParamType.VECTOR3>;
}
export declare class Vec3ToColorJsNode extends TypedJsNode<Vec3ToColorParamsJsConfig> {
    paramsConfig: Vec3ToColorParamsJsConfig;
    static type(): string;
    initializeNode(): void;
    setLines(shadersCollectionController: JsLinesCollectionController): void;
}
declare class ColorToVec3ParamsJsConfig extends NodeParamsConfig {
    color: import("../utils/params/ParamsConfig").ParamTemplate<ParamType.COLOR>;
}
export declare class ColorToVec3JsNode extends TypedJsNode<ColorToVec3ParamsJsConfig> {
    paramsConfig: ColorToVec3ParamsJsConfig;
    static type(): string;
    initializeNode(): void;
    setLines(shadersCollectionController: JsLinesCollectionController): void;
}
export {};
