// Copyright 2020 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 media.mojom;

// Mojo struct for
// fidl::InterfaceRequest<fuchsia::media::drm::ContentDecryptionModule>.
struct CdmRequest {
  handle<platform> request;
};

// Interface used by the render to connect
// fuchsia::media::drm::ContentDecryptionModule. Instances are document-scoped.
interface FuchsiaCdmProvider {
  // Create connection to fuchsia::media::drm::ContentDecryptionModule for
  // |key_system|. Implementation should make sure the persistent storage is
  // isolated per web origin.
  CreateCdm(string key_system, CdmRequest cdm_request);
};
