Basically, each provider adapter has to define at least 4 methods:
Hybrid_Providers_{provider_name}::initialize()
Hybrid_Providers_{provider_name}::loginBegin()
Hybrid_Providers_{provider_name}::loginFinish()
Hybrid_Providers_{provider_name}::getUserProfile()
HybridAuth also come with three others models
Class Hybrid_Provider_Model_OpenID for providers that uses the OpenID 1 and 2 protocol.
Class Hybrid_Provider_Model_OAuth1 for providers that uses the OAuth 1 protocol.
Class Hybrid_Provider_Model_OAuth2 for providers that uses the OAuth 2 protocol.