Can you explain the concept of "decorators" in TypeScript and their significance? How do decorators enhance code functionality? Also, why is the @
symbol used in relation to decorators?
I've tried researching online, but I'm still struggling to grasp a solid understanding of decorators.