import * as Core from "@intelligentgraphics/ig.gfx.core";
import SnapPoints from "./Interactor/SnapPoints";
var IdSnapPointAssociator = /** @class */ (function () {
    function IdSnapPointAssociator() {
    }
    IdSnapPointAssociator.prototype.getAssociate = function (obj) {
        return new SnapPoints({
            id: obj,
            transformation: Core.getWorldTransformation(obj),
        });
    };
    return IdSnapPointAssociator;
}());
export { IdSnapPointAssociator };
var IdPointsAssociator = /** @class */ (function () {
    function IdPointsAssociator() {
    }
    IdPointsAssociator.prototype.getAssociate = function (id) {
        return Core.State.API.GetPoints(id, null, null, null);
    };
    return IdPointsAssociator;
}());
export { IdPointsAssociator };
var Caches = /** @class */ (function () {
    function Caches() {
    }
    Caches.snapPointsCache = new Core.Cache(new Core.ComponentTransformationKeyGenerator(), new IdSnapPointAssociator());
    Caches.pointsCache = new Core.Cache(new Core.ComponentIdKeyGenerator(), new IdPointsAssociator());
    return Caches;
}());
export { Caches };
