{- | Module: Language.Bitcoin.Miniscript Haskell embedding of miniscript. See http://bitcoin.sipa.be/miniscript/ for details. Much of the documentation below is taken from this site. -} module Language.Bitcoin.Miniscript ( -- * Syntax tree Value (..), var, literal, Miniscript (..), let_, key, keyH, older, after, sha256, ripemd160, hash256, hash160, thresh, multi, MiniscriptAnnotation (..), Annotation (..), -- * Type system BaseType (..), ModField (..), MiniscriptType (..), boolType, numberType, bytesType, keyDescriptorType, typeCheckMiniscript, MiniscriptTypeError (..), -- * Compilation compile, compileOnly, CompilerError (..), -- * Printing and parsing miniscriptToText, miniscriptParser, parseMiniscript, ) where import Language.Bitcoin.Miniscript.Compiler import Language.Bitcoin.Miniscript.Parser import Language.Bitcoin.Miniscript.Syntax import Language.Bitcoin.Miniscript.Text import Language.Bitcoin.Miniscript.Types