/** Angular 2 */ import * as ng from "@angular/core"; /** Core */ import { CoreComponent } from "cmf.core/src/core"; import { CultureInformation } from "cmf.core/src/domain/extensions/app.context"; import { SecurityAuthConfigTokenMode } from "cmf.core/src/domain/extensions/security"; import { DropdownElement } from "../dropdown/dropdown"; import Cmf from "cmf.lbos"; import { AuthOperation, AuthMode } from "./authProvider"; export { AuthOperation, AuthMode }; /** * @whatItDoes * * Authentication component. * It shows the credentials, token or SSO authentication according to security settings. * When the user is validated, it dispatches an event. * * When an username is given, it will be used and will just ask for the secret. * * ### Inputs * `string` : **actionLabel** - Label to use as Action * `boolean` : **showRememberMe** - Show the Remember Me box * `string` : **username** - Indicates if this is an authentication or validation * `boolean` : **canEditUsername** - Allow to modify the username, if given * `boolean` : **isAuthOnDemand** - In external authentication, open automatically the validation window * `boolean` : **canChangeCulture** - Allow to change the culture~ * `AuthOperation` : **authOperation** - Enum representing which authentication process is being made (Login, Sign or Unlock) * * ### Outputs * `Cmf.Foundation.Security.User` : **authenticate** - Event triggered when the authentication is successful * * ### Example * * ```html * * * ``` */ export declare class Auth extends CoreComponent { /** * Last Authentication mode used (memory cache) */ static LAST_MODE: AuthMode; /** * Authentication mode (default: Credentials) */ mode: AuthMode; /** * Authentication operation (Login, Sign or Unlock) */ authOperation: AuthOperation; /** * Event that signals that the external authentication completed. */ authenticate: ng.EventEmitter; /** * Allow to edit the username */ canEditUsername: boolean; /** * Allow to authenticate using credentials */ allowCredentials: boolean; /** * Allow to authenticate using token */ allowToken: boolean; /** * It can be one of the following values: "None" | "KeyboardWedge" | "KeyboardWedgeAndCamera" | "Camera" * Default is "None" */ tokenMode: SecurityAuthConfigTokenMode; /** * Should allow to change the culture */ canChangeCulture: boolean; /** * App cultures available */ cultures: Array; /** * Selected culture */ selectedCulture: CultureInformation; constructor(_elementRef: ng.ElementRef); private onInitialDataReceived; /** * Handles a new authentication. Forward to the parent. * @param user User authenticated */ onAuthenticated(user: Cmf.Foundation.Security.User): void; /** * Changes the selected culture * @param culture New culture */ onCultureChange(culture: DropdownElement): void; /** * Changes the mode of authentication * @param mode Mode */ selectMode(mode: AuthMode): void; } export declare class AuthModule { }