module Rakka.Wiki ( WikiPage , WikiElement(..) , BlockElement(..) , InlineElement(..) ) where import Rakka.Page type WikiPage = [WikiElement] data WikiElement = Block !BlockElement | Inline !InlineElement deriving (Eq, Show) data BlockElement = Heading { headingLevel :: !Int , headingText :: !String } | EmptyLine deriving (Eq, Show) data InlineElement = Text !String | PageLink { linkPage :: !(Maybe PageName) , linkFragment :: !(Maybe String) , linkText :: !(Maybe String) } deriving (Eq, Show)