In this section of the chapter, we will use the knowledge we have gained in writing a service locator, and combine this with TypeScript decorators in order to create a simple DI framework. Before we do, however, let's discuss the problem of interface resolution.