UNPKG

1.37 kBTypeScriptView Raw
1import { Watcher } from "./watch.resolve";
2import { CommandTrigger } from "./command.run";
3import { TaskReport } from "./task.runner";
4import Rx = require("rx");
5import { SequenceItem } from "./task.sequence.factories";
6import { CrossbowReporter } from "./index";
7import { WatchCommandEventTypes } from "./command.watch";
8export interface WatchEventWithContext {
9 watchEvent: WatchEvent;
10 watcher: Watcher;
11}
12export interface WatchEvent {
13 event: string;
14 path: string;
15 watcherUID: string;
16}
17export interface WatchTaskReport {
18 taskReport: TaskReport;
19 watchEvent: WatchEvent;
20 count: number;
21}
22export interface WatchRunnerComplete {
23 sequence: SequenceItem[];
24 reports: TaskReport[];
25 errors: TaskReport[];
26 watchEvent: WatchEvent;
27 runtime: number;
28}
29/**
30 * Create a stream that is the combination of all watchers
31 */
32export declare function createObservablesForWatchers(watchers: Watcher[], trigger: CommandTrigger): Rx.Observable<{
33 type: WatchCommandEventTypes;
34 data: WatchTaskReport | WatchRunnerComplete;
35}>;
36/**
37 * Create a file-system watcher that will emit <WatchEvent>
38 */
39export declare function createObservableForWatcher(watcher: Watcher, trigger: CommandTrigger): Rx.Observable<WatchEvent>;
40export declare function getFileChangeStream(watcher: Watcher, reporter: CrossbowReporter): Rx.Observable<WatchEvent>;