Когда использовать классы против модулей в TypeScript?

Я в процессе превращения большого количества кода в Typescript, но хотел получить хороший контроль, когда & где я должен использовать определенные вещи.

Прямо сейчас у меня есть несколько больших пространств имен в модулях:

(function (nameSpace) {

    var privateVariables = '';

    function privateFunctions () { }        

    // Public methods
    nameSpace.someMethodHere = function () { };

}(window.nameSpace = window.nameSpace || {}));

Мой вопрос вМашинопись, есть ли разница / польза во мне, просто превращая их в просто классы? Или это должен быть один большой Модуль с классами (каждым методом) внутри?

module nameSpace {

    export class someMethodHere {
       // etc
    }

    // more classes (my methods) here ??
}

-ИЛИ ЖЕ-

class nameSpace {

    someMethodHere () {
        // code
    }
    // more prototyped methods here
}   

Или я должен настроить их так же, как сейчас? Я пытался, и он продолжал давать мне ошибки, не уверен, как я делаюnameSpace.someMethodHere внутри модуля без класса!

Ответы на вопрос(2)

Ваш ответ на вопрос