import { Service } from '../Core/index'; import { StringAnyMap } from '../CommonTypes'; import { ExistingUser } from './DelegatingTypes'; /** * Delegating authentication * * This authentication delegates authentication to an external auth provider *
When a zetapush client handshakes with a delegated authentication, the 'token' field given by the client is sent to the configured remote server as part of the URL *
The response must be in JSON format * Each key of the response will be considered a user information field name *
The handshake from the server will return the primary key in a field named 'login' (regardless of the actual key name you might have chosen) * */ export declare class Delegating extends Service { /** * Get deployment type associated to Delegating service * @return {string} */ static readonly DEPLOYMENT_TYPE: string; /** * Get default deployment id associated to Delegating service * @return {string} */ static readonly DEFAULT_DEPLOYMENT_ID: string; /** * End-user API for the delegating authentication * * Provisioning verbs. * @access public * */ /** * Get user info * * Retrieves cached user info or (if missing) eagerly creates a zetapush key for the user. * The returned field 'zetapushKey' is a unique and permanent ID identifying a user in a sandbox. * @access public * */ userInfo(body: ExistingUser): Promise; }