import { EventEmitter, OnInit } from '@angular/core';
import { ApplicationService, UserGroupService, IApplication, IUserGroup, InventoryRoleService, IIdentified } from '@c8y/client';
import { AlertService, ModalService, LoginService, AppStateService, TenantUiService } from '@c8y/ngx-components';
import { BehaviorSubject, Subject } from 'rxjs';
import { SsoConfiguration, TemplateType } from './sso-configuration.model';
import { SsoConfigurationService } from './sso-configuration.service';
import { NgForm } from '@angular/forms';
import * as i0 from "@angular/core";
export declare class SsoConfigurationComponent implements OnInit {
    private ssoConfigurationService;
    private applicationService;
    private userGroupService;
    private inventoryRoleService;
    private alertService;
    private modalService;
    private loginService;
    private appStateService;
    private tenantUiService;
    apps: IApplication[];
    groups: IUserGroup[];
    inventoryRoles: IIdentified[];
    ssoConfiguration: SsoConfiguration;
    templateType: typeof TemplateType;
    templateTypeConfig: {
        CUSTOM: {
            name: string;
            value: string;
            label: "Custom";
        };
        AZURE: {
            name: string;
            value: string;
            label: "Azure AD";
        };
        KEYCLOAK: {
            name: string;
            value: string;
            label: "Keycloak";
        };
    };
    reloading$: BehaviorSubject<boolean>;
    reload: EventEmitter<void>;
    saveSubject: Subject<void>;
    ssoConfigurationForm: NgForm;
    private dataSubscription;
    private data$;
    constructor(ssoConfigurationService: SsoConfigurationService, applicationService: ApplicationService, userGroupService: UserGroupService, inventoryRoleService: InventoryRoleService, alertService: AlertService, modalService: ModalService, loginService: LoginService, appStateService: AppStateService, tenantUiService: TenantUiService);
    ngOnInit(): void;
    ngOnDestroy(): void;
    loadSsoConfiguration(): void;
    save(ssoConfiguration: any): Promise<void>;
    private getApplications;
    private getGroups;
    private getInventoryRoles;
    private warnAboutForceUsersLogOut;
    static ɵfac: i0.ɵɵFactoryDeclaration<SsoConfigurationComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SsoConfigurationComponent, "c8y-sso-configuration", never, {}, {}, never, never, false, never>;
}
//# sourceMappingURL=sso-configuration.component.d.ts.map