import { ApiTokenRepository } from '../../../../access/repositories/api-token.repository';
import { KeyStorageService } from '../../../../access/services/key-storage.service';
import { GenericS3Backend } from '../../../../storage/implementations/generic-s3.backend';
export interface ConnectHetznerObjectStorageInput {
    accessKey: string;
    secretKey: string;
    region?: string;
}
export declare class HetznerObjectStorageConnectionService {
    private readonly apiTokenRepo;
    private readonly keyStorage;
    private readonly genericS3;
    private readonly logger;
    constructor(apiTokenRepo: ApiTokenRepository, keyStorage: KeyStorageService, genericS3: GenericS3Backend);
    connect(input: ConnectHetznerObjectStorageInput): Promise<{
        ready: boolean;
        tokenId: string;
    }>;
    loadCreds(): Promise<{
        accessKey: string;
        secretKey: string;
        region: string;
    } | null>;
}
