The American TV star, model and author Padma Lakshmi has said she was raped when she was 16 and sexually assaulted when she was seven, and that she can understand why women wait years to disclose such incidents.

In an opinion piece for the New York Times, Lakshmi, the ex-wife of the British-Indian novelist Salman Rushdie, said that when she was a teenager she was attacked on New Year’s Eve by a 23-year-old man she had been dating. In the same article, she said she was sexually assaulted aged seven by a relative of her stepfather.

“These experiences have affected me and my ability to trust. It took me decades to talk about this with intimate partners and a therapist,” she wrote.

“I think if I had at the time named what happened to me as rape – and told others – I might have suffered less. Looking back, I now think I let my rapist off the hook and I let my 16-year-old self down.”

The article was written in response to a question posed by Donald Trump about Christine Blasey Ford, a psychologist who alleges she was sexually assaulted by Brett Kavanaugh, now a supreme court nominee, in the 1980s. The US president asked why Ford did not immediately report what had happened.

“I understand why both women [Ford and another Kavanaugh accuser] would keep this information to themselves for so many years, without involving the police. For years I did the same thing. On Friday I tweeted about what had happened to me so many years ago,” Lakshmi wrote.

“Now, 32 years after my rape, I am stating publicly what happened. I have nothing to gain by talking about this. But we all have a lot to lose if we put a time limit on telling the truth about sexual assault and if we hold on to the codes of silence that for generations have allowed men to hurt women with impunity.”

She said that as a child she had been “taught a lesson” for speaking up. “When I was seven years old, my stepfather’s relative touched me between my legs and put my hand on his erect penis. Shortly after I told my mother and stepfather, they sent me to India for a year to live with my grandparents. The lesson was: if you speak up, you will be cast out.”

This month, Trump disparaged Deborah Ramirez, the second woman to accuse Kavanaugh of sexual misconduct, saying she “has nothing” on the nominee and was “messed up” when the incident is alleged to have taken place. Trump accused Democrats of running a “con game” to try to stop the nomination.

Kavanaugh has vigorously denied the allegations. “I had never sexually assaulted anyone, not in high school, not ever,” he said in an interview with Fox News.