package ${package}

import androidx.annotation.AnyThread

/**
 * Constants used by the crash reporter. These are generated so that they
 * are kept in sync with the other C++ and JS users.
 */
internal class ${class} {
    /** Crash Annotations */
    @AnyThread
    enum class Annotation private constructor (private val s: String, private val scope: String) {
        ${enum};

        public override fun toString() = s

        /** @return Whether the annotation should be included in crash pings. */
        public fun allowedInPing() = scope.equals("ping") || scope.equals("ping-only")

        /** @return Whether the annotation should be included in crash reports. */
        public fun allowedInReport() = scope.equals("ping") || scope.equals("report")
    }
}
