import 'reflect-metadata';
import { Container, Token, Inject, Service } from 'typedi';
name: string = 'InjectedClass';
name: string = 'BaseClass';
injectedClass: InjectedClass;
class ExtendedClass extends BaseClass {
name: string = 'ExtendedClass';
const instance = Container.get(ExtendedClass);
// instance has the `name` property with "ExtendedClass" value (overwritten the base class)
// and the `injectedClass` property with the instance of the `InjectedClass` class
console.log(instance.injectedClass.name);
console.log(instance.name);