import { Vector2, Vector3, Vector4 } from 'three';
import type { IntegerParam } from '../../../../params/Integer';
import type { FloatParam } from '../../../../params/Float';
import type { StringParam } from '../../../../params/String';
import type { Vector2Param } from '../../../../params/Vector2';
import type { Vector3Param } from '../../../../params/Vector3';
import type { Vector4Param } from '../../../../params/Vector4';
import type { AttribCreateSopParams } from '../../AttribCreate';
import { AttribType } from '../../../../../core/geometry/Constant';
export interface AttribCreateSopNodeParams {
    group: StringParam;
    name: StringParam;
    size: IntegerParam;
    value1: FloatParam;
    value2: Vector2Param;
    value3: Vector3Param;
    value4: Vector4Param;
    string: StringParam;
}
export declare function hasGroupFromParams(params: AttribCreateSopNodeParams): boolean;
export declare function hasGroupFromParamValues(params: AttribCreateSopParams): boolean;
export declare function _attribType(params: AttribCreateSopParams): AttribType;
export declare function defaultAttribValue(params: AttribCreateSopParams): string | 0 | Vector2 | Vector3 | Vector4 | undefined;
export declare function _defaultStringValue(): string;
export declare function _defaultNumericValue(params: AttribCreateSopParams): 0 | Vector2 | Vector3 | Vector4 | undefined;
