/** Angular 2 */ import * as ng from "@angular/core"; import * as ngRouter from "@angular/router"; /** Core */ import { CoreComponent } from "cmf.core/src/core"; /** Nested dependencies */ import Cmf from "cmf.lbos"; /** * @whatItDoes * * Authentication by SSO Provider. * It allows to authenticate using an external provider. * Shows a button to open the external authentication page. * When the user is validated, it dispatches an event. * * ### Inputs * * `string` : **username** - Indicates if this is an authentication or validation * * `boolean` : **isOnDemand** - If the authentication is being performed on demand (normally when a signature is required) * * ### Outputs * * `Cmf.Foundation.Security.User` : **authenticate** - Event triggered when the authentication is successful * * ### Example * * ```html * * * ``` */ export declare class AuthSSO extends CoreComponent implements ng.AfterViewInit { private _router; /** * Username that this login refers to */ username: string; /** * If the authentication is being performed on demand (normally when a signature is required) */ isOnDemand: boolean; /** * Event that signals that the external authentication completed. * Could be an Cmf.Foundation.Security.User */ authenticate: ng.EventEmitter; constructor(_elementRef: ng.ElementRef, _router: ngRouter.Router); /** * This method calls the framework to perform the external authentication. * It just needs to pass in a settings object that will instruct the framework on the details of how * the authentication should be performed. * The strategy here is to automatically call the external provider when the component is ready. * There is a slight catch, which is when the app is redirected to the login after a logout. * In this case the external authentication should not pop.up, otherwise, it would be an infinite cycle. * We can use a passed in parameter via router's NavigationExtras to distinguish if the login came from logout. * * @private * * @memberOf AuthControl */ private performExternalAuthentication; /** * This is just the method that will call the external authentication when the link is clicked. * * @private * @param {Event} event * * @memberOf AuthControl */ openExternalAuthenticationPopUp(event: Event): void; ngAfterViewInit(): void; } export declare class AuthSSOModule { }