Nein, du hast keine doppelte Definitin. Der Typ wird einmal definiert (als enum) und es wqird eine globale Variable definiert, mit der du den enum in einen String wandeln kannst (könnte man auch in eine Funktion verpacken.)
Du kannst also mit dem enum schnell arbeiten und die Strings schön ausgeben (und ggf. später mal ändern oder lokalisieren)