Comments (4)
This is invalid. undefined
and null
are subtypes of all types. Anything and everything can have null or undefined compared to or assigned to it.
https://www.typescriptlang.org/docs/handbook/basic-types.html
Scroll down to the Null and Undefined
section for more information.
from discord.js-typings.
Yes, but --strictNullChecks won't catch it without an explicit definition.
from discord.js-typings.
Accommodating strictNullChecks in typings is one: an exercise in frustration, and two: not common practice in module typings from what I have seen.
To my knowledge strictNullChecks prevents you from assigning null/undefined to variables declared as anything but null/undefined or from returning them in non-void functions that don't explicitly state it. This does not prevent you from making checks to verify that a returned value is actually null or undefined.
I could be wrong, I suppose but I personally have no intention of throwing | null | undefined
union types onto every method return signature.
from discord.js-typings.
--strictNullChecks forces you to either explicitly handle a potential null value or get a compile-time type error (say you intended to return number, but you're actually returning number | undefined, which is an error). See here: https://www.typescriptlang.org/docs/handbook/advanced-types.html
from discord.js-typings.
Related Issues (18)
- Make node types optional HOT 3
- DMChannel.send() return type wrong? HOT 1
- MessageOptions property 'code' should be type 'string' | 'boolean' HOT 1
- Add 'How to use' section in readme HOT 2
- Missing "Constants" export
- package.json missing name HOT 2
- Contribute to Definetely Typed HOT 3
- Namespace naming conflicts and inconsistency HOT 5
- discord.js 11.3.0 errors HOT 3
- node_modules/discord.js/typings/index.d.ts(267,40): error TS2689: Cannot extend an interface 'Map'. Did you mean 'implements'? HOT 11
- Cannot get typings to load HOT 2
- Turn this repostory into a npm @types package. HOT 1
- MessageOptions.files should be updated HOT 1
- Use interfaces instead of type aliases HOT 2
- Missing definition for GuildMemberRoleStore#sweep HOT 1
- createMessageCollector() options should be MessageCollectorOptions instead of CollectorOptions HOT 1
- Make this a separate git repo HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from discord.js-typings.