function emptySet ( ) { const set = new Set ( ) ; } function noConstructorArgs ( ) { const set = new Set ; } function nonStringSet ( ) { const set = new Set ( [ 1 , 2 , 3 ] ) ; } function setOfStrings ( ) { const set = new Set ( [ 'abc' ] ) ; } function setOfChars ( ) { const set = new Set ( 'abc' . split ( '' ) ) ; } function explicitlyAllowString ( ) { const set = new Set ( 'abc' as Iterable < string > ) ; } function justAKeyCalledSet ( obj ) { const set = new obj . Set ( 'abc' ) ; } function destructuredConstructorCalledSet ( obj ) { const { Set } = obj ; const set = new Set ( 'abc' ) ; } function locallyDeclaredSet ( ) { class Set { constructor ( private s ) { } } const set = new Set ( 'abc' ) ; }