pub mod config;
pub mod credential;
pub mod provider;
pub mod scheme;
pub mod service;
#[cfg(feature = "auth")]
pub mod exchanger;
#[cfg(feature = "auth")]
pub mod handler;
#[cfg(feature = "auth")]
pub mod manager;
#[cfg(feature = "auth")]
pub mod preprocessor;
#[cfg(feature = "auth")]
pub mod refresher;
#[cfg(feature = "auth")]
mod security;
pub use config::AuthConfig;
pub use credential::{
AuthCredential, AuthCredentialType, HttpAuth, OAuth2Auth, ServiceAccountAuth,
};
pub use provider::{AuthProviderRegistry, BaseAuthProvider};
pub use scheme::{ApiKeyLocation, AuthScheme, OAuthFlow, OAuthFlows, OAuthGrantType};
pub use service::{CredentialService, InMemoryCredentialService, SessionStateCredentialService};
#[cfg(feature = "auth")]
pub use exchanger::{
CredentialExchanger, ExchangerRegistry, OAuth2Exchanger, ServiceAccountExchanger,
};
#[cfg(feature = "auth")]
pub use handler::AuthHandler;
#[cfg(feature = "auth")]
pub use manager::{ConsentRequest, CredentialManager, ResolveOutcome};
#[cfg(feature = "auth")]
pub use preprocessor::{AuthPreprocessor, PreprocessOutcome};
#[cfg(feature = "auth")]
pub use refresher::{CredentialRefresher, OAuth2Refresher, RefresherRegistry};
pub const REQUEST_CREDENTIAL_FUNCTION_NAME: &str = "adk_request_credential";
pub const TOOLSET_AUTH_CREDENTIAL_ID_PREFIX: &str = "_adk_toolset_auth_";