digital-tools 2.0.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 (452) hide show
  1. package/.turbo/turbo-build.log +5 -0
  2. package/CHANGELOG.md +9 -0
  3. package/README.md +1144 -0
  4. package/dist/define.d.ts +109 -0
  5. package/dist/define.d.ts.map +1 -0
  6. package/dist/define.js +268 -0
  7. package/dist/define.js.map +1 -0
  8. package/dist/entities/advertising.d.ts +79 -0
  9. package/dist/entities/advertising.d.ts.map +1 -0
  10. package/dist/entities/advertising.js +1000 -0
  11. package/dist/entities/advertising.js.map +1 -0
  12. package/dist/entities/ai.d.ts +69 -0
  13. package/dist/entities/ai.d.ts.map +1 -0
  14. package/dist/entities/ai.js +757 -0
  15. package/dist/entities/ai.js.map +1 -0
  16. package/dist/entities/analytics.d.ts +83 -0
  17. package/dist/entities/analytics.d.ts.map +1 -0
  18. package/dist/entities/analytics.js +1589 -0
  19. package/dist/entities/analytics.js.map +1 -0
  20. package/dist/entities/automation.d.ts +61 -0
  21. package/dist/entities/automation.d.ts.map +1 -0
  22. package/dist/entities/automation.js +602 -0
  23. package/dist/entities/automation.js.map +1 -0
  24. package/dist/entities/communication.d.ts +96 -0
  25. package/dist/entities/communication.d.ts.map +1 -0
  26. package/dist/entities/communication.js +1151 -0
  27. package/dist/entities/communication.js.map +1 -0
  28. package/dist/entities/crm.d.ts +91 -0
  29. package/dist/entities/crm.d.ts.map +1 -0
  30. package/dist/entities/crm.js +1387 -0
  31. package/dist/entities/crm.js.map +1 -0
  32. package/dist/entities/design.d.ts +61 -0
  33. package/dist/entities/design.d.ts.map +1 -0
  34. package/dist/entities/design.js +547 -0
  35. package/dist/entities/design.js.map +1 -0
  36. package/dist/entities/development.d.ts +145 -0
  37. package/dist/entities/development.d.ts.map +1 -0
  38. package/dist/entities/development.js +2213 -0
  39. package/dist/entities/development.js.map +1 -0
  40. package/dist/entities/document.d.ts +54 -0
  41. package/dist/entities/document.d.ts.map +1 -0
  42. package/dist/entities/document.js +875 -0
  43. package/dist/entities/document.js.map +1 -0
  44. package/dist/entities/ecommerce.d.ts +93 -0
  45. package/dist/entities/ecommerce.d.ts.map +1 -0
  46. package/dist/entities/ecommerce.js +1430 -0
  47. package/dist/entities/ecommerce.js.map +1 -0
  48. package/dist/entities/experiment.d.ts +89 -0
  49. package/dist/entities/experiment.d.ts.map +1 -0
  50. package/dist/entities/experiment.js +1040 -0
  51. package/dist/entities/experiment.js.map +1 -0
  52. package/dist/entities/finance.d.ts +272 -0
  53. package/dist/entities/finance.d.ts.map +1 -0
  54. package/dist/entities/finance.js +3479 -0
  55. package/dist/entities/finance.js.map +1 -0
  56. package/dist/entities/forms.d.ts +91 -0
  57. package/dist/entities/forms.d.ts.map +1 -0
  58. package/dist/entities/forms.js +1893 -0
  59. package/dist/entities/forms.js.map +1 -0
  60. package/dist/entities/hr.d.ts +62 -0
  61. package/dist/entities/hr.d.ts.map +1 -0
  62. package/dist/entities/hr.js +662 -0
  63. package/dist/entities/hr.js.map +1 -0
  64. package/dist/entities/identity.d.ts +90 -0
  65. package/dist/entities/identity.d.ts.map +1 -0
  66. package/dist/entities/identity.js +998 -0
  67. package/dist/entities/identity.js.map +1 -0
  68. package/dist/entities/index.d.ts +410 -0
  69. package/dist/entities/index.d.ts.map +1 -0
  70. package/dist/entities/index.js +283 -0
  71. package/dist/entities/index.js.map +1 -0
  72. package/dist/entities/infrastructure.d.ts +98 -0
  73. package/dist/entities/infrastructure.d.ts.map +1 -0
  74. package/dist/entities/infrastructure.js +1154 -0
  75. package/dist/entities/infrastructure.js.map +1 -0
  76. package/dist/entities/knowledge.d.ts +98 -0
  77. package/dist/entities/knowledge.d.ts.map +1 -0
  78. package/dist/entities/knowledge.js +1439 -0
  79. package/dist/entities/knowledge.js.map +1 -0
  80. package/dist/entities/marketing.d.ts +82 -0
  81. package/dist/entities/marketing.d.ts.map +1 -0
  82. package/dist/entities/marketing.js +1611 -0
  83. package/dist/entities/marketing.js.map +1 -0
  84. package/dist/entities/media.d.ts +83 -0
  85. package/dist/entities/media.d.ts.map +1 -0
  86. package/dist/entities/media.js +1635 -0
  87. package/dist/entities/media.js.map +1 -0
  88. package/dist/entities/notification.d.ts +76 -0
  89. package/dist/entities/notification.d.ts.map +1 -0
  90. package/dist/entities/notification.js +1200 -0
  91. package/dist/entities/notification.js.map +1 -0
  92. package/dist/entities/presentation.d.ts +61 -0
  93. package/dist/entities/presentation.d.ts.map +1 -0
  94. package/dist/entities/presentation.js +1275 -0
  95. package/dist/entities/presentation.js.map +1 -0
  96. package/dist/entities/productivity.d.ts +92 -0
  97. package/dist/entities/productivity.d.ts.map +1 -0
  98. package/dist/entities/productivity.js +1318 -0
  99. package/dist/entities/productivity.js.map +1 -0
  100. package/dist/entities/project-management.d.ts +89 -0
  101. package/dist/entities/project-management.d.ts.map +1 -0
  102. package/dist/entities/project-management.js +1137 -0
  103. package/dist/entities/project-management.js.map +1 -0
  104. package/dist/entities/recruiting.d.ts +54 -0
  105. package/dist/entities/recruiting.d.ts.map +1 -0
  106. package/dist/entities/recruiting.js +737 -0
  107. package/dist/entities/recruiting.js.map +1 -0
  108. package/dist/entities/shipping.d.ts +52 -0
  109. package/dist/entities/shipping.d.ts.map +1 -0
  110. package/dist/entities/shipping.js +510 -0
  111. package/dist/entities/shipping.js.map +1 -0
  112. package/dist/entities/signature.d.ts +83 -0
  113. package/dist/entities/signature.d.ts.map +1 -0
  114. package/dist/entities/signature.js +1103 -0
  115. package/dist/entities/signature.js.map +1 -0
  116. package/dist/entities/site.d.ts +33 -0
  117. package/dist/entities/site.d.ts.map +1 -0
  118. package/dist/entities/site.js +223 -0
  119. package/dist/entities/site.js.map +1 -0
  120. package/dist/entities/spreadsheet.d.ts +68 -0
  121. package/dist/entities/spreadsheet.d.ts.map +1 -0
  122. package/dist/entities/spreadsheet.js +1342 -0
  123. package/dist/entities/spreadsheet.js.map +1 -0
  124. package/dist/entities/storage.d.ts +74 -0
  125. package/dist/entities/storage.d.ts.map +1 -0
  126. package/dist/entities/storage.js +1199 -0
  127. package/dist/entities/storage.js.map +1 -0
  128. package/dist/entities/support.d.ts +83 -0
  129. package/dist/entities/support.d.ts.map +1 -0
  130. package/dist/entities/support.js +1167 -0
  131. package/dist/entities/support.js.map +1 -0
  132. package/dist/entities/video-conferencing.d.ts +129 -0
  133. package/dist/entities/video-conferencing.d.ts.map +1 -0
  134. package/dist/entities/video-conferencing.js +1751 -0
  135. package/dist/entities/video-conferencing.js.map +1 -0
  136. package/dist/entities/video.d.ts +76 -0
  137. package/dist/entities/video.d.ts.map +1 -0
  138. package/dist/entities/video.js +951 -0
  139. package/dist/entities/video.js.map +1 -0
  140. package/dist/entities.d.ts +147 -0
  141. package/dist/entities.d.ts.map +1 -0
  142. package/dist/entities.js +1664 -0
  143. package/dist/entities.js.map +1 -0
  144. package/dist/index.d.ts +29 -0
  145. package/dist/index.d.ts.map +1 -0
  146. package/dist/index.js +75 -0
  147. package/dist/index.js.map +1 -0
  148. package/dist/providers/analytics/index.d.ts +19 -0
  149. package/dist/providers/analytics/index.d.ts.map +1 -0
  150. package/dist/providers/analytics/index.js +18 -0
  151. package/dist/providers/analytics/index.js.map +1 -0
  152. package/dist/providers/analytics/mixpanel.d.ts +25 -0
  153. package/dist/providers/analytics/mixpanel.d.ts.map +1 -0
  154. package/dist/providers/analytics/mixpanel.js +256 -0
  155. package/dist/providers/analytics/mixpanel.js.map +1 -0
  156. package/dist/providers/calendar/cal-com.d.ts +26 -0
  157. package/dist/providers/calendar/cal-com.d.ts.map +1 -0
  158. package/dist/providers/calendar/cal-com.js +304 -0
  159. package/dist/providers/calendar/cal-com.js.map +1 -0
  160. package/dist/providers/calendar/google-calendar.d.ts +25 -0
  161. package/dist/providers/calendar/google-calendar.d.ts.map +1 -0
  162. package/dist/providers/calendar/google-calendar.js +336 -0
  163. package/dist/providers/calendar/google-calendar.js.map +1 -0
  164. package/dist/providers/calendar/index.d.ts +20 -0
  165. package/dist/providers/calendar/index.d.ts.map +1 -0
  166. package/dist/providers/calendar/index.js +21 -0
  167. package/dist/providers/calendar/index.js.map +1 -0
  168. package/dist/providers/crm/hubspot.d.ts +25 -0
  169. package/dist/providers/crm/hubspot.d.ts.map +1 -0
  170. package/dist/providers/crm/hubspot.js +567 -0
  171. package/dist/providers/crm/hubspot.js.map +1 -0
  172. package/dist/providers/crm/index.d.ts +19 -0
  173. package/dist/providers/crm/index.d.ts.map +1 -0
  174. package/dist/providers/crm/index.js +18 -0
  175. package/dist/providers/crm/index.js.map +1 -0
  176. package/dist/providers/development/github.d.ts +25 -0
  177. package/dist/providers/development/github.d.ts.map +1 -0
  178. package/dist/providers/development/github.js +473 -0
  179. package/dist/providers/development/github.js.map +1 -0
  180. package/dist/providers/development/index.d.ts +19 -0
  181. package/dist/providers/development/index.d.ts.map +1 -0
  182. package/dist/providers/development/index.js +18 -0
  183. package/dist/providers/development/index.js.map +1 -0
  184. package/dist/providers/ecommerce/index.d.ts +19 -0
  185. package/dist/providers/ecommerce/index.d.ts.map +1 -0
  186. package/dist/providers/ecommerce/index.js +18 -0
  187. package/dist/providers/ecommerce/index.js.map +1 -0
  188. package/dist/providers/ecommerce/shopify.d.ts +25 -0
  189. package/dist/providers/ecommerce/shopify.d.ts.map +1 -0
  190. package/dist/providers/ecommerce/shopify.js +379 -0
  191. package/dist/providers/ecommerce/shopify.js.map +1 -0
  192. package/dist/providers/email/index.d.ts +20 -0
  193. package/dist/providers/email/index.d.ts.map +1 -0
  194. package/dist/providers/email/index.js +21 -0
  195. package/dist/providers/email/index.js.map +1 -0
  196. package/dist/providers/email/resend.d.ts +25 -0
  197. package/dist/providers/email/resend.d.ts.map +1 -0
  198. package/dist/providers/email/resend.js +259 -0
  199. package/dist/providers/email/resend.js.map +1 -0
  200. package/dist/providers/email/sendgrid.d.ts +25 -0
  201. package/dist/providers/email/sendgrid.d.ts.map +1 -0
  202. package/dist/providers/email/sendgrid.js +162 -0
  203. package/dist/providers/email/sendgrid.js.map +1 -0
  204. package/dist/providers/finance/index.d.ts +19 -0
  205. package/dist/providers/finance/index.d.ts.map +1 -0
  206. package/dist/providers/finance/index.js +18 -0
  207. package/dist/providers/finance/index.js.map +1 -0
  208. package/dist/providers/finance/stripe.d.ts +25 -0
  209. package/dist/providers/finance/stripe.d.ts.map +1 -0
  210. package/dist/providers/finance/stripe.js +550 -0
  211. package/dist/providers/finance/stripe.js.map +1 -0
  212. package/dist/providers/forms/index.d.ts +19 -0
  213. package/dist/providers/forms/index.d.ts.map +1 -0
  214. package/dist/providers/forms/index.js +18 -0
  215. package/dist/providers/forms/index.js.map +1 -0
  216. package/dist/providers/forms/typeform.d.ts +25 -0
  217. package/dist/providers/forms/typeform.d.ts.map +1 -0
  218. package/dist/providers/forms/typeform.js +501 -0
  219. package/dist/providers/forms/typeform.js.map +1 -0
  220. package/dist/providers/index.d.ts +56 -0
  221. package/dist/providers/index.d.ts.map +1 -0
  222. package/dist/providers/index.js +124 -0
  223. package/dist/providers/index.js.map +1 -0
  224. package/dist/providers/knowledge/index.d.ts +19 -0
  225. package/dist/providers/knowledge/index.d.ts.map +1 -0
  226. package/dist/providers/knowledge/index.js +18 -0
  227. package/dist/providers/knowledge/index.js.map +1 -0
  228. package/dist/providers/knowledge/notion.d.ts +25 -0
  229. package/dist/providers/knowledge/notion.d.ts.map +1 -0
  230. package/dist/providers/knowledge/notion.js +390 -0
  231. package/dist/providers/knowledge/notion.js.map +1 -0
  232. package/dist/providers/marketing/index.d.ts +19 -0
  233. package/dist/providers/marketing/index.d.ts.map +1 -0
  234. package/dist/providers/marketing/index.js +18 -0
  235. package/dist/providers/marketing/index.js.map +1 -0
  236. package/dist/providers/marketing/mailchimp.d.ts +25 -0
  237. package/dist/providers/marketing/mailchimp.d.ts.map +1 -0
  238. package/dist/providers/marketing/mailchimp.js +444 -0
  239. package/dist/providers/marketing/mailchimp.js.map +1 -0
  240. package/dist/providers/media/cloudinary.d.ts +25 -0
  241. package/dist/providers/media/cloudinary.d.ts.map +1 -0
  242. package/dist/providers/media/cloudinary.js +319 -0
  243. package/dist/providers/media/cloudinary.js.map +1 -0
  244. package/dist/providers/media/index.d.ts +19 -0
  245. package/dist/providers/media/index.d.ts.map +1 -0
  246. package/dist/providers/media/index.js +18 -0
  247. package/dist/providers/media/index.js.map +1 -0
  248. package/dist/providers/messaging/index.d.ts +24 -0
  249. package/dist/providers/messaging/index.d.ts.map +1 -0
  250. package/dist/providers/messaging/index.js +21 -0
  251. package/dist/providers/messaging/index.js.map +1 -0
  252. package/dist/providers/messaging/slack.d.ts +25 -0
  253. package/dist/providers/messaging/slack.d.ts.map +1 -0
  254. package/dist/providers/messaging/slack.js +394 -0
  255. package/dist/providers/messaging/slack.js.map +1 -0
  256. package/dist/providers/messaging/twilio-sms.d.ts +25 -0
  257. package/dist/providers/messaging/twilio-sms.d.ts.map +1 -0
  258. package/dist/providers/messaging/twilio-sms.js +250 -0
  259. package/dist/providers/messaging/twilio-sms.js.map +1 -0
  260. package/dist/providers/project-management/index.d.ts +19 -0
  261. package/dist/providers/project-management/index.d.ts.map +1 -0
  262. package/dist/providers/project-management/index.js +18 -0
  263. package/dist/providers/project-management/index.js.map +1 -0
  264. package/dist/providers/project-management/linear.d.ts +25 -0
  265. package/dist/providers/project-management/linear.d.ts.map +1 -0
  266. package/dist/providers/project-management/linear.js +576 -0
  267. package/dist/providers/project-management/linear.js.map +1 -0
  268. package/dist/providers/registry.d.ts +41 -0
  269. package/dist/providers/registry.d.ts.map +1 -0
  270. package/dist/providers/registry.js +87 -0
  271. package/dist/providers/registry.js.map +1 -0
  272. package/dist/providers/spreadsheet/google-sheets.d.ts +25 -0
  273. package/dist/providers/spreadsheet/google-sheets.d.ts.map +1 -0
  274. package/dist/providers/spreadsheet/google-sheets.js +376 -0
  275. package/dist/providers/spreadsheet/google-sheets.js.map +1 -0
  276. package/dist/providers/spreadsheet/index.d.ts +20 -0
  277. package/dist/providers/spreadsheet/index.d.ts.map +1 -0
  278. package/dist/providers/spreadsheet/index.js +21 -0
  279. package/dist/providers/spreadsheet/index.js.map +1 -0
  280. package/dist/providers/spreadsheet/xlsx.d.ts +26 -0
  281. package/dist/providers/spreadsheet/xlsx.d.ts.map +1 -0
  282. package/dist/providers/spreadsheet/xlsx.js +424 -0
  283. package/dist/providers/spreadsheet/xlsx.js.map +1 -0
  284. package/dist/providers/storage/index.d.ts +30 -0
  285. package/dist/providers/storage/index.d.ts.map +1 -0
  286. package/dist/providers/storage/index.js +25 -0
  287. package/dist/providers/storage/index.js.map +1 -0
  288. package/dist/providers/storage/s3.d.ts +25 -0
  289. package/dist/providers/storage/s3.d.ts.map +1 -0
  290. package/dist/providers/storage/s3.js +420 -0
  291. package/dist/providers/storage/s3.js.map +1 -0
  292. package/dist/providers/support/index.d.ts +19 -0
  293. package/dist/providers/support/index.d.ts.map +1 -0
  294. package/dist/providers/support/index.js +18 -0
  295. package/dist/providers/support/index.js.map +1 -0
  296. package/dist/providers/support/zendesk.d.ts +25 -0
  297. package/dist/providers/support/zendesk.d.ts.map +1 -0
  298. package/dist/providers/support/zendesk.js +374 -0
  299. package/dist/providers/support/zendesk.js.map +1 -0
  300. package/dist/providers/tasks/index.d.ts +19 -0
  301. package/dist/providers/tasks/index.d.ts.map +1 -0
  302. package/dist/providers/tasks/index.js +18 -0
  303. package/dist/providers/tasks/index.js.map +1 -0
  304. package/dist/providers/tasks/todoist.d.ts +25 -0
  305. package/dist/providers/tasks/todoist.d.ts.map +1 -0
  306. package/dist/providers/tasks/todoist.js +287 -0
  307. package/dist/providers/tasks/todoist.js.map +1 -0
  308. package/dist/providers/types.d.ts +1753 -0
  309. package/dist/providers/types.d.ts.map +1 -0
  310. package/dist/providers/types.js +10 -0
  311. package/dist/providers/types.js.map +1 -0
  312. package/dist/providers/video-conferencing/google-meet.d.ts +26 -0
  313. package/dist/providers/video-conferencing/google-meet.d.ts.map +1 -0
  314. package/dist/providers/video-conferencing/google-meet.js +287 -0
  315. package/dist/providers/video-conferencing/google-meet.js.map +1 -0
  316. package/dist/providers/video-conferencing/index.d.ts +22 -0
  317. package/dist/providers/video-conferencing/index.d.ts.map +1 -0
  318. package/dist/providers/video-conferencing/index.js +32 -0
  319. package/dist/providers/video-conferencing/index.js.map +1 -0
  320. package/dist/providers/video-conferencing/jitsi.d.ts +26 -0
  321. package/dist/providers/video-conferencing/jitsi.d.ts.map +1 -0
  322. package/dist/providers/video-conferencing/jitsi.js +255 -0
  323. package/dist/providers/video-conferencing/jitsi.js.map +1 -0
  324. package/dist/providers/video-conferencing/teams.d.ts +26 -0
  325. package/dist/providers/video-conferencing/teams.d.ts.map +1 -0
  326. package/dist/providers/video-conferencing/teams.js +271 -0
  327. package/dist/providers/video-conferencing/teams.js.map +1 -0
  328. package/dist/providers/video-conferencing/zoom.d.ts +25 -0
  329. package/dist/providers/video-conferencing/zoom.d.ts.map +1 -0
  330. package/dist/providers/video-conferencing/zoom.js +333 -0
  331. package/dist/providers/video-conferencing/zoom.js.map +1 -0
  332. package/dist/providers/voice/vapi.d.ts +27 -0
  333. package/dist/providers/voice/vapi.d.ts.map +1 -0
  334. package/dist/providers/voice/vapi.js +440 -0
  335. package/dist/providers/voice/vapi.js.map +1 -0
  336. package/dist/registry.d.ts +38 -0
  337. package/dist/registry.d.ts.map +1 -0
  338. package/dist/registry.js +129 -0
  339. package/dist/registry.js.map +1 -0
  340. package/dist/tools/communication.d.ts +94 -0
  341. package/dist/tools/communication.d.ts.map +1 -0
  342. package/dist/tools/communication.js +185 -0
  343. package/dist/tools/communication.js.map +1 -0
  344. package/dist/tools/data.d.ts +61 -0
  345. package/dist/tools/data.d.ts.map +1 -0
  346. package/dist/tools/data.js +206 -0
  347. package/dist/tools/data.js.map +1 -0
  348. package/dist/tools/index.d.ts +12 -0
  349. package/dist/tools/index.d.ts.map +1 -0
  350. package/dist/tools/index.js +12 -0
  351. package/dist/tools/index.js.map +1 -0
  352. package/dist/tools/web.d.ts +45 -0
  353. package/dist/tools/web.d.ts.map +1 -0
  354. package/dist/tools/web.js +138 -0
  355. package/dist/tools/web.js.map +1 -0
  356. package/dist/types.d.ts +330 -0
  357. package/dist/types.d.ts.map +1 -0
  358. package/dist/types.js +11 -0
  359. package/dist/types.js.map +1 -0
  360. package/package.json +45 -0
  361. package/src/define.ts +321 -0
  362. package/src/entities/advertising.ts +1086 -0
  363. package/src/entities/ai.ts +835 -0
  364. package/src/entities/analytics.ts +1690 -0
  365. package/src/entities/automation.ts +669 -0
  366. package/src/entities/communication.ts +1255 -0
  367. package/src/entities/crm.ts +1481 -0
  368. package/src/entities/design.ts +606 -0
  369. package/src/entities/development.ts +2392 -0
  370. package/src/entities/document.ts +930 -0
  371. package/src/entities/ecommerce.ts +1539 -0
  372. package/src/entities/experiment.ts +1139 -0
  373. package/src/entities/finance.ts +3907 -0
  374. package/src/entities/forms.ts +2021 -0
  375. package/src/entities/hr.ts +725 -0
  376. package/src/entities/identity.ts +1093 -0
  377. package/src/entities/index.ts +731 -0
  378. package/src/entities/infrastructure.ts +1254 -0
  379. package/src/entities/knowledge.ts +1547 -0
  380. package/src/entities/marketing.ts +1718 -0
  381. package/src/entities/media.ts +1747 -0
  382. package/src/entities/notification.ts +1260 -0
  383. package/src/entities/presentation.ts +1360 -0
  384. package/src/entities/productivity.ts +1411 -0
  385. package/src/entities/project-management.ts +1222 -0
  386. package/src/entities/recruiting.ts +797 -0
  387. package/src/entities/shipping.ts +566 -0
  388. package/src/entities/signature.ts +1204 -0
  389. package/src/entities/site.ts +244 -0
  390. package/src/entities/spreadsheet.ts +1434 -0
  391. package/src/entities/storage.ts +1290 -0
  392. package/src/entities/support.ts +1267 -0
  393. package/src/entities/video-conferencing.ts +1874 -0
  394. package/src/entities/video.ts +1035 -0
  395. package/src/entities.ts +1795 -0
  396. package/src/index.ts +176 -0
  397. package/src/providers/analytics/index.ts +21 -0
  398. package/src/providers/analytics/mixpanel.ts +311 -0
  399. package/src/providers/calendar/cal-com.ts +435 -0
  400. package/src/providers/calendar/google-calendar.ts +412 -0
  401. package/src/providers/calendar/index.ts +24 -0
  402. package/src/providers/crm/hubspot.ts +667 -0
  403. package/src/providers/crm/index.ts +21 -0
  404. package/src/providers/development/github.ts +608 -0
  405. package/src/providers/development/index.ts +21 -0
  406. package/src/providers/ecommerce/index.ts +21 -0
  407. package/src/providers/ecommerce/shopify.ts +451 -0
  408. package/src/providers/email/index.ts +24 -0
  409. package/src/providers/email/resend.ts +301 -0
  410. package/src/providers/email/sendgrid.ts +196 -0
  411. package/src/providers/finance/index.ts +21 -0
  412. package/src/providers/finance/stripe.ts +665 -0
  413. package/src/providers/forms/index.ts +21 -0
  414. package/src/providers/forms/typeform.ts +598 -0
  415. package/src/providers/index.ts +281 -0
  416. package/src/providers/knowledge/index.ts +21 -0
  417. package/src/providers/knowledge/notion.ts +497 -0
  418. package/src/providers/marketing/index.ts +21 -0
  419. package/src/providers/marketing/mailchimp.ts +656 -0
  420. package/src/providers/media/cloudinary.ts +373 -0
  421. package/src/providers/media/index.ts +21 -0
  422. package/src/providers/messaging/index.ts +24 -0
  423. package/src/providers/messaging/slack.ts +487 -0
  424. package/src/providers/messaging/twilio-sms.ts +301 -0
  425. package/src/providers/project-management/index.ts +21 -0
  426. package/src/providers/project-management/linear.ts +693 -0
  427. package/src/providers/registry.ts +119 -0
  428. package/src/providers/spreadsheet/google-sheets.ts +464 -0
  429. package/src/providers/spreadsheet/index.ts +24 -0
  430. package/src/providers/spreadsheet/xlsx.ts +542 -0
  431. package/src/providers/storage/index.ts +35 -0
  432. package/src/providers/storage/s3.ts +513 -0
  433. package/src/providers/support/index.ts +21 -0
  434. package/src/providers/support/zendesk.ts +417 -0
  435. package/src/providers/tasks/index.ts +21 -0
  436. package/src/providers/tasks/todoist.ts +407 -0
  437. package/src/providers/types.ts +2113 -0
  438. package/src/providers/video-conferencing/google-meet.ts +412 -0
  439. package/src/providers/video-conferencing/index.ts +35 -0
  440. package/src/providers/video-conferencing/jitsi.ts +324 -0
  441. package/src/providers/video-conferencing/teams.ts +408 -0
  442. package/src/providers/video-conferencing/zoom.ts +451 -0
  443. package/src/registry.ts +172 -0
  444. package/src/tools/communication.ts +256 -0
  445. package/src/tools/data.ts +236 -0
  446. package/src/tools/index.ts +12 -0
  447. package/src/tools/web.ts +161 -0
  448. package/src/types.ts +539 -0
  449. package/test/define.test.ts +367 -0
  450. package/test/registry.test.ts +444 -0
  451. package/test/tools.test.ts +453 -0
  452. package/tsconfig.json +20 -0
@@ -0,0 +1,1000 @@
1
+ /**
2
+ * Advertising Entity Types (Nouns)
3
+ *
4
+ * Entities for digital advertising platforms like Google Ads, Meta Ads, etc.
5
+ * Includes ads, campaigns, ad groups, keywords, and conversions.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ // =============================================================================
10
+ // Ad
11
+ // =============================================================================
12
+ /**
13
+ * Ad entity
14
+ *
15
+ * Represents a digital advertisement
16
+ */
17
+ export const Ad = {
18
+ singular: 'ad',
19
+ plural: 'ads',
20
+ description: 'A digital advertisement',
21
+ properties: {
22
+ // Identity
23
+ name: {
24
+ type: 'string',
25
+ description: 'Ad name',
26
+ },
27
+ type: {
28
+ type: 'string',
29
+ description: 'Ad type: search, display, video, shopping, social',
30
+ examples: ['search', 'display', 'video', 'shopping', 'social', 'native'],
31
+ },
32
+ format: {
33
+ type: 'string',
34
+ optional: true,
35
+ description: 'Ad format: text, image, carousel, video, collection',
36
+ examples: ['text', 'image', 'carousel', 'video', 'collection', 'stories'],
37
+ },
38
+ // Content - Text
39
+ headline: {
40
+ type: 'string',
41
+ optional: true,
42
+ description: 'Ad headline',
43
+ },
44
+ headlines: {
45
+ type: 'string',
46
+ array: true,
47
+ optional: true,
48
+ description: 'Multiple headlines (for responsive ads)',
49
+ },
50
+ description: {
51
+ type: 'string',
52
+ optional: true,
53
+ description: 'Ad description',
54
+ },
55
+ descriptions: {
56
+ type: 'string',
57
+ array: true,
58
+ optional: true,
59
+ description: 'Multiple descriptions',
60
+ },
61
+ callToAction: {
62
+ type: 'string',
63
+ optional: true,
64
+ description: 'Call to action text',
65
+ },
66
+ // Content - Media
67
+ imageUrl: {
68
+ type: 'url',
69
+ optional: true,
70
+ description: 'Ad image URL',
71
+ },
72
+ videoUrl: {
73
+ type: 'url',
74
+ optional: true,
75
+ description: 'Ad video URL',
76
+ },
77
+ thumbnailUrl: {
78
+ type: 'url',
79
+ optional: true,
80
+ description: 'Video thumbnail URL',
81
+ },
82
+ // Destination
83
+ finalUrl: {
84
+ type: 'url',
85
+ optional: true,
86
+ description: 'Final destination URL',
87
+ },
88
+ displayUrl: {
89
+ type: 'string',
90
+ optional: true,
91
+ description: 'Display URL',
92
+ },
93
+ trackingUrl: {
94
+ type: 'url',
95
+ optional: true,
96
+ description: 'Tracking URL template',
97
+ },
98
+ // Status
99
+ status: {
100
+ type: 'string',
101
+ description: 'Ad status: enabled, paused, removed, pending_review, disapproved',
102
+ examples: ['enabled', 'paused', 'removed', 'pending_review', 'disapproved'],
103
+ },
104
+ reviewStatus: {
105
+ type: 'string',
106
+ optional: true,
107
+ description: 'Review status: approved, disapproved, under_review',
108
+ examples: ['approved', 'disapproved', 'under_review'],
109
+ },
110
+ disapprovalReasons: {
111
+ type: 'string',
112
+ array: true,
113
+ optional: true,
114
+ description: 'Reasons for disapproval',
115
+ },
116
+ // Performance
117
+ impressions: {
118
+ type: 'number',
119
+ optional: true,
120
+ description: 'Total impressions',
121
+ },
122
+ clicks: {
123
+ type: 'number',
124
+ optional: true,
125
+ description: 'Total clicks',
126
+ },
127
+ ctr: {
128
+ type: 'number',
129
+ optional: true,
130
+ description: 'Click-through rate',
131
+ },
132
+ conversions: {
133
+ type: 'number',
134
+ optional: true,
135
+ description: 'Total conversions',
136
+ },
137
+ conversionRate: {
138
+ type: 'number',
139
+ optional: true,
140
+ description: 'Conversion rate',
141
+ },
142
+ cost: {
143
+ type: 'number',
144
+ optional: true,
145
+ description: 'Total cost',
146
+ },
147
+ cpc: {
148
+ type: 'number',
149
+ optional: true,
150
+ description: 'Cost per click',
151
+ },
152
+ cpm: {
153
+ type: 'number',
154
+ optional: true,
155
+ description: 'Cost per thousand impressions',
156
+ },
157
+ cpa: {
158
+ type: 'number',
159
+ optional: true,
160
+ description: 'Cost per acquisition',
161
+ },
162
+ roas: {
163
+ type: 'number',
164
+ optional: true,
165
+ description: 'Return on ad spend',
166
+ },
167
+ },
168
+ relationships: {
169
+ adGroup: {
170
+ type: 'AdGroup',
171
+ description: 'Parent ad group',
172
+ },
173
+ campaign: {
174
+ type: 'AdCampaign',
175
+ description: 'Parent campaign',
176
+ },
177
+ },
178
+ actions: [
179
+ 'create',
180
+ 'update',
181
+ 'delete',
182
+ 'enable',
183
+ 'pause',
184
+ 'duplicate',
185
+ 'preview',
186
+ 'submitForReview',
187
+ ],
188
+ events: [
189
+ 'created',
190
+ 'updated',
191
+ 'deleted',
192
+ 'enabled',
193
+ 'paused',
194
+ 'approved',
195
+ 'disapproved',
196
+ 'impressionServed',
197
+ 'clicked',
198
+ 'converted',
199
+ ],
200
+ };
201
+ // =============================================================================
202
+ // Ad Group
203
+ // =============================================================================
204
+ /**
205
+ * Ad group entity
206
+ *
207
+ * Represents a group of related ads
208
+ */
209
+ export const AdGroup = {
210
+ singular: 'ad group',
211
+ plural: 'ad groups',
212
+ description: 'A group of related ads with shared targeting',
213
+ properties: {
214
+ // Identity
215
+ name: {
216
+ type: 'string',
217
+ description: 'Ad group name',
218
+ },
219
+ // Status
220
+ status: {
221
+ type: 'string',
222
+ description: 'Ad group status: enabled, paused, removed',
223
+ examples: ['enabled', 'paused', 'removed'],
224
+ },
225
+ // Bidding
226
+ bidStrategy: {
227
+ type: 'string',
228
+ optional: true,
229
+ description: 'Bid strategy: manual_cpc, target_cpa, maximize_conversions',
230
+ examples: ['manual_cpc', 'target_cpa', 'maximize_conversions', 'target_roas'],
231
+ },
232
+ defaultBid: {
233
+ type: 'number',
234
+ optional: true,
235
+ description: 'Default bid amount',
236
+ },
237
+ targetCpa: {
238
+ type: 'number',
239
+ optional: true,
240
+ description: 'Target CPA',
241
+ },
242
+ targetRoas: {
243
+ type: 'number',
244
+ optional: true,
245
+ description: 'Target ROAS',
246
+ },
247
+ // Targeting
248
+ targetingSettings: {
249
+ type: 'json',
250
+ optional: true,
251
+ description: 'Targeting configuration',
252
+ },
253
+ audiences: {
254
+ type: 'string',
255
+ array: true,
256
+ optional: true,
257
+ description: 'Target audiences',
258
+ },
259
+ placements: {
260
+ type: 'string',
261
+ array: true,
262
+ optional: true,
263
+ description: 'Target placements',
264
+ },
265
+ topics: {
266
+ type: 'string',
267
+ array: true,
268
+ optional: true,
269
+ description: 'Target topics',
270
+ },
271
+ // Performance
272
+ impressions: {
273
+ type: 'number',
274
+ optional: true,
275
+ description: 'Total impressions',
276
+ },
277
+ clicks: {
278
+ type: 'number',
279
+ optional: true,
280
+ description: 'Total clicks',
281
+ },
282
+ conversions: {
283
+ type: 'number',
284
+ optional: true,
285
+ description: 'Total conversions',
286
+ },
287
+ cost: {
288
+ type: 'number',
289
+ optional: true,
290
+ description: 'Total cost',
291
+ },
292
+ },
293
+ relationships: {
294
+ campaign: {
295
+ type: 'AdCampaign',
296
+ backref: 'adGroups',
297
+ description: 'Parent campaign',
298
+ },
299
+ ads: {
300
+ type: 'Ad[]',
301
+ backref: 'adGroup',
302
+ description: 'Ads in this group',
303
+ },
304
+ keywords: {
305
+ type: 'Keyword[]',
306
+ backref: 'adGroup',
307
+ description: 'Keywords for search ads',
308
+ },
309
+ },
310
+ actions: [
311
+ 'create',
312
+ 'update',
313
+ 'delete',
314
+ 'enable',
315
+ 'pause',
316
+ 'setBid',
317
+ 'addAudience',
318
+ 'removeAudience',
319
+ ],
320
+ events: [
321
+ 'created',
322
+ 'updated',
323
+ 'deleted',
324
+ 'enabled',
325
+ 'paused',
326
+ 'bidChanged',
327
+ 'audienceAdded',
328
+ 'audienceRemoved',
329
+ ],
330
+ };
331
+ // =============================================================================
332
+ // Ad Campaign
333
+ // =============================================================================
334
+ /**
335
+ * Ad campaign entity
336
+ *
337
+ * Represents an advertising campaign
338
+ */
339
+ export const AdCampaign = {
340
+ singular: 'ad campaign',
341
+ plural: 'ad campaigns',
342
+ description: 'An advertising campaign',
343
+ properties: {
344
+ // Identity
345
+ name: {
346
+ type: 'string',
347
+ description: 'Campaign name',
348
+ },
349
+ objective: {
350
+ type: 'string',
351
+ description: 'Campaign objective: awareness, traffic, engagement, leads, sales',
352
+ examples: ['awareness', 'traffic', 'engagement', 'leads', 'sales', 'app_installs'],
353
+ },
354
+ type: {
355
+ type: 'string',
356
+ description: 'Campaign type: search, display, video, shopping, performance_max',
357
+ examples: ['search', 'display', 'video', 'shopping', 'performance_max', 'app'],
358
+ },
359
+ // Status
360
+ status: {
361
+ type: 'string',
362
+ description: 'Campaign status: enabled, paused, removed, ended',
363
+ examples: ['enabled', 'paused', 'removed', 'ended'],
364
+ },
365
+ // Schedule
366
+ startDate: {
367
+ type: 'datetime',
368
+ optional: true,
369
+ description: 'Campaign start date',
370
+ },
371
+ endDate: {
372
+ type: 'datetime',
373
+ optional: true,
374
+ description: 'Campaign end date',
375
+ },
376
+ // Budget
377
+ budget: {
378
+ type: 'number',
379
+ optional: true,
380
+ description: 'Campaign budget',
381
+ },
382
+ budgetType: {
383
+ type: 'string',
384
+ optional: true,
385
+ description: 'Budget type: daily, lifetime',
386
+ examples: ['daily', 'lifetime'],
387
+ },
388
+ spent: {
389
+ type: 'number',
390
+ optional: true,
391
+ description: 'Amount spent',
392
+ },
393
+ remainingBudget: {
394
+ type: 'number',
395
+ optional: true,
396
+ description: 'Remaining budget',
397
+ },
398
+ // Bidding
399
+ bidStrategy: {
400
+ type: 'string',
401
+ optional: true,
402
+ description: 'Bid strategy',
403
+ },
404
+ targetCpa: {
405
+ type: 'number',
406
+ optional: true,
407
+ description: 'Target CPA',
408
+ },
409
+ targetRoas: {
410
+ type: 'number',
411
+ optional: true,
412
+ description: 'Target ROAS',
413
+ },
414
+ // Targeting
415
+ geoTargets: {
416
+ type: 'string',
417
+ array: true,
418
+ optional: true,
419
+ description: 'Geographic targets',
420
+ },
421
+ languages: {
422
+ type: 'string',
423
+ array: true,
424
+ optional: true,
425
+ description: 'Target languages',
426
+ },
427
+ devices: {
428
+ type: 'string',
429
+ array: true,
430
+ optional: true,
431
+ description: 'Target devices',
432
+ },
433
+ schedule: {
434
+ type: 'json',
435
+ optional: true,
436
+ description: 'Ad schedule',
437
+ },
438
+ // Performance
439
+ impressions: {
440
+ type: 'number',
441
+ optional: true,
442
+ description: 'Total impressions',
443
+ },
444
+ clicks: {
445
+ type: 'number',
446
+ optional: true,
447
+ description: 'Total clicks',
448
+ },
449
+ ctr: {
450
+ type: 'number',
451
+ optional: true,
452
+ description: 'Click-through rate',
453
+ },
454
+ conversions: {
455
+ type: 'number',
456
+ optional: true,
457
+ description: 'Total conversions',
458
+ },
459
+ conversionValue: {
460
+ type: 'number',
461
+ optional: true,
462
+ description: 'Total conversion value',
463
+ },
464
+ cpc: {
465
+ type: 'number',
466
+ optional: true,
467
+ description: 'Average CPC',
468
+ },
469
+ cpa: {
470
+ type: 'number',
471
+ optional: true,
472
+ description: 'Average CPA',
473
+ },
474
+ roas: {
475
+ type: 'number',
476
+ optional: true,
477
+ description: 'Return on ad spend',
478
+ },
479
+ },
480
+ relationships: {
481
+ account: {
482
+ type: 'Account',
483
+ description: 'Advertising account',
484
+ },
485
+ adGroups: {
486
+ type: 'AdGroup[]',
487
+ backref: 'campaign',
488
+ description: 'Ad groups in this campaign',
489
+ },
490
+ conversions: {
491
+ type: 'Conversion[]',
492
+ description: 'Conversions attributed to this campaign',
493
+ },
494
+ },
495
+ actions: [
496
+ 'create',
497
+ 'update',
498
+ 'delete',
499
+ 'enable',
500
+ 'pause',
501
+ 'setBudget',
502
+ 'extendSchedule',
503
+ 'duplicate',
504
+ 'optimize',
505
+ ],
506
+ events: [
507
+ 'created',
508
+ 'updated',
509
+ 'deleted',
510
+ 'enabled',
511
+ 'paused',
512
+ 'budgetChanged',
513
+ 'scheduleExtended',
514
+ 'budgetExhausted',
515
+ 'ended',
516
+ ],
517
+ };
518
+ // =============================================================================
519
+ // Keyword
520
+ // =============================================================================
521
+ /**
522
+ * Keyword entity
523
+ *
524
+ * Represents a search keyword for advertising
525
+ */
526
+ export const Keyword = {
527
+ singular: 'keyword',
528
+ plural: 'keywords',
529
+ description: 'A search keyword for advertising',
530
+ properties: {
531
+ // Identity
532
+ text: {
533
+ type: 'string',
534
+ description: 'Keyword text',
535
+ },
536
+ matchType: {
537
+ type: 'string',
538
+ description: 'Match type: exact, phrase, broad',
539
+ examples: ['exact', 'phrase', 'broad'],
540
+ },
541
+ // Status
542
+ status: {
543
+ type: 'string',
544
+ description: 'Keyword status: enabled, paused, removed',
545
+ examples: ['enabled', 'paused', 'removed'],
546
+ },
547
+ qualityScore: {
548
+ type: 'number',
549
+ optional: true,
550
+ description: 'Quality score (1-10)',
551
+ },
552
+ // Bidding
553
+ bid: {
554
+ type: 'number',
555
+ optional: true,
556
+ description: 'Keyword bid',
557
+ },
558
+ estimatedFirstPageBid: {
559
+ type: 'number',
560
+ optional: true,
561
+ description: 'Estimated first page bid',
562
+ },
563
+ estimatedTopPageBid: {
564
+ type: 'number',
565
+ optional: true,
566
+ description: 'Estimated top of page bid',
567
+ },
568
+ // Performance
569
+ impressions: {
570
+ type: 'number',
571
+ optional: true,
572
+ description: 'Total impressions',
573
+ },
574
+ clicks: {
575
+ type: 'number',
576
+ optional: true,
577
+ description: 'Total clicks',
578
+ },
579
+ ctr: {
580
+ type: 'number',
581
+ optional: true,
582
+ description: 'Click-through rate',
583
+ },
584
+ conversions: {
585
+ type: 'number',
586
+ optional: true,
587
+ description: 'Total conversions',
588
+ },
589
+ cost: {
590
+ type: 'number',
591
+ optional: true,
592
+ description: 'Total cost',
593
+ },
594
+ avgCpc: {
595
+ type: 'number',
596
+ optional: true,
597
+ description: 'Average CPC',
598
+ },
599
+ avgPosition: {
600
+ type: 'number',
601
+ optional: true,
602
+ description: 'Average position',
603
+ },
604
+ // Search terms
605
+ searchVolume: {
606
+ type: 'number',
607
+ optional: true,
608
+ description: 'Monthly search volume',
609
+ },
610
+ competition: {
611
+ type: 'string',
612
+ optional: true,
613
+ description: 'Competition level: low, medium, high',
614
+ examples: ['low', 'medium', 'high'],
615
+ },
616
+ },
617
+ relationships: {
618
+ adGroup: {
619
+ type: 'AdGroup',
620
+ backref: 'keywords',
621
+ description: 'Parent ad group',
622
+ },
623
+ negativeKeyword: {
624
+ type: 'NegativeKeyword',
625
+ required: false,
626
+ description: 'If this is a negative keyword',
627
+ },
628
+ },
629
+ actions: [
630
+ 'create',
631
+ 'update',
632
+ 'delete',
633
+ 'enable',
634
+ 'pause',
635
+ 'setBid',
636
+ 'changeMatchType',
637
+ ],
638
+ events: [
639
+ 'created',
640
+ 'updated',
641
+ 'deleted',
642
+ 'enabled',
643
+ 'paused',
644
+ 'bidChanged',
645
+ 'matchTypeChanged',
646
+ ],
647
+ };
648
+ /**
649
+ * Negative keyword entity
650
+ */
651
+ export const NegativeKeyword = {
652
+ singular: 'negative keyword',
653
+ plural: 'negative keywords',
654
+ description: 'A negative keyword to exclude from targeting',
655
+ properties: {
656
+ text: {
657
+ type: 'string',
658
+ description: 'Keyword text',
659
+ },
660
+ matchType: {
661
+ type: 'string',
662
+ description: 'Match type: exact, phrase, broad',
663
+ examples: ['exact', 'phrase', 'broad'],
664
+ },
665
+ level: {
666
+ type: 'string',
667
+ description: 'Level: campaign, ad_group, account',
668
+ examples: ['campaign', 'ad_group', 'account'],
669
+ },
670
+ },
671
+ relationships: {
672
+ campaign: {
673
+ type: 'AdCampaign',
674
+ required: false,
675
+ description: 'Parent campaign',
676
+ },
677
+ adGroup: {
678
+ type: 'AdGroup',
679
+ required: false,
680
+ description: 'Parent ad group',
681
+ },
682
+ },
683
+ actions: ['create', 'delete'],
684
+ events: ['created', 'deleted'],
685
+ };
686
+ // =============================================================================
687
+ // Conversion
688
+ // =============================================================================
689
+ /**
690
+ * Conversion entity
691
+ *
692
+ * Represents a tracked conversion
693
+ */
694
+ export const Conversion = {
695
+ singular: 'conversion',
696
+ plural: 'conversions',
697
+ description: 'A tracked advertising conversion',
698
+ properties: {
699
+ // Identity
700
+ conversionName: {
701
+ type: 'string',
702
+ description: 'Conversion action name',
703
+ },
704
+ conversionType: {
705
+ type: 'string',
706
+ description: 'Conversion type: purchase, lead, signup, pageview, custom',
707
+ examples: ['purchase', 'lead', 'signup', 'pageview', 'download', 'custom'],
708
+ },
709
+ // Attribution
710
+ attributionModel: {
711
+ type: 'string',
712
+ optional: true,
713
+ description: 'Attribution model: last_click, first_click, linear, data_driven',
714
+ examples: ['last_click', 'first_click', 'linear', 'time_decay', 'data_driven'],
715
+ },
716
+ clickId: {
717
+ type: 'string',
718
+ optional: true,
719
+ description: 'Click ID that led to conversion',
720
+ },
721
+ // Value
722
+ value: {
723
+ type: 'number',
724
+ optional: true,
725
+ description: 'Conversion value',
726
+ },
727
+ currency: {
728
+ type: 'string',
729
+ optional: true,
730
+ description: 'Currency code',
731
+ },
732
+ quantity: {
733
+ type: 'number',
734
+ optional: true,
735
+ description: 'Number of conversions',
736
+ },
737
+ // Timing
738
+ timestamp: {
739
+ type: 'datetime',
740
+ description: 'Conversion timestamp',
741
+ },
742
+ clickTimestamp: {
743
+ type: 'datetime',
744
+ optional: true,
745
+ description: 'Original click timestamp',
746
+ },
747
+ conversionLag: {
748
+ type: 'number',
749
+ optional: true,
750
+ description: 'Days between click and conversion',
751
+ },
752
+ // Source
753
+ source: {
754
+ type: 'string',
755
+ optional: true,
756
+ description: 'Conversion source',
757
+ },
758
+ medium: {
759
+ type: 'string',
760
+ optional: true,
761
+ description: 'Traffic medium',
762
+ },
763
+ },
764
+ relationships: {
765
+ campaign: {
766
+ type: 'AdCampaign',
767
+ required: false,
768
+ description: 'Source campaign',
769
+ },
770
+ adGroup: {
771
+ type: 'AdGroup',
772
+ required: false,
773
+ description: 'Source ad group',
774
+ },
775
+ ad: {
776
+ type: 'Ad',
777
+ required: false,
778
+ description: 'Source ad',
779
+ },
780
+ keyword: {
781
+ type: 'Keyword',
782
+ required: false,
783
+ description: 'Source keyword',
784
+ },
785
+ },
786
+ actions: ['track', 'import', 'adjust', 'delete'],
787
+ events: ['tracked', 'imported', 'adjusted', 'deleted'],
788
+ };
789
+ // =============================================================================
790
+ // Budget
791
+ // =============================================================================
792
+ /**
793
+ * Budget entity
794
+ *
795
+ * Represents an advertising budget
796
+ */
797
+ export const Budget = {
798
+ singular: 'budget',
799
+ plural: 'budgets',
800
+ description: 'An advertising budget',
801
+ properties: {
802
+ // Identity
803
+ name: {
804
+ type: 'string',
805
+ description: 'Budget name',
806
+ },
807
+ // Amount
808
+ amount: {
809
+ type: 'number',
810
+ description: 'Budget amount',
811
+ },
812
+ currency: {
813
+ type: 'string',
814
+ description: 'Currency code',
815
+ },
816
+ period: {
817
+ type: 'string',
818
+ description: 'Budget period: daily, monthly, lifetime',
819
+ examples: ['daily', 'monthly', 'lifetime'],
820
+ },
821
+ // Delivery
822
+ deliveryMethod: {
823
+ type: 'string',
824
+ optional: true,
825
+ description: 'Delivery method: standard, accelerated',
826
+ examples: ['standard', 'accelerated'],
827
+ },
828
+ // Spending
829
+ spent: {
830
+ type: 'number',
831
+ optional: true,
832
+ description: 'Amount spent',
833
+ },
834
+ remaining: {
835
+ type: 'number',
836
+ optional: true,
837
+ description: 'Remaining amount',
838
+ },
839
+ percentUsed: {
840
+ type: 'number',
841
+ optional: true,
842
+ description: 'Percentage of budget used',
843
+ },
844
+ // Status
845
+ status: {
846
+ type: 'string',
847
+ description: 'Budget status: active, depleted, paused',
848
+ examples: ['active', 'depleted', 'paused'],
849
+ },
850
+ shared: {
851
+ type: 'boolean',
852
+ optional: true,
853
+ description: 'Whether budget is shared across campaigns',
854
+ },
855
+ },
856
+ relationships: {
857
+ campaigns: {
858
+ type: 'AdCampaign[]',
859
+ description: 'Campaigns using this budget',
860
+ },
861
+ },
862
+ actions: ['create', 'update', 'delete', 'increase', 'decrease'],
863
+ events: ['created', 'updated', 'deleted', 'increased', 'decreased', 'depleted'],
864
+ };
865
+ // =============================================================================
866
+ // Audience (for advertising)
867
+ // =============================================================================
868
+ /**
869
+ * Ad audience entity
870
+ *
871
+ * Represents a targetable audience for advertising
872
+ */
873
+ export const AdAudience = {
874
+ singular: 'ad audience',
875
+ plural: 'ad audiences',
876
+ description: 'A targetable audience for advertising',
877
+ properties: {
878
+ // Identity
879
+ name: {
880
+ type: 'string',
881
+ description: 'Audience name',
882
+ },
883
+ description: {
884
+ type: 'string',
885
+ optional: true,
886
+ description: 'Audience description',
887
+ },
888
+ type: {
889
+ type: 'string',
890
+ description: 'Audience type: custom, lookalike, remarketing, in_market, affinity',
891
+ examples: ['custom', 'lookalike', 'remarketing', 'in_market', 'affinity'],
892
+ },
893
+ // Source
894
+ source: {
895
+ type: 'string',
896
+ optional: true,
897
+ description: 'Audience source: website, app, crm, engagement',
898
+ examples: ['website', 'app', 'crm', 'engagement'],
899
+ },
900
+ sourceDetails: {
901
+ type: 'json',
902
+ optional: true,
903
+ description: 'Source configuration details',
904
+ },
905
+ // Size
906
+ size: {
907
+ type: 'number',
908
+ optional: true,
909
+ description: 'Estimated audience size',
910
+ },
911
+ sizeRange: {
912
+ type: 'string',
913
+ optional: true,
914
+ description: 'Size range description',
915
+ },
916
+ // Lookalike
917
+ seedAudience: {
918
+ type: 'string',
919
+ optional: true,
920
+ description: 'Seed audience for lookalike',
921
+ },
922
+ expansionLevel: {
923
+ type: 'number',
924
+ optional: true,
925
+ description: 'Lookalike expansion level (1-10)',
926
+ },
927
+ // Status
928
+ status: {
929
+ type: 'string',
930
+ description: 'Audience status: ready, populating, too_small, expired',
931
+ examples: ['ready', 'populating', 'too_small', 'expired'],
932
+ },
933
+ membershipDuration: {
934
+ type: 'number',
935
+ optional: true,
936
+ description: 'Membership duration in days',
937
+ },
938
+ },
939
+ relationships: {
940
+ campaigns: {
941
+ type: 'AdCampaign[]',
942
+ description: 'Campaigns targeting this audience',
943
+ },
944
+ adGroups: {
945
+ type: 'AdGroup[]',
946
+ description: 'Ad groups targeting this audience',
947
+ },
948
+ },
949
+ actions: [
950
+ 'create',
951
+ 'update',
952
+ 'delete',
953
+ 'refresh',
954
+ 'expand',
955
+ 'createLookalike',
956
+ 'share',
957
+ ],
958
+ events: [
959
+ 'created',
960
+ 'updated',
961
+ 'deleted',
962
+ 'refreshed',
963
+ 'expanded',
964
+ 'lookalikeCreated',
965
+ 'shared',
966
+ 'ready',
967
+ ],
968
+ };
969
+ // =============================================================================
970
+ // Export all entities as a schema
971
+ // =============================================================================
972
+ /**
973
+ * All advertising entity types
974
+ */
975
+ export const AdvertisingEntities = {
976
+ // Ads
977
+ Ad,
978
+ AdGroup,
979
+ AdCampaign,
980
+ // Keywords
981
+ Keyword,
982
+ NegativeKeyword,
983
+ // Conversions
984
+ Conversion,
985
+ // Budget
986
+ Budget,
987
+ // Audiences
988
+ AdAudience,
989
+ };
990
+ /**
991
+ * Entity categories for organization
992
+ */
993
+ export const AdvertisingCategories = {
994
+ ads: ['Ad', 'AdGroup', 'AdCampaign'],
995
+ keywords: ['Keyword', 'NegativeKeyword'],
996
+ conversions: ['Conversion'],
997
+ budget: ['Budget'],
998
+ audiences: ['AdAudience'],
999
+ };
1000
+ //# sourceMappingURL=advertising.js.map