title: Typescript Type 'number' is not assignable │ to type 'string'
body: <p>I am currently knee deep in making a currency formatter directive for an Angular 4 app. on the parse strip out everything other than the numbers and the decimal and end up with a stringified float, but I need it to return as a float so I can do math with it.</p>
  
  <pre><code>parse(value: string, fractionSize: number = 2): number {
    let val = value.replace(/([^0-9.])+/ig, '');
    let [ integer, fraction = "" ] = (val || "").split(this.DECIMAL_SEPARATOR);
    integer = integer.replace(new RegExp(this.THOUSANDS_SEPARATOR, "g"), "");
    fraction = parseInt(fraction, 10) &gt; 0 &amp;&amp; fractionSize &gt; 0
      ? this.DECIMAL_SEPARATOR + (fraction + PADDING).substring(0, fractionSize)
      : "";
    let result = `${integer}${fraction}`;
    // at this point result = "100.55";
    result = parseFloat(result); // this refuses to compile saying "Type 'number' is not assignable │ to type 'string'"
    return result;
  }
  </code></pre>