sindresorhus/
A collection of essential TypeScript types
USD raised
Recent activities
`SharedUnionFieldsDeep` with `undefined` in Union
ArraySlice: wrong type for union of tuples
Proposal: DeepPartialDiff
Use `number` for array indexes in `ToPath`
``ArrayTail`` doesn't work when mixed with optional elements
Proposal: Predicate inferer
JsonifiableObject & JsonifiableArray
IsBivariant
Proposal: Thunkable - a direct value or function which returns that value
`OverrideProperties` and `Merge` don't retain callable aspect of type
OmitDeep - when omitting multiple optional fields final type goes wrong
Proposal: `TupleToObject<TUPLE>`
Performance regression in Get<>
Feature request: `OptionalToExplicit` (transform optional properties to required properties that may be undefined)
`Arrayable` is unusable
Is there a type to merge value of a `Record` where each value is an object
IsAny not working with "any" as generic type argument under different constraint
Non-Empty String Type
`EmptyArray` type
Feat: Include types to remove null/undefined/optionals from a tuple
~āļāļđāļŠāļ]] āļāļĢāļāļĩāļ§āļąāļ (EP.1) āļāļāļāļāļĩāđ 1 HD āđāļāđāļĄ āđāļĢāļ·āđāļāļ āļāļđāļĒāđāļāļāļŦāļĨāļąāļ āļāļđāļĨāļ°āļāļĢāđāļāļĒ (āļāļāļāđāļĢāļ) āļāļđāļāļĢāļĩ!
Type `{}` is not assignable to type `PartialDeep<T>`
`LiteralList<Union>`
Add `IsNullable` and `IsOptional`
`PartialDeep` doesn't work with arrays
`IfxxxLiteral` (eg `IfBooleanLiteral`) are missing (only the `IsxxxLiteral` is present
`PickDeep` strips `null`
PositiveIntegerString type
A type util to produce an alternation of function overloads.
DistributedOmit may not need to constraint the second type argument
`Paths` is unable to escape dots in property names
Unify `Get` and `Paths` / `PickDeep` etc
`Proposal`: add option with exclude/keep specified type on deep type
Exclude / Pick type in Paths / only add leaf nodes
Use `NoInfer`?
IfAny circular constraint in TS 5.4+
Run `tsc` on all test files
`RepeatString` type
ReadonlyDeep: add test for function or method returning an object?
Questions about the types located in the file `/source/basic.d.ts`
Proposal: `ValueOfDeep<Type, 'key.deepKey'>`
`NonEmptyObject` fails for objects with dynamic properties
`JsonValue` can receive `type` but not `interface`
Update Merge type to accept N type arguments
IntRange Inclusive
Weekdays include weekends
SetRequiredDeep - is it possible?
NonNullableDeep
Add ConditionalKeys variation where Condition matches any in a union rather than all
Enforce Casing
IfType type guards
Nested structure without index signature is not assignable to `Jsonifiable`
Proposal: `PickNonNever<Type>`
`ConditionalSimplifyDeep` is not exported from root
Audit all types for whether they need `readonly` modifier
`PartialDeep` make `Date` internal structure partial
Writable doesn't only strip readonly from the keys
`PartialOnUndefined` with only 1 level deep
Creating an exhaustive array from a union type
Proposal: Jsonifiable<OrType = never>
Extract `ReplaceDeep` function into a separate module
Label<Type, Token>
[FR] SetNullable
RecordToMap type
Opposite of Simplify?
MemberOfUnion
`JsonObject` not limit object keys type
Expose more internal types
Jsonify makes Record<string, any> disappear
Check if we need to reduce "excessively deep error" on WritableDeep too
`Destructurable` type
Proposal: `TupleOf`
PartialDeep should skip HTMLCanvasElement
`Entries` don't works like `ObjectEntries`
Proposal: `RecordOf`
Utility Type Request: DeepUndefinedToNull
`Immutable` type
`Indices` type
`FlattenedRecordDeep` type
KeysOfType
OrderedKeysOf and OrderedValuesOf
Would be good to have DeepUndefinable
MergeUnion
Proposal: Modify, a slightly modified version of Merge
Proposal: NullToUndefined and UndefinedToNull
Changes in Except from v3.7.0 generates a huge declaration output truncated by TypeScript v4.9.5
`Escape` type
Add a `PromisableFields` type
`OverloadParameters` and `OverloadReturnType`
Jsonify breaks down with JsonValue, JsonObject
How do I use ConditionalPickDeep with PartialDeep?
Allow `SetRequired` to specify internal properties (aka optic)
Support variables in Get paths
Tuple alias for FixedLengthArray
3.5.4 breaks Array.isArray on JsonValue through #549
PackageJson type: Scripts can't be assigned
`IsEqual` identity issues
IndexOf - Find the index of a type in a tuple
`UnionToArray` type
Proposal: Merge Compatible Deep
Proposal: DiscriminateUnion
Proposal: URL Pattern API
`PartialDeep`: recurse into objects in array without changing the array itself
Use the new `satisfies` operator?
`KebabCase` and `SnakeCase` insert additional delimiters when there is an Uppercase character after a `WordSeparator`
Require parameters in functions
A bug with Exact<>, optional fields, and classes
Rename `ReadonlyDeep` to `Immutable`
`MinimumN` type
`type ExtendsFrom<Type, Subtype extends Parent> = Subtype;`
type-fest@3 - How to declare optional properties in JsonObject?
Proposal Inferred Partial type
OmitValues type
Proposal: `readme.md` builder with examples links to TS Playground
v5
ParseInteger and ParseBoolean
Provide playground link in readme and new issues
Proposal: `PropagateNever`
Add `Not<string, 'not me'>`
Proposal: Remove numbers at the end of string
`NaN` problems
`JsonValue` should be super set of `PackageJson`
Add `Truthy` and `Falsy` types
Proposal: NonDiscriminatedUnion
Is there any runtime function for `CamelCasedPropertiesDeep`
Add `Set` type
ValueType
Add `ArrayAt` type for stricter `Array.prototype.at()` with tuples
MergeExclusive with more than two types
MaybeUndefined (Partial - but with required properties)
feat: Sister of Except, stricter version of Required
snakeCasedProperties and camelCasedProperties have different behaviours when parsing numbers
Cannot copy Date type via CamelCasedPropertiesDeep
Proposal | Add an Paths type thats returns all valid paths to JSON like values
Add an IfElse type as ternary expression alternative
Improve `Opaque` type to encapsulate unique symbol tag
Stricter `FixedLengthArray`
Discussion/proposal: better typed decorators
Proposal: `IsUnion`
`RequireAtLeastOne`: Type does not narrow as expected
Add `SetNonNullable` type
Add `Passthrough` type
`keyof` for Map
SnakeCaseProperties doesn't handle PascalCase and UPPERCASE
Strict versions of Extract and Exclude
Proposal: PickOptionalKeys
Proposal: `AppendKeys` `PrependKeys`
Support array for `Writable` type?
Add IsUnion<T>
[Proposal] Tagged Union To Intersection
Improve `Simplify` type?
Rename `SetOptional` and `SetRequired`?
[Proposal] Adding in my types
ConditionalKeys didn't work fine as expected
Proposal: `Exact` and `ExactDeep`
[Proposal] allow SetRequired to return the original type
SetRequired unable to infer type
Template literal type ideas
Proposal: TypeToJSObject
Proposal: `AsyncFunction`
PartialDeep to allow overriding Object prototype properties
ConditionalKeys<Base, Condition> fails when used on Arrays
Proposal: ArrayItem
Proposal: `Must`
@ReadonlyDeep generic type
Question: is there any way to get the advantages of opaque and other options at the same time?
Proposal: `PlainObject`
Documentation improvement request: Merge versus intersection
Proposal for ModifyType ?
Optional Values of Type
Add links to try them in the TypeScript Playground
Proposal: OneOrMore
Proposal: PartialExcept
Proposal: FlipOptional
Proposal: Partial/Complete
Add `Optional` type
Add `bigint` primitive
Add `RequireOnlyOne` type
Possible improvement of Omit
Proposal: ExcludeProps
PackageJson - recommendation for extending the interface
How to use `JsonObject`?
Improve documentation and tests
Add `Diff` and `Spread` types
Add `JustProps` and `JustMethods` types
ÂĐ 2019 BoostIO, Inc.