/**
 * rotates an input vector
 *
 *
 *
 */
import { Number3 } from '../../../types/GlobalTypes';
import { TypedGlNode } from './_Base';
import { FunctionGLDefinition } from './utils/GLDefinition';
import { GlConnectionPointType } from '../utils/io/connections/Gl';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { ShadersCollectionController } from './code/utils/ShadersCollectionController';
export declare enum GlRotateMode {
    AXIS = 0,
    QUAT = 1
}
declare class RotateParamsConfig extends NodeParamsConfig {
    signature: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
}
export declare class RotateGlNode extends TypedGlNode<RotateParamsConfig> {
    paramsConfig: RotateParamsConfig;
    static type(): string;
    initializeNode(): void;
    setSignature(mode: GlRotateMode): void;
    mode(): GlRotateMode;
    protected _expectedInputName(index: number): string;
    paramDefaultValue(name: string): Number3;
    functionName(): string;
    protected _expectedInputTypes(): GlConnectionPointType[];
    protected _expectedOutputTypes(): GlConnectionPointType[];
    functionDefinitions(): FunctionGLDefinition[];
    setLines(shadersCollectionController: ShadersCollectionController): void;
}
export {};
