Allow booleans in spread types
Allow booleans in spread types

Special-case types produced by `bool && expr` with the type `false | T`.
This spreads `Partial<T>` instead of `false | T`.

nojvek/TypeScript,microsoft/TypeScript,TukekeSoft/TypeScript,minestarks/TypeScript,TukekeSoft/TypeScript,donaldpipowitch/TypeScript,Eyas/TypeScript,Eyas/TypeScript,donaldpipowitch/TypeScript,alexeagle/TypeScript,minestarks/TypeScript,nojvek/TypeScript,nojvek/TypeScript,weswigham/TypeScript,RyanCavanaugh/TypeScript,SaschaNaz/TypeScript,basarat/TypeScript,kitsonk/TypeScript,kpreisser/TypeScript,SaschaNaz/TypeScript,alexeagle/TypeScript,synaptek/TypeScript,Eyas/TypeScript,alexeagle/TypeScript,donaldpipowitch/TypeScript,microsoft/TypeScript,kitsonk/TypeScript,synaptek/TypeScript,basarat/TypeScript,Eyas/TypeScript,donaldpipowitch/TypeScript,Microsoft/TypeScript,basarat/TypeScript,minestarks/TypeScript,Microsoft/TypeScript,RyanCavanaugh/TypeScript,kpreisser/TypeScript,kpreisser/TypeScript,RyanCavanaugh/TypeScript,synaptek/TypeScript,basarat/TypeScript,SaschaNaz/TypeScript,synaptek/TypeScript,nojvek/TypeScript,microsoft/TypeScript,weswigham/TypeScript,TukekeSoft/TypeScript,kitsonk/TypeScript,weswigham/TypeScript,SaschaNaz/TypeScript,Microsoft/TypeScript