/**
 * this node works alongside [gl/varyingRead](/docs/nodes/gl/varyingRead) and they allow a finer grained control over
 * what is computed in the vertex or the fragment shader
 *
 *
 */
import { GlType } from './../../poly/registers/nodes/types/Gl';
import { TypedGlNode } from './_Base';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { GlConnectionPointType } from '../utils/io/connections/Gl';
import { ShadersCollectionController } from './code/utils/ShadersCollectionController';
declare class VaryingWriteGlParamsConfig extends NodeParamsConfig {
    name: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    type: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
}
export declare class VaryingWriteGlNode extends TypedGlNode<VaryingWriteGlParamsConfig> {
    paramsConfig: VaryingWriteGlParamsConfig;
    static type(): Readonly<GlType.VARYING_WRITE>;
    static readonly INPUT_NAME = "vertex";
    initializeNode(): void;
    inputName(): string;
    setLines(shaders_collection_controller: ShadersCollectionController): void;
    attributeName(): string;
    glType(): GlConnectionPointType | undefined;
    setGlType(type: GlConnectionPointType): void;
}
export {};
