"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const key_cloak_1 = require("./strategies/key-cloak");
class AuthStrategy {
    constructor(tokenHandler, ewizardClient, keyCloakClient) {
        this.tokenHandler = tokenHandler;
        this.ewizardClient = ewizardClient;
        this.keyCloakClient = keyCloakClient;
    }
    login(credentials) {
        return this.getAuthStrategy().login(credentials);
    }
    logout() {
        return this.getAuthStrategy().logout();
    }
    checkAuth() {
        return this.getAuthStrategy().checkAuth();
    }
    getAuthStrategy() {
        return new key_cloak_1.KeyCloakStrategy(this.tokenHandler, this.ewizardClient, this.keyCloakClient);
    }
}
exports.default = AuthStrategy;
//# sourceMappingURL=index.js.map