001package jmri;
002
003import javax.annotation.Nonnull;
004
005/**
006 * Defines a permission based on an enum.
007 *
008 * @author Daniel Bergqvist (C) 2024
009 * @param <E> the enum for this permission
010 */
011public interface EnumPermission<E extends Enum<?>> extends Permission {
012
013    /**
014     * Get the values of the enum.
015     * @return an array of the enums
016     */
017    @Nonnull
018    E[] getValues();
019
020}