export const EVENT_TYPES = [
  "Birthday", "Anniversary", "Engagement", "Graduation", "Maternity",
  "Family Portrait", "Lifestyle Portrait", "Executive Portrait", "Retirement", "Personal Branding",
] as const;

export const EMOTIONS = [
  "Joy", "Romance", "Legacy", "Confidence", "Achievement",
  "Gratitude", "Family Connection", "Empowerment", "Nostalgia", "Elegance",
] as const;

export const PERSONALITIES = [
  "Elegant", "Bold", "Adventurous", "Traditional", "Romantic",
  "Minimalist", "Creative", "Luxury-Oriented", "Fun-Loving", "Professional",
] as const;

export const STYLES = [
  "Luxury Editorial", "Vogue Style", "Fine Art Portrait", "Cinematic", "Lifestyle",
  "Documentary", "Fashion", "Black & White", "Modern Minimalist", "Classic Portrait",
] as const;

export type EventType = typeof EVENT_TYPES[number];
export type Emotion = typeof EMOTIONS[number];
export type Personality = typeof PERSONALITIES[number];
export type PhotoStyle = typeof STYLES[number];

export interface PhotoshootInput {
  title: string;
  eventType: EventType | string;
  date: string;
  location: string;
  emotion: Emotion | string;
  personality: Personality | string;
  style: PhotoStyle | string;
  extraPromptIds?: string[];
  extraPromptTexts?: string[];
}

export interface ColorSwatch { name: string; hex: string }

export interface PhotoshootPlan {
  emotionalGoal: string;
  tone: string;
  visualTheme: string;
  storyTitle: string;
  storyNarrative: string;
  visualDirection: string;
  wardrobe: string[];
  colorPalette: ColorSwatch[];
  locations: { name: string; reason: string }[];
  shotList: string[];
  aiPrompts: { tool: string; prompt: string }[];
  moodboard: {
    lighting: string;
    wardrobeStyle: string;
    poseStyle: string;
    environment: string;
  };
  checklist: {
    wardrobe: string[];
    props: string[];
    makeupHair: string[];
    logistics: string[];
    backupPlan: string[];
    weather: string[];
  };
}
