| // 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. |
| |
| // Simplified implementation of the <code>chrome.identity</code> for |
| // cast_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 cast_shell user for scopes |
| // from the manifest. Does not prompt the user. |
| static void getAuthToken(GetAuthTokenDetails options, |
| GetAuthTokenCallback callback); |
| |
| // Stub. Calls callback immediately because cast_shell does not cache access |
| // tokens the way Chrome does. |
| static void removeCachedAuthToken(InvalidTokenDetails details, |
| InvalidateAuthTokenCallback callback); |
| }; |
| |
| interface Events { |
| // Stub. Never fired because cast_shell only supports a single user account. |
| static void onSignInChanged(object account, boolean signedIn); |
| }; |
| }; |