Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 2x 2x 12x 17x 1x 1x 3x 3x | import * as vscode from 'vscode';
import { ProviderType } from './interfaces';
const KEY_PREFIX = 'manan-kanchu.apikey.';
export class SecretManager {
constructor(private readonly secrets: vscode.SecretStorage) {}
async getApiKey(provider: ProviderType): Promise<string | undefined> {
return this.secrets.get(`${KEY_PREFIX}${provider}`);
}
async setApiKey(provider: ProviderType, key: string): Promise<void> {
await this.secrets.store(`${KEY_PREFIX}${provider}`, key);
}
async deleteApiKey(provider: ProviderType): Promise<void> {
await this.secrets.delete(`${KEY_PREFIX}${provider}`);
}
async hasApiKey(provider: ProviderType): Promise<boolean> {
const key = await this.getApiKey(provider);
return key !== undefined && key.length > 0;
}
}
|