UNPKG

2.13 kBTypeScriptView Raw
1export interface IGulptraumPlugin {
2 initializePlugin: IGulptraumHook;
3 getDefaultConfig: IConfigurationHook;
4}
5export interface ITaskConfiguration {
6 help: string;
7}
8export interface ICliTaskArguments {
9 options: {
10 [optionKey: string]: string;
11 };
12}
13export interface IBuildSystem {
14}
15export interface IGulpVersionAdapter {
16 getGulpTasks(): Array<string>;
17 runTask(taskName: string, taskCallback: Function): void;
18 registerConventionalTask(taskName: string, taskConfig: any, buildTasks: Array<Array<string>>): void;
19 isTaskRegistered(taskName: string): boolean;
20 registerGulpTask(taskName: string, taskCallback: Function): void;
21}
22export interface IConfigurationHook {
23 (buildSystemConfig: IBuildSystemConfiguration): IPluginConfiguration;
24}
25export interface IPluginConfiguration<T extends IBuildSystemPathsConfiguration = IBuildSystemPathsConfiguration> extends IBuildSystemConfiguration<T> {
26 pluginName: string;
27 priority?: number;
28}
29export interface IPathsConfiguration {
30 [pathName: string]: string;
31}
32export interface IGulptraumTypeScriptPluginConfiguration extends IPluginConfiguration {
33}
34export interface IBuildSystemConfiguration<T extends IBuildSystemPathsConfiguration = IBuildSystemPathsConfiguration> {
35 packageName?: string;
36 fullPackageName?: string;
37 suppressErrors?: false;
38 backupSetupFiles?: boolean;
39 paths?: T;
40 conventionalTasks?: {
41 [taskName: string]: IConventionalTaskConfiguration;
42 };
43 plugins?: {
44 [pluginName: string]: IPluginConfiguration;
45 };
46}
47export interface IBuildSystemPathsConfiguration {
48 root: string;
49 source: string;
50 tests: string;
51 output: string;
52 testOutput: string;
53 doc: string;
54 setup: string;
55 changelog: string;
56}
57export interface IConventionalTaskConfiguration {
58 help?: string;
59 tasksBefore?: Array<string>;
60 tasksAfter?: Array<string>;
61}
62export interface IGroupedPluginKeys {
63 [priority: number]: Array<string>;
64}
65export interface IGulptraumHook {
66 (gulp: any, config: any, gulptraum: IBuildSystem): void;
67}
68export interface IBuildSystem {
69}