/**
 * this node works alongside [gl/varyingWrite](/docs/nodes/gl/varyingWrite) and they allow a finer grained control over
 * what is computed in the vertex or the fragment shader
 *
 *
 */
import { TypedGlNode } from './_Base';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { GlConnectionPointType } from '../utils/io/connections/Gl';
import { ShadersCollectionController } from './code/utils/ShadersCollectionController';
import { GlType } from '../../poly/registers/nodes/types/Gl';
declare class VaryingReadGlParamsConfig 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 VaryingReadGlNode extends TypedGlNode<VaryingReadGlParamsConfig> {
    paramsConfig: VaryingReadGlParamsConfig;
    static type(): Readonly<GlType.VARYING_READ>;
    static readonly OUTPUT_NAME = "fragment";
    initializeNode(): void;
    outputName(): string;
    setLines(shaders_collection_controller: ShadersCollectionController): void;
    attributeName(): string;
    glType(): GlConnectionPointType;
    setGlType(type: GlConnectionPointType): void;
}
export {};
