1// Copyright (c) 2010 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_EXTENSION_BOOKMARK_HELPERS_H_
6#define CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARK_HELPERS_H_
7#pragma once
8
9#include <string>
10
11#include "base/basictypes.h"
12
13class BookmarkModel;
14class BookmarkNode;
15class DictionaryValue;
16class ListValue;
17
18// Helper functions.
19namespace extension_bookmark_helpers {
20
21DictionaryValue* GetNodeDictionary(const BookmarkNode* node,
22                                   bool recurse,
23                                   bool only_folders);
24
25// Add a JSON representation of |node| to the JSON |list|.
26void AddNode(const BookmarkNode* node, ListValue* list, bool recurse);
27
28void AddNodeFoldersOnly(const BookmarkNode* node,
29                        ListValue* list,
30                        bool recurse);
31
32bool RemoveNode(BookmarkModel* model,
33                int64 id,
34                bool recursive,
35                std::string* error);
36
37}  // namespace extension_bookmark_helpers
38
39#endif  // CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARK_HELPERS_H_
40