Move declaration to header file
Cast to enum on creation rather than use