mixins.ts 297 Bytes
export function Mixins(...mixins: Function[]) {
    return function(target: Function) {
        mixins.forEach(mixin => {
            Object.getOwnPropertyNames(mixin.prototype).forEach(name => {
                target.prototype[name] = mixin.prototype[name];
            });
        });
    };
}