lib/plugins/print/print.js/Print/constructor
class Print:  constructor(serverless, options) {
    this.serverless = serverless;
    this.options = options || {};
    this.cache = {};

    this.commands = {
      print: {
        usage: 'Print your compiled and resolved config file',
        configDependent: true,
        lifecycleEvents: ['print'],
        options: {
          format: {
            usage: 'Print configuration in given format ("yaml", "json", "text"). Default: yaml',
          },
          path: {
            usage: 'Optional period-separated path to print a sub-value (eg: "provider.name")',
          },
          transform: {
            usage: 'Optional transform-function to apply to the value ("keys")',
          },
        },
      },
    };
    this.hooks = {
      'print:print': () => BbPromise.bind(this).then(this.print),
    };
  }