-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/

-- | DSL for SVG using lucid for HTML
--   
--   Easy to write SVG in the syle of lucid.
@package lucid-svg
@version 0.7.1.1

-- | SVG Attributes.
module Lucid.Svg.Attributes

-- | The accentHeight attribute.
accent_height_ :: Text -> Attribute

-- | The accumulate attribute.
accumulate_ :: Text -> Attribute

-- | The additive attribute.
additive_ :: Text -> Attribute

-- | The alignmentBaseline attribute.
alignment_baseline_ :: Text -> Attribute

-- | The alphabetic attribute.
alphabetic_ :: Text -> Attribute

-- | The amplitude attribute.
amplitude_ :: Text -> Attribute

-- | The arabicForm attribute.
arabic_form_ :: Text -> Attribute

-- | The ascent attribute.
ascent_ :: Text -> Attribute

-- | The attributename attribute.
attributeName_ :: Text -> Attribute

-- | The attributetype attribute.
attributeType_ :: Text -> Attribute

-- | The azimuth attribute.
azimuth_ :: Text -> Attribute

-- | The basefrequency attribute.
baseFrequency_ :: Text -> Attribute

-- | The baseprofile attribute.
baseprofile_ :: Text -> Attribute

-- | The baselineShift attribute.
baseline_shift_ :: Text -> Attribute

-- | The bbox attribute.
bbox_ :: Text -> Attribute

-- | The begin attribute.
begin_ :: Text -> Attribute

-- | The bias attribute.
bias_ :: Text -> Attribute

-- | The by attribute.
by_ :: Text -> Attribute

-- | The calcmode attribute.
calcMode_ :: Text -> Attribute

-- | The capHeight attribute.
cap_height_ :: Text -> Attribute

-- | The class attribute.
class_ :: Text -> Attribute

-- | The clip attribute.
clip_ :: Text -> Attribute

-- | The clip-path attribute.
clip_path_ :: Text -> Attribute

-- | The clipRule attribute.
clip_rule_ :: Text -> Attribute

-- | The clippathunits attribute.
clipPathUnits_ :: Text -> Attribute

-- | The color attribute.
color_ :: Text -> Attribute

-- | The colorInterpolation attribute.
color_interpolation_ :: Text -> Attribute

-- | The colorInterpolationFilters attribute.
color_interpolation_filters_ :: Text -> Attribute

-- | The colorProfile attribute.
color_profile_ :: Text -> Attribute

-- | The colorRendering attribute.
color_rendering_ :: Text -> Attribute

-- | The contentscripttype attribute.
contentScriptType_ :: Text -> Attribute

-- | The contentstyletype attribute.
contentStyleType_ :: Text -> Attribute

-- | The cursor attribute.
cursor_ :: Text -> Attribute

-- | The cx attribute.
cx_ :: Text -> Attribute

-- | The cy attribute.
cy_ :: Text -> Attribute

-- | The d attribute.
d_ :: Text -> Attribute

-- | The descent attribute.
descent_ :: Text -> Attribute

-- | The diffuseconstant attribute.
diffuseConstant_ :: Text -> Attribute

-- | The direction attribute.
direction_ :: Text -> Attribute

-- | The display attribute.
display_ :: Text -> Attribute

-- | The divisor attribute.
divisor_ :: Text -> Attribute

-- | The dominantBaseline attribute.
dominant_baseline_ :: Text -> Attribute

-- | The dur attribute.
dur_ :: Text -> Attribute

-- | The dx attribute.
dx_ :: Text -> Attribute

-- | The dy attribute.
dy_ :: Text -> Attribute

-- | The edgemode attribute.
edgeMode_ :: Text -> Attribute

-- | The elevation attribute.
elevation_ :: Text -> Attribute

-- | The enableBackground attribute.
enable_background_ :: Text -> Attribute

-- | The end attribute.
end_ :: Text -> Attribute

-- | The exponent attribute.
exponent_ :: Text -> Attribute

-- | The externalresourcesrequired attribute.
externalResourcesRequired_ :: Text -> Attribute

-- | The fill attribute.
fill_ :: Text -> Attribute

-- | The fillOpacity attribute.
fill_opacity_ :: Text -> Attribute

-- | The fillRule attribute.
fill_rule_ :: Text -> Attribute

-- | The filter attribute.
filter_ :: Text -> Attribute

-- | The filterres attribute.
filterRes_ :: Text -> Attribute

-- | The filterunits attribute.
filterUnits_ :: Text -> Attribute

-- | The floodColor attribute.
flood_color_ :: Text -> Attribute

-- | The floodOpacity attribute.
flood_opacity_ :: Text -> Attribute

-- | The fontFamily attribute.
font_family_ :: Text -> Attribute

-- | The fontSize attribute.
font_size_ :: Text -> Attribute

-- | The fontSizeAdjust attribute.
font_size_adjust_ :: Text -> Attribute

-- | The fontStretch attribute.
font_stretch_ :: Text -> Attribute

-- | The fontStyle attribute.
font_style_ :: Text -> Attribute

-- | The fontVariant attribute.
font_variant_ :: Text -> Attribute

-- | The fontWeight attribute.
font_weight_ :: Text -> Attribute

-- | The format attribute.
format_ :: Text -> Attribute

-- | The from attribute.
from_ :: Text -> Attribute

-- | The fx attribute.
fx_ :: Text -> Attribute

-- | The fy attribute.
fy_ :: Text -> Attribute

-- | The g1 attribute.
g1_ :: Text -> Attribute

-- | The g2 attribute.
g2_ :: Text -> Attribute

-- | The glyphName attribute.
glyph_name_ :: Text -> Attribute

-- | The glyphOrientationHorizontal attribute.
glyph_orientation_horizontal_ :: Text -> Attribute

-- | The glyphOrientationVertical attribute.
glyph_orientation_vertical_ :: Text -> Attribute

-- | The -- | The gradienttransform@ attribute.
gradientTransform_ :: Text -> Attribute

-- | The gradientunits attribute.
gradientUnits_ :: Text -> Attribute

-- | The hanging attribute.
hanging_ :: Text -> Attribute

-- | The height attribute.
height_ :: Text -> Attribute

-- | The horizAdvX attribute.
horiz_adv_x_ :: Text -> Attribute

-- | The horizOriginX attribute.
horiz_origin_x_ :: Text -> Attribute

-- | The horizOriginY attribute.
horiz_origin_y_ :: Text -> Attribute

-- | The id attribute.
id_ :: Text -> Attribute

-- | The ideographic attribute.
ideographic_ :: Text -> Attribute

-- | The imageRendering attribute.
image_rendering_ :: Text -> Attribute

-- | The in attribute.
in_ :: Text -> Attribute

-- | The in2 attribute.
in2_ :: Text -> Attribute

-- | The intercept attribute.
intercept_ :: Text -> Attribute

-- | The k attribute.
k_ :: Text -> Attribute

-- | The k1 attribute.
k1_ :: Text -> Attribute

-- | The k2 attribute.
k2_ :: Text -> Attribute

-- | The k3 attribute.
k3_ :: Text -> Attribute

-- | The k4 attribute.
k4_ :: Text -> Attribute

-- | The kernelmatrix attribute.
kernelMatrix_ :: Text -> Attribute

-- | The kernelunitlength attribute.
kernelUnitLength_ :: Text -> Attribute

-- | The kerning attribute.
kerning_ :: Text -> Attribute

-- | The keypoints attribute.
keyPoints_ :: Text -> Attribute

-- | The keysplines attribute.
keySplines_ :: Text -> Attribute

-- | The keytimes attribute.
keyTimes_ :: Text -> Attribute

-- | The lang attribute.
lang_ :: Text -> Attribute

-- | The lengthadjust attribute.
lengthAdjust_ :: Text -> Attribute

-- | The letterSpacing attribute.
letter_spacing_ :: Text -> Attribute

-- | The lightingColor attribute.
lighting_color_ :: Text -> Attribute

-- | The limitingconeangle attribute.
limitingConeAngle_ :: Text -> Attribute

-- | The local attribute.
local_ :: Text -> Attribute

-- | The markerEnd attribute.
marker_end_ :: Text -> Attribute

-- | The markerMid attribute.
marker_mid_ :: Text -> Attribute

-- | The markerStart attribute.
marker_start_ :: Text -> Attribute

-- | The markerheight attribute.
markerHeight_ :: Text -> Attribute

-- | The markerunits attribute.
markerUnits_ :: Text -> Attribute

-- | The markerwidth attribute.
markerWidth_ :: Text -> Attribute

-- | The maskcontentunits attribute.
maskContentUnits_ :: Text -> Attribute

-- | The maskunits attribute.
maskUnits_ :: Text -> Attribute

-- | The mathematical attribute.
mathematical_ :: Text -> Attribute

-- | The max attribute.
max_ :: Text -> Attribute

-- | The media attribute.
media_ :: Text -> Attribute

-- | The method attribute.
method_ :: Text -> Attribute

-- | The min attribute.
min_ :: Text -> Attribute

-- | The mode attribute.
mode_ :: Text -> Attribute

-- | The name attribute.
name_ :: Text -> Attribute

-- | The numoctaves attribute.
numOctaves_ :: Text -> Attribute

-- | The offset attribute.
offset_ :: Text -> Attribute

-- | The onabort attribute.
onabort_ :: Text -> Attribute

-- | The onactivate attribute.
onactivate_ :: Text -> Attribute

-- | The onbegin attribute.
onbegin_ :: Text -> Attribute

-- | The onclick attribute.
onclick_ :: Text -> Attribute

-- | The onend attribute.
onend_ :: Text -> Attribute

-- | The onerror attribute.
onerror_ :: Text -> Attribute

-- | The onfocusin attribute.
onfocusin_ :: Text -> Attribute

-- | The onfocusout attribute.
onfocusout_ :: Text -> Attribute

-- | The onload attribute.
onload_ :: Text -> Attribute

-- | The onmousedown attribute.
onmousedown_ :: Text -> Attribute

-- | The onmousemove attribute.
onmousemove_ :: Text -> Attribute

-- | The onmouseout attribute.
onmouseout_ :: Text -> Attribute

-- | The onmouseover attribute.
onmouseover_ :: Text -> Attribute

-- | The onmouseup attribute.
onmouseup_ :: Text -> Attribute

-- | The onrepeat attribute.
onrepeat_ :: Text -> Attribute

-- | The onresize attribute.
onresize_ :: Text -> Attribute

-- | The onscroll attribute.
onscroll_ :: Text -> Attribute

-- | The onunload attribute.
onunload_ :: Text -> Attribute

-- | The onzoom attribute.
onzoom_ :: Text -> Attribute

-- | The opacity attribute.
opacity_ :: Text -> Attribute

-- | The operator attribute.
operator_ :: Text -> Attribute

-- | The order attribute.
order_ :: Text -> Attribute

-- | The orient attribute.
orient_ :: Text -> Attribute

-- | The orientation attribute.
orientation_ :: Text -> Attribute

-- | The origin attribute.
origin_ :: Text -> Attribute

-- | The overflow attribute.
overflow_ :: Text -> Attribute

-- | The overlinePosition attribute.
overline_position_ :: Text -> Attribute

-- | The overlineThickness attribute.
overline_thickness_ :: Text -> Attribute

-- | The panose1 attribute.
panose_1_ :: Text -> Attribute

-- | The paint-order attribute.
paint_order_ :: Text -> Attribute

-- | The path attribute.
path_ :: Text -> Attribute

-- | The pathlength attribute.
pathLength_ :: Text -> Attribute

-- | The patterncontentunits attribute.
patternContentUnits_ :: Text -> Attribute

-- | The patterntransform attribute.
patternTransform_ :: Text -> Attribute

-- | The patternunits attribute.
patternUnits_ :: Text -> Attribute

-- | The pointerEvents attribute.
pointer_events_ :: Text -> Attribute

-- | The points attribute.
points_ :: Text -> Attribute

-- | The pointsatx attribute.
pointsAtX_ :: Text -> Attribute

-- | The pointsaty attribute.
pointsAtY_ :: Text -> Attribute

-- | The pointsatz attribute.
pointsAtZ_ :: Text -> Attribute

-- | The preservealpha attribute.
preserveAlpha_ :: Text -> Attribute

-- | The preserveaspectratio attribute.
preserveAspectRatio_ :: Text -> Attribute

-- | The primitiveunits attribute.
primitiveUnits_ :: Text -> Attribute

-- | The r attribute.
r_ :: Text -> Attribute

-- | The radius attribute.
radius_ :: Text -> Attribute

-- | The refx attribute.
refX_ :: Text -> Attribute

-- | The refy attribute.
refY_ :: Text -> Attribute

-- | The renderingIntent attribute.
rendering_intent_ :: Text -> Attribute

-- | The repeatcount attribute.
repeatCount_ :: Text -> Attribute

-- | The repeatdur attribute.
repeatDur_ :: Text -> Attribute

-- | The requiredextensions attribute.
requiredExtensions_ :: Text -> Attribute

-- | The requiredfeatures attribute.
requiredFeatures_ :: Text -> Attribute

-- | The restart attribute.
restart_ :: Text -> Attribute

-- | The result attribute.
result_ :: Text -> Attribute

-- | The rotate attribute.
rotate_ :: Text -> Attribute

-- | The rx attribute.
rx_ :: Text -> Attribute

-- | The ry attribute.
ry_ :: Text -> Attribute

-- | The scale attribute.
scale_ :: Text -> Attribute

-- | The seed attribute.
seed_ :: Text -> Attribute

-- | The shapeRendering attribute.
shape_rendering_ :: Text -> Attribute

-- | The slope attribute.
slope_ :: Text -> Attribute

-- | The spacing attribute.
spacing_ :: Text -> Attribute

-- | The specularconstant attribute.
specularConstant_ :: Text -> Attribute

-- | The specularexponent attribute.
specularExponent_ :: Text -> Attribute

-- | The spreadmethod attribute.
spreadMethod_ :: Text -> Attribute

-- | The startoffset attribute.
startOffset_ :: Text -> Attribute

-- | The stddeviation attribute.
stdDeviation_ :: Text -> Attribute

-- | The stemh attribute.
stemh_ :: Text -> Attribute

-- | The stemv attribute.
stemv_ :: Text -> Attribute

-- | The stitchtiles attribute.
stitchTiles_ :: Text -> Attribute

-- | The stopColor attribute.
stop_color_ :: Text -> Attribute

-- | The stopOpacity attribute.
stop_opacity_ :: Text -> Attribute

-- | The strikethroughPosition attribute.
strikethrough_position_ :: Text -> Attribute

-- | The strikethroughThickness attribute.
strikethrough_thickness_ :: Text -> Attribute

-- | The string attribute.
string_ :: Text -> Attribute

-- | The stroke attribute.
stroke_ :: Text -> Attribute

-- | The strokeDasharray attribute.
stroke_dasharray_ :: Text -> Attribute

-- | The strokeDashoffset attribute.
stroke_dashoffset_ :: Text -> Attribute

-- | The strokeLinecap attribute.
stroke_linecap_ :: Text -> Attribute

-- | The strokeLinejoin attribute.
stroke_linejoin_ :: Text -> Attribute

-- | The strokeMiterlimit attribute.
stroke_miterlimit_ :: Text -> Attribute

-- | The strokeOpacity attribute.
stroke_opacity_ :: Text -> Attribute

-- | The strokeWidth attribute.
stroke_width_ :: Text -> Attribute

-- | The style attribute.
style_ :: Text -> Attribute

-- | The surfacescale attribute.
surfaceScale_ :: Text -> Attribute

-- | The systemlanguage attribute.
systemLanguage_ :: Text -> Attribute

-- | The tablevalues attribute.
tableValues_ :: Text -> Attribute

-- | The target attribute.
target_ :: Text -> Attribute

-- | The targetx attribute.
targetX_ :: Text -> Attribute

-- | The targety attribute.
targetY_ :: Text -> Attribute

-- | The textAnchor attribute.
text_anchor_ :: Text -> Attribute

-- | The textDecoration attribute.
text_decoration_ :: Text -> Attribute

-- | The textRendering attribute.
text_rendering_ :: Text -> Attribute

-- | The textlength attribute.
textLength_ :: Text -> Attribute

-- | The to attribute.
to_ :: Text -> Attribute

-- | The transform attribute.
transform_ :: Text -> Attribute

-- | The type attribute.
type_ :: Text -> Attribute

-- | The u1 attribute.
u1_ :: Text -> Attribute

-- | The u2 attribute.
u2_ :: Text -> Attribute

-- | The underlinePosition attribute.
underline_position_ :: Text -> Attribute

-- | The underlineThickness attribute.
underline_thickness_ :: Text -> Attribute

-- | The unicode attribute.
unicode_ :: Text -> Attribute

-- | The unicodeBidi attribute.
unicode_bidi_ :: Text -> Attribute

-- | The unicodeRange attribute.
unicode_range_ :: Text -> Attribute

-- | The unitsPerEm attribute.
units_per_em_ :: Text -> Attribute

-- | The vAlphabetic attribute.
v_alphabetic_ :: Text -> Attribute

-- | The vHanging attribute.
v_hanging_ :: Text -> Attribute

-- | The vIdeographic attribute.
v_ideographic_ :: Text -> Attribute

-- | The vMathematical attribute.
v_mathematical_ :: Text -> Attribute

-- | The values attribute.
values_ :: Text -> Attribute

-- | The version attribute.
version_ :: Text -> Attribute

-- | The vertAdvY attribute.
vert_adv_y_ :: Text -> Attribute

-- | The vertOriginX attribute.
vert_origin_x_ :: Text -> Attribute

-- | The vertOriginY attribute.
vert_origin_y_ :: Text -> Attribute

-- | The viewbox attribute.
viewBox_ :: Text -> Attribute

-- | The viewtarget attribute.
viewTarget_ :: Text -> Attribute

-- | The visibility attribute.
visibility_ :: Text -> Attribute

-- | The width attribute.
width_ :: Text -> Attribute

-- | The widths attribute.
widths_ :: Text -> Attribute

-- | The wordSpacing attribute.
word_spacing_ :: Text -> Attribute

-- | The writingMode attribute.
writing_mode_ :: Text -> Attribute

-- | The x attribute.
x_ :: Text -> Attribute

-- | The xHeight attribute.
x_height_ :: Text -> Attribute

-- | The x1 attribute.
x1_ :: Text -> Attribute

-- | The x2 attribute.
x2_ :: Text -> Attribute

-- | The xchannelselector attribute.
xChannelSelector_ :: Text -> Attribute

-- | The xlinkActuate attribute.
xlinkActuate_ :: Text -> Attribute

-- | The xlinkArcrole attribute.
xlinkArcrole_ :: Text -> Attribute

-- | The xlinkHref attribute.
xlinkHref_ :: Text -> Attribute

-- | The xlinkRole attribute.
xlinkRole_ :: Text -> Attribute

-- | The xlinkShow attribute.
xlinkShow_ :: Text -> Attribute

-- | The xlinkTitle attribute.
xlinkTitle_ :: Text -> Attribute

-- | The xlinkType attribute.
xlinkType_ :: Text -> Attribute

-- | The xmlBase attribute.
xmlBase_ :: Text -> Attribute

-- | The xmlLang attribute.
xmlLang_ :: Text -> Attribute

-- | The xmlSpace attribute.
xmlSpace_ :: Text -> Attribute

-- | The y attribute.
y_ :: Text -> Attribute

-- | The y1 attribute.
y1_ :: Text -> Attribute

-- | The y2 attribute.
y2_ :: Text -> Attribute

-- | The ychannelselector attribute.
yChannelselector_ :: Text -> Attribute

-- | The z attribute.
z_ :: Text -> Attribute

-- | The zoomandpan attribute.
zoomAndPan_ :: Text -> Attribute

-- | SVG elements.
module Lucid.Svg.Elements

-- | A type alias for the 'SvgT m a' monad transformer.
type SvgT = HtmlT

-- | DOCTYPE element
doctype_ :: Monad m => SvgT m ()

-- | svg element + svg 1.1 attributes
svg11_ :: Term [Attribute] (s -> t) => s -> t

-- | a element
a_ :: Term arg result => arg -> result

-- | altglyph element
altGlyph_ :: Monad m => [Attribute] -> SvgT m ()

-- | altglyphdef element
altGlyphDef_ :: Monad m => [Attribute] -> SvgT m ()

-- | altglyphitem element
altGlyphItem_ :: Monad m => [Attribute] -> SvgT m ()

-- | animate element
animate_ :: Monad m => [Attribute] -> SvgT m ()

-- | animatecolor element
animateColor_ :: Monad m => [Attribute] -> SvgT m ()

-- | animatemotion element
animateMotion_ :: Monad m => [Attribute] -> SvgT m ()

-- | animatetransform element
animateTransform_ :: Monad m => [Attribute] -> SvgT m ()

-- | circle element
circle_ :: Monad m => [Attribute] -> SvgT m ()

-- | clipPath element or attribute
clipPath_ :: Term arg result => arg -> result

-- | colorProfile element
colorProfile_ :: Monad m => [Attribute] -> SvgT m ()

-- | cursor element
cursor_ :: Monad m => [Attribute] -> SvgT m ()

-- | defs element
defs_ :: Term arg result => arg -> result

-- | desc element
desc_ :: Term arg result => arg -> result

-- | ellipse element
ellipse_ :: Monad m => [Attribute] -> SvgT m ()

-- | feblend element
feBlend_ :: Monad m => [Attribute] -> SvgT m ()

-- | fecolormatrix element
feColorMatrix_ :: Monad m => [Attribute] -> SvgT m ()

-- | fecomponenttransfer element
feComponentTransfer_ :: Monad m => [Attribute] -> SvgT m ()

-- | fecomposite element
feComposite_ :: Monad m => [Attribute] -> SvgT m ()

-- | feconvolvematrix element
feConvolveMatrix_ :: Monad m => [Attribute] -> SvgT m ()

-- | fediffuselighting element
feDiffuseLighting_ :: Monad m => [Attribute] -> SvgT m ()

-- | fedisplacementmap element
feDisplacementMap_ :: Monad m => [Attribute] -> SvgT m ()

-- | fedistantlight element
feDistantLight_ :: Monad m => [Attribute] -> SvgT m ()

-- | feflood element
feFlood_ :: Monad m => [Attribute] -> SvgT m ()

-- | fefunca element
feFuncA_ :: Monad m => [Attribute] -> SvgT m ()

-- | fefuncb element
feFuncB_ :: Monad m => [Attribute] -> SvgT m ()

-- | fefuncg element
feFuncG_ :: Monad m => [Attribute] -> SvgT m ()

-- | fefuncr element
feFuncR_ :: Monad m => [Attribute] -> SvgT m ()

-- | fegaussianblur element
feGaussianBlur_ :: Monad m => [Attribute] -> SvgT m ()

-- | feimage element
feImage_ :: Monad m => [Attribute] -> SvgT m ()

-- | femerge element
feMerge_ :: Monad m => [Attribute] -> SvgT m ()

-- | femergenode element
feMergeNode_ :: Monad m => [Attribute] -> SvgT m ()

-- | femorphology element
feMorphology_ :: Monad m => [Attribute] -> SvgT m ()

-- | feoffset element
feOffset_ :: Monad m => [Attribute] -> SvgT m ()

-- | fepointlight element
fePointLight_ :: Monad m => [Attribute] -> SvgT m ()

-- | fespecularlighting element
feSpecularLighting_ :: Monad m => [Attribute] -> SvgT m ()

-- | fespotlight element
feSpotLight_ :: Monad m => [Attribute] -> SvgT m ()

-- | fetile element
feTile_ :: Monad m => [Attribute] -> SvgT m ()

-- | feturbulence element
feTurbulence_ :: Monad m => [Attribute] -> SvgT m ()

-- | filter_ element
filter_ :: Term arg result => arg -> result

-- | font element
font_ :: Monad m => [Attribute] -> SvgT m ()

-- | fontFace element
fontFace_ :: Monad m => [Attribute] -> SvgT m ()

-- | fontFaceFormat element
fontFaceFormat_ :: Monad m => [Attribute] -> SvgT m ()

-- | fontFaceName element
fontFaceName_ :: Monad m => [Attribute] -> SvgT m ()

-- | fontFaceSrc element
fontFaceSrc_ :: Monad m => [Attribute] -> SvgT m ()

-- | fontFaceUri element
fontFaceUri_ :: Monad m => [Attribute] -> SvgT m ()

-- | foreignobject element
foreignObject_ :: Monad m => [Attribute] -> SvgT m ()

-- | g element
g_ :: Term arg result => arg -> result

-- | glyph element or attribute
glyph_ :: Term arg result => arg -> result

-- | glyphref element
glyphRef_ :: Monad m => [Attribute] -> SvgT m ()

-- | hkern element
hkern_ :: Monad m => [Attribute] -> SvgT m ()

-- | image element
image_ :: Monad m => [Attribute] -> SvgT m ()

-- | line element
line_ :: Term arg result => arg -> result

-- | lineargradient element
linearGradient_ :: Term arg result => arg -> result

-- | marker element
marker_ :: Term arg result => arg -> result

-- | mask element or attribute
mask_ :: Term arg result => arg -> result

-- | metadata element
metadata_ :: Monad m => [Attribute] -> SvgT m ()

-- | missingGlyph element
missingGlyph_ :: Term arg result => arg -> result

-- | mpath element
mpath_ :: Monad m => [Attribute] -> SvgT m ()

-- | path element
path_ :: Monad m => [Attribute] -> SvgT m ()

-- | pattern element
pattern_ :: Term arg result => arg -> result

-- | polygon element
polygon_ :: Monad m => [Attribute] -> SvgT m ()

-- | polyline element
polyline_ :: Monad m => [Attribute] -> SvgT m ()

-- | radialgradient element
radialGradient_ :: Term arg result => arg -> result

-- | rect element
rect_ :: Monad m => [Attribute] -> SvgT m ()

-- | script element
script_ :: Monad m => [Attribute] -> SvgT m ()

-- | set element
set_ :: Monad m => [Attribute] -> SvgT m ()

-- | stop element
stop_ :: Monad m => [Attribute] -> SvgT m ()

-- | style element
style_ :: Term arg result => arg -> result

-- | svg element
svg_ :: Term arg result => arg -> result

-- | switch element
switch_ :: Term arg result => arg -> result

-- | symbol element
symbol_ :: Term arg result => arg -> result

-- | text_ element
text_ :: Term arg result => arg -> result

-- | textpath element
textPath_ :: Term arg result => arg -> result

-- | title element
title_ :: Term arg result => arg -> result

-- | tref element
tref_ :: Monad m => [Attribute] -> SvgT m ()

-- | tspan element
tspan_ :: Term arg result => arg -> result

-- | use element
use_ :: Monad m => [Attribute] -> SvgT m ()

-- | view element
view_ :: Monad m => [Attribute] -> SvgT m ()

-- | vkern element
vkern_ :: Monad m => [Attribute] -> SvgT m ()

-- | Utility functions to help create SVG path attributes, and transforms.
module Lucid.Svg.Path

-- | Convert a number to Text.
toText :: RealFloat a => a -> Text

-- | moveto (absolute)
mA :: RealFloat a => a -> a -> Text

-- | moveto (relative)
mR :: RealFloat a => a -> a -> Text

-- | lineto (absolute)
lA :: RealFloat a => a -> a -> Text

-- | lineto (relative)
lR :: RealFloat a => a -> a -> Text

-- | horizontal lineto (absolute)
hA :: RealFloat a => a -> Text

-- | horizontal lineto (relative)
hR :: RealFloat a => a -> Text

-- | vertical lineto (absolute)
vA :: RealFloat a => a -> Text

-- | vertical lineto (relative)
vR :: RealFloat a => a -> Text

-- | Cubic Bezier curve (absolute)
cA :: RealFloat a => a -> a -> a -> a -> a -> a -> Text

-- | Cubic Bezier curve (relative)
cR :: RealFloat a => a -> a -> a -> a -> a -> a -> Text

-- | Smooth Cubic Bezier curve (absolute)
sA :: RealFloat a => a -> a -> a -> a -> Text

-- | Smooth Cubic Bezier curve (relative)
sR :: RealFloat a => a -> a -> a -> a -> Text

-- | Quadratic Bezier curve (absolute)
qA :: RealFloat a => a -> a -> a -> a -> Text

-- | Quadratic Bezier curve (relative)
qR :: RealFloat a => a -> a -> a -> a -> Text

-- | Smooth Quadratic Bezier curve (absolute)
tA :: RealFloat a => a -> a -> Text

-- | Smooth Quadratic Bezier curve (relative)
tR :: RealFloat a => a -> a -> Text

-- | Arc (absolute)
aA :: RealFloat a => a -> a -> a -> a -> a -> a -> a -> Text

-- | Arc (relative)
aR :: RealFloat a => a -> a -> a -> a -> a -> a -> a -> Text

-- | closepath
z :: Text

-- | SVG Transform components | Specifies a translation by x and
--   y
translate :: RealFloat a => a -> a -> Text

-- | Specifies a scale operation by x and y
scale :: RealFloat a => a -> a -> Text

-- | Specifies a rotation by rotate-angle degrees
rotate :: RealFloat a => a -> Text

-- | Specifies a rotation by rotate-angle degrees about the given
--   time rx,ry
rotateAround :: RealFloat a => a -> a -> a -> Text

-- | Skew tansformation along x-axis
skewX :: RealFloat a => a -> Text

-- | Skew tansformation along y-axis
skewY :: RealFloat a => a -> Text

-- | Specifies a transform in the form of a transformation matrix
matrix :: RealFloat a => a -> a -> a -> a -> a -> a -> Text

-- | DSL for creating SVG.
module Lucid.Svg
type Svg = SvgT Identity
prettyText :: Svg a -> Text

-- | The class attribute.
class_ :: Text -> Attribute

-- | The height attribute.
height_ :: Text -> Attribute

-- | The id attribute.
id_ :: Text -> Attribute

-- | The lang attribute.
lang_ :: Text -> Attribute

-- | The max attribute.
max_ :: Text -> Attribute

-- | The media attribute.
media_ :: Text -> Attribute

-- | The method attribute.
method_ :: Text -> Attribute

-- | The min attribute.
min_ :: Text -> Attribute

-- | The name attribute.
name_ :: Text -> Attribute

-- | The onclick attribute.
onclick_ :: Text -> Attribute

-- | The onerror attribute.
onerror_ :: Text -> Attribute

-- | The onload attribute.
onload_ :: Text -> Attribute

-- | The onmousedown attribute.
onmousedown_ :: Text -> Attribute

-- | The onmousemove attribute.
onmousemove_ :: Text -> Attribute

-- | The onmouseout attribute.
onmouseout_ :: Text -> Attribute

-- | The onmouseover attribute.
onmouseover_ :: Text -> Attribute

-- | The onmouseup attribute.
onmouseup_ :: Text -> Attribute

-- | The onresize attribute.
onresize_ :: Text -> Attribute

-- | The onscroll attribute.
onscroll_ :: Text -> Attribute

-- | The onunload attribute.
onunload_ :: Text -> Attribute

-- | The target attribute.
target_ :: Text -> Attribute

-- | The type attribute.
type_ :: Text -> Attribute

-- | The width attribute.
width_ :: Text -> Attribute

-- | The accentHeight attribute.
accent_height_ :: Text -> Attribute

-- | The accumulate attribute.
accumulate_ :: Text -> Attribute

-- | The additive attribute.
additive_ :: Text -> Attribute

-- | The alignmentBaseline attribute.
alignment_baseline_ :: Text -> Attribute

-- | The alphabetic attribute.
alphabetic_ :: Text -> Attribute

-- | The amplitude attribute.
amplitude_ :: Text -> Attribute

-- | The arabicForm attribute.
arabic_form_ :: Text -> Attribute

-- | The ascent attribute.
ascent_ :: Text -> Attribute

-- | The attributename attribute.
attributeName_ :: Text -> Attribute

-- | The attributetype attribute.
attributeType_ :: Text -> Attribute

-- | The azimuth attribute.
azimuth_ :: Text -> Attribute

-- | The basefrequency attribute.
baseFrequency_ :: Text -> Attribute

-- | The baseprofile attribute.
baseprofile_ :: Text -> Attribute

-- | The baselineShift attribute.
baseline_shift_ :: Text -> Attribute

-- | The bbox attribute.
bbox_ :: Text -> Attribute

-- | The begin attribute.
begin_ :: Text -> Attribute

-- | The bias attribute.
bias_ :: Text -> Attribute

-- | The by attribute.
by_ :: Text -> Attribute

-- | The calcmode attribute.
calcMode_ :: Text -> Attribute

-- | The capHeight attribute.
cap_height_ :: Text -> Attribute

-- | The clip attribute.
clip_ :: Text -> Attribute

-- | The clip-path attribute.
clip_path_ :: Text -> Attribute

-- | The clipRule attribute.
clip_rule_ :: Text -> Attribute

-- | The clippathunits attribute.
clipPathUnits_ :: Text -> Attribute

-- | The color attribute.
color_ :: Text -> Attribute

-- | The colorInterpolation attribute.
color_interpolation_ :: Text -> Attribute

-- | The colorInterpolationFilters attribute.
color_interpolation_filters_ :: Text -> Attribute

-- | The colorProfile attribute.
color_profile_ :: Text -> Attribute

-- | The colorRendering attribute.
color_rendering_ :: Text -> Attribute

-- | The contentscripttype attribute.
contentScriptType_ :: Text -> Attribute

-- | The contentstyletype attribute.
contentStyleType_ :: Text -> Attribute

-- | The cx attribute.
cx_ :: Text -> Attribute

-- | The cy attribute.
cy_ :: Text -> Attribute

-- | The d attribute.
d_ :: Text -> Attribute

-- | The descent attribute.
descent_ :: Text -> Attribute

-- | The diffuseconstant attribute.
diffuseConstant_ :: Text -> Attribute

-- | The direction attribute.
direction_ :: Text -> Attribute

-- | The display attribute.
display_ :: Text -> Attribute

-- | The divisor attribute.
divisor_ :: Text -> Attribute

-- | The dominantBaseline attribute.
dominant_baseline_ :: Text -> Attribute

-- | The dur attribute.
dur_ :: Text -> Attribute

-- | The dx attribute.
dx_ :: Text -> Attribute

-- | The dy attribute.
dy_ :: Text -> Attribute

-- | The edgemode attribute.
edgeMode_ :: Text -> Attribute

-- | The elevation attribute.
elevation_ :: Text -> Attribute

-- | The enableBackground attribute.
enable_background_ :: Text -> Attribute

-- | The end attribute.
end_ :: Text -> Attribute

-- | The exponent attribute.
exponent_ :: Text -> Attribute

-- | The externalresourcesrequired attribute.
externalResourcesRequired_ :: Text -> Attribute

-- | The fill attribute.
fill_ :: Text -> Attribute

-- | The fillOpacity attribute.
fill_opacity_ :: Text -> Attribute

-- | The fillRule attribute.
fill_rule_ :: Text -> Attribute

-- | The filterres attribute.
filterRes_ :: Text -> Attribute

-- | The filterunits attribute.
filterUnits_ :: Text -> Attribute

-- | The floodColor attribute.
flood_color_ :: Text -> Attribute

-- | The floodOpacity attribute.
flood_opacity_ :: Text -> Attribute

-- | The fontFamily attribute.
font_family_ :: Text -> Attribute

-- | The fontSize attribute.
font_size_ :: Text -> Attribute

-- | The fontSizeAdjust attribute.
font_size_adjust_ :: Text -> Attribute

-- | The fontStretch attribute.
font_stretch_ :: Text -> Attribute

-- | The fontStyle attribute.
font_style_ :: Text -> Attribute

-- | The fontVariant attribute.
font_variant_ :: Text -> Attribute

-- | The fontWeight attribute.
font_weight_ :: Text -> Attribute

-- | The format attribute.
format_ :: Text -> Attribute

-- | The from attribute.
from_ :: Text -> Attribute

-- | The fx attribute.
fx_ :: Text -> Attribute

-- | The fy attribute.
fy_ :: Text -> Attribute

-- | The g1 attribute.
g1_ :: Text -> Attribute

-- | The g2 attribute.
g2_ :: Text -> Attribute

-- | The glyphName attribute.
glyph_name_ :: Text -> Attribute

-- | The glyphOrientationHorizontal attribute.
glyph_orientation_horizontal_ :: Text -> Attribute

-- | The glyphOrientationVertical attribute.
glyph_orientation_vertical_ :: Text -> Attribute

-- | The -- | The gradienttransform@ attribute.
gradientTransform_ :: Text -> Attribute

-- | The gradientunits attribute.
gradientUnits_ :: Text -> Attribute

-- | The hanging attribute.
hanging_ :: Text -> Attribute

-- | The horizAdvX attribute.
horiz_adv_x_ :: Text -> Attribute

-- | The horizOriginX attribute.
horiz_origin_x_ :: Text -> Attribute

-- | The horizOriginY attribute.
horiz_origin_y_ :: Text -> Attribute

-- | The ideographic attribute.
ideographic_ :: Text -> Attribute

-- | The imageRendering attribute.
image_rendering_ :: Text -> Attribute

-- | The in attribute.
in_ :: Text -> Attribute

-- | The in2 attribute.
in2_ :: Text -> Attribute

-- | The intercept attribute.
intercept_ :: Text -> Attribute

-- | The k attribute.
k_ :: Text -> Attribute

-- | The k1 attribute.
k1_ :: Text -> Attribute

-- | The k2 attribute.
k2_ :: Text -> Attribute

-- | The k3 attribute.
k3_ :: Text -> Attribute

-- | The k4 attribute.
k4_ :: Text -> Attribute

-- | The kernelmatrix attribute.
kernelMatrix_ :: Text -> Attribute

-- | The kernelunitlength attribute.
kernelUnitLength_ :: Text -> Attribute

-- | The kerning attribute.
kerning_ :: Text -> Attribute

-- | The keypoints attribute.
keyPoints_ :: Text -> Attribute

-- | The keysplines attribute.
keySplines_ :: Text -> Attribute

-- | The keytimes attribute.
keyTimes_ :: Text -> Attribute

-- | The lengthadjust attribute.
lengthAdjust_ :: Text -> Attribute

-- | The letterSpacing attribute.
letter_spacing_ :: Text -> Attribute

-- | The lightingColor attribute.
lighting_color_ :: Text -> Attribute

-- | The limitingconeangle attribute.
limitingConeAngle_ :: Text -> Attribute

-- | The local attribute.
local_ :: Text -> Attribute

-- | The markerEnd attribute.
marker_end_ :: Text -> Attribute

-- | The markerMid attribute.
marker_mid_ :: Text -> Attribute

-- | The markerStart attribute.
marker_start_ :: Text -> Attribute

-- | The markerheight attribute.
markerHeight_ :: Text -> Attribute

-- | The markerunits attribute.
markerUnits_ :: Text -> Attribute

-- | The markerwidth attribute.
markerWidth_ :: Text -> Attribute

-- | The maskcontentunits attribute.
maskContentUnits_ :: Text -> Attribute

-- | The maskunits attribute.
maskUnits_ :: Text -> Attribute

-- | The mathematical attribute.
mathematical_ :: Text -> Attribute

-- | The mode attribute.
mode_ :: Text -> Attribute

-- | The numoctaves attribute.
numOctaves_ :: Text -> Attribute

-- | The offset attribute.
offset_ :: Text -> Attribute

-- | The onabort attribute.
onabort_ :: Text -> Attribute

-- | The onactivate attribute.
onactivate_ :: Text -> Attribute

-- | The onbegin attribute.
onbegin_ :: Text -> Attribute

-- | The onend attribute.
onend_ :: Text -> Attribute

-- | The onfocusin attribute.
onfocusin_ :: Text -> Attribute

-- | The onfocusout attribute.
onfocusout_ :: Text -> Attribute

-- | The onrepeat attribute.
onrepeat_ :: Text -> Attribute

-- | The onzoom attribute.
onzoom_ :: Text -> Attribute

-- | The opacity attribute.
opacity_ :: Text -> Attribute

-- | The operator attribute.
operator_ :: Text -> Attribute

-- | The order attribute.
order_ :: Text -> Attribute

-- | The orient attribute.
orient_ :: Text -> Attribute

-- | The orientation attribute.
orientation_ :: Text -> Attribute

-- | The origin attribute.
origin_ :: Text -> Attribute

-- | The overflow attribute.
overflow_ :: Text -> Attribute

-- | The overlinePosition attribute.
overline_position_ :: Text -> Attribute

-- | The overlineThickness attribute.
overline_thickness_ :: Text -> Attribute

-- | The panose1 attribute.
panose_1_ :: Text -> Attribute

-- | The paint-order attribute.
paint_order_ :: Text -> Attribute

-- | The pathlength attribute.
pathLength_ :: Text -> Attribute

-- | The patterncontentunits attribute.
patternContentUnits_ :: Text -> Attribute

-- | The patterntransform attribute.
patternTransform_ :: Text -> Attribute

-- | The patternunits attribute.
patternUnits_ :: Text -> Attribute

-- | The pointerEvents attribute.
pointer_events_ :: Text -> Attribute

-- | The points attribute.
points_ :: Text -> Attribute

-- | The pointsatx attribute.
pointsAtX_ :: Text -> Attribute

-- | The pointsaty attribute.
pointsAtY_ :: Text -> Attribute

-- | The pointsatz attribute.
pointsAtZ_ :: Text -> Attribute

-- | The preservealpha attribute.
preserveAlpha_ :: Text -> Attribute

-- | The preserveaspectratio attribute.
preserveAspectRatio_ :: Text -> Attribute

-- | The primitiveunits attribute.
primitiveUnits_ :: Text -> Attribute

-- | The r attribute.
r_ :: Text -> Attribute

-- | The radius attribute.
radius_ :: Text -> Attribute

-- | The refx attribute.
refX_ :: Text -> Attribute

-- | The refy attribute.
refY_ :: Text -> Attribute

-- | The renderingIntent attribute.
rendering_intent_ :: Text -> Attribute

-- | The repeatcount attribute.
repeatCount_ :: Text -> Attribute

-- | The repeatdur attribute.
repeatDur_ :: Text -> Attribute

-- | The requiredextensions attribute.
requiredExtensions_ :: Text -> Attribute

-- | The requiredfeatures attribute.
requiredFeatures_ :: Text -> Attribute

-- | The restart attribute.
restart_ :: Text -> Attribute

-- | The result attribute.
result_ :: Text -> Attribute

-- | The rotate attribute.
rotate_ :: Text -> Attribute

-- | The rx attribute.
rx_ :: Text -> Attribute

-- | The ry attribute.
ry_ :: Text -> Attribute

-- | The scale attribute.
scale_ :: Text -> Attribute

-- | The seed attribute.
seed_ :: Text -> Attribute

-- | The shapeRendering attribute.
shape_rendering_ :: Text -> Attribute

-- | The slope attribute.
slope_ :: Text -> Attribute

-- | The spacing attribute.
spacing_ :: Text -> Attribute

-- | The specularconstant attribute.
specularConstant_ :: Text -> Attribute

-- | The specularexponent attribute.
specularExponent_ :: Text -> Attribute

-- | The spreadmethod attribute.
spreadMethod_ :: Text -> Attribute

-- | The startoffset attribute.
startOffset_ :: Text -> Attribute

-- | The stddeviation attribute.
stdDeviation_ :: Text -> Attribute

-- | The stemh attribute.
stemh_ :: Text -> Attribute

-- | The stemv attribute.
stemv_ :: Text -> Attribute

-- | The stitchtiles attribute.
stitchTiles_ :: Text -> Attribute

-- | The stopColor attribute.
stop_color_ :: Text -> Attribute

-- | The stopOpacity attribute.
stop_opacity_ :: Text -> Attribute

-- | The strikethroughPosition attribute.
strikethrough_position_ :: Text -> Attribute

-- | The strikethroughThickness attribute.
strikethrough_thickness_ :: Text -> Attribute

-- | The string attribute.
string_ :: Text -> Attribute

-- | The stroke attribute.
stroke_ :: Text -> Attribute

-- | The strokeDasharray attribute.
stroke_dasharray_ :: Text -> Attribute

-- | The strokeDashoffset attribute.
stroke_dashoffset_ :: Text -> Attribute

-- | The strokeLinecap attribute.
stroke_linecap_ :: Text -> Attribute

-- | The strokeLinejoin attribute.
stroke_linejoin_ :: Text -> Attribute

-- | The strokeMiterlimit attribute.
stroke_miterlimit_ :: Text -> Attribute

-- | The strokeOpacity attribute.
stroke_opacity_ :: Text -> Attribute

-- | The strokeWidth attribute.
stroke_width_ :: Text -> Attribute

-- | The surfacescale attribute.
surfaceScale_ :: Text -> Attribute

-- | The systemlanguage attribute.
systemLanguage_ :: Text -> Attribute

-- | The tablevalues attribute.
tableValues_ :: Text -> Attribute

-- | The targetx attribute.
targetX_ :: Text -> Attribute

-- | The targety attribute.
targetY_ :: Text -> Attribute

-- | The textAnchor attribute.
text_anchor_ :: Text -> Attribute

-- | The textDecoration attribute.
text_decoration_ :: Text -> Attribute

-- | The textRendering attribute.
text_rendering_ :: Text -> Attribute

-- | The textlength attribute.
textLength_ :: Text -> Attribute

-- | The to attribute.
to_ :: Text -> Attribute

-- | The transform attribute.
transform_ :: Text -> Attribute

-- | The u1 attribute.
u1_ :: Text -> Attribute

-- | The u2 attribute.
u2_ :: Text -> Attribute

-- | The underlinePosition attribute.
underline_position_ :: Text -> Attribute

-- | The underlineThickness attribute.
underline_thickness_ :: Text -> Attribute

-- | The unicode attribute.
unicode_ :: Text -> Attribute

-- | The unicodeBidi attribute.
unicode_bidi_ :: Text -> Attribute

-- | The unicodeRange attribute.
unicode_range_ :: Text -> Attribute

-- | The unitsPerEm attribute.
units_per_em_ :: Text -> Attribute

-- | The vAlphabetic attribute.
v_alphabetic_ :: Text -> Attribute

-- | The vHanging attribute.
v_hanging_ :: Text -> Attribute

-- | The vIdeographic attribute.
v_ideographic_ :: Text -> Attribute

-- | The vMathematical attribute.
v_mathematical_ :: Text -> Attribute

-- | The values attribute.
values_ :: Text -> Attribute

-- | The version attribute.
version_ :: Text -> Attribute

-- | The vertAdvY attribute.
vert_adv_y_ :: Text -> Attribute

-- | The vertOriginX attribute.
vert_origin_x_ :: Text -> Attribute

-- | The vertOriginY attribute.
vert_origin_y_ :: Text -> Attribute

-- | The viewbox attribute.
viewBox_ :: Text -> Attribute

-- | The viewtarget attribute.
viewTarget_ :: Text -> Attribute

-- | The visibility attribute.
visibility_ :: Text -> Attribute

-- | The widths attribute.
widths_ :: Text -> Attribute

-- | The wordSpacing attribute.
word_spacing_ :: Text -> Attribute

-- | The writingMode attribute.
writing_mode_ :: Text -> Attribute

-- | The x attribute.
x_ :: Text -> Attribute

-- | The xHeight attribute.
x_height_ :: Text -> Attribute

-- | The x1 attribute.
x1_ :: Text -> Attribute

-- | The x2 attribute.
x2_ :: Text -> Attribute

-- | The xchannelselector attribute.
xChannelSelector_ :: Text -> Attribute

-- | The xlinkActuate attribute.
xlinkActuate_ :: Text -> Attribute

-- | The xlinkArcrole attribute.
xlinkArcrole_ :: Text -> Attribute

-- | The xlinkHref attribute.
xlinkHref_ :: Text -> Attribute

-- | The xlinkRole attribute.
xlinkRole_ :: Text -> Attribute

-- | The xlinkShow attribute.
xlinkShow_ :: Text -> Attribute

-- | The xlinkTitle attribute.
xlinkTitle_ :: Text -> Attribute

-- | The xlinkType attribute.
xlinkType_ :: Text -> Attribute

-- | The xmlBase attribute.
xmlBase_ :: Text -> Attribute

-- | The xmlLang attribute.
xmlLang_ :: Text -> Attribute

-- | The xmlSpace attribute.
xmlSpace_ :: Text -> Attribute

-- | The y attribute.
y_ :: Text -> Attribute

-- | The y1 attribute.
y1_ :: Text -> Attribute

-- | The y2 attribute.
y2_ :: Text -> Attribute

-- | The ychannelselector attribute.
yChannelselector_ :: Text -> Attribute

-- | The z attribute.
z_ :: Text -> Attribute

-- | The zoomandpan attribute.
zoomAndPan_ :: Text -> Attribute

-- | Render the HTML to a lazy Text.
--   
--   This is a convenience function defined in terms of execHtmlT,
--   runIdentity and toLazyByteString, and decodeUtf8.
--   Check the source if you're interested in the lower-level behaviour.
renderText :: Html a -> Text

-- | Render the HTML to a lazy ByteString.
--   
--   This is a convenience function defined in terms of execHtmlT,
--   runIdentity and toLazyByteString. Check the source if
--   you're interested in the lower-level behaviour.
renderBS :: Html a -> ByteString

-- | Render the HTML to a lazy Text, but in a monad.
--   
--   This is a convenience function defined in terms of execHtmlT
--   and toLazyByteString, and decodeUtf8. Check the source
--   if you're interested in the lower-level behaviour.
renderTextT :: Monad m => HtmlT m a -> m Text

-- | Render the HTML to a lazy ByteString, but in a monad.
--   
--   This is a convenience function defined in terms of execHtmlT
--   and toLazyByteString. Check the source if you're interested in
--   the lower-level behaviour.
renderBST :: Monad m => HtmlT m a -> m ByteString

-- | Render the HTML to a lazy ByteString.
--   
--   This is a convenience function defined in terms of execHtmlT,
--   runIdentity and toLazyByteString. Check the source if
--   you're interested in the lower-level behaviour.
renderToFile :: FilePath -> Html a -> IO ()

-- | Build the HTML. Analogous to execState.
--   
--   You might want to use this is if you want to do something with the raw
--   Builder. Otherwise for simple cases you can just use
--   renderText or renderBS.
execHtmlT :: Monad m => HtmlT m a -> m Builder

-- | Evaluate the HTML to its return value. Analogous to
--   evalState.
--   
--   Use this if you want to ignore the HTML output of an action completely
--   and just get the result.
--   
--   For using with the Html type, you'll need runIdentity
--   e.g.
--   
--   
--   >>> runIdentity (evalHtmlT (p_ "Hello!"))
--   ()
--   
evalHtmlT :: Monad m => HtmlT m a -> m a

-- | This is the low-level way to run the HTML transformer, finally
--   returning an element builder and a value. You can pass mempty
--   for this argument for a top-level call. See evalHtmlT and
--   execHtmlT for easier to use functions.
runHtmlT :: HtmlT m a -> m (Seq Attribute -> Builder, a)

-- | A simple attribute. Don't use the constructor, use
--   makeAttribute. Attributes are case sensitive, so if you want
--   attributes to be merged properly, use a single case representation.
data () => Attribute
Attribute :: !Text -> !Text -> Attribute

-- | Used to construct HTML terms.
--   
--   Simplest use: p_ = term "p" yields p_.
--   
--   Very overloaded for three cases:
--   
--   
--   
- The first case is the basic arg of [(Text,Text)]
--   which will return a function that wants children.
--   
- The second is an arg which is HtmlT m (), in
--   which case the term accepts no attributes and just the children are
--   used for the element.
--   
- Finally, this is also used for overloaded attributes, like
--   style_ or title_. If a return type of
--   (Text,Text) is inferred then an attribute will be made.
--   
--   
--   The instances look intimidating but actually the constraints make it
--   very general so that type inference works well even in the presence of
--   things like OverloadedLists and such.
class () => Term arg result | result -> arg

-- | Used for constructing elements e.g. term "p" yields
--   p_.
term :: Term arg result => Text -> arg -> result

-- | Use this if you want to make an element which inserts some
--   pre-prepared attributes into the element.
termWith :: Term arg result => Text -> [Attribute] -> arg -> result

-- | Can be converted to HTML.
class () => ToHtml a

-- | Convert to HTML, doing HTML escaping.
toHtml :: forall (m :: Type -> Type). (ToHtml a, Monad m) => a -> HtmlT m ()

-- | Convert to HTML without any escaping.
toHtmlRaw :: forall (m :: Type -> Type). (ToHtml a, Monad m) => a -> HtmlT m ()

-- | With an element use these attributes. An overloaded way of adding
--   attributes either to an element accepting attributes-and-children or
--   one that just accepts attributes. See the two instances.
class () => With a

-- | With the given element(s), use the given attributes.
with :: With a => a -> [Attribute] -> a
