// Copyright 2014 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. // Simplified implementation of the chrome.identity for app_shell. namespace identity { dictionary GetAuthTokenDetails { // Ignored parameter. Exists only for compatibility. boolean? interactive; }; dictionary InvalidTokenDetails { // Ignored parameter. Exists only for compatibility. DOMString? token; }; // Called with the OAuth2 access token on success or undefined on error. callback GetAuthTokenCallback = void (optional DOMString token); // Called by removeCachedAuthToken(). callback InvalidateAuthTokenCallback = void (); interface Functions { // Returns an OAuth2 access token for the current app_shell user for scopes // from the manifest. Does not prompt the user. static void getAuthToken(GetAuthTokenDetails options, GetAuthTokenCallback callback); // Stub. Calls callback immediately because app_shell does not cache access // tokens the way Chrome does. static void removeCachedAuthToken(InvalidTokenDetails details, InvalidateAuthTokenCallback callback); }; interface Events { // Stub. Never fired because app_shell only supports a single user account. static void onSignInChanged(object account, boolean signedIn); }; };