import { BreedingService, type PartnerInfo } from '@domain/services/BreedingService';

export interface GetBreedingOptionsQuery { type: 'get-breeding-options'; race: string; }

export interface BreedingOptionsResult {
  partners: readonly PartnerInfo[];
}

const breedingSvc = new BreedingService();

export function createGetBreedingOptionsHandler() {
  return (query: GetBreedingOptionsQuery): BreedingOptionsResult => {
    return { partners: breedingSvc.getCompatiblePartners(query.race) };
  };
}
