{ name : String
, imports : List Import
, declarations : List (Declaration meta)
}
{ path : ImportSpecifier
, name : List String
, exposed : List String
}
exposes : String -> Module meta -> Basics.Bool
imports : ImportSpecifier -> Module meta -> Basics.Bool
externs : Module meta -> List String
map : (Declaration a -> Declaration b) -> Module a -> Module b
mapImports : (Import -> Import) -> Module meta -> Module meta