import { Logger } from "../logger"; import { IBrokerBus } from "../dispatchers"; import { IDispatcher, IMessageTester, IMessage } from "@tandem/mesh"; import { Kernel, IInjectable } from "../ioc"; /** * Application services create the combined functionality of the * entiry application. */ export declare abstract class BaseApplicationService implements IDispatcher, IInjectable, IMessageTester { protected readonly logger: Logger; protected bus: IBrokerBus; protected kernel: Kernel; private _acceptedMessageTypes; dispatch(message: IMessage): any; $didInject(): void; testMessage(message: any): boolean; } /** * Core service required for the app to run */ export declare abstract class CoreApplicationService extends BaseApplicationService { protected config: T; }