// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

syntax = "proto2";

package feedwire;

import "components/feed/core/proto/v2/wire/chrome_fulfillment_info.proto";
import "components/feed/core/proto/v2/wire/feed_entry_point_data.proto";
import "components/feed/core/proto/v2/wire/token.proto";

option optimize_for = LITE_RUNTIME;

message FeedQuery {
  message Tokens {
    repeated Token tokens = 1;
  }
  enum RequestReason {
    UNKNOWN_REQUEST_REASON = 0;
    MANUAL_REFRESH = 1;
    SCHEDULED_REFRESH = 2;
    APP_CLOSE_REFRESH = 13;
    NEXT_PAGE_SCROLL = 3;
    reserved 8, 9;
    reserved "PREFETCHED_WEB_FEED", "INTERACTIVE_WEB_FEED";
  }
  enum ContentOrder {
    CONTENT_ORDER_UNSPECIFIED = 0;
    RECENT = 2;
    GROUPED = 4;
  }
  reserved 4;
  reserved "web_feed_token";

  oneof token {
    Token next_page_token = 3;
  }
  optional RequestReason reason = 1;
  optional ContentOrder order_by = 8;
  optional FeedEntryPointData feed_entry_point_data = 9;
  optional ChromeFulfillmentInfo chrome_fulfillment_info = 341477699;
}
