-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | OAuth client support for authenticate package.
--
-- OAuth client support for authenticate package.
@package authenticate-oauth
@version 0.1
module Web.Authenticate.OAuth
-- | Data type for OAuth client (consumer).
data OAuth
OAuth :: String -> String -> String -> String -> SignMethod -> ByteString -> ByteString -> Maybe ByteString -> OAuth
-- | Service name
oauthServerName :: OAuth -> String
-- | URI to request temporary credential
oauthRequestUri :: OAuth -> String
-- | Uri to obtain access token
oauthAccessTokenUri :: OAuth -> String
-- | Uri to authorize
oauthAuthorizeUri :: OAuth -> String
-- | Signature Method
oauthSignatureMethod :: OAuth -> SignMethod
-- | Consumer key
oauthConsumerKey :: OAuth -> ByteString
-- | Consumer Secret
oauthConsumerSecret :: OAuth -> ByteString
-- | Callback uri to redirect after authentication
oauthCallback :: OAuth -> Maybe ByteString
-- | Data type for signature method.
data SignMethod
PLAINTEXT :: SignMethod
HMACSHA1 :: SignMethod
RSASHA1 :: PrivateKey -> SignMethod
-- | Data type for redential.
data Credential
Credential :: [(ByteString, ByteString)] -> Credential
unCredential :: Credential -> [(ByteString, ByteString)]
-- | Empty credential.
emptyCredential :: Credential
-- | Insert an oauth parameter into given Credential.
insert :: ByteString -> ByteString -> Credential -> Credential
-- | Remove an oauth parameter for key from given Credential.
delete :: ByteString -> Credential -> Credential
-- | Convenient method for inserting multiple parameters into credential.
inserts :: [(ByteString, ByteString)] -> Credential -> Credential
-- | Add OAuth headers & sign to Request.
signOAuth :: OAuth -> Credential -> Request -> IO Request
-- | URL to obtain OAuth verifier.
authorizeUrl :: OAuth -> Credential -> String
-- | Get Token Credential (Access token & secret).
getTokenCredential :: OAuth -> Credential -> IO Credential
-- | Get temporary credential for requesting acces token.
getTemporaryCredential :: OAuth -> IO Credential
-- | Encode a string using the percent encoding method for OAuth.
paramEncode :: ByteString -> ByteString
instance Typeable SignMethod
instance Typeable OAuth
instance Typeable Credential
instance Typeable OAuthException
instance Eq PrivateKey
instance Ord PrivateKey
instance Read PrivateKey
instance Data PrivateKey
instance Typeable PrivateKey
instance Show SignMethod
instance Eq SignMethod
instance Ord SignMethod
instance Read SignMethod
instance Data SignMethod
instance Show OAuth
instance Eq OAuth
instance Ord OAuth
instance Read OAuth
instance Data OAuth
instance Show Credential
instance Eq Credential
instance Ord Credential
instance Read Credential
instance Data Credential
instance Show OAuthException
instance Eq OAuthException
instance Data OAuthException
instance Exception OAuthException