from typing import Tuple


def find_lines_from_points(
    p0: Tuple[float, float],
    p1: Tuple[float, float]
) -> Tuple[float, float]:
    """
    Function calculating the line passing throught a pair of points.

    Args:
        p1 (Tuple[float, float]): First point.
        p2 (Tuple[float, float]): Second point.

    Returns:
        Tuple[float, float]: Returns the parameters of the line (a, b)
    """
    
    x0, y0 = p0
    x1, y1 = p1

    assert isinstance(x0, float), "x0 must be a float"
    assert isinstance(y0, float), "y0 must be a float"
    assert isinstance(x1, float), "x1 must be a float"
    assert isinstance(y1, float), "y1 must be a float"
    assert x0 != x1, "Points must be distinct"
    # We want to find the parameters that satisfies
    # y0 = a * x0 + b and y1 = a * x1 + b
    # We can substract both equations and solve for a

    a = (y1 - y0) / (x1 - x0)

    # Then we can solve for b in one equation, lets say
    # b = y0 - a * x0 = y0 - (y1 - y0) / (x1 - x0) * x0

    b = y0 - a * x0

    return a, b