/**
 * Reads a texture and assigns a value to an attribute.
 *
 * @remarks
 * This can be useful for heightmaps for instance.
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
declare class AttribFromTextureSopParamsConfig extends NodeParamsConfig {
    /** @param texture node */
    texture: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.NODE_PATH>;
    /** @param uv attribute */
    uvAttrib: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.STRING>;
    /** @param attribute to set the value to */
    attrib: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.STRING>;
    /** @param value to add to the attribute */
    add: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.FLOAT>;
    /** @param value to multiply the attribute with */
    mult: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.FLOAT>;
}
export declare class AttribFromTextureSopNode extends TypedSopNode<AttribFromTextureSopParamsConfig> {
    params_config: AttribFromTextureSopParamsConfig;
    static type(): string;
    initializeNode(): void;
    private _operation;
    cook(input_contents: CoreGroup[]): Promise<void>;
}
export {};
