// Copyright 2016 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_OFFLINE_PAGES_CORE_OFFLINE_PAGE_CLIENT_POLICY_H_ #define COMPONENTS_OFFLINE_PAGES_CORE_OFFLINE_PAGE_CLIENT_POLICY_H_ #include <stdint.h> #include <string> #include <vector> #include "base/time/time.h" namespace offline_pages { static const size_t kUnlimitedPages = …; // Enum whose values specify the lifetime characteristics of pages pertaining to // a given client. enum class LifetimeType { … }; // The struct describing policies for offline pages' clients (Bookmark, Last-N // etc.) describing how their pages are handled by the offline page model. struct OfflinePageClientPolicy { … }; // Get the client policy for |name_space|. const OfflinePageClientPolicy& GetPolicy(const std::string& name_space); // Returns a list of all known namespaces. const std::vector<std::string>& GetAllPolicyNamespaces(); // Returns a list of all temporary namespaces. const std::vector<std::string>& GetTemporaryPolicyNamespaces(); // Returns a list of all persistent namespaces. const std::vector<std::string>& GetPersistentPolicyNamespaces(); } // namespace offline_pages #endif // COMPONENTS_OFFLINE_PAGES_CORE_OFFLINE_PAGE_CLIENT_POLICY_H_