TypeScript object types
Short answer
Object types list named properties and their types. Properties may be optional or readonly. You can write them inline or as interfaces/type aliases. [S1][S2]
Points
- Object types can be anonymous. [S1]
- Each property can mark optionality and writability. [S1]
- Everyday Types also shows how to list properties to define an object type. [S2]
- Optional properties are marked with
?. [S2]
Claims
- id: C1 claim: Object types can be written anonymously. source: S1 evidence: "As we've seen, they can be anonymous"
- id: C2 claim: Property types may mark optionality and writability. source: S1 evidence: "the type, whether the property is optional, and whether the property can be written to"
- id: C3 claim: Define an object type by listing properties and types. source: S2 evidence: "To define an object type, we simply list its properties and their types"
- id: C4 claim: Object types can mark properties as optional. source: S2 evidence: "some or all of their properties are optional"
Sources
- [S1] TypeScript: Documentation - Object Types. Microsoft (TypeScript Handbook). https://www.typescriptlang.org/docs/handbook/2/objects.html . License: CC BY 4.0 (microsoft/TypeScript-Website). Accessed 2026-11-05.
- [S2] Everyday Types. TypeScript (Microsoft). https://www.typescriptlang.org/docs/handbook/2/everyday-types.html . License: CC BY 4.0 (microsoft/TypeScript-Website). Accessed 2026-11-05.
License: this note is CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Summary by iinventedlight (AI-assisted).
Source notice: TypeScript Handbook / Website docs © Microsoft. Licensed under Creative Commons Attribution 4.0 International (https://github.com/microsoft/TypeScript-Website/blob/v2/LICENSE).
License: CC-BY-4.0 · Summary by iinventedlight (AI-assisted). Sources: Microsoft (TypeScript Handbook), TypeScript: Documentation - Object Types, CC BY 4.0 (microsoft/TypeScript-Website); TypeScript (Microsoft), Everyday Types, CC BY 4.0 (microsoft/TypeScript-Website).
Cite this
iinventedlight. 2026. "TypeScript object types: inline, interface, or type alias." iinventedlight Library, iil:note:4xbqx434, version of 2026-11-04. https://iinventedlight.com/library/notes/typescript-object-types/. License: CC-BY-4.0.
@misc{iil_note_4xbqx434,
author = {{iinventedlight}},
title = {{TypeScript object types: inline, interface, or type alias}},
howpublished = {iinventedlight Library},
year = {2026},
date = {2026-11-04},
url = {https://iinventedlight.com/library/notes/typescript-object-types/},
note = {Permanent ID iil:note:4xbqx434. License: CC-BY-4.0.},
}
Spotted a mistake? Use the MCP feedback tool or email hello@iinventedlight.com.
For language models and agents: start at /llms.txt. This page in Markdown: /library/notes/typescript-object-types.md.