blob: 8d4425c202bd04654a8af82b8858aafe60fccad8 [file] [log] [blame]
// Copyright 2019 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.
module chrome.mojom;
// API exposed by the browser process to the renderer process, such that the
// renderer can interact with the encryption state of Sync. Exposed to allowed
// origins only.
interface SyncEncryptionKeysExtension {
// Provides sync encryption keys to the browser process. Returns true if no
// further encryption keys are needed (which includes the case, among others,
// of encryption keys not being needed even prior to this call).
SetEncryptionKeys(string gaia_id, array<array<uint8>> encryption_keys,
int32 last_key_version) => ();
// Registers a new trusted recovery method that can be used by other clients
// to retrieve sync trusted vault encryption keys. |method_type_hint| is an
// opaque value provided server-side that may be used for related future
// interactions with the server.
AddTrustedRecoveryMethod(string gaia_id, array<uint8> public_key,
int32 method_type_hint) => ();
};