American actress Kelly Preston has died aged 57 after battling breast cancer for nearly two years, her husband John Travolta said.