// Copyright 2016 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 content.mojom;

import "url/mojo/url.mojom";

interface RenderFrameMessageFilter {
  // Sets a cookie. The cookie is set asynchronously, but will be available to
  // any subsequent GetCookies() request.
  SetCookie(int32 render_frame_id, url.mojom.Url url,
      url.mojom.Url first_party_for_cookies, string cookie);

  // Used to get cookies for the given URL. This may block waiting for a
  // previous SetCookie message to be processed.
  [Sync]
  GetCookies(int32 render_frame_id, url.mojom.Url url,
      url.mojom.Url first_party_for_cookies) => (string cookies);
};
