{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE ScopedTypeVariables #-}

module Text.Pandoc.XMLFormat
  ( atNameAlignment,
    atNameApiVersion,
    atNameCitationHash,
    atNameCitationMode,
    atNameCitationNoteNum,
    atNameColspan,
    atNameColWidth,
    atNameFormat,
    atNameImageUrl,
    atNameLevel,
    atNameLinkUrl,
    atNameMathType,
    atNameMetaBoolValue,
    atNameMetaMapEntryKey,
    atNameNumberDelim,
    atNameNumberStyle,
    atNameQuoteType,
    atNameRowHeadColumns,
    atNameRowspan,
    atNameSpaceCount,
    atNameStart,
    atNameStrContent,
    atNameTitle,
    tgNameBodyBody,
    tgNameBodyHeader,
    tgNameCitations,
    tgNameCitationPrefix,
    tgNameCitationSuffix,
    tgNameColspecs,
    tgNameDefListDef,
    tgNameDefListItem,
    tgNameDefListTerm,
    tgNameLineItem,
    tgNameListItem,
    tgNameMetaMapEntry,
    tgNameShortCaption,
  )
where

import Data.Text (Text)

-- the attribute carrying the API version of pandoc types in the main Pandoc element
atNameApiVersion :: Text
atNameApiVersion :: Text
atNameApiVersion = Text
"api-version"

-- the element of a <meta> or <MetaMap> entry
tgNameMetaMapEntry :: Text
tgNameMetaMapEntry :: Text
tgNameMetaMapEntry = Text
"entry"

-- the attribute carrying the key name of a <meta> or <MetaMap> entry
atNameMetaMapEntryKey :: Text
atNameMetaMapEntryKey :: Text
atNameMetaMapEntryKey = Text
"key"

-- the attribute carrying the boolean value ("true" or "false") of a MetaBool
atNameMetaBoolValue :: Text
atNameMetaBoolValue :: Text
atNameMetaBoolValue = Text
"value"

-- level of a Header
atNameLevel :: Text
atNameLevel :: Text
atNameLevel = Text
"level"

-- start number of an OrderedList
atNameStart :: Text
atNameStart :: Text
atNameStart = Text
"start"

-- number delimiter of an OrderedList
atNameNumberDelim :: Text
atNameNumberDelim :: Text
atNameNumberDelim = Text
"number-delim"

-- number style of an OrderedList
atNameNumberStyle :: Text
atNameNumberStyle :: Text
atNameNumberStyle = Text
"number-style"

-- target title in Image and Link
atNameTitle :: Text
atNameTitle :: Text
atNameTitle = Text
"title"

-- target url in Image
atNameImageUrl :: Text
atNameImageUrl :: Text
atNameImageUrl = Text
"src"

-- target url in Link
atNameLinkUrl :: Text
atNameLinkUrl :: Text
atNameLinkUrl = Text
"href"

-- QuoteType of a Quoted
atNameQuoteType :: Text
atNameQuoteType :: Text
atNameQuoteType = Text
"quote-type"

-- MathType of a Math
atNameMathType :: Text
atNameMathType :: Text
atNameMathType = Text
"math-type"

-- format of a RawInline or a RawBlock
atNameFormat :: Text
atNameFormat :: Text
atNameFormat = Text
"format"

-- alignment attribute in a ColSpec or in a Cell
atNameAlignment :: Text
atNameAlignment :: Text
atNameAlignment = Text
"alignment"

-- ColWidth attribute in a ColSpec
atNameColWidth :: Text
atNameColWidth :: Text
atNameColWidth = Text
"col-width"

-- RowHeadColumns attribute in a TableBody
atNameRowHeadColumns :: Text
atNameRowHeadColumns :: Text
atNameRowHeadColumns = Text
"row-head-columns"

-- RowSpan attribute in a Cell
atNameRowspan :: Text
atNameRowspan :: Text
atNameRowspan = Text
"row-span"

-- ColSpan attribute in a Cell
atNameColspan :: Text
atNameColspan :: Text
atNameColspan = Text
"col-span"

-- the citationMode of a Citation
atNameCitationMode :: Text
atNameCitationMode :: Text
atNameCitationMode = Text
"mode"

-- the citationHash of a Citation
atNameCitationHash :: Text
atNameCitationHash :: Text
atNameCitationHash = Text
"hash"

-- the citationNoteNum of a Citation
atNameCitationNoteNum :: Text
atNameCitationNoteNum :: Text
atNameCitationNoteNum = Text
"note-num"

-- the number of consecutive spaces of the <Space> element
atNameSpaceCount :: Text
atNameSpaceCount :: Text
atNameSpaceCount = Text
"count"

-- the content of the <Str> element
atNameStrContent :: Text
atNameStrContent :: Text
atNameStrContent = Text
"content"

-- container of Citation elements in Cite inlines
tgNameCitations :: Text
tgNameCitations :: Text
tgNameCitations = Text
"citations"

-- element around the prefix inlines of a Citation
tgNameCitationPrefix :: Text
tgNameCitationPrefix :: Text
tgNameCitationPrefix = Text
"prefix"

-- element around the suffix inlines of a Citation
tgNameCitationSuffix :: Text
tgNameCitationSuffix :: Text
tgNameCitationSuffix = Text
"suffix"

-- list item for BulletList and OrderedList
tgNameListItem :: Text
tgNameListItem :: Text
tgNameListItem = Text
"item"

-- list item for DefinitionList
tgNameDefListItem :: Text
tgNameDefListItem :: Text
tgNameDefListItem = Text
"item"

-- element around the inlines of the term of a DefinitionList item
tgNameDefListTerm :: Text
tgNameDefListTerm :: Text
tgNameDefListTerm = Text
"term"

-- element around the blocks of a definition in a DefinitionList item
tgNameDefListDef :: Text
tgNameDefListDef :: Text
tgNameDefListDef = Text
"def"

-- optional element of the ShortCaption
tgNameShortCaption :: Text
tgNameShortCaption :: Text
tgNameShortCaption = Text
"ShortCaption"

-- element around the ColSpec of a Table
tgNameColspecs :: Text
tgNameColspecs :: Text
tgNameColspecs = Text
"colspecs"

-- element around the header rows of a TableBody
tgNameBodyHeader :: Text
tgNameBodyHeader :: Text
tgNameBodyHeader = Text
"header"

-- element around the body rows of a TableBody
tgNameBodyBody :: Text
tgNameBodyBody :: Text
tgNameBodyBody = Text
"body"

-- element around the inlines of a line in a LineBlock
tgNameLineItem :: Text
tgNameLineItem :: Text
tgNameLineItem = Text
"line"