/// <reference types="npm:@types/react@18.3.1" />
import * as React from 'npm:react@18.3.1'

export interface TemplateEntry {
  component: React.ComponentType<any>
  subject: string | ((data: Record<string, any>) => string)
  to?: string
  displayName?: string
  previewData?: Record<string, any>
}
import { template as tenantInfoRequest } from './tenant-info-request.tsx'
import { template as ticketSubmitted } from './ticket-submitted.tsx'
import { template as ticketResponse } from './ticket-response.tsx'
import { template as vendorInsuranceRequest } from './vendor-insurance-request.tsx'
import { template as vendorProfileRequest } from './vendor-profile-request.tsx'
import { template as signupCodeInvite } from './signup-code-invite.tsx'
import { template as taskNotification } from './task-notification.tsx'
import { template as electionInvite } from './election-invite.tsx'
import { template as boardVoteInvite } from './board-vote-invite.tsx'
import { template as billApprovalRequest } from './bill-approval-request.tsx'
import { template as billApprovalVoteInvite } from './bill-approval-vote-invite.tsx'

export const TEMPLATES: Record<string, TemplateEntry> = {
  'ticket-submitted': ticketSubmitted,
  'ticket-response': ticketResponse,
  'vendor-insurance-request': vendorInsuranceRequest,
  'vendor-profile-request': vendorProfileRequest,
  'signup-code-invite': signupCodeInvite,
  'task-notification': taskNotification,
  'election-invite': electionInvite,
  'board-vote-invite': boardVoteInvite,
  'tenant-info-request': tenantInfoRequest,
  'bill-approval-request': billApprovalRequest,
  'bill-approval-vote-invite': billApprovalVoteInvite,
}
