<!-- source-hash: 3cf812bf6ac477a682640f0eea595b02 -->
A TypeScript definition file that provides a comprehensive type system for managing vendor links in a normalized database structure, supporting both legacy and modern link storage patterns.

## Key Components

- **`VendorLinkType`** - Union type defining 12 supported link categories (website, github_repo, docs, social media, etc.)
- **`VendorLink`** - Complete database record interface with metadata like display order and primary status
- **`VendorLinkInput`** - Streamlined interface for creating/updating vendor links
- **`VendorLinksGrouped`** - Utility type for organizing links by category
- **`LinkDisplayConfig`** - UI configuration interface with icons, labels, and display priority
- **`VendorWithLinks`** - Hybrid interface supporting both legacy columns and normalized link relationships
- **`VendorLinkFallback`** - Utility interface for migrating between old and new link systems

## Usage Example

```typescript
// Creating a new vendor link
const newLink: VendorLinkInput = {
  vendor_id: 123,
  link_type: 'github_repo',
  link_url: 'https://github.com/vendor/project',
  link_title: 'Main Repository',
  is_primary: true,
  display_order: 1
};

// Grouping links by type
const groupedLinks: VendorLinksGrouped = {
  website: [primaryWebsiteLink],
  github_repo: [mainRepo, docsRepo],
  docs: [apiDocs, userGuide]
};

// Working with vendor data during migration
const vendor: VendorWithLinks = {
  id: 123,
  title: 'Example Vendor',
  website: 'https://example.com', // Legacy column
  vendor_links: [normalizedLinks] // New system
};
```