@divyacon/piece-google-drive 0.0.0-stage → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. package/LICENSE.MIT-AP +24 -0
  2. package/dist/index.d.ts +6 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +155 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/lib/action/add-permission.action.d.ts +11 -0
  7. package/dist/lib/action/add-permission.action.d.ts.map +1 -0
  8. package/dist/lib/action/add-permission.action.js +83 -0
  9. package/dist/lib/action/add-permission.action.js.map +1 -0
  10. package/dist/lib/action/create-new-folder.d.ts +12 -0
  11. package/dist/lib/action/create-new-folder.d.ts.map +1 -0
  12. package/dist/lib/action/create-new-folder.js +43 -0
  13. package/dist/lib/action/create-new-folder.js.map +1 -0
  14. package/dist/lib/action/create-new-text-file.d.ts +14 -0
  15. package/dist/lib/action/create-new-text-file.d.ts.map +1 -0
  16. package/dist/lib/action/create-new-text-file.js +81 -0
  17. package/dist/lib/action/create-new-text-file.js.map +1 -0
  18. package/dist/lib/action/delete-file.d.ts +8 -0
  19. package/dist/lib/action/delete-file.d.ts.map +1 -0
  20. package/dist/lib/action/delete-file.js +38 -0
  21. package/dist/lib/action/delete-file.js.map +1 -0
  22. package/dist/lib/action/delete-permission.action.d.ts +9 -0
  23. package/dist/lib/action/delete-permission.action.d.ts.map +1 -0
  24. package/dist/lib/action/delete-permission.action.js +84 -0
  25. package/dist/lib/action/delete-permission.action.js.map +1 -0
  26. package/dist/lib/action/drive-copy-file.d.ts +10 -0
  27. package/dist/lib/action/drive-copy-file.d.ts.map +1 -0
  28. package/dist/lib/action/drive-copy-file.js +84 -0
  29. package/dist/lib/action/drive-copy-file.js.map +1 -0
  30. package/dist/lib/action/drive-create-comment.d.ts +8 -0
  31. package/dist/lib/action/drive-create-comment.d.ts.map +1 -0
  32. package/dist/lib/action/drive-create-comment.js +60 -0
  33. package/dist/lib/action/drive-create-comment.js.map +1 -0
  34. package/dist/lib/action/drive-create-file-from-text.d.ts +10 -0
  35. package/dist/lib/action/drive-create-file-from-text.d.ts.map +1 -0
  36. package/dist/lib/action/drive-create-file-from-text.js +91 -0
  37. package/dist/lib/action/drive-create-file-from-text.js.map +1 -0
  38. package/dist/lib/action/drive-create-folder.d.ts +8 -0
  39. package/dist/lib/action/drive-create-folder.d.ts.map +1 -0
  40. package/dist/lib/action/drive-create-folder.js +48 -0
  41. package/dist/lib/action/drive-create-folder.js.map +1 -0
  42. package/dist/lib/action/drive-create-reply.d.ts +10 -0
  43. package/dist/lib/action/drive-create-reply.d.ts.map +1 -0
  44. package/dist/lib/action/drive-create-reply.js +81 -0
  45. package/dist/lib/action/drive-create-reply.js.map +1 -0
  46. package/dist/lib/action/drive-create-shared-drive.d.ts +7 -0
  47. package/dist/lib/action/drive-create-shared-drive.d.ts.map +1 -0
  48. package/dist/lib/action/drive-create-shared-drive.js +53 -0
  49. package/dist/lib/action/drive-create-shared-drive.js.map +1 -0
  50. package/dist/lib/action/drive-delete-file.d.ts +7 -0
  51. package/dist/lib/action/drive-delete-file.d.ts.map +1 -0
  52. package/dist/lib/action/drive-delete-file.js +39 -0
  53. package/dist/lib/action/drive-delete-file.js.map +1 -0
  54. package/dist/lib/action/drive-delete-reply.d.ts +9 -0
  55. package/dist/lib/action/drive-delete-reply.d.ts.map +1 -0
  56. package/dist/lib/action/drive-delete-reply.js +64 -0
  57. package/dist/lib/action/drive-delete-reply.js.map +1 -0
  58. package/dist/lib/action/drive-delete-shared-drive.d.ts +7 -0
  59. package/dist/lib/action/drive-delete-shared-drive.d.ts.map +1 -0
  60. package/dist/lib/action/drive-delete-shared-drive.js +55 -0
  61. package/dist/lib/action/drive-delete-shared-drive.js.map +1 -0
  62. package/dist/lib/action/drive-download-file.d.ts +8 -0
  63. package/dist/lib/action/drive-download-file.d.ts.map +1 -0
  64. package/dist/lib/action/drive-download-file.js +37 -0
  65. package/dist/lib/action/drive-download-file.js.map +1 -0
  66. package/dist/lib/action/drive-empty-trash.d.ts +7 -0
  67. package/dist/lib/action/drive-empty-trash.d.ts.map +1 -0
  68. package/dist/lib/action/drive-empty-trash.js +47 -0
  69. package/dist/lib/action/drive-empty-trash.js.map +1 -0
  70. package/dist/lib/action/drive-export-workspace-file.d.ts +8 -0
  71. package/dist/lib/action/drive-export-workspace-file.d.ts.map +1 -0
  72. package/dist/lib/action/drive-export-workspace-file.js +116 -0
  73. package/dist/lib/action/drive-export-workspace-file.js.map +1 -0
  74. package/dist/lib/action/drive-get-about.d.ts +5 -0
  75. package/dist/lib/action/drive-get-about.d.ts.map +1 -0
  76. package/dist/lib/action/drive-get-about.js +43 -0
  77. package/dist/lib/action/drive-get-about.js.map +1 -0
  78. package/dist/lib/action/drive-get-file.d.ts +7 -0
  79. package/dist/lib/action/drive-get-file.d.ts.map +1 -0
  80. package/dist/lib/action/drive-get-file.js +46 -0
  81. package/dist/lib/action/drive-get-file.js.map +1 -0
  82. package/dist/lib/action/drive-get-reply.d.ts +9 -0
  83. package/dist/lib/action/drive-get-reply.d.ts.map +1 -0
  84. package/dist/lib/action/drive-get-reply.js +66 -0
  85. package/dist/lib/action/drive-get-reply.js.map +1 -0
  86. package/dist/lib/action/drive-get-shared-drive.d.ts +7 -0
  87. package/dist/lib/action/drive-get-shared-drive.d.ts.map +1 -0
  88. package/dist/lib/action/drive-get-shared-drive.js +52 -0
  89. package/dist/lib/action/drive-get-shared-drive.js.map +1 -0
  90. package/dist/lib/action/drive-list-comments.d.ts +7 -0
  91. package/dist/lib/action/drive-list-comments.d.ts.map +1 -0
  92. package/dist/lib/action/drive-list-comments.js +60 -0
  93. package/dist/lib/action/drive-list-comments.js.map +1 -0
  94. package/dist/lib/action/drive-list-files.d.ts +11 -0
  95. package/dist/lib/action/drive-list-files.d.ts.map +1 -0
  96. package/dist/lib/action/drive-list-files.js +174 -0
  97. package/dist/lib/action/drive-list-files.js.map +1 -0
  98. package/dist/lib/action/drive-list-permissions.d.ts +7 -0
  99. package/dist/lib/action/drive-list-permissions.d.ts.map +1 -0
  100. package/dist/lib/action/drive-list-permissions.js +59 -0
  101. package/dist/lib/action/drive-list-permissions.js.map +1 -0
  102. package/dist/lib/action/drive-list-replies.d.ts +8 -0
  103. package/dist/lib/action/drive-list-replies.d.ts.map +1 -0
  104. package/dist/lib/action/drive-list-replies.js +65 -0
  105. package/dist/lib/action/drive-list-replies.js.map +1 -0
  106. package/dist/lib/action/drive-list-shared-drives.d.ts +8 -0
  107. package/dist/lib/action/drive-list-shared-drives.d.ts.map +1 -0
  108. package/dist/lib/action/drive-list-shared-drives.js +60 -0
  109. package/dist/lib/action/drive-list-shared-drives.js.map +1 -0
  110. package/dist/lib/action/drive-move-file.d.ts +8 -0
  111. package/dist/lib/action/drive-move-file.d.ts.map +1 -0
  112. package/dist/lib/action/drive-move-file.js +57 -0
  113. package/dist/lib/action/drive-move-file.js.map +1 -0
  114. package/dist/lib/action/drive-remove-permission.d.ts +9 -0
  115. package/dist/lib/action/drive-remove-permission.d.ts.map +1 -0
  116. package/dist/lib/action/drive-remove-permission.js +75 -0
  117. package/dist/lib/action/drive-remove-permission.js.map +1 -0
  118. package/dist/lib/action/drive-replace-file-content.d.ts +9 -0
  119. package/dist/lib/action/drive-replace-file-content.d.ts.map +1 -0
  120. package/dist/lib/action/drive-replace-file-content.js +67 -0
  121. package/dist/lib/action/drive-replace-file-content.js.map +1 -0
  122. package/dist/lib/action/drive-save-file-as-pdf.d.ts +9 -0
  123. package/dist/lib/action/drive-save-file-as-pdf.d.ts.map +1 -0
  124. package/dist/lib/action/drive-save-file-as-pdf.js +73 -0
  125. package/dist/lib/action/drive-save-file-as-pdf.js.map +1 -0
  126. package/dist/lib/action/drive-search-files.d.ts +12 -0
  127. package/dist/lib/action/drive-search-files.d.ts.map +1 -0
  128. package/dist/lib/action/drive-search-files.js +130 -0
  129. package/dist/lib/action/drive-search-files.js.map +1 -0
  130. package/dist/lib/action/drive-set-public-access.d.ts +8 -0
  131. package/dist/lib/action/drive-set-public-access.d.ts.map +1 -0
  132. package/dist/lib/action/drive-set-public-access.js +71 -0
  133. package/dist/lib/action/drive-set-public-access.js.map +1 -0
  134. package/dist/lib/action/drive-share-file.d.ts +10 -0
  135. package/dist/lib/action/drive-share-file.d.ts.map +1 -0
  136. package/dist/lib/action/drive-share-file.js +69 -0
  137. package/dist/lib/action/drive-share-file.js.map +1 -0
  138. package/dist/lib/action/drive-trash-file.d.ts +7 -0
  139. package/dist/lib/action/drive-trash-file.d.ts.map +1 -0
  140. package/dist/lib/action/drive-trash-file.js +45 -0
  141. package/dist/lib/action/drive-trash-file.js.map +1 -0
  142. package/dist/lib/action/drive-untrash-file.d.ts +7 -0
  143. package/dist/lib/action/drive-untrash-file.d.ts.map +1 -0
  144. package/dist/lib/action/drive-untrash-file.js +54 -0
  145. package/dist/lib/action/drive-untrash-file.js.map +1 -0
  146. package/dist/lib/action/drive-update-file-metadata.d.ts +10 -0
  147. package/dist/lib/action/drive-update-file-metadata.d.ts.map +1 -0
  148. package/dist/lib/action/drive-update-file-metadata.js +79 -0
  149. package/dist/lib/action/drive-update-file-metadata.js.map +1 -0
  150. package/dist/lib/action/drive-update-permission.d.ts +9 -0
  151. package/dist/lib/action/drive-update-permission.d.ts.map +1 -0
  152. package/dist/lib/action/drive-update-permission.js +93 -0
  153. package/dist/lib/action/drive-update-permission.js.map +1 -0
  154. package/dist/lib/action/drive-update-reply.d.ts +10 -0
  155. package/dist/lib/action/drive-update-reply.d.ts.map +1 -0
  156. package/dist/lib/action/drive-update-reply.js +72 -0
  157. package/dist/lib/action/drive-update-reply.js.map +1 -0
  158. package/dist/lib/action/drive-update-shared-drive.d.ts +8 -0
  159. package/dist/lib/action/drive-update-shared-drive.d.ts.map +1 -0
  160. package/dist/lib/action/drive-update-shared-drive.js +62 -0
  161. package/dist/lib/action/drive-update-shared-drive.js.map +1 -0
  162. package/dist/lib/action/drive-upload-file.d.ts +9 -0
  163. package/dist/lib/action/drive-upload-file.d.ts.map +1 -0
  164. package/dist/lib/action/drive-upload-file.js +71 -0
  165. package/dist/lib/action/drive-upload-file.js.map +1 -0
  166. package/dist/lib/action/drive-upload-from-url.d.ts +10 -0
  167. package/dist/lib/action/drive-upload-from-url.d.ts.map +1 -0
  168. package/dist/lib/action/drive-upload-from-url.js +90 -0
  169. package/dist/lib/action/drive-upload-from-url.js.map +1 -0
  170. package/dist/lib/action/duplicate-file.action.d.ts +11 -0
  171. package/dist/lib/action/duplicate-file.action.d.ts.map +1 -0
  172. package/dist/lib/action/duplicate-file.action.js +83 -0
  173. package/dist/lib/action/duplicate-file.action.js.map +1 -0
  174. package/dist/lib/action/get-file-by-id.d.ts +8 -0
  175. package/dist/lib/action/get-file-by-id.d.ts.map +1 -0
  176. package/dist/lib/action/get-file-by-id.js +45 -0
  177. package/dist/lib/action/get-file-by-id.js.map +1 -0
  178. package/dist/lib/action/list-files.action.d.ts +11 -0
  179. package/dist/lib/action/list-files.action.d.ts.map +1 -0
  180. package/dist/lib/action/list-files.action.js +165 -0
  181. package/dist/lib/action/list-files.action.js.map +1 -0
  182. package/dist/lib/action/move-file.d.ts +12 -0
  183. package/dist/lib/action/move-file.d.ts.map +1 -0
  184. package/dist/lib/action/move-file.js +52 -0
  185. package/dist/lib/action/move-file.js.map +1 -0
  186. package/dist/lib/action/read-file.d.ts +8 -0
  187. package/dist/lib/action/read-file.d.ts.map +1 -0
  188. package/dist/lib/action/read-file.js +34 -0
  189. package/dist/lib/action/read-file.js.map +1 -0
  190. package/dist/lib/action/save-file-as-pdf.action.d.ts +10 -0
  191. package/dist/lib/action/save-file-as-pdf.action.d.ts.map +1 -0
  192. package/dist/lib/action/save-file-as-pdf.action.js +72 -0
  193. package/dist/lib/action/save-file-as-pdf.action.js.map +1 -0
  194. package/dist/lib/action/search-folder-or-file.action.d.ts +15 -0
  195. package/dist/lib/action/search-folder-or-file.action.d.ts.map +1 -0
  196. package/dist/lib/action/search-folder-or-file.action.js +119 -0
  197. package/dist/lib/action/search-folder-or-file.action.js.map +1 -0
  198. package/dist/lib/action/send-to-trash.d.ts +8 -0
  199. package/dist/lib/action/send-to-trash.d.ts.map +1 -0
  200. package/dist/lib/action/send-to-trash.js +44 -0
  201. package/dist/lib/action/send-to-trash.js.map +1 -0
  202. package/dist/lib/action/set-public-access.d.ts +8 -0
  203. package/dist/lib/action/set-public-access.d.ts.map +1 -0
  204. package/dist/lib/action/set-public-access.js +66 -0
  205. package/dist/lib/action/set-public-access.js.map +1 -0
  206. package/dist/lib/action/upload-file.d.ts +13 -0
  207. package/dist/lib/action/upload-file.d.ts.map +1 -0
  208. package/dist/lib/action/upload-file.js +58 -0
  209. package/dist/lib/action/upload-file.js.map +1 -0
  210. package/dist/lib/auth.d.ts +11 -0
  211. package/dist/lib/auth.d.ts.map +1 -0
  212. package/dist/lib/auth.js +87 -0
  213. package/dist/lib/auth.js.map +1 -0
  214. package/dist/lib/common/get-file-content.d.ts +4 -0
  215. package/dist/lib/common/get-file-content.d.ts.map +1 -0
  216. package/dist/lib/common/get-file-content.js +69 -0
  217. package/dist/lib/common/get-file-content.js.map +1 -0
  218. package/dist/lib/common/index.d.ts +23 -0
  219. package/dist/lib/common/index.d.ts.map +1 -0
  220. package/dist/lib/common/index.js +152 -0
  221. package/dist/lib/common/index.js.map +1 -0
  222. package/dist/lib/output-schemas.d.ts +53 -0
  223. package/dist/lib/output-schemas.d.ts.map +1 -0
  224. package/dist/lib/output-schemas.js +2022 -0
  225. package/dist/lib/output-schemas.js.map +1 -0
  226. package/dist/lib/triggers/new-file.d.ts +43 -0
  227. package/dist/lib/triggers/new-file.d.ts.map +1 -0
  228. package/dist/lib/triggers/new-file.js +107 -0
  229. package/dist/lib/triggers/new-file.js.map +1 -0
  230. package/dist/lib/triggers/new-folder.d.ts +39 -0
  231. package/dist/lib/triggers/new-folder.d.ts.map +1 -0
  232. package/dist/lib/triggers/new-folder.js +71 -0
  233. package/dist/lib/triggers/new-folder.js.map +1 -0
  234. package/package.json +50 -4
  235. package/src/index.ts +149 -0
  236. package/src/lib/action/add-permission.action.ts +82 -0
  237. package/src/lib/action/create-new-folder.ts +42 -0
  238. package/src/lib/action/create-new-text-file.ts +80 -0
  239. package/src/lib/action/delete-file.ts +33 -0
  240. package/src/lib/action/delete-permission.action.ts +84 -0
  241. package/src/lib/action/drive-copy-file.ts +86 -0
  242. package/src/lib/action/drive-create-comment.ts +61 -0
  243. package/src/lib/action/drive-create-file-from-text.ts +99 -0
  244. package/src/lib/action/drive-create-folder.ts +49 -0
  245. package/src/lib/action/drive-create-reply.ts +84 -0
  246. package/src/lib/action/drive-create-shared-drive.ts +52 -0
  247. package/src/lib/action/drive-delete-file.ts +36 -0
  248. package/src/lib/action/drive-delete-reply.ts +65 -0
  249. package/src/lib/action/drive-delete-shared-drive.ts +57 -0
  250. package/src/lib/action/drive-download-file.ts +38 -0
  251. package/src/lib/action/drive-empty-trash.ts +47 -0
  252. package/src/lib/action/drive-export-workspace-file.ts +129 -0
  253. package/src/lib/action/drive-get-about.ts +40 -0
  254. package/src/lib/action/drive-get-file.ts +40 -0
  255. package/src/lib/action/drive-get-reply.ts +67 -0
  256. package/src/lib/action/drive-get-shared-drive.ts +52 -0
  257. package/src/lib/action/drive-list-comments.ts +61 -0
  258. package/src/lib/action/drive-list-files.ts +238 -0
  259. package/src/lib/action/drive-list-permissions.ts +60 -0
  260. package/src/lib/action/drive-list-replies.ts +66 -0
  261. package/src/lib/action/drive-list-shared-drives.ts +59 -0
  262. package/src/lib/action/drive-move-file.ts +56 -0
  263. package/src/lib/action/drive-remove-permission.ts +75 -0
  264. package/src/lib/action/drive-replace-file-content.ts +71 -0
  265. package/src/lib/action/drive-save-file-as-pdf.ts +80 -0
  266. package/src/lib/action/drive-search-files.ts +127 -0
  267. package/src/lib/action/drive-set-public-access.ts +75 -0
  268. package/src/lib/action/drive-share-file.ts +69 -0
  269. package/src/lib/action/drive-trash-file.ts +41 -0
  270. package/src/lib/action/drive-untrash-file.ts +54 -0
  271. package/src/lib/action/drive-update-file-metadata.ts +82 -0
  272. package/src/lib/action/drive-update-permission.ts +100 -0
  273. package/src/lib/action/drive-update-reply.ts +73 -0
  274. package/src/lib/action/drive-update-shared-drive.ts +63 -0
  275. package/src/lib/action/drive-upload-file.ts +80 -0
  276. package/src/lib/action/drive-upload-from-url.ts +107 -0
  277. package/src/lib/action/duplicate-file.action.ts +82 -0
  278. package/src/lib/action/get-file-by-id.ts +37 -0
  279. package/src/lib/action/list-files.action.ts +214 -0
  280. package/src/lib/action/move-file.ts +48 -0
  281. package/src/lib/action/read-file.ts +28 -0
  282. package/src/lib/action/save-file-as-pdf.action.ts +76 -0
  283. package/src/lib/action/search-folder-or-file.action.ts +112 -0
  284. package/src/lib/action/send-to-trash.ts +38 -0
  285. package/src/lib/action/set-public-access.ts +68 -0
  286. package/src/lib/action/upload-file.ts +55 -0
  287. package/src/lib/auth.ts +79 -0
  288. package/src/lib/common/get-file-content.ts +109 -0
  289. package/src/lib/common/index.ts +182 -0
  290. package/src/lib/output-schemas.ts +2070 -0
  291. package/src/lib/triggers/new-file.ts +119 -0
  292. package/src/lib/triggers/new-folder.ts +78 -0
  293. package/README.md +0 -3
@@ -0,0 +1,11 @@
1
+ import { AppConnectionValueForAuthProperty } from '@agnocon/pieces-framework';
2
+ import { OAuth2Client } from 'google-auth-library';
3
+ export declare const googleDriveScopes: string[];
4
+ export declare const googleDriveAuth: (import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props> | import("@agnocon/pieces-framework").CustomAuthProperty<{
5
+ serviceAccount: import("@agnocon/pieces-framework").LongTextProperty<true>;
6
+ userEmail: import("@agnocon/pieces-framework").ShortTextProperty<false>;
7
+ }>)[];
8
+ export type GoogleDriveAuthValue = AppConnectionValueForAuthProperty<typeof googleDriveAuth>;
9
+ export declare function createGoogleClient(auth: GoogleDriveAuthValue): Promise<OAuth2Client>;
10
+ export declare const getAccessToken: (auth: GoogleDriveAuthValue) => Promise<string>;
11
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iCAAiC,EAAuB,MAAM,2BAA2B,CAAC;AAEnG,OAAO,EAAO,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,eAAO,MAAM,iBAAiB,UAAqD,CAAC;AAEpF,eAAO,MAAM,eAAe;;;KAqCzB,CAAC;AAEJ,MAAM,MAAM,oBAAoB,GAAG,iCAAiC,CAAC,OAAO,eAAe,CAAC,CAAC;AAE7F,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAAC,CAkB1F;AAED,eAAO,MAAM,cAAc,SAAgB,oBAAoB,KAAG,OAAO,CAAC,MAAM,CAW/E,CAAC"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAccessToken = exports.googleDriveAuth = exports.googleDriveScopes = void 0;
4
+ exports.createGoogleClient = createGoogleClient;
5
+ const tslib_1 = require("tslib");
6
+ // Vendored from Activepieces packages/pieces/community/google-drive/src/lib/auth.ts (MIT).
7
+ // Generated by packages/scripts/vendor-ap.mjs - do not edit by hand.
8
+ const pieces_framework_1 = require("@agnocon/pieces-framework");
9
+ const pieces_framework_2 = require("@agnocon/pieces-framework");
10
+ const google_auth_library_1 = require("google-auth-library");
11
+ exports.googleDriveScopes = ['https://www.googleapis.com/auth/drive', 'email'];
12
+ exports.googleDriveAuth = [pieces_framework_1.PieceAuth.OAuth2({
13
+ description: '',
14
+ authUrl: 'https://accounts.google.com/o/oauth2/auth',
15
+ tokenUrl: 'https://oauth2.googleapis.com/token',
16
+ required: true,
17
+ scope: exports.googleDriveScopes,
18
+ }), pieces_framework_1.PieceAuth.CustomAuth({
19
+ displayName: 'Service Account (Advanced)',
20
+ description: 'Authenticate via service account from https://console.cloud.google.com/ > IAM & Admin > Service Accounts > Create Service Account > Keys > Add key. <br> <br> You can optionally use domain-wide delegation (https://support.google.com/a/answer/162106?hl=en#zippy=%2Cset-up-domain-wide-delegation-for-a-client) to access files without adding the service account to each one. <br> <br> **Note:** Without a user email, the service account only has access to files/folders you explicitly share with it.',
21
+ required: true,
22
+ props: {
23
+ serviceAccount: pieces_framework_1.Property.LongText({
24
+ displayName: 'Service Account JSON Key',
25
+ required: true,
26
+ }),
27
+ userEmail: pieces_framework_1.Property.ShortText({
28
+ displayName: 'User Email',
29
+ required: false,
30
+ description: 'Email address of the user to impersonate for domain-wide delegation.',
31
+ }),
32
+ },
33
+ validate: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
34
+ try {
35
+ yield (0, exports.getAccessToken)({
36
+ type: pieces_framework_2.AppConnectionType.CUSTOM_AUTH,
37
+ props: Object.assign({}, auth),
38
+ });
39
+ }
40
+ catch (e) {
41
+ return {
42
+ valid: false,
43
+ error: e.message,
44
+ };
45
+ }
46
+ return {
47
+ valid: true,
48
+ };
49
+ }),
50
+ })];
51
+ function createGoogleClient(auth) {
52
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
53
+ if (auth.type === pieces_framework_2.AppConnectionType.CUSTOM_AUTH) {
54
+ let serviceAccount;
55
+ try {
56
+ serviceAccount = JSON.parse(auth.props.serviceAccount);
57
+ }
58
+ catch (_a) {
59
+ throw new Error('Invalid Service Account JSON Key. Please provide a valid JSON string.');
60
+ }
61
+ return new google_auth_library_1.JWT({
62
+ email: serviceAccount.client_email,
63
+ key: serviceAccount.private_key,
64
+ scopes: exports.googleDriveScopes,
65
+ subject: auth.props.userEmail,
66
+ });
67
+ }
68
+ const authClient = new google_auth_library_1.OAuth2Client();
69
+ authClient.setCredentials(auth);
70
+ return authClient;
71
+ });
72
+ }
73
+ const getAccessToken = (auth) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
74
+ if (auth.type === pieces_framework_2.AppConnectionType.CUSTOM_AUTH) {
75
+ const googleClient = yield createGoogleClient(auth);
76
+ const response = yield googleClient.getAccessToken();
77
+ if (response.token) {
78
+ return response.token;
79
+ }
80
+ else {
81
+ throw new Error('Could not retrieve access token from service account json');
82
+ }
83
+ }
84
+ return auth.access_token;
85
+ });
86
+ exports.getAccessToken = getAccessToken;
87
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":";;;AAiDA,gDAkBC;;AAnED,2FAA2F;AAC3F,qEAAqE;AACrE,gEAAmG;AACnG,gEAA8D;AAC9D,6DAAwD;AAE3C,QAAA,iBAAiB,GAAG,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;AAEvE,QAAA,eAAe,GAAG,CAAC,4BAAS,CAAC,MAAM,CAAC;QAC/C,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,2CAA2C;QACpD,QAAQ,EAAE,qCAAqC;QAC/C,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,yBAAiB;KACzB,CAAC,EAAE,4BAAS,CAAC,UAAU,CAAC;QACvB,WAAW,EAAE,4BAA4B;QACzC,WAAW,EAAE,kfAAkf;QAC/f,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE;YACL,cAAc,EAAE,2BAAQ,CAAC,QAAQ,CAAC;gBAChC,WAAW,EAAE,0BAA0B;gBACvC,QAAQ,EAAE,IAAI;aACf,CAAC;YACF,SAAS,EAAE,2BAAQ,CAAC,SAAS,CAAC;gBAC5B,WAAW,EAAE,YAAY;gBACzB,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,sEAAsE;aACpF,CAAC;SACH;QACD,QAAQ,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;YACvB,IAAI,CAAC;gBACH,MAAM,IAAA,sBAAc,EAAC;oBACnB,IAAI,EAAE,oCAAiB,CAAC,WAAW;oBACnC,KAAK,oBAAO,IAAI,CAAE;iBACnB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO;oBACL,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAG,CAAW,CAAC,OAAO;iBAC5B,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,KAAK,EAAE,IAAI;aACZ,CAAC;QACJ,CAAC,CAAA;KACF,CAAC,CAAC,CAAC;AAIJ,SAAsB,kBAAkB,CAAC,IAA0B;;QACjE,IAAI,IAAI,CAAC,IAAI,KAAK,oCAAiB,CAAC,WAAW,EAAE,CAAC;YAChD,IAAI,cAAc,CAAC;YACnB,IAAI,CAAC;gBACH,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACzD,CAAC;YAAC,WAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;YAC3F,CAAC;YACD,OAAO,IAAI,yBAAG,CAAC;gBACb,KAAK,EAAE,cAAc,CAAC,YAAY;gBAClC,GAAG,EAAE,cAAc,CAAC,WAAW;gBAC/B,MAAM,EAAE,yBAAiB;gBACzB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;aAC9B,CAAC,CAAC;QACL,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,kCAAY,EAAE,CAAC;QACtC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO,UAAU,CAAC;IACpB,CAAC;CAAA;AAEM,MAAM,cAAc,GAAG,CAAO,IAA0B,EAAmB,EAAE;IAClF,IAAI,IAAI,CAAC,IAAI,KAAK,oCAAiB,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,cAAc,EAAE,CAAC;QACrD,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,QAAQ,CAAC,KAAK,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC,YAAY,CAAC;AAC3B,CAAC,CAAA,CAAC;AAXW,QAAA,cAAc,kBAWzB"}
@@ -0,0 +1,4 @@
1
+ import { FilesService } from '@agnocon/pieces-framework';
2
+ import { GoogleDriveAuthValue } from '../auth';
3
+ export declare function downloadFileFromDrive(auth: GoogleDriveAuthValue, files: FilesService, fileId: string, fileName: string | undefined): Promise<string>;
4
+ //# sourceMappingURL=get-file-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-file-content.d.ts","sourceRoot":"","sources":["../../../src/lib/common/get-file-content.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EACb,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,oBAAoB,EAAkB,MAAM,SAAS,CAAC;AA0D/D,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAAC,MAAM,CAAC,CAyCjB"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.downloadFileFromDrive = downloadFileFromDrive;
4
+ const tslib_1 = require("tslib");
5
+ const mime_types_1 = require("mime-types");
6
+ const auth_1 = require("../auth");
7
+ function getMimeType(auth, fileId) {
8
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
9
+ const accessToken = yield (0, auth_1.getAccessToken)(auth);
10
+ const mimeType = (yield fetch(`https://www.googleapis.com/drive/v3/files/${fileId}?fields=mimeType&supportsAllDrives=true`, {
11
+ headers: {
12
+ Authorization: `Bearer ${accessToken}`,
13
+ },
14
+ }).then((res) => res.json()))['mimeType'];
15
+ return mimeType;
16
+ });
17
+ }
18
+ const googledlCall = (url, auth, fileId, files, fileName) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
19
+ const mimeType = yield getMimeType(auth, fileId);
20
+ const accessToken = yield (0, auth_1.getAccessToken)(auth);
21
+ const download = yield fetch(url, {
22
+ headers: {
23
+ Authorization: `Bearer ${accessToken}`,
24
+ },
25
+ })
26
+ .then((response) => response.ok ? response.blob() : Promise.reject(response))
27
+ .catch((error) => {
28
+ var _a;
29
+ return Promise.reject(new Error(`Error when download file:\n\tDownload file response: ${(_a = error.message) !== null && _a !== void 0 ? _a : error}`));
30
+ });
31
+ const extensionResult = (0, mime_types_1.extension)(mimeType);
32
+ const fileExtension = extensionResult ? '.' + extensionResult : '';
33
+ const srcFileName = fileName !== null && fileName !== void 0 ? fileName : fileId + fileExtension;
34
+ return files.write({
35
+ fileName: srcFileName,
36
+ data: Buffer.from(yield download.arrayBuffer()),
37
+ });
38
+ });
39
+ function downloadFileFromDrive(auth, files, fileId, fileName) {
40
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
41
+ let mimeType = yield getMimeType(auth, fileId);
42
+ // the google drive API doesn't allowed downloading google documents but we can export them to office formats
43
+ if ([
44
+ 'application/vnd.google-apps.document',
45
+ 'application/vnd.google-apps.spreadsheet',
46
+ 'application/vnd.google-apps.presentation',
47
+ ].includes(mimeType)) {
48
+ switch (mimeType) {
49
+ case 'application/vnd.google-apps.document':
50
+ mimeType =
51
+ 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
52
+ break;
53
+ case 'application/vnd.google-apps.spreadsheet':
54
+ mimeType =
55
+ 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
56
+ break;
57
+ case 'application/vnd.google-apps.presentation':
58
+ mimeType =
59
+ 'application/vnd.openxmlformats-officedocument.presentationml.presentation';
60
+ break;
61
+ }
62
+ return yield googledlCall(`https://www.googleapis.com/drive/v3/files/${fileId}/export?mimeType=${mimeType}&supportsAllDrives=true`, auth, fileId, files, fileName);
63
+ }
64
+ else {
65
+ return yield googledlCall(`https://www.googleapis.com/drive/v3/files/${fileId}?alt=media&supportsAllDrives=true`, auth, fileId, files, fileName);
66
+ }
67
+ });
68
+ }
69
+ //# sourceMappingURL=get-file-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-file-content.js","sourceRoot":"","sources":["../../../src/lib/common/get-file-content.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { GoogleDriveAuthValue } from '../auth';
2
+ export declare const common: {
3
+ properties: {
4
+ parentFolder: import("@agnocon/pieces-framework").DropdownProperty<string, false, (import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props> | import("@agnocon/pieces-framework").CustomAuthProperty<{
5
+ serviceAccount: import("@agnocon/pieces-framework").LongTextProperty<true>;
6
+ userEmail: import("@agnocon/pieces-framework").ShortTextProperty<false>;
7
+ }>)[]>;
8
+ include_team_drives: import("@agnocon/pieces-framework").CheckboxProperty<false>;
9
+ };
10
+ getFiles(auth: GoogleDriveAuthValue, search?: {
11
+ parent?: string;
12
+ createdTime?: string | number | Date;
13
+ createdTimeOp?: string;
14
+ includeTeamDrive?: boolean;
15
+ }, order?: string): Promise<any[]>;
16
+ getFolders(auth: GoogleDriveAuthValue, search?: {
17
+ parent?: string;
18
+ createdTime?: string | number | Date;
19
+ createdTimeOp?: string;
20
+ includeTeamDrive?: boolean;
21
+ }, order?: string): Promise<any[]>;
22
+ };
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/common/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAmB,oBAAoB,EAAsC,MAAM,SAAS,CAAC;AAOpG,eAAO,MAAM,MAAM;;;;;;;;mBAiFT,oBAAoB,WACjB;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;QACrC,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,UACO,MAAM;qBAoCR,oBAAoB,WACjB;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;QACrC,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,UACO,MAAM;CAkCjB,CAAC"}
@@ -0,0 +1,152 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.common = void 0;
4
+ const tslib_1 = require("tslib");
5
+ // Vendored from Activepieces packages/pieces/community/google-drive/src/lib/common/index.ts (MIT).
6
+ // Generated by packages/scripts/vendor-ap.mjs - do not edit by hand.
7
+ const pieces_common_1 = require("@agnocon/pieces-common");
8
+ const pieces_framework_1 = require("@agnocon/pieces-framework");
9
+ const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
10
+ const drive_1 = require("@googleapis/drive");
11
+ const auth_1 = require("../auth");
12
+ const FOLDER_DROPDOWN_PAGE_SIZE = 1000;
13
+ const escapeDriveQueryLiteral = (value) => value.replace(/\\/g, '\\\\').replace(/'/g, "\\'");
14
+ exports.common = {
15
+ properties: {
16
+ parentFolder: pieces_framework_1.Property.Dropdown({
17
+ displayName: 'Parent Folder',
18
+ description: "The Drive folder to target. Leave empty to use the root of My Drive. Type in the box to search your Drive by folder name. If the folder still isn't listed, switch this field to 'Dynamic value' (the toggle next to the field) and paste the folder ID — you can copy it from the folder's URL in Drive, after /folders/ (e.g. https://drive.google.com/drive/folders/<FOLDER_ID>).",
19
+ required: false,
20
+ auth: auth_1.googleDriveAuth,
21
+ refreshers: ['include_team_drives'],
22
+ refreshOnSearch: true,
23
+ options: (_a, ctx_1) => tslib_1.__awaiter(void 0, [_a, ctx_1], void 0, function* ({ auth, include_team_drives }, ctx) {
24
+ var _b, _c, _d;
25
+ if (!auth) {
26
+ return {
27
+ disabled: true,
28
+ options: [],
29
+ placeholder: 'Please authenticate first',
30
+ };
31
+ }
32
+ const authValue = auth;
33
+ const accessToken = yield (0, auth_1.getAccessToken)(authValue);
34
+ const searchValue = (_c = (_b = ctx === null || ctx === void 0 ? void 0 : ctx.searchValue) === null || _b === void 0 ? void 0 : _b.trim()) !== null && _c !== void 0 ? _c : '';
35
+ const qParts = [
36
+ "mimeType='application/vnd.google-apps.folder'",
37
+ 'trashed = false',
38
+ ];
39
+ if (searchValue.length > 0) {
40
+ qParts.push(`name contains '${escapeDriveQueryLiteral(searchValue)}'`);
41
+ }
42
+ const request = {
43
+ method: pieces_common_1.HttpMethod.GET,
44
+ url: `https://www.googleapis.com/drive/v3/files`,
45
+ queryParams: {
46
+ q: qParts.join(' and '),
47
+ includeItemsFromAllDrives: include_team_drives ? 'true' : 'false',
48
+ supportsAllDrives: 'true',
49
+ corpora: include_team_drives ? 'allDrives' : 'user',
50
+ pageSize: String(FOLDER_DROPDOWN_PAGE_SIZE),
51
+ fields: 'nextPageToken, files(id, name)',
52
+ },
53
+ authentication: {
54
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
55
+ token: accessToken,
56
+ },
57
+ };
58
+ let folders = [];
59
+ let truncated = false;
60
+ try {
61
+ const response = yield pieces_common_1.httpClient.sendRequest(request);
62
+ folders = (_d = response.body.files) !== null && _d !== void 0 ? _d : [];
63
+ truncated = Boolean(response.body.nextPageToken);
64
+ }
65
+ catch (e) {
66
+ throw new Error(`Failed to get folders\nError:${e}`);
67
+ }
68
+ return {
69
+ disabled: false,
70
+ placeholder: truncated
71
+ ? `Showing first ${folders.length} matches — type to narrow the list, or switch to Dynamic value to paste an ID.`
72
+ : undefined,
73
+ options: folders.map((folder) => {
74
+ return {
75
+ label: folder.name,
76
+ value: folder.id,
77
+ };
78
+ }),
79
+ };
80
+ }),
81
+ }),
82
+ include_team_drives: pieces_framework_1.Property.Checkbox({
83
+ displayName: 'Include Team Drives',
84
+ description: 'Determines if folders from Team Drives should be included in the results.',
85
+ defaultValue: false,
86
+ required: false,
87
+ }),
88
+ },
89
+ getFiles(auth, search, order) {
90
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
91
+ var _a, _b, _c;
92
+ const authClient = yield (0, auth_1.createGoogleClient)(auth);
93
+ const drive = (0, drive_1.drive)({ version: 'v3', auth: authClient });
94
+ const q = [];
95
+ if (search === null || search === void 0 ? void 0 : search.parent)
96
+ q.push(`'${search.parent}' in parents`);
97
+ if (search === null || search === void 0 ? void 0 : search.createdTime)
98
+ q.push(`createdTime ${(_a = search.createdTimeOp) !== null && _a !== void 0 ? _a : '>'} '${(0, dayjs_1.default)(search.createdTime).format()}'`);
99
+ q.push(`trashed = false`);
100
+ const allFiles = [];
101
+ let pageToken = undefined;
102
+ do {
103
+ const listParams = {
104
+ q: q.concat("mimeType!='application/vnd.google-apps.folder'").join(' and '),
105
+ fields: 'nextPageToken, files(id, name, mimeType, webViewLink, kind, createdTime)',
106
+ orderBy: order !== null && order !== void 0 ? order : 'createdTime desc',
107
+ supportsAllDrives: true,
108
+ includeItemsFromAllDrives: search === null || search === void 0 ? void 0 : search.includeTeamDrive,
109
+ corpora: (search === null || search === void 0 ? void 0 : search.includeTeamDrive) ? 'allDrives' : 'user',
110
+ };
111
+ if (pageToken)
112
+ listParams.pageToken = pageToken;
113
+ const response = yield drive.files.list(listParams);
114
+ allFiles.push(...((_b = response.data.files) !== null && _b !== void 0 ? _b : []));
115
+ pageToken = (_c = response.data.nextPageToken) !== null && _c !== void 0 ? _c : undefined;
116
+ } while (pageToken);
117
+ return allFiles;
118
+ });
119
+ },
120
+ getFolders(auth, search, order) {
121
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
122
+ var _a, _b, _c;
123
+ const authClient = yield (0, auth_1.createGoogleClient)(auth);
124
+ const drive = (0, drive_1.drive)({ version: 'v3', auth: authClient });
125
+ const q = [`mimeType='application/vnd.google-apps.folder'`];
126
+ if (search === null || search === void 0 ? void 0 : search.parent)
127
+ q.push(`'${search.parent}' in parents`);
128
+ if (search === null || search === void 0 ? void 0 : search.createdTime)
129
+ q.push(`createdTime ${(_a = search.createdTimeOp) !== null && _a !== void 0 ? _a : '>'} '${(0, dayjs_1.default)(search.createdTime).format()}'`);
130
+ q.push(`trashed = false`);
131
+ const allFolders = [];
132
+ let pageToken = undefined;
133
+ do {
134
+ const listParams = {
135
+ q: q.join(' and '),
136
+ fields: 'nextPageToken, files(id, name, createdTime)',
137
+ orderBy: order !== null && order !== void 0 ? order : 'createdTime desc',
138
+ supportsAllDrives: true,
139
+ includeItemsFromAllDrives: search === null || search === void 0 ? void 0 : search.includeTeamDrive,
140
+ corpora: (search === null || search === void 0 ? void 0 : search.includeTeamDrive) ? 'allDrives' : 'user',
141
+ };
142
+ if (pageToken)
143
+ listParams.pageToken = pageToken;
144
+ const response = yield drive.files.list(listParams);
145
+ allFolders.push(...((_b = response.data.files) !== null && _b !== void 0 ? _b : []));
146
+ pageToken = (_c = response.data.nextPageToken) !== null && _c !== void 0 ? _c : undefined;
147
+ } while (pageToken);
148
+ return allFolders;
149
+ });
150
+ },
151
+ };
152
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/common/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { OutputSchema } from '@agnocon/pieces-framework';
2
+ export declare const createNewGdriveFolderActionOutputSchema: OutputSchema;
3
+ export declare const createNewGdriveFileActionOutputSchema: OutputSchema;
4
+ export declare const uploadGdriveFileActionOutputSchema: OutputSchema;
5
+ export declare const readFileActionOutputSchema: OutputSchema;
6
+ export declare const getFileOrFolderByIdActionOutputSchema: OutputSchema;
7
+ export declare const listFilesActionOutputSchema: OutputSchema;
8
+ export declare const searchFolderActionOutputSchema: OutputSchema;
9
+ export declare const duplicateFileActionOutputSchema: OutputSchema;
10
+ export declare const saveFileAsPdfActionOutputSchema: OutputSchema;
11
+ export declare const googleDriveMoveFileActionOutputSchema: OutputSchema;
12
+ export declare const setPublicAccessActionOutputSchema: OutputSchema;
13
+ export declare const updatePermissionsActionOutputSchema: OutputSchema;
14
+ export declare const deletePermissionsActionOutputSchema: OutputSchema;
15
+ export declare const trashGdriveFileActionOutputSchema: OutputSchema;
16
+ export declare const newFileTriggerOutputSchema: OutputSchema;
17
+ export declare const newFolderTriggerOutputSchema: OutputSchema;
18
+ export declare const driveGetFileOutputSchema: OutputSchema;
19
+ export declare const driveListFilesOutputSchema: OutputSchema;
20
+ export declare const driveSearchFilesOutputSchema: OutputSchema;
21
+ export declare const driveCreateFileFromTextOutputSchema: OutputSchema;
22
+ export declare const driveUploadFileOutputSchema: OutputSchema;
23
+ export declare const driveCopyFileOutputSchema: OutputSchema;
24
+ export declare const driveMoveFileOutputSchema: OutputSchema;
25
+ export declare const driveUpdateFileMetadataOutputSchema: OutputSchema;
26
+ export declare const driveShareFileOutputSchema: OutputSchema;
27
+ export declare const driveListPermissionsOutputSchema: OutputSchema;
28
+ export declare const driveSetPublicAccessOutputSchema: OutputSchema;
29
+ export declare const driveUpdatePermissionOutputSchema: OutputSchema;
30
+ export declare const driveTrashFileOutputSchema: OutputSchema;
31
+ export declare const driveUntrashFileOutputSchema: OutputSchema;
32
+ export declare const driveReplaceFileContentOutputSchema: OutputSchema;
33
+ export declare const driveGetAboutOutputSchema: OutputSchema;
34
+ export declare const driveListSharedDrivesOutputSchema: OutputSchema;
35
+ export declare const driveGetSharedDriveOutputSchema: OutputSchema;
36
+ export declare const driveListCommentsOutputSchema: OutputSchema;
37
+ export declare const driveCreateReplyOutputSchema: OutputSchema;
38
+ export declare const driveCreateCommentOutputSchema: OutputSchema;
39
+ export declare const driveGetReplyOutputSchema: OutputSchema;
40
+ export declare const driveListRepliesOutputSchema: OutputSchema;
41
+ export declare const driveUpdateReplyOutputSchema: OutputSchema;
42
+ export declare const driveSaveFileAsPdfOutputSchema: OutputSchema;
43
+ export declare const driveCreateFolderOutputSchema: OutputSchema;
44
+ export declare const driveCreateSharedDriveOutputSchema: OutputSchema;
45
+ export declare const driveUpdateSharedDriveOutputSchema: OutputSchema;
46
+ export declare const driveUploadFromUrlOutputSchema: OutputSchema;
47
+ export declare const driveDownloadFileOutputSchema: OutputSchema;
48
+ export declare const driveExportWorkspaceFileOutputSchema: OutputSchema;
49
+ export declare const driveDeleteReplyOutputSchema: OutputSchema;
50
+ export declare const driveDeleteSharedDriveOutputSchema: OutputSchema;
51
+ export declare const driveEmptyTrashOutputSchema: OutputSchema;
52
+ export declare const driveRemovePermissionOutputSchema: OutputSchema;
53
+ //# sourceMappingURL=output-schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output-schemas.d.ts","sourceRoot":"","sources":["../../src/lib/output-schemas.ts"],"names":[],"mappings":"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"}