constructor(opts={}) {
    super(opts);
    this.transform = style.render(opts.style);
    this.msg = opts.message;
    this.initial = isDef(opts.initial) ? opts.initial : '';
    this.float = !!opts.float;
    this.round = opts.round || 2;
    this.inc = opts.increment || 1;
    this.min = isDef(opts.min) ? opts.min : -Infinity;
    this.max = isDef(opts.max) ? opts.max : Infinity;
    this.errorMsg = opts.error || `Please Enter A Valid Value`;
    this.validator = opts.validate || (() => true);
    this.color = `cyan`;
    this.value = ``;
    this.typed = ``;
    this.lastHit = 0;
    this.render();
  }
NumberPrompt Base Element
@param {Object} opts Options
@param {String} opts.message Message
@param {String} [opts.style='default'] Render style
@param {Number} [opts.initial] Default value
@param {Number} [opts.max=+Infinity] Max value
@param {Number} [opts.min=-Infinity] Min value
@param {Boolean} [opts.float=false] Parse input as floats
@param {Number} [opts.round=2] Round floats to x decimals
@param {Number} [opts.increment=1] Number to increment by when using arrow-keys
@param {Function} [opts.validate] Validate function
@param {Stream} [opts.stdin] The Readable stream to listen to
@param {Stream} [opts.stdout] The Writable stream to write readline data to
@param {String} [opts.error] The invalid error label