Oii Christopher, tudo bem?
A orientação a objetos (OO) é um paradigma poderoso e muito utilizado na programação, e o TypeScript suporta muito bem esse modelo. No entanto, se a utilização desse paradigma irá complicar ou simplificar seu projeto depende muito da estrutura do seu jogo da velha.
Se o seu jogo for bastante simples, a OO possa ser um exagero. Porém, se você planeja adicionar recursos mais complexos, como diferentes níveis de dificuldade, a capacidade de jogar contra um computador com diferentes estratégias, ou mesmo um modo multiplayer online, a OO pode ser uma ótima escolha para organizar seu código.
Por exemplo, você pode criar uma classe "Jogador" com métodos para fazer uma jogada, uma classe "Tabuleiro" para controlar o estado do jogo, e assim por diante. Isso pode tornar seu código mais organizado e mais fácil de entender e manter.
Sobre projetos onde a OO é mais indicada, costuma ser aqueles que possuem uma complexidade maior e onde existem muitos objetos interagindo entre si. Alguns exemplos incluem sistemas de gerenciamento (como um sistema de gerenciamento de bibliotecas ou de uma loja), jogos mais complexos (como um RPG ou um jogo de estratégia), ou mesmo aplicações web mais robustas.
Espero ter ajudado.
Um abraço e bons estudos.