proc getAvailablePointId*(self: AStar): int64 {.gcsafe, locks: 0
.} 
- 
 
proc addPoint*(self: AStar; id: int64; pos: Vector3; weightScale: float64 = 1.0) {.gcsafe,
    locks: 0
.} 
- 
 
proc getPointPos*(self: AStar; id: int64): Vector3 {.gcsafe, locks: 0
.} 
- 
 
proc getPointWeightScale*(self: AStar; id: int64): float64 {.gcsafe, locks: 0
.} 
- 
 
proc removePoint*(self: AStar; id: int64) {.gcsafe, locks: 0
.} 
- 
 
proc hasPoint*(self: AStar; id: int64): bool {.gcsafe, locks: 0
.} 
- 
 
proc connectPoints*(self: AStar; id: int64; toId: int64; bidirectional: bool = true) {.
    gcsafe, locks: 0
.} 
- 
 
proc disconnectPoints*(self: AStar; id: int64; toId: int64) {.gcsafe, locks: 0
.} 
- 
 
proc arePointsConnected*(self: AStar; id: int64; toId: int64): bool {.gcsafe, locks: 0
.} 
- 
 
proc clear*(self: AStar) {.gcsafe, locks: 0
.} 
- 
 
proc getClosestPoint*(self: AStar; toPos: Vector3): int64 {.gcsafe, locks: 0
.} 
- 
 
proc getClosestPosInSegment*(self: AStar; toPos: Vector3): Vector3 {.gcsafe, locks: 0
.} 
- 
 
proc getPointPath*(self: AStar; fromId: int64; toId: int64): PoolVector3Array {.gcsafe,
    locks: 0
.} 
- 
 
proc getIdPath*(self: AStar; fromId: int64; toId: int64): PoolIntArray {.gcsafe, locks: 0
.} 
-