Please solve the programming task below using a self-contained code snippet in a markdown code block.

Given an m x n matrix of distinct numbers, return all lucky numbers in the matrix in any order.
A lucky number is an element of the matrix such that it is the minimum element in its row and maximum in its column.
 
Please complete the following python code precisely:
```python
class Solution:
    def luckyNumbers (self, matrix: List[List[int]]) -> List[int]:
```