package test

public open class EnumArgumentWithCustomToString {
    public constructor EnumArgumentWithCustomToString()
    @test.EnumArgumentWithCustomToString.EnumAnno(value = E.CAKE) @test.EnumArgumentWithCustomToString.EnumArrayAnno(value = {E.CAKE, E.CAKE}) public/*package*/ open fun annotated(): kotlin.Unit

    public open enum class E : kotlin.Enum<test.EnumArgumentWithCustomToString.E!> {
        enum entry CAKE

        private constructor E()
        public final override /*1*/ /*fake_override*/ val name: kotlin.String
        public final override /*1*/ /*fake_override*/ val ordinal: kotlin.Int
        protected final override /*1*/ /*fake_override*/ fun clone(): kotlin.Any
        public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: test.EnumArgumentWithCustomToString.E!): kotlin.Int
        protected/*protected and package*/ final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun finalize(): kotlin.Unit
        public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<test.EnumArgumentWithCustomToString.E!>!

        // Static members
        public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): test.EnumArgumentWithCustomToString.E
        public final /*synthesized*/ fun values(): kotlin.Array<test.EnumArgumentWithCustomToString.E>
    }

    public final annotation class EnumAnno : kotlin.Annotation {
        public constructor EnumAnno(/*0*/ value: test.EnumArgumentWithCustomToString.E)
        public final val value: test.EnumArgumentWithCustomToString.E
    }

    public final annotation class EnumArrayAnno : kotlin.Annotation {
        public constructor EnumArrayAnno(/*0*/ vararg value: test.EnumArgumentWithCustomToString.E /*kotlin.Array<out test.EnumArgumentWithCustomToString.E>*/)
        public final val value: kotlin.Array<test.EnumArgumentWithCustomToString.E>
    }
}
