\begin{code}
module TcSplice where
-import HsSyn ( HsSplice, HsBracket, HsExpr, LHsExpr, HsType, LHsDecl )
-import Var ( Id )
+import HsSyn ( HsSplice, HsBracket, HsQuasiQuote,
+ HsExpr, LHsExpr, LPat, LHsDecl )
import Name ( Name )
import RdrName ( RdrName )
-import TcRnTypes( TcM )
-import TcType ( TcKind, BoxyRhoType )
+import TcRnTypes( TcM, TcId )
+import TcType ( BoxyRhoType )
+import Annotations ( Annotation, CoreAnnTarget )
+import qualified Language.Haskell.TH as TH
tcSpliceExpr :: HsSplice Name
-> BoxyRhoType
- -> TcM (HsExpr Id)
-
-kcSpliceType :: HsSplice Name -> TcM (HsType Name, TcKind)
+ -> TcM (HsExpr TcId)
tcBracket :: HsBracket Name
-> BoxyRhoType
- -> TcM (LHsExpr Id)
+ -> TcM (LHsExpr TcId)
tcSpliceDecls :: LHsExpr Name -> TcM [LHsDecl RdrName]
+
+lookupThName_maybe :: TH.Name -> TcM (Maybe Name)
+
+runQuasiQuoteExpr :: HsQuasiQuote Name.Name -> TcM (LHsExpr RdrName)
+runQuasiQuotePat :: HsQuasiQuote Name -> TcM (LPat RdrName)
+runAnnotation :: CoreAnnTarget -> LHsExpr Name -> TcM Annotation
\end{code}