feat: do not expose hasAnnotation, readAnnotation, expose TransientScope