1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_EXTENSIONS_API_READING_LIST_PRIVATE_READING_LIST_PRIVATE_API_H_
6#define CHROME_BROWSER_EXTENSIONS_API_READING_LIST_PRIVATE_READING_LIST_PRIVATE_API_H_
7
8#include "base/values.h"
9#include "chrome/browser/extensions/chrome_extension_function.h"
10#include "chrome/common/extensions/api/reading_list_private.h"
11
12namespace content {
13class WebContents;
14}
15
16namespace extensions {
17
18class ReadingListPrivateAddEntryFunction : public ChromeAsyncExtensionFunction {
19 public:
20  DECLARE_EXTENSION_FUNCTION("readingListPrivate.addEntry",
21                             READINGLISTPRIVATE_ADDENTRY)
22
23 protected:
24  virtual ~ReadingListPrivateAddEntryFunction() {}
25
26  // ExtensionFunction:
27  virtual bool RunAsync() OVERRIDE;
28};
29
30class ReadingListPrivateRemoveEntryFunction
31    : public ChromeSyncExtensionFunction {
32 public:
33  DECLARE_EXTENSION_FUNCTION("readingListPrivate.removeEntry",
34                             READINGLISTPRIVATE_REMOVEENTRY)
35
36 protected:
37  virtual ~ReadingListPrivateRemoveEntryFunction() {}
38
39  // ExtensionFunction:
40  virtual bool RunSync() OVERRIDE;
41};
42
43class ReadingListPrivateGetEntriesFunction
44    : public ChromeSyncExtensionFunction {
45 public:
46  DECLARE_EXTENSION_FUNCTION("readingListPrivate.getEntries",
47                             READINGLISTPRIVATE_GETENTRIES)
48
49 protected:
50  virtual ~ReadingListPrivateGetEntriesFunction() {}
51
52  // ExtensionFunction:
53  virtual bool RunSync() OVERRIDE;
54};
55
56}  // namespace extensions
57
58#endif  // CHROME_BROWSER_EXTENSIONS_API_READING_LIST_PRIVATE_READING_LIST_PRIVATE_API_H_
59