Ignore visibility on extern type alias like on other items
diff --git a/syntax/parse.rs b/syntax/parse.rs
index c90125a..009c3df 100644
--- a/syntax/parse.rs
+++ b/syntax/parse.rs
@@ -16,7 +16,7 @@
     GenericArgument, GenericParam, Generics, Ident, ItemEnum, ItemImpl, ItemStruct, Lit, LitStr,
     Pat, PathArguments, Result, ReturnType, Token, TraitBound, TraitBoundModifier,
     Type as RustType, TypeArray, TypeBareFn, TypeParamBound, TypePath, TypeReference,
-    Variant as RustVariant,
+    Variant as RustVariant, Visibility,
 };
 
 pub mod kw {
@@ -576,6 +576,7 @@
 ) -> Result<Api> {
     |input: ParseStream| -> Result<Api> {
         let attrs = input.call(Attribute::parse_outer)?;
+        input.parse::<Visibility>()?;
         let type_token: Token![type] = match input.parse()? {
             Some(type_token) => type_token,
             None => {