Open
Description
lib Update Request
Configuration Check
My compilation target is ES2018
and my lib is ["ES2016", "dom"]
.
Missing / Incorrect Imprecise Definitions
At least toUpperCase
and toLowerCase
methods on String
, maybe/probably also the Locale
versions?
Sample Code
type LittleT = "t" | "tt";
type BigT = Uppercase<LittleT>;
declare const smol: LittleT;
const big: BigT = smol.toUpperCase(); // err, string is not assignable to "T" | "TT
Documentation Link
https://tc39.es/ecma262/#sec-string.prototype.tolowercase
Note
I'm not sure about the Locale
versions of these methods because I don't know what algorithm the "intrinsic" Uppercase<T>
/ Lowercase<T>
helper types are required to follow. (Do we need separate LocaleUppercase
/ LocaleLowercase
helpers?)
Also worth mentioning: I think what I'm looking for is a return type of e.g. Uppercase<this>
, which shouldn't have an impact on non-literal string types because Uppercase<string>
is just string
.