/**
 * Update the object attribute
 *
 *
 */
import { TypedJsNode } from './_Base';
import { ParamConvertibleJsType } from '../utils/io/connections/Js';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { JsLinesCollectionController } from './code/utils/JsLinesCollectionController';
import { JsType } from '../../poly/registers/nodes/types/Js';
export declare enum SetObjectAttributeInputName {
    attribName = "attribName",
    lerp = "lerp",
    val = "val"
}
declare class SetObjectAttributeJsParamsConfig extends NodeParamsConfig {
    /** @param attribute type */
    type: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
}
export declare class SetObjectAttributeJsNode extends TypedJsNode<SetObjectAttributeJsParamsConfig> {
    readonly paramsConfig: SetObjectAttributeJsParamsConfig;
    static type(): JsType;
    initializeNode(): void;
    private _currentConnectionType;
    private _nextAttribName;
    paramDefaultValue(name: SetObjectAttributeInputName): string | number;
    setAttribType(type: ParamConvertibleJsType): void;
    setAttribName(attribName: string): void;
    setLines(linesController: JsLinesCollectionController): void;
    setTriggerableLines(shadersCollectionController: JsLinesCollectionController): void;
}
export {};
