import { Repository } from "./Repository"; import { Source } from "./Source"; import { Queue } from "./Queue"; import { Target } from "./Target"; import * as Domain from "../Domain/index"; import { Driver } from "./Driver"; import { Service as Bus } from "../Bus/Service"; import { Envelope } from "../Bus/Envelope"; import { ScanSource } from "./Job/ScanSource"; import { PostFound } from "./Job/PostFound"; export declare class Service { protected repository: Repository; protected sources: Source[]; protected queues: Queue[]; protected targets: Target[]; protected bus: Bus; readonly drivers: Driver[]; constructor(repository: Repository, sources: Source[], queues: Queue[], targets: Target[], bus: Bus); setup(): Promise; connect(): Promise; close(): Promise; addAuthor(author: Domain.Author): Promise; scanSources(): Promise; work(): void; working(): boolean; protected handleSourceScan(envelope: Envelope): Promise; protected handleFoundPost(envelope: Envelope): Promise; }