serverless: add more type definitions

This commit is contained in:
Hassan Khan
2018-10-21 16:02:06 +01:00
parent 588141e375
commit c09268abfc
3 changed files with 46 additions and 8 deletions
+8
View File
@@ -0,0 +1,8 @@
import Serverless = require("../index");
// tslint:disable-next-line:no-unnecessary-class
declare abstract class Plugin {
constructor(serverless: Serverless, options: Serverless.Options)
}
export = Plugin;
+27
View File
@@ -0,0 +1,27 @@
import Serverless = require("../index");
import Plugin = require("./plugin");
declare class PluginManager {
constructor(serverless: Serverless)
setCliOptions(options: Serverless.Options): void;
setCliCommands(commands: {}): void;
addPlugin(plugin: typeof Plugin): void;
loadAllPlugins(servicePlugins: {}): void;
loadPlugins(plugins: {}): void;
loadCorePlugins(): void;
loadServicePlugins(servicePlugins: {}): void;
loadCommand(pluginName: string, details: {}, key: string): {};
loadCommands(pluginInstance: Plugin): void;
cliOptions: {};
cliCommands: {};
serverless: Serverless;
plugins: Plugin[];
commands: {};
hooks: {};
deprecatedEvents: {};
}
export = PluginManager;
+11 -8
View File
@@ -4,6 +4,7 @@
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
import Service = require("./classes/Service");
import PluginManager = require("./classes/PluginManager");
import YamlParser = require("./classes/YamlParser");
import AwsProvider = require("./plugins/aws/provider/awsProvider");
@@ -39,18 +40,20 @@ declare class Serverless {
getVersion(): string;
cli: {
log(message: string): null
log(message: string): null;
};
providers: {};
utils: {};
variables: {};
yamlParser: YamlParser;
pluginManager: PluginManager;
config: Serverless.Config;
yamlParser: YamlParser;
serverlessDirPath: string;
service: {
getServiceName(): string
getAllFunctions(): string[]
custom: {}
};
service: Service;
version: string;
}
export = Serverless;