Merge pull request 'added ts string literal types' (#8) from feat/ts-literal into main
All checks were successful
Build, Test & Publish / Build (push) Successful in 24s
Build, Test & Publish / Build and Publish Container Image (push) Successful in 1m3s
Build, Test & Publish / Deploy to Infrastructure (push) Successful in 1m24s

Reviewed-on: #8
This commit is contained in:
2025-08-15 13:27:01 +10:00
4 changed files with 37 additions and 0 deletions

View File

@@ -154,6 +154,14 @@ export default defineConfig({
{ text: 'Ansible Inventory Generation', link: '/terraform/ansible-inventory-generation' },
]
},
{
text: 'Typescript',
link: '/typescript/',
collapsed: true,
items: [
{ text: 'String Literal Types', link: '/typescript/string-literal-types' },
]
}
],
socialLinks: [

View File

@@ -62,6 +62,10 @@ hero:
text: Terraform
link: /terraform/
- theme: alt
text: Typescript
link: /typescript/
# features:
# - title: Feature A
# details: Lorem ipsum dolor sit amet, consectetur adipiscing elit

3
docs/typescript/index.md Normal file
View File

@@ -0,0 +1,3 @@
# Typescript Snippets and Musings
#### [String Literal Types](./string-literal-types.md)

View File

@@ -0,0 +1,22 @@
# 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.