namespace View_by_Distance.Shared.Models.Stateless.Methods;

public interface IFace
{ // ...

    string TestStatic_GetJson(string jsonFileFullName) =>
        GetJson(jsonFileFullName);
    static string GetJson(string jsonFileFullName) =>
        Face.GetJson(jsonFileFullName);

    double TestStatic_Getα(int x1, int x2, int y1, int y2) =>
        Getα(x1, x2, y1, y2);
    static double Getα(int x1, int x2, int y1, int y2) =>
        Face.Getα(x1, x2, y1, y2);

    Models.Face TestStatic_GetFace(string jsonFileFullName) =>
        GetFace(jsonFileFullName);
    static Models.Face GetFace(string jsonFileFullName) =>
        Face.GetFace(jsonFileFullName);

    Models.Face[] TestStatic_GetFaces(string jsonFileFullName) =>
        GetFaces(jsonFileFullName);
    static Models.Face[] GetFaces(string jsonFileFullName) =>
        Face.GetFaces(jsonFileFullName);

    (bool?, double?) TestStatic_Getα(Dictionary<FacePart, Models.FacePoint[]> faceParts) =>
        GetEyeα(faceParts);
    static (bool?, double?) GetEyeα(Dictionary<FacePart, Models.FacePoint[]> faceParts) =>
        Face.GetEyeα(faceParts);

    (bool, int[]) TestStatic_GetEyeCollection(int threshold, List<Models.Face> faces) =>
        GetEyeCollection(threshold, faces);
    static (bool, int[]) GetEyeCollection(int threshold, List<Models.Face> faces) =>
        Face.GetEyeCollection(threshold, faces);

}