Я объявил countdown за пределами компонента App, так как если бы я объявил в самом компоненте, то при обновлении стейта у меня был сносило это объявление переменной (let countdown;)?.
А какая разница таймаут или интервал, если у них отличие в 1 значении (repeat или нет).