"A declaration.
 
 There are only two types of declarations:
 
 - [[AnnotatedDeclaration]]s such as modules, packages, classes or functions, and
 - [[TypeParameter]] declarations."
shared sealed interface Declaration of AnnotatedDeclaration
                              | TypeParameter {
    
    "The name of this declaration. For example, the [[Declaration]] class is named \"Declaration\"."
    shared formal String name;
    
    "The qualified name of this declaration. This includes the container qualified name. For
     example, the [[Declaration]] class' qualified name is \"ceylon.language.meta.declaration::Declaration\"."
    shared formal String qualifiedName;
}