export interface Spell {
  id: number;
  isCustom: boolean;
  german: string;
  english: string;
  image: string;
  classes: string[];
  level: number;
  cost: string;
  timeToCast: number;
  duration: number;
  durationType: string;
  canRitual: boolean;
  isRitual: boolean;
  needsConcentration: boolean;
  needsVerbal: boolean;
  needsSomatic: boolean;
  needsMaterial: boolean;
  school: string;
  description_de: string;
  description_en: string;
  needsAttackRoll: boolean;
  needsSavingThrow: boolean;
  savingThrowAttribute?: string;
  isRanged: boolean;
  range?: number;
  hasAreaOfEffect: boolean;
  diameter?: number;
  areaOfEffectType?: string;

  doesDamage: boolean;
  attackBonus?: string;
  damage: Damage[];
  doesHeal: boolean;
  heal: Heal;
}

// Possible Additions

// Number of targets
// Material

interface Damage {
  diceNumber: number;
  diceType: number;
  damageType: string;
  additionalDamage?: number;
}

// additions

interface Heal {
  diceNumber: number;
  diceType: number;
  additionalHeal?: number;
}
