O que significa incluir uma classe entre colchetes angulares "<>" no TypeScript?
Eu sou muito novo no TypeScript e estou adorando muito, especialmente a facilidade de fazer OOP em Javascript. No entanto, estou preso em tentar descobrir a semântica quando se trata de usar colchetes angulares.
Nos documentos deles, eu vi vários exemplos como
interface Counter {
(start: number): string;
interval: number;
reset(): void;
}
function getCounter(): Counter {
let counter = <Counter>function (start: number) { };
counter.interval = 123;
counter.reset = function () { };
return counter;
}
e
interface Square extends Shape, PenStroke {
sideLength: number;
}
let square = <Square>{};
Estou tendo problemas para entender o que isso significa exatamente ou a maneira de pensar / entender.
Alguém poderia me explicar isso?