Document TypeScript/type definitions and interfaces
Create documentation for these type definitions:
**Language:** {{LANGUAGE}} (TypeScript, Flow, etc.)
**Package:** {{PACKAGE_NAME}}
**Type Definitions:**
```typescript
{{TYPE_DEFINITIONS}}
```
Generate comprehensive type documentation:
# {{PACKAGE_NAME}} Type Definitions
## Overview
- What these types represent
- Design principles
- Usage patterns
## Types Reference
### Interface: {{InterfaceName}}
{{Description of the interface}}
```typescript
interface {{InterfaceName}} {
property: type;
}
```
| Property | Type | Required | Description |
|----------|------|----------|-------------|
| property | string | Yes | Description |
| optional | number | No | Description |
**Example:**
```typescript
const example: {{InterfaceName}} = {
property: "value"
};
```
---
### Type: {{TypeName}}
```typescript
type {{TypeName}} = /* definition */;
```
**Description:** What this type represents
**Possible Values:**
- Value 1: Description
- Value 2: Description
---
### Enum: {{EnumName}}
```typescript
enum {{EnumName}} {
Value1 = "VALUE_1",
Value2 = "VALUE_2"
}
```
| Value | Description |
|-------|-------------|
---
[Continue for all types]
## Generic Types
### Generic<T>
Description of generic usage
```typescript
// Usage with different types
Generic<string>
Generic<number>
```
## Type Guards
### isTypeName(value)
```typescript
function isTypeName(value: unknown): value is TypeName {
// Implementation
}
```
## Utility Types
Custom utility types provided
## Common Patterns
How to use these types effectively
## Migration Notes
Changes from previous versionsOr press ⌘C to copy
Replace these placeholders with your own content before using the prompt.
[{LANGUAGE][{PACKAGE_NAME][{TYPE_DEFINITIONS]{{InterfaceName}{{Description of the interface}{
property: type;
}{
property: "value"
}{{TypeName}{{EnumName}{
Value1 = "VALUE_1",
Value2 = "VALUE_2"
}{
// Implementation
}