<!-- source-hash: b8477e619839e162b7edcfaaf835462d -->
Centralized type definitions for shell/script types supported across the Flamingo platform. Provides a single source of truth for shell metadata, icons, and labels based on Tactical RMM supported types.

## Key Components

- **ShellTypeValues** - Const object defining all supported shell type constants (POWERSHELL, CMD, BASH, etc.)
- **ShellType** - Union type derived from ShellTypeValues for type safety
- **ShellTypeDefinition** - Interface defining shell metadata structure with id, label, value, and icon
- **SHELL_TYPES** - Complete array of all shell definitions with associated React icons
- **shellLabels** - Record mapping shell types to display-friendly labels

## Usage Example

```typescript
import { SHELL_TYPES, ShellType, ShellTypeValues, shellLabels } from './shell.types'

// Type-safe shell type usage
const shellType: ShellType = ShellTypeValues.POWERSHELL

// Get shell definition with icon
const powershellDef = SHELL_TYPES.find(s => s.id === ShellTypeValues.POWERSHELL)
const PowershellIcon = powershellDef?.icon

// Render shell selector
function ShellSelector() {
  return (
    <select>
      {SHELL_TYPES.map(shell => (
        <option key={shell.id} value={shell.value}>
          {shell.label}
        </option>
      ))}
    </select>
  )
}

// Get display label
const label = shellLabels[ShellTypeValues.BASH] // "Bash"
```