What is 'Partial' and how is it implemented under the hood?

Updated May 4, 2026

Short answer

Partial<T> makes all properties of an object type optional.

Deep explanation

Partial is one of the most common built-in utility types. It is implemented using a mapped type. It iterates over all keys of the provided type T and appends the ? modifier to each property, making it possible to provide only a subset of the object's properties.

Real-world example

Handling 'PATCH' requests in an API where the user only sends the specific fields they wish to update.

Common mistakes

  • Using `Partial` when you actually need a type where at least one property is required.

Follow-up questions

  • What is the opposite of Partial?

More TypeScript interview questions

View all →