Type Alias SnapResult<T>

SnapResult<T>: T extends "orthogonal"
    ? {
        otherVertexIndex: number;
        snapped: Coordinate;
        type: T;
    }
    : T extends "parallel"
        ? {
            otherVertexIndex: number;
            parallelIndex: number;
            snapped: Coordinate;
            type: T;
        }
        : T extends "vertex"
            ? {
                snapped: Coordinate;
                type: T;
            }
            : T extends "edge"
                ? {
                    snapped: Coordinate;
                    type: T;
                }
                : never

Type Parameters