import { Vector3 } from 'three';
import { CorePrimitive } from '../../entities/primitive/CorePrimitive';
import { CoreObjectType } from '../../ObjectContent';
import { CsgObject } from './CsgObject';
import { CsgTypeMap, CsgGeometryType } from './CsgCommon';
export declare class CsgPrimitive<T extends CsgGeometryType> extends CorePrimitive<CoreObjectType.CSG> {
    protected _geometry: CsgTypeMap[T];
    constructor(object: CsgObject<T>, index: number);
    geometry(): import("./CsgCommon").CsgGeometry;
    position(target: Vector3): Vector3;
    normal(target: Vector3): Vector3;
}
