//! Credential provider traits.
use crateBoxFuture;
use crateSecretValue;
use crateSynwireError;
/// Provider of credentials (API keys, tokens, etc).
///
/// Implementors supply credentials to model providers and other components
/// that require authentication. The trait supports both static and
/// refreshable credential sources.
///
/// # Example
///
/// ```
/// use synwire_core::credentials::{CredentialProvider, SecretValue, StaticCredentialProvider};
///
/// let provider = StaticCredentialProvider::new(SecretValue::new("sk-test-key"));
/// ```