- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / common / extensions / api / bookmark_manager_private.json
1 // Copyright (c) 2012 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 [
6   {
7     "namespace": "bookmarkManagerPrivate",
8     "description": "none",
9     "nodoc": true,
10     "types": [
11       {
12         "id": "BookmarkNodeDataElement",
13         "nodoc": true,
14         "type": "object",
15         "properties": {
16           "id": {
17             "type": "string",
18             "optional": true,
19             "description": "The ID of the bookmark. This is only provided if the data is from the same profile."
20           },
21           "parentId": {
22             "type": "string",
23             "optional": true,
24             "description": "The ID of the parent of the bookmark. This is only provided if the data is from the same profile."
25           },
26           "title": {"type": "string"},
27           "url": {
28             "type": "string",
29             "optional": true
30           },
31           "children": {
32             "type": "array",
33             "items": {"$ref": "BookmarkNodeDataElement"}
34           }
35         }
36       },
37       {
38         "id": "BookmarkNodeData",
39         "nodoc": true,
40         "type": "object",
41         "description": "Information about the drag and drop data for use with drag and drop events.",
42         "properties": {
43           "sameProfile": {"type": "boolean"},
44           "elements": {
45             "type": "array",
46             "items": {"$ref": "BookmarkNodeDataElement"}
47           }
48         }
49       }
50     ],
51     "functions": [
52       {
53         "name": "copy",
54         "type": "function",
55         "description": "Copies the given bookmarks into the clipboard",
56         "nodoc": "true",
57         "parameters": [
58           {
59             "name": "idList",
60             "description": "An array of string-valued ids",
61             "type": "array",
62             "items": {"type": "string"},
63             "minItems": 1
64           },
65           {"type": "function", "name": "callback", "optional": true, "parameters": []}
66         ]
67       },
68       {
69         "name": "cut",
70         "type": "function",
71         "description": "Cuts the given bookmarks into the clipboard",
72         "nodoc": "true",
73         "parameters": [
74           {
75             "name": "idList",
76             "description": "An array of string-valued ids",
77             "type": "array",
78             "items": {"type": "string"},
79             "minItems": 1
80           },
81           {"type": "function", "name": "callback", "optional": true, "parameters": []}
82         ]
83       },
84       {
85         "name": "paste",
86         "type": "function",
87         "description": "Pastes bookmarks from the clipboard into the parent folder after the last selected node",
88         "nodoc": "true",
89         "parameters": [
90           {"type": "string", "name": "parentId"},
91           {
92             "name": "selectedIdList",
93             "description": "An array of string-valued ids for selected bookmarks",
94             "optional": true,
95             "type": "array",
96             "items": {"type": "string"},
97             "minItems": 0
98           },
99           {"type": "function", "name": "callback", "optional": true, "parameters": []}
100         ]
101       },
102       {
103         "name": "canPaste",
104         "type": "function",
105         "description": "Whether there are any bookmarks that can be pasted",
106         "nodoc": "true",
107         "parameters": [
108           {"type": "string", "name": "parentId", "description": "The ID of the folder to paste into"},
109           {"type": "function", "name": "callback", "parameters": [
110             {"name": "result", "type": "boolean"}
111           ]}
112         ]
113       },
114       {
115         "name": "sortChildren",
116         "type": "function",
117         "description": "Sorts the children of a given folder",
118         "nodoc": "true",
119         "parameters": [
120           {"type": "string", "name": "parentId", "description": "The ID of the folder to sort the children of"}
121         ]
122       },
123       {
124         "name": "getStrings",
125         "type": "function",
126         "description": "Gets the i18n strings for the bookmark manager",
127         "nodoc": "true",
128         "parameters": [
129           {
130             "type": "function",
131              "name": "callback",
132              "parameters": [
133               {
134                 "name": "result",
135                 "type": "object",
136                 "additionalProperties": {"type": "string"}
137               }
138             ]
139           }
140         ]
141       },
142       {
143         "name": "startDrag",
144         "type": "function",
145         "description": "Begins dragging a set of bookmarks",
146         "nodoc": "true",
147         "parameters": [
148           {
149             "name": "idList",
150             "description": "An array of string-valued ids",
151             "type": "array",
152             "items": {"type": "string"},
153             "minItems": 1
154           }
155         ]
156       },
157       {
158         "name": "drop",
159         "type": "function",
160         "description": "Performs the drop action of the drag and drop session",
161         "nodoc": "true",
162         "parameters": [
163           {
164             "name": "parentId",
165             "description": "The ID of the folder that the drop was made",
166             "type": "string"
167           },
168           {
169             "name": "index",
170             "description": "The index of the position to drop at. If left out the dropped items will be placed at the end of the existing children",
171             "type": "integer",
172             "minimum": 0,
173             "optional": true
174           }
175         ]
176       },
177       {
178         "name": "getSubtree",
179         "type": "function",
180         "description": "Retrieves a bookmark hierarchy from the given node.  If the node id is empty, it is the full tree.  If foldersOnly is true, it will only return folders, not actual bookmarks.",
181         "nodoc": "true",
182         "parameters": [
183           {
184             "name": "id",
185             "type": "string",
186             "description": "ID of the root of the tree to pull.  If empty, the entire tree will be returned."
187           },
188           {
189             "name": "foldersOnly",
190             "type": "boolean",
191             "description": "Pass true to only return folders."
192           },
193           {
194             "name": "callback",
195             "type": "function",
196             "parameters": [
197               {"name": "results", "type": "array", "items": { "$ref": "bookmarks.BookmarkTreeNode"} }
198             ]
199           }
200         ]
201       },
202       {
203         "name": "canEdit",
204         "type": "function",
205         "description": "Whether bookmarks can be modified",
206         "nodoc": "true",
207         "parameters": [
208           {"type": "function", "name": "callback", "parameters": [
209             {"name": "result", "type": "boolean"}
210           ]}
211         ]
212       },
213       {
214         "name": "canOpenNewWindows",
215         "type": "function",
216         "description": "Whether bookmarks can be opened in new windows",
217         "nodoc": "true",
218         "parameters": [
219           {"type": "function", "name": "callback", "parameters": [
220             {"name": "result", "type": "boolean"}
221           ]}
222         ]
223       },
224       {
225         "name": "removeTrees",
226         "type": "function",
227         "description": "Recursively removes list of bookmarks nodes.",
228         "nodoc": "true",
229         "parameters": [
230           {
231             "name": "idList",
232             "description": "An array of string-valued ids",
233             "type": "array",
234             "items": {"type": "string"},
235             "minItems": 1
236           },
237           {"type": "function", "name": "callback", "optional": true, "parameters": []}
238         ]
239       },
240       {
241         "name": "recordLaunch",
242         "type": "function",
243         "description": "",
244         "nodoc": "true",
245         "parameters": []
246       }
247     ],
248     "events": [
249       {
250         "name": "onDragEnter",
251         "type": "function",
252         "description": "Fired when dragging bookmarks over the document",
253         "parameters": [
254           {"name": "bookmarkNodeData", "$ref": "BookmarkNodeData"}
255         ]
256       },
257       {
258         "name": "onDragLeave",
259         "type": "function",
260         "description": "Fired when the drag and drop leaves the document",
261         "parameters": [
262           {"name": "bookmarkNodeData", "$ref": "BookmarkNodeData"}
263         ]
264       },
265       {
266         "name": "onDrop",
267         "type": "function",
268         "description": "Fired when the user drops bookmarks on the document",
269         "parameters": [
270           {"name": "bookmarkNodeData", "$ref": "BookmarkNodeData"}
271         ]
272       }
273     ]
274   }
275 ]