///
import { Command, App } from '../';
export interface NorthbrookConfig extends Object {
plugins?: Array;
packages?: Array;
circular?: Array;
}
export interface Plugin {
plugin: App | Command;
}
export interface Object {
[key: string]: T;
}
export interface STDIO {
stdout?: NodeJS.WritableStream;
stderr?: NodeJS.WritableStream;
stdin?: NodeJS.ReadableStream;
}
export interface Stdio {
stdout: NodeJS.WritableStream;
stderr: NodeJS.WritableStream;
stdin: NodeJS.ReadableStream;
}
export interface Commit {
hash: string;
abbreviatedHash: string;
authorEmail: string;
authorName: string;
time: number;
message: CommitMessage;
}
export declare type NoUpdate = 0;
export declare type PatchUpdate = 1;
export declare type MinorUpdate = 2;
export declare type MajorUpdate = 3;
export declare type SuggestedUpdate = NoUpdate | PatchUpdate | MinorUpdate | MajorUpdate;
export interface CommitMessage {
type: string;
scope: string | null;
subject: string;
body: string;
affects: Array | null;
breakingChanges: string | null;
issuesClosed: Array | null;
suggestedUpdate: SuggestedUpdate;
raw: string;
}
export declare type AffectedPackage = {
name: string;
commits: Array;
};
export declare type AffectedPackages = {
[key: string]: AffectedPackage;
};
export declare type Pkg = {
path: string;
name: string;
config: any;
};