///
import { IPackage } from 'ethpkg';
import Workflow from './Workflow';
import PluginManager from '../PluginSystem/PluginManager';
import { StateListener } from '../StateListener';
export interface AuthorInfo {
name: string;
email: string;
}
export interface CreateWorkflowOptions {
name: string;
path?: string;
author?: AuthorInfo;
license?: string;
}
export interface GetWorkflowOptions {
listener?: StateListener;
}
export declare type PasswordCallback = () => Promise;
export interface PublishWorkflowOptions {
repository?: string;
listener?: StateListener;
privateKeyOrSigner?: Buffer;
}
export default class WorkflowManager {
pluginManager?: PluginManager;
constructor(pluginManager?: PluginManager);
createWorkflow(options: CreateWorkflowOptions): Promise;
loadWorkflow(workflowPathOrPkg: string | IPackage): Promise;
getAllWorkflows(): Promise>;
getWorkflow(workflowSpec: string, { listener }?: GetWorkflowOptions): Promise;
runWorkflow(workflow?: Workflow | string, flags?: any, { listener }?: any): Promise;
validateWorkflowPackage(workflowPath: string): Promise;
publishWorkflow(workflowPath: string, { repository, listener, privateKeyOrSigner }?: PublishWorkflowOptions): Promise;
}
//# sourceMappingURL=WorkflowManager.d.ts.map