TypeScript Interfaces Deep
Go deeper into interfaces: optional props, readonly, extension, and implementing interfaces in classes.
David Miller
January 11, 2026
0.3k13
Interfaces describe object shapes.
## Basic
```ts
interface User {
id: number;
name: string;
}
```
## Optional & readonly
```ts
interface User {
readonly id: number;
name: string;
email?: string;
}
```
## Extend interface
```ts
interface Admin extends User {
role: "admin";
}
```
## Implement in class
```ts
class Person implements User {
constructor(public id: number, public name: string) {}
}
```
## Graph
```mermaid
flowchart TD
A[User] --> B[Admin extends]
```
## Remember
- Interfaces define contracts
- Great for APIs and models
#TypeScript#Beginner#Interfaces