blob: 38d1786b6cbdb6cd629d09d085af0b8f46569f6d [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file was generated by:
// tools/json_schema_compiler/compiler.py.
// NOTE: The format of types has changed. 'FooType' is now
// 'chrome.quickUnlockPrivate.FooType'.
// Please run the closure compiler before committing changes.
// See https://chromium.googlesource.com/chromium/src/+/master/docs/closure_compilation.md
/** @fileoverview Externs generated from namespace: quickUnlockPrivate */
/**
* @const
*/
chrome.quickUnlockPrivate = {};
/**
* @typedef {{
* token: string,
* lifetimeSeconds: number
* }}
*/
chrome.quickUnlockPrivate.TokenInfo;
/**
* @enum {string}
*/
chrome.quickUnlockPrivate.QuickUnlockMode = {
PIN: 'PIN',
};
/**
* @enum {string}
*/
chrome.quickUnlockPrivate.CredentialProblem = {
TOO_SHORT: 'TOO_SHORT',
TOO_LONG: 'TOO_LONG',
TOO_WEAK: 'TOO_WEAK',
CONTAINS_NONDIGIT: 'CONTAINS_NONDIGIT',
};
/**
* @typedef {{
* errors: !Array<!chrome.quickUnlockPrivate.CredentialProblem>,
* warnings: !Array<!chrome.quickUnlockPrivate.CredentialProblem>
* }}
*/
chrome.quickUnlockPrivate.CredentialCheck;
/**
* @typedef {{
* minLength: number,
* maxLength: number
* }}
*/
chrome.quickUnlockPrivate.CredentialRequirements;
/**
* Returns a token that can be used for future operations and the number of
* seconds until the token expires.
* @param {string} accountPassword The account password for the logged in user.
* @param {function(!chrome.quickUnlockPrivate.TokenInfo):void} onComplete
*/
chrome.quickUnlockPrivate.getAuthToken = function(accountPassword, onComplete) {};
/**
* Sets the lock screen enabled state. NOTE: The lock enabled state is reflected
* in the settings.enable_screen_lock pref, which can be read but not written
* using the settings_private API (which also provides policy information). This
* API must be used to change the pref.
* @param {string} token The token returned by $(ref:getAuthToken).
* @param {boolean} enabled
* @param {function():void=} onComplete
*/
chrome.quickUnlockPrivate.setLockScreenEnabled = function(token, enabled, onComplete) {};
/**
* Returns the set of quick unlock modes that are available for the user to use.
* Some quick unlock modes may be disabled by policy.
* @param {function(!Array<!chrome.quickUnlockPrivate.QuickUnlockMode>):void}
* onComplete
*/
chrome.quickUnlockPrivate.getAvailableModes = function(onComplete) {};
/**
* Returns the quick unlock modes that are currently enabled and usable on the
* lock screen.
* @param {function(!Array<!chrome.quickUnlockPrivate.QuickUnlockMode>):void}
* onComplete
*/
chrome.quickUnlockPrivate.getActiveModes = function(onComplete) {};
/**
* Checks if the given credential can be used for the given unlock mode.
* Enterprise policy can change credential requirements.
* @param {!chrome.quickUnlockPrivate.QuickUnlockMode} mode The quick unlock
* mode that is used.
* @param {string} credential The given credential.
* @param {function(!chrome.quickUnlockPrivate.CredentialCheck):void} onComplete
* Called with a list of warnings and errors the given |credential| has
* (or an empty list if there are none).
*/
chrome.quickUnlockPrivate.checkCredential = function(mode, credential, onComplete) {};
/**
* Gets the credential requirements for the given unlock mode.
* @param {!chrome.quickUnlockPrivate.QuickUnlockMode} mode The quick unlock
* mode that is used.
* @param {function(!chrome.quickUnlockPrivate.CredentialRequirements):void}
* onComplete Called with the credential requirements of the given
* |mode|.
*/
chrome.quickUnlockPrivate.getCredentialRequirements = function(mode, onComplete) {};
/**
* Update the set of quick unlock modes that are currently active/enabled.
* @param {string} token The token returned by $(ref:getAuthToken).
* @param {!Array<!chrome.quickUnlockPrivate.QuickUnlockMode>} modes The quick
* unlock modes that should be active.
* @param {!Array<string>} credentials The associated credential for each mode.
* To keep the credential the same for the associated mode, pass an
* empty string.
* @param {function():void} onComplete Called with true if the quick unlock
* state was updated, false otherwise. The update is treated as a single
* atomic operation.
*/
chrome.quickUnlockPrivate.setModes = function(token, modes, credentials, onComplete) {};
/**
* Called after the active set of quick unlock modes has changed.
* @type {!ChromeEvent}
*/
chrome.quickUnlockPrivate.onActiveModesChanged;