No one can read your future. All they can do is make generalized assumptions and whenever their assumptions become true in the future you will believe that they were legit. Same goes to reading someone's past.
As for reading someone's mind at the moment it could be possible but very difficult. It is however not based on any type of psychic or any other supernatural power. Someone can read your mind by looking at you and by speaking to you about what's in your mind. It might look like mind reading but it is just a skill that can be learned.