import { Bus } from './bus';
import { Formatter } from './code-style/formatter';
import { Linter } from './code-style/linter';
import { Compiler } from './compiler';
import { Git } from './git';
import { Logger } from './logger';
import { TaskRunner } from './taskrunner';
import { NYC } from './testing/nyc';
import { Watcher } from './watcher';
import { Server } from './server';
export interface Dependencies {
    watcher: Watcher;
    taskRunner: TaskRunner;
    linter: Linter;
    formatter: Formatter;
    bus: Bus;
    compiler: Compiler;
    git: Git;
    logger: Logger;
    nyc: NYC;
    server: Server;
    inject<T>(createFunction: (dependencies: Partial<Dependencies>) => T): T;
}
