auth.rs
1use gpui::AppContext;
2
3#[derive(Clone, Debug)]
4pub enum ProviderCredential {
5 Credentials { api_key: String },
6 NoCredentials,
7 NotNeeded,
8}
9
10pub trait CredentialProvider: Send + Sync {
11 fn has_credentials(&self) -> bool;
12 fn retrieve_credentials(&self, cx: &AppContext) -> ProviderCredential;
13 fn save_credentials(&self, cx: &AppContext, credential: ProviderCredential);
14 fn delete_credentials(&self, cx: &AppContext);
15}