{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -fno-warn-missing-fields #-}
{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-----------------------------------------------------------------
-- Autogenerated by Thrift Compiler (0.9.0)                      --
--                                                             --
-- DO NOT EDIT UNLESS YOU ARE SURE YOU KNOW WHAT YOU ARE DOING --
-----------------------------------------------------------------

module Database.HBase.Internal.Thrift2.THBaseService_Iface where
import Prelude ( Bool(..), Enum, Double, String, Maybe(..),
                 Eq, Show, Ord,
                 return, length, IO, fromIntegral, fromEnum, toEnum,
                 (.), (&&), (||), (==), (++), ($), (-) )

import Control.Exception
import Data.ByteString.Lazy
import Data.Hashable
import Data.Int
import Data.Text.Lazy ( Text )
import qualified Data.Text.Lazy as TL
import Data.Typeable ( Typeable )
import qualified Data.HashMap.Strict as Map
import qualified Data.HashSet as Set
import qualified Data.Vector as Vector

import Thrift
import Thrift.Types ()


import Database.HBase.Internal.Thrift2.HBase_Types

class THBaseService_Iface a where
  exists :: a -> Maybe ByteString -> Maybe TGet -> IO Bool
  get :: a -> Maybe ByteString -> Maybe TGet -> IO TResult
  getMultiple :: a -> Maybe ByteString -> Maybe (Vector.Vector TGet) -> IO (Vector.Vector TResult)
  put :: a -> Maybe ByteString -> Maybe TPut -> IO ()
  checkAndPut :: a -> Maybe ByteString -> Maybe ByteString -> Maybe ByteString -> Maybe ByteString -> Maybe ByteString -> Maybe TPut -> IO Bool
  putMultiple :: a -> Maybe ByteString -> Maybe (Vector.Vector TPut) -> IO ()
  deleteSingle :: a -> Maybe ByteString -> Maybe TDelete -> IO ()
  deleteMultiple :: a -> Maybe ByteString -> Maybe (Vector.Vector TDelete) -> IO (Vector.Vector TDelete)
  checkAndDelete :: a -> Maybe ByteString -> Maybe ByteString -> Maybe ByteString -> Maybe ByteString -> Maybe ByteString -> Maybe TDelete -> IO Bool
  increment :: a -> Maybe ByteString -> Maybe TIncrement -> IO TResult
  openScanner :: a -> Maybe ByteString -> Maybe TScan -> IO Int32
  getScannerRows :: a -> Maybe Int32 -> Maybe Int32 -> IO (Vector.Vector TResult)
  closeScanner :: a -> Maybe Int32 -> IO ()
  mutateRow :: a -> Maybe ByteString -> Maybe TRowMutations -> IO ()
  getScannerResults :: a -> Maybe ByteString -> Maybe TScan -> Maybe Int32 -> IO (Vector.Vector TResult)
