import { AttribValue, NumericAttribValue } from '../../types/GlobalTypes';
import { Vector4 } from 'three/src/math/Vector4';
import { Vector3 } from 'three/src/math/Vector3';
import { Vector2 } from 'three/src/math/Vector2';
import { BufferGeometry } from 'three/src/core/BufferGeometry';
import { CoreGeometry } from './Geometry';
import { CoreEntity } from './Entity';
export declare class CorePoint extends CoreEntity {
    private _core_geometry;
    _geometry: BufferGeometry;
    _position: Vector3 | undefined;
    _normal: Vector3 | undefined;
    constructor(_core_geometry: CoreGeometry, _index: number);
    core_geometry(): CoreGeometry;
    geometry(): BufferGeometry;
    attribSize(name: string): number;
    hasAttrib(name: string): boolean;
    attribValue(name: string, target?: Vector2 | Vector3 | Vector4): AttribValue;
    indexedAttribValue(name: string): string;
    stringAttribValue(name: string): string;
    attribValueIndex(name: string): number;
    isAttribIndexed(name: string): boolean;
    position(target?: Vector3): Vector3;
    setPosition(new_position: Vector3): void;
    normal(): Vector3;
    setNormal(new_normal: Vector3): void;
    setAttribValue(name: string, value: NumericAttribValue | string): void;
    setAttribValueVector3(name: string, value: Vector3): void;
    setAttribIndex(name: string, new_value_index: number): number;
}
