///
import { Signal } from "signals";
import { IContentReader } from "../contentReader/IContentReader";
import { IContentWriter } from "../contentWriter/IContentWriter";
import { IPlugin } from "./IPlugin";
import { Metadata } from "../meta/Metadata";
/**
* Ducks and rucks
*/
export declare class Typesite {
private _contentReader;
private _contentWriter;
private _sourcePath;
private _targetPath;
private _onBeforeAllPlugins;
private _onAfterAllPlugins;
private _onBeforePlugin;
private _onAfterPlugin;
private _plugins;
private _metadata;
contentReader: IContentReader;
contentWriter: IContentWriter;
readonly onBeforeAllPlugins: Signal;
readonly onAfterAllPlugins: Signal;
readonly onBeforePlugin: Signal;
readonly onAfterPlugin: Signal;
readonly metadata: Metadata;
constructor(sourcePath: string, targetPath: string);
use(plugin: IPlugin): void;
run(): Promise;
}