UNPKG

dino-core

Version:

A dependency injection framework for NodeJS applications

21 lines (20 loc) 811 B
import { type ApplicationContext } from '../context/ApplicationContext'; import { Component } from '../main'; import { type EnvironmentConfiguration } from '../model/environment.configuration'; interface Deps { environment: EnvironmentConfiguration; applicationContext: ApplicationContext; } /** * Provide a basic implementation of the behavioural Command pattern. * * Both EnvironmentConfiguration and ApplicationContext are automatically made * available to concrete classes */ export declare abstract class Command<I, R> extends Component { protected readonly environment: EnvironmentConfiguration; protected readonly applicationContext: ApplicationContext; constructor({ environment, applicationContext }: Deps); abstract execute(input: I | undefined): Promise<R>; } export {};