import { ICredentialProvider, AccessKeyPair } from '../interfaces/credential-provider.interface';
import { CloudProvider } from '../enums/cloud-provider.enum';
import { BearerTokenDto } from '../../access/dto/bearer-token.dto';
import { ProviderCredentialsRepository } from '../../access/repositories/provider-credentials.repository';
import { ApiTokenRepository } from '../../access/repositories/api-token.repository';
import { KeyStorageService } from '../../access/services/key-storage.service';
import { CredentialPurpose } from '../../access/enums/credential-purpose.enum';
export declare class CredentialProviderService implements ICredentialProvider {
    private readonly providerCredentialsRepository;
    private readonly apiTokenRepository;
    private readonly keyStorage;
    constructor(providerCredentialsRepository: ProviderCredentialsRepository, apiTokenRepository: ApiTokenRepository, keyStorage: KeyStorageService);
    getActiveApiToken(provider: CloudProvider, purpose?: CredentialPurpose): Promise<string>;
    getActiveAccessKeyPair(provider: CloudProvider, purpose?: CredentialPurpose): Promise<AccessKeyPair>;
    getActiveBearerToken(provider: CloudProvider): Promise<BearerTokenDto>;
    private getDecryptApiToken;
}
