Improve type signature for return value to be based on first arg #22
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Improves the type signature of the stringify function to take into account the main argument that we are serializing. If it is a primitive scalar, array, or object, and there is no second argument then the return value will always be a string.
As this is the common case for user applications, this improves the user experience as we do not have to check the result to ensure the value is defined. For most use cases where the callsite has a primitive, array, or object and is using the default serilaization options, the return value will be known to be a string
This likely addresses most real world issues with #19 as only those with custom options would get
string | undefinedas the return type.If you want to try this out, enable strict null checks in
tsconfig.jsonand then try this: