code: function Prompt( question, rl, answers ) {
  
    // Setup instance defaults property
    _.assign( this, {
      height : 0,
      status : "pending"
    });
  
    // Set defaults prompt options
    this.opt = _.defaults( _.clone(question), {
      validate: function() { return true; },
      filter: function( val ) { return val; },
      when: function() { return true; }
    });
  
    // Check to make sure prompt requirements are there
    if (!this.opt.message) {
      this.throwParamError("message");
    }
    if (!this.opt.name) {
      this.throwParamError("name");
    }
  
    // Normalize choices
    if ( _.isArray(this.opt.choices) ) {
      this.opt.choices = new Choices( this.opt.choices, answers );
    }
  
    this.rl = rl;
  
    return this;
  }
docs: Prompt constructor