import { BaseJsShaderAssembler, SpareParamOptions } from '../_Base';
import { JsLinesCollectionController } from '../../utils/JsLinesCollectionController';
import { ParamOptions } from '../../../../../params/utils/OptionsController';
import { EntityBuilderFunctionData } from './_BaseEntityBuilderPersistedConfig';
import type { AttributeJsNode } from '../../../Attribute';
export declare class JsAssemblerBaseEntityBuilder extends BaseJsShaderAssembler {
    makeFunctionNodeDirtyOnChange(): boolean;
    templateShader(): {
        main: string;
    };
    protected _closeClassDefinition(): string;
    protected _evaluatorName(): string;
    spareParamsOptions(options: SpareParamOptions): ParamOptions;
    defaultObjectVariable(): string;
    defaultObject3DMaterialVariable(): string;
    defaultPrimitiveGraph(): string;
    functionData(): EntityBuilderFunctionData | undefined;
    updateFunction(): void;
    setNodeLinesAttribute(attributeNode: AttributeJsNode, linesController: JsLinesCollectionController): void;
}
