typing.Literal



typing.Literal — это тип данных, который позволяет указать не просто какой-то тип вроде str, int или float, а конкретное значение этого типа.



Например, Literal[42] означает, что в качестве значения ожидается только 42. Важно, что проверяется не только равенство значения, но и его тип (например, нельзя будет использовать False, если ожидается 0).