export type ScriptCategory = 'emergencia' | 'hospitalaria' | 'interconsulta' | 'familia';
export type ScriptContext = 'llamada' | 'radio' | 'presencial';

export interface CommunicationScript {
  id: string;
  title: string;
  category: ScriptCategory;
  context: ScriptContext;
  content: string[];
}

export const communicationScripts: CommunicationScript[] = [
  {
    id: '1',
    title: 'Aceptación de Emergencia (ABC)',
    category: 'emergencia',
    context: 'llamada',
    content: [
      'Buenos días/tardes/noches, habla [Nombre], técnico de emergencias.',
      '¿Cuál es su emergencia?',
      '¿Dónde está?',
      '¿Cómo se llama usted?'
    ]
  },
  {
    id: '2',
    title: 'Reanimación Cardiopulmonar (RCP) por teléfono',
    category: 'emergencia',
    context: 'llamada',
    content: [
      '¿Está la persona consciente?',
      '¿Respira normalmente?',
      'Coloque a la persona boca arriba.',
      'Comience compresiones torácicas...'
    ]
  },
  {
    id: '3',
    title: 'Información al Hospital',
    category: 'hospitalaria',
    context: 'radio',
    content: [
      'A la central, informo paciente...',
      'Edad: ...',
      'Estado: ...',
      'Tiempo de llegada estimado: ...'
    ]
  }
];

// Funciones de utilidad (simplificadas)
export const getScriptsByCategory = (category: ScriptCategory): CommunicationScript[] => {
  return communicationScripts.filter(script => script.category === category);
};

export const getScriptsByContext = (context: ScriptContext): CommunicationScript[] => {
  return communicationScripts.filter(script => script.context === context);
};

export const searchScripts = (query: string): CommunicationScript[] => {
  const lowerQuery = query.toLowerCase();
  return communicationScripts.filter(script => 
    script.title.toLowerCase().includes(lowerQuery) ||
    script.content.some(line => line.toLowerCase().includes(lowerQuery))
  );
};