DeveloperBreeze

Generics Constraints Development Tutorials, Guides & Insights

Unlock 1+ expert-curated generics constraints tutorials, real-world code snippets, and modern dev strategies. From fundamentals to advanced topics, boost your generics constraints skills on DeveloperBreeze.

Advanced TypeScript: Type Inference and Advanced Types

Tutorial August 05, 2024
typescript

function getProperty<T, K extends keyof T>(obj: T, key: K): T[K] {
  return obj[key];
}

const person = { name: 'Alice', age: 30 };

const name = getProperty(person, 'name'); // valid
const age = getProperty(person, 'age');   // valid
// const gender = getProperty(person, 'gender'); // error
interface ApiResponse<T = any> {
  data: T;
  status: number;
  error?: string;
}

const response: ApiResponse<{ userId: number }> = {
  data: { userId: 1 },
  status: 200
};

const defaultResponse: ApiResponse = {
  data: {},
  status: 200
};