JavaScript для TypeScript: Intellisense и динамические члены

У меня есть объект JavaScript, который динамически позволяет членам быть привязанными в качестве свойств доступа к экземплярам объекта:

Источник

function DynamicObject(obj) {
    for (var prop in obj) {
        Object.defineProperty(this, prop, {
            get: function () { return obj[prop]; },
            set: function (value) { obj[prop] = value; },
            enumerable: true,
            configurable: false
        });
    }
}

использование

var obj = new DynamicObject({
    name: "John Smith",
    email: "[email protected]",
    id: 1
});

когдаobj члены параметра конструктора связаны сobj в качестве свойств доступа. Они появляются в intellisense

Я хотел бы знать, возможно ли моделировать такого рода поведение (в том числе с intellisense) в TypeScript?

Заметки

Когда вы запускаете этот код в TypeScript, нет смысла, потому что всеanyТаким образом, TypeScript на самом деле не знает, что происходит.

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

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