package test

public trait AnnotationInParam : java.lang.Object {
    
    test.AnnotationInParam.MyAnnotationWithParam(value = MyAnnotation[value = "test"]: test.AnnotationInParam.MyAnnotation) public open class A : java.lang.Object {
        public constructor A()
    }
    
    test.AnnotationInParam.MyAnnotationWithParam2(value = MyAnnotation2[value = ["test", "test2"]]: test.AnnotationInParam.MyAnnotation2) public open class B : java.lang.Object {
        public constructor B()
    }
    
    test.AnnotationInParam.MyAnnotationWithParam3(value = MyAnnotation3[first = "f", second = "s"]: test.AnnotationInParam.MyAnnotation3) public open class C : java.lang.Object {
        public constructor C()
    }
    
    public final annotation class MyAnnotation : jet.Annotation {
        public constructor MyAnnotation(/*0*/ value: jet.String?)
        public abstract fun value(): jet.String?
    }
    
    public final annotation class MyAnnotation2 : jet.Annotation {
        public constructor MyAnnotation2(/*0*/ vararg value: jet.String? /*jet.Array<jet.String>?*/)
        public abstract fun value(): jet.Array<jet.String>?
    }
    
    public final annotation class MyAnnotation3 : jet.Annotation {
        public constructor MyAnnotation3(/*0*/ first: jet.String?, /*1*/ second: jet.String?)
        public abstract fun first(): jet.String?
        public abstract fun second(): jet.String?
    }
    
    public final annotation class MyAnnotationWithParam : jet.Annotation {
        public constructor MyAnnotationWithParam(/*0*/ value: test.AnnotationInParam.MyAnnotation?)
        public abstract fun value(): test.AnnotationInParam.MyAnnotation?
    }
    
    public final annotation class MyAnnotationWithParam2 : jet.Annotation {
        public constructor MyAnnotationWithParam2(/*0*/ value: test.AnnotationInParam.MyAnnotation2?)
        public abstract fun value(): test.AnnotationInParam.MyAnnotation2?
    }
    
    public final annotation class MyAnnotationWithParam3 : jet.Annotation {
        public constructor MyAnnotationWithParam3(/*0*/ value: test.AnnotationInParam.MyAnnotation3?)
        public abstract fun value(): test.AnnotationInParam.MyAnnotation3?
    }
}
