import { ConfigService } from '@nestjs/config';
import { SecretRefSource } from '@vessl-ai/mcpctl-shared/types/domain/secret';
export interface SecretStore {
    set(key: string, value: string): Promise<string>;
    get(key: string): Promise<string | null>;
    list(): Promise<string[]>;
    delete(key: string): Promise<void>;
}
export declare class KeychainSecretStore implements SecretStore {
    private readonly KEYCHAIN_SERVICE_PREFIX;
    private sanitizeKey;
    set(key: string, value: string): Promise<string>;
    get(key: string): Promise<string | null>;
    list(): Promise<string[]>;
    delete(key: string): Promise<void>;
}
export declare class VaultSecretStore implements SecretStore {
    set(key: string, value: string): Promise<string>;
    get(key: string): Promise<string | null>;
    list(): Promise<string[]>;
    delete(key: string): Promise<void>;
}
export declare class SecretStoreFactory {
    private readonly configService;
    private readonly secretStores;
    constructor(configService: ConfigService);
    private createSecretStore;
    getSecretStore(type: SecretRefSource): SecretStore | undefined;
}
//# sourceMappingURL=secret.store.d.ts.map