# References

## lib

summary
public | V config: Object mongoose-data-seed config |
public | V configFilename: String mongoose-data-seed user config filename |
public | V defaultUserGeneratorConfig: Object mongoose-data-seed default user generator-config |
public | V systemConfigTemplate: string system template for user-config path |
public | V systemSeederTemplate: string system seeder template path |

## lib/commands

summary
public | F aliasToCommand(alias: string): string Get the command name of a given alias |
public | F commandToFunction(command: string): Function Get the function of a given command |
public | F getCommandAndArgvFromCli(): Object Get the command and the arguments from the cli |
public | F isAlias(command: string): Boolean Whether a given command is an alias |
public | F runCommand(command: string, argv: string): * Run command |
public | V aliases: Map<string, string> Available command aliases |
public | V availableCommandsList: string[] All available command names as list (includes aliases) |
public | V commands: Map<string, string> Available command names |
public | V commandsMap: Map<string, Function> Commands map |
public | V defaultCommand: string The fefault command name |

## lib/commands/generate

summary
public | F async generateSeeder(name: string): Promise Generate a new seeder. |
public | F help() Prints the generate command user-guide |
public | F async index(argv: stringp[]): Promise mongoose-data-seed generate command |
public | F getOptions(argv: string[]): Object Get generate options from argv |
public | F validateOptions(options: Object) Validate generate command options |
public | V optionDefinitions: Object[] Generate command option defenitions |

## lib/commands/help

summary
public | F async help() Prints the help |
public | V usageGuide: string Help command user guide |

## lib/commands/init

summary
public | C InstallerLogger Installer Logger |
public | F help() Prints the install command user-guide |
public | F async index(argv: stringp[]): Promise mongoose-data-seed init command |
public | F getOptions(argv: string[]): Object Get init options from argv |
public | F async promptMissingOptions(options: Object): Promise Prompt missing options for init command |
public | F async runinstaller(options: Object): Promise Run the installer |
public | V optionDefinitions: Object[] Init command option defenitions |

## lib/commands/run

summary
public | C RunLogger Run Logger |
public | F help() Prints the run command user-guide |
public | F async index(argv: stringp[]): Promise mongoose-data-seed run command |
public | F getOptions(argv: string[]): Object Get run options from argv or prompts |
public | F async run(options: Object): Promise Run seeders |
public | V optionDefinitions: Object[] Run command option defenitions |
public | V usageGuide: string Run command user guide |

## lib/core

summary
public | C InstallerError Installer Error |
public | C Installer mongoose-data-seed installer |
public | C MdSeedRunnerError MdSeedRunner Error |
public | C MdSeedRunner mongoose-data-seed runner |
public | C SeederGenerator Seeder Generator |
public | T InstallerConfig: Object |

## lib/utils

summary
public | C BaseLogger Base Logger |
public | C Seeder Base class for seeders to extend. |
public | F exit(error: Error) Exit mongoose-data-seed. |
public | F getFolderNameFromPath(path: string): string Get folder name from given path. |
public | F getObjectWithSelectedKeys(obj: Object, keys: string[]): Object Get object with selected keys from a given object. |
public | F normalizeSeederFileName(name: string): string Normalize seeder filename. |
public | F normalizeSeederName(name: string): string Normalize seeder name. |
public | F validateSeederTemplatePath(name: string): boolean Validate seeder template path. |
public | F validateSeedersFolderName(name: string): boolean Validate seeders folder name. |
public | F validateUserConfig() Validate user config. |
public | V ExitCodes: Map<string, number> System exit codes |

Directories
lib
commands
generate
help
init
run
core
utils