Generate a collection of reusable TypeScript utility types for common patterns
Create a comprehensive TypeScript utility types library for:
Domain: {{DOMAIN}} (e.g., API responses, form handling, state management)
Strictness Level: {{STRICTNESS}} (strict/moderate/loose)
Generate utility types including:
1. **Object Manipulation:**
- DeepPartial<T>
- DeepRequired<T>
- DeepReadonly<T>
- Mutable<T>
- PickByValue<T, V>
- OmitByValue<T, V>
- RequiredKeys<T>
- OptionalKeys<T>
2. **Union/Intersection Helpers:**
- UnionToIntersection<U>
- ExtractUnion<T, U>
- ExcludeUnion<T, U>
- Discriminate<T, K, V>
3. **Function Types:**
- AsyncReturnType<T>
- PromiseType<T>
- Parameters<T> extensions
- Curried<T>
- Debounced<T>
4. **Array/Tuple Types:**
- Head<T>
- Tail<T>
- Last<T>
- Flatten<T>
- TupleToUnion<T>
- ArrayElement<T>
5. **String Manipulation:**
- CamelCase<S>
- SnakeCase<S>
- KebabCase<S>
- Capitalize<S>
- Split<S, D>
6. **API/Data Types:**
- ApiResponse<T>
- PaginatedResponse<T>
- ErrorResponse
- Nullable<T>
- NonNullableDeep<T>
Include JSDoc comments with usage examples for each type.Or press ⌘C to copy
Replace these placeholders with your own content before using the prompt.
[{DOMAIN][{STRICTNESS]