export class TopoVertex {
    /**
     *
     * @param {number} x
     * @param {number} y
     * @param {number} z
     * @return {TopoVertex}
     */
    static from(x: number, y: number, z: number): TopoVertex;
    /**
     * Identification number, expected to be unique within a given topology
     * @type {number}
     */
    index: number;
    /**
     *
     * @type {TopoEdge[]}
     */
    edges: TopoEdge[];
    /**
     *
     * @type {TopoTriangle[]}
     */
    faces: TopoTriangle[];
    /**
     *
     * @type {number}
     */
    x: number;
    /**
     *
     * @type {number}
     */
    y: number;
    /**
     *
     * @type {number}
     */
    z: number;
    get 0(): number;
    get 1(): number;
    get 2(): number;
    /**
     * Estimate of this object's size in RAM, in bytes
     * @return {number}
     */
    get byteSize(): number;
    /**
     *
     * @param {TopoVertex} other
     */
    copy(other: TopoVertex): void;
    /**
     * @returns {TopoVertex}
     */
    clone(): TopoVertex;
    /**
     *
     * @param {function(reason:string)} error_consumer
     * @return {boolean}
     */
    validate(error_consumer: any): boolean;
    /**
     *
     * @param {TopoVertex} other
     * @return {number}
     */
    distanceTo(other: TopoVertex): number;
    /**
     *
     * @param {TopoTriangle} f
     */
    addFace(f: TopoTriangle): void;
    /**
     *
     * @param {TopoTriangle} e
     * @return {boolean}
     */
    addUniqueFace(e: TopoTriangle): boolean;
    /**
     *
     * @param {TopoTriangle} face
     * @return {boolean}
     */
    containsFace(face: TopoTriangle): boolean;
    /**
     *
     * @param {TopoTriangle} f
     */
    removeFace(f: TopoTriangle): void;
    /**
     *
     * @param {TopoEdge} e
     */
    addEdge(e: TopoEdge): void;
    /**
     *
     * @param {TopoEdge} e
     * @return {boolean}
     */
    addUniqueEdge(e: TopoEdge): boolean;
    /**
     *
     * @param {TopoEdge} victim
     * @param {TopoEdge} replacement
     */
    replaceEdge(victim: TopoEdge, replacement: TopoEdge): void;
    /**
     *
     * @param {TopoEdge} edge
     * @returns {boolean}
     */
    containsEdge(edge: TopoEdge): boolean;
    /**
     *
     * @param {TopoEdge} e
     * @returns {boolean}
     */
    removeEdge(e: TopoEdge): boolean;
    /**
     *
     * @param {TopoVertex[]} result
     * @param {number} result_offset
     * @returns {number}
     */
    computeNeighbourVertices(result: TopoVertex[], result_offset: number): number;
    /**
     * @readonly
     * @type {boolean}
     */
    readonly isTopoVertex: boolean;
}
//# sourceMappingURL=TopoVertex.d.ts.map