Skip to content

String Literal Types

String literal types are a powerful feature in TypeScript that allows you to specify exact string values a variable can hold. This is useful for creating more precise types and can help catch errors at compile time.

Example

typescript
const DIRECTIONS = ["left", "right", "up", "down"] as const;
type Direction = typeof DIRECTIONS[number];

// Usage
function move(direction: Direction) {
  // ...
}

// Array Usage
for (const dir of DIRECTIONS) {
  move(dir);
}

In the above examples you can see how we can both use the Direction type directly and also leverage the DIRECTIONS array for type-safe values.