/**
 * Dating Service
 *
 * Provides complete dating functionality including:
 * - Compatibility scoring
 * - Match attempts with serendipity
 * - AI-powered bio generation
 * - Date activities with mini-games
 * - Relationship events system
 */

// Compatibility
export {
  calculateCompatibility,
  getCompatibilityLevel,
  getCompatibilityBreakdown,
  type CompatibilityPerson,
} from './compatibility.js';

// Matching
export {
  attemptMatch,
  hasAttemptedMatch,
  getMatchHistory,
  getSuccessfulMatches,
  getSuccessRate,
  getMatchStats,
  clearMatchHistory,
  clearAllMatches,
  type MatchResult,
  type MatchAttempt,
  type MatchHistory,
  type MatchSuccessRate,
} from './matching.js';

// Bio Generator
export {
  generateDatingBio,
  getOrGenerateBio,
  regenerateBioOnLifeChange,
  batchGenerateBios,
  clearBioCache,
  clearAllBioCaches,
  getBioCacheStats,
  type BioPersonData,
  type LifeChangeEvent,
} from './bioGenerator.js';

// Relationship Events
export {
  getAffinityChange24h,
  hasRecentEvent,
  hasMetFamily,
  getEventByType,
  checkRelationshipTriggers,
  createRelationshipQuestionEvent,
  processResolution,
  getEventHistory,
  getRelationshipStats,
  getAllEventDefinitions,
  clearEventHistory,
  type RelationshipEventOption,
  type RelationshipEventDefinition,
  type RelationshipEvent,
  type RelationshipEventRecord,
  type ProcessResolutionResult,
} from './relationshipEvents.js';

// Random Weekly Relationship Events (re-exported from events module)
export {
  handleRandomRelationshipEvents,
  processWeeklyRelationshipEvents,
  hasActiveRomance,
  getRelationshipHealth,
  getAllRandomEvents,
  type RandomRelationshipEvent,
} from '../../events/relationships/index.js';
