@graphext/cuery 0.2.0

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 (712) hide show
  1. package/README.md +18 -0
  2. package/esm/_dnt.shims.d.ts +6 -0
  3. package/esm/_dnt.shims.d.ts.map +1 -0
  4. package/esm/_dnt.shims.js +61 -0
  5. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/index.d.ts +5 -0
  6. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/index.d.ts.map +1 -0
  7. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/index.js +4 -0
  8. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/checks.d.ts +2 -0
  9. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/checks.d.ts.map +1 -0
  10. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/checks.js +1 -0
  11. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/coerce.d.ts +18 -0
  12. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/coerce.d.ts.map +1 -0
  13. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/coerce.js +17 -0
  14. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/compat.d.ts +51 -0
  15. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/compat.d.ts.map +1 -0
  16. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/compat.js +31 -0
  17. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/errors.d.ts +31 -0
  18. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/errors.d.ts.map +1 -0
  19. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/errors.js +48 -0
  20. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/external.d.ts +14 -0
  21. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/external.d.ts.map +1 -0
  22. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/external.js +18 -0
  23. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/iso.d.ts +23 -0
  24. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/iso.d.ts.map +1 -0
  25. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/iso.js +30 -0
  26. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/parse.d.ts +32 -0
  27. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/parse.d.ts.map +1 -0
  28. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/parse.js +15 -0
  29. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/schemas.d.ts +674 -0
  30. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/schemas.d.ts.map +1 -0
  31. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/schemas.js +1040 -0
  32. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/api.d.ts +296 -0
  33. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/api.d.ts.map +1 -0
  34. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/api.js +925 -0
  35. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/checks.d.ts +279 -0
  36. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/checks.d.ts.map +1 -0
  37. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/checks.js +560 -0
  38. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/core.d.ts +53 -0
  39. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/core.d.ts.map +1 -0
  40. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/core.js +65 -0
  41. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/doc.d.ts +15 -0
  42. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/doc.d.ts.map +1 -0
  43. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/doc.js +36 -0
  44. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/errors.d.ts +211 -0
  45. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/errors.d.ts.map +1 -0
  46. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/errors.js +181 -0
  47. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/index.d.ts +15 -0
  48. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/index.d.ts.map +1 -0
  49. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/index.js +14 -0
  50. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/json-schema.d.ts +89 -0
  51. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/json-schema.d.ts.map +1 -0
  52. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/json-schema.js +1 -0
  53. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/parse.d.ts +50 -0
  54. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/parse.d.ts.map +1 -0
  55. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/parse.js +93 -0
  56. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/regexes.d.ts +79 -0
  57. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/regexes.d.ts.map +1 -0
  58. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/regexes.js +127 -0
  59. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/registries.d.ts +36 -0
  60. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/registries.d.ts.map +1 -0
  61. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/registries.js +52 -0
  62. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/schemas.d.ts +1115 -0
  63. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/schemas.d.ts.map +1 -0
  64. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/schemas.js +1954 -0
  65. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/standard-schema.d.ts +56 -0
  66. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/standard-schema.d.ts.map +1 -0
  67. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/standard-schema.js +1 -0
  68. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/to-json-schema.d.ts +91 -0
  69. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/to-json-schema.d.ts.map +1 -0
  70. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/to-json-schema.js +920 -0
  71. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/util.d.ts +198 -0
  72. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/util.d.ts.map +1 -0
  73. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/util.js +600 -0
  74. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/versions.d.ts +6 -0
  75. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/versions.d.ts.map +1 -0
  76. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/versions.js +5 -0
  77. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ar.d.ts +5 -0
  78. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ar.d.ts.map +1 -0
  79. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ar.js +116 -0
  80. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/az.d.ts +5 -0
  81. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/az.d.ts.map +1 -0
  82. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/az.js +115 -0
  83. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/be.d.ts +5 -0
  84. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/be.d.ts.map +1 -0
  85. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/be.js +164 -0
  86. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/bg.d.ts +6 -0
  87. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/bg.d.ts.map +1 -0
  88. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/bg.js +128 -0
  89. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ca.d.ts +5 -0
  90. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ca.d.ts.map +1 -0
  91. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ca.js +118 -0
  92. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/cs.d.ts +5 -0
  93. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/cs.d.ts.map +1 -0
  94. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/cs.js +135 -0
  95. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/da.d.ts +5 -0
  96. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/da.d.ts.map +1 -0
  97. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/da.js +131 -0
  98. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/de.d.ts +5 -0
  99. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/de.d.ts.map +1 -0
  100. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/de.js +116 -0
  101. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/en.d.ts +6 -0
  102. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/en.d.ts.map +1 -0
  103. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/en.js +117 -0
  104. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/eo.d.ts +6 -0
  105. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/eo.d.ts.map +1 -0
  106. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/eo.js +116 -0
  107. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/es.d.ts +5 -0
  108. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/es.d.ts.map +1 -0
  109. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/es.js +149 -0
  110. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fa.d.ts +5 -0
  111. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fa.d.ts.map +1 -0
  112. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fa.js +122 -0
  113. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fi.d.ts +5 -0
  114. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fi.d.ts.map +1 -0
  115. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fi.js +122 -0
  116. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr-CA.d.ts +5 -0
  117. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr-CA.d.ts.map +1 -0
  118. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr-CA.js +117 -0
  119. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr.d.ts +5 -0
  120. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr.d.ts.map +1 -0
  121. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr.js +116 -0
  122. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/he.d.ts +5 -0
  123. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/he.d.ts.map +1 -0
  124. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/he.js +117 -0
  125. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/hu.d.ts +5 -0
  126. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/hu.d.ts.map +1 -0
  127. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/hu.js +117 -0
  128. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/id.d.ts +5 -0
  129. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/id.d.ts.map +1 -0
  130. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/id.js +116 -0
  131. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/index.d.ts +48 -0
  132. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/index.d.ts.map +1 -0
  133. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/index.js +47 -0
  134. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/is.d.ts +6 -0
  135. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/is.d.ts.map +1 -0
  136. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/is.js +117 -0
  137. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/it.d.ts +5 -0
  138. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/it.d.ts.map +1 -0
  139. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/it.js +117 -0
  140. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ja.d.ts +5 -0
  141. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ja.d.ts.map +1 -0
  142. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ja.js +115 -0
  143. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ka.d.ts +6 -0
  144. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ka.d.ts.map +1 -0
  145. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ka.js +125 -0
  146. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/kh.d.ts +6 -0
  147. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/kh.d.ts.map +1 -0
  148. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/kh.js +5 -0
  149. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/km.d.ts +5 -0
  150. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/km.d.ts.map +1 -0
  151. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/km.js +117 -0
  152. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ko.d.ts +5 -0
  153. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ko.d.ts.map +1 -0
  154. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ko.js +121 -0
  155. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/lt.d.ts +6 -0
  156. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/lt.d.ts.map +1 -0
  157. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/lt.js +230 -0
  158. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/mk.d.ts +5 -0
  159. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/mk.d.ts.map +1 -0
  160. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/mk.js +118 -0
  161. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ms.d.ts +5 -0
  162. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ms.d.ts.map +1 -0
  163. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ms.js +116 -0
  164. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/nl.d.ts +5 -0
  165. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/nl.d.ts.map +1 -0
  166. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/nl.js +117 -0
  167. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/no.d.ts +5 -0
  168. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/no.d.ts.map +1 -0
  169. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/no.js +116 -0
  170. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ota.d.ts +5 -0
  171. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ota.d.ts.map +1 -0
  172. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ota.js +117 -0
  173. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pl.d.ts +5 -0
  174. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pl.d.ts.map +1 -0
  175. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pl.js +117 -0
  176. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ps.d.ts +5 -0
  177. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ps.d.ts.map +1 -0
  178. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ps.js +122 -0
  179. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pt.d.ts +5 -0
  180. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pt.d.ts.map +1 -0
  181. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pt.js +116 -0
  182. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ru.d.ts +5 -0
  183. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ru.d.ts.map +1 -0
  184. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ru.js +164 -0
  185. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sl.d.ts +5 -0
  186. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sl.d.ts.map +1 -0
  187. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sl.js +117 -0
  188. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sv.d.ts +5 -0
  189. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sv.d.ts.map +1 -0
  190. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sv.js +118 -0
  191. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ta.d.ts +5 -0
  192. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ta.d.ts.map +1 -0
  193. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ta.js +117 -0
  194. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/th.d.ts +5 -0
  195. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/th.d.ts.map +1 -0
  196. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/th.js +117 -0
  197. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/tr.d.ts +6 -0
  198. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/tr.d.ts.map +1 -0
  199. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/tr.js +115 -0
  200. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ua.d.ts +6 -0
  201. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ua.d.ts.map +1 -0
  202. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ua.js +5 -0
  203. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/uk.d.ts +5 -0
  204. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/uk.d.ts.map +1 -0
  205. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/uk.js +117 -0
  206. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ur.d.ts +5 -0
  207. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ur.d.ts.map +1 -0
  208. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ur.js +117 -0
  209. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/vi.d.ts +5 -0
  210. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/vi.d.ts.map +1 -0
  211. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/vi.js +116 -0
  212. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/yo.d.ts +5 -0
  213. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/yo.d.ts.map +1 -0
  214. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/yo.js +115 -0
  215. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-CN.d.ts +5 -0
  216. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-CN.d.ts.map +1 -0
  217. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-CN.js +116 -0
  218. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-TW.d.ts +5 -0
  219. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-TW.d.ts.map +1 -0
  220. package/esm/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-TW.js +117 -0
  221. package/esm/mod.d.ts +23 -0
  222. package/esm/mod.d.ts.map +1 -0
  223. package/esm/mod.js +22 -0
  224. package/esm/package.json +3 -0
  225. package/esm/src/api.d.ts +42 -0
  226. package/esm/src/api.d.ts.map +1 -0
  227. package/esm/src/api.js +161 -0
  228. package/esm/src/apis/chatgptScraper/brightdata.d.ts +3 -0
  229. package/esm/src/apis/chatgptScraper/brightdata.d.ts.map +1 -0
  230. package/esm/src/apis/chatgptScraper/brightdata.js +172 -0
  231. package/esm/src/apis/chatgptScraper/index.d.ts +10 -0
  232. package/esm/src/apis/chatgptScraper/index.d.ts.map +1 -0
  233. package/esm/src/apis/chatgptScraper/index.js +41 -0
  234. package/esm/src/apis/chatgptScraper/oxy.d.ts +3 -0
  235. package/esm/src/apis/chatgptScraper/oxy.d.ts.map +1 -0
  236. package/esm/src/apis/chatgptScraper/oxy.js +156 -0
  237. package/esm/src/apis/chatgptScraper/scraper.d.ts +46 -0
  238. package/esm/src/apis/chatgptScraper/scraper.d.ts.map +1 -0
  239. package/esm/src/apis/chatgptScraper/scraper.js +98 -0
  240. package/esm/src/apis/googleAds/apiTypes.d.ts +131 -0
  241. package/esm/src/apis/googleAds/apiTypes.d.ts.map +1 -0
  242. package/esm/src/apis/googleAds/apiTypes.js +1 -0
  243. package/esm/src/apis/googleAds/client.d.ts +2 -0
  244. package/esm/src/apis/googleAds/client.d.ts.map +1 -0
  245. package/esm/src/apis/googleAds/client.js +97 -0
  246. package/esm/src/apis/googleAds/countryResourceMap.d.ts +2 -0
  247. package/esm/src/apis/googleAds/countryResourceMap.d.ts.map +1 -0
  248. package/esm/src/apis/googleAds/countryResourceMap.js +874 -0
  249. package/esm/src/apis/googleAds/keywordPlanner.d.ts +64 -0
  250. package/esm/src/apis/googleAds/keywordPlanner.d.ts.map +1 -0
  251. package/esm/src/apis/googleAds/keywordPlanner.js +462 -0
  252. package/esm/src/apis/googleAds/languageResourceMap.d.ts +2 -0
  253. package/esm/src/apis/googleAds/languageResourceMap.d.ts.map +1 -0
  254. package/esm/src/apis/googleAds/languageResourceMap.js +208 -0
  255. package/esm/src/apis/hasdata/aim.d.ts +4 -0
  256. package/esm/src/apis/hasdata/aim.d.ts.map +1 -0
  257. package/esm/src/apis/hasdata/aim.js +32 -0
  258. package/esm/src/apis/hasdata/aio.d.ts +4 -0
  259. package/esm/src/apis/hasdata/aio.d.ts.map +1 -0
  260. package/esm/src/apis/hasdata/aio.js +42 -0
  261. package/esm/src/apis/hasdata/helpers.d.ts +55 -0
  262. package/esm/src/apis/hasdata/helpers.d.ts.map +1 -0
  263. package/esm/src/apis/hasdata/helpers.js +182 -0
  264. package/esm/src/async.d.ts +29 -0
  265. package/esm/src/async.d.ts.map +1 -0
  266. package/esm/src/async.js +109 -0
  267. package/esm/src/models.d.ts +18 -0
  268. package/esm/src/models.d.ts.map +1 -0
  269. package/esm/src/models.js +48 -0
  270. package/esm/src/openai.d.ts +17 -0
  271. package/esm/src/openai.d.ts.map +1 -0
  272. package/esm/src/openai.js +136 -0
  273. package/esm/src/schemas/brand.schema.d.ts +182 -0
  274. package/esm/src/schemas/brand.schema.d.ts.map +1 -0
  275. package/esm/src/schemas/brand.schema.js +49 -0
  276. package/esm/src/schemas/entity.schema.d.ts +14 -0
  277. package/esm/src/schemas/entity.schema.d.ts.map +1 -0
  278. package/esm/src/schemas/entity.schema.js +8 -0
  279. package/esm/src/schemas/funnel.schema.d.ts +94 -0
  280. package/esm/src/schemas/funnel.schema.d.ts.map +1 -0
  281. package/esm/src/schemas/funnel.schema.js +46 -0
  282. package/esm/src/schemas/index.d.ts +21 -0
  283. package/esm/src/schemas/index.d.ts.map +1 -0
  284. package/esm/src/schemas/index.js +13 -0
  285. package/esm/src/schemas/keyword.schema.d.ts +44 -0
  286. package/esm/src/schemas/keyword.schema.d.ts.map +1 -0
  287. package/esm/src/schemas/keyword.schema.js +6 -0
  288. package/esm/src/schemas/models.schema.d.ts +6 -0
  289. package/esm/src/schemas/models.schema.d.ts.map +1 -0
  290. package/esm/src/schemas/models.schema.js +1 -0
  291. package/esm/src/schemas/persona.schema.d.ts +50 -0
  292. package/esm/src/schemas/persona.schema.d.ts.map +1 -0
  293. package/esm/src/schemas/persona.schema.js +21 -0
  294. package/esm/src/schemas/pipeline.schema.d.ts +146 -0
  295. package/esm/src/schemas/pipeline.schema.d.ts.map +1 -0
  296. package/esm/src/schemas/pipeline.schema.js +16 -0
  297. package/esm/src/schemas/search.schema.d.ts +29 -0
  298. package/esm/src/schemas/search.schema.d.ts.map +1 -0
  299. package/esm/src/schemas/search.schema.js +1 -0
  300. package/esm/src/schemas/seedKeyword.schema.d.ts +15 -0
  301. package/esm/src/schemas/seedKeyword.schema.d.ts.map +1 -0
  302. package/esm/src/schemas/seedKeyword.schema.js +7 -0
  303. package/esm/src/schemas/sentiment.schema.d.ts +22 -0
  304. package/esm/src/schemas/sentiment.schema.d.ts.map +1 -0
  305. package/esm/src/schemas/sentiment.schema.js +9 -0
  306. package/esm/src/schemas/sources.schema.d.ts +29 -0
  307. package/esm/src/schemas/sources.schema.d.ts.map +1 -0
  308. package/esm/src/schemas/sources.schema.js +1 -0
  309. package/esm/src/schemas/topics.schema.d.ts +33 -0
  310. package/esm/src/schemas/topics.schema.d.ts.map +1 -0
  311. package/esm/src/schemas/topics.schema.js +14 -0
  312. package/esm/src/tools/brands.d.ts +55 -0
  313. package/esm/src/tools/brands.d.ts.map +1 -0
  314. package/esm/src/tools/brands.js +458 -0
  315. package/esm/src/tools/classifier.d.ts +17 -0
  316. package/esm/src/tools/classifier.d.ts.map +1 -0
  317. package/esm/src/tools/classifier.js +135 -0
  318. package/esm/src/tools/entities.d.ts +19 -0
  319. package/esm/src/tools/entities.d.ts.map +1 -0
  320. package/esm/src/tools/entities.js +80 -0
  321. package/esm/src/tools/funnel.d.ts +41 -0
  322. package/esm/src/tools/funnel.d.ts.map +1 -0
  323. package/esm/src/tools/funnel.js +372 -0
  324. package/esm/src/tools/keywords.d.ts +21 -0
  325. package/esm/src/tools/keywords.d.ts.map +1 -0
  326. package/esm/src/tools/keywords.js +172 -0
  327. package/esm/src/tools/personas.d.ts +3 -0
  328. package/esm/src/tools/personas.d.ts.map +1 -0
  329. package/esm/src/tools/personas.js +88 -0
  330. package/esm/src/tools/scorer.d.ts +14 -0
  331. package/esm/src/tools/scorer.d.ts.map +1 -0
  332. package/esm/src/tools/scorer.js +54 -0
  333. package/esm/src/tools/search.d.ts +24 -0
  334. package/esm/src/tools/search.d.ts.map +1 -0
  335. package/esm/src/tools/search.js +130 -0
  336. package/esm/src/tools/seedKeywords.d.ts +68 -0
  337. package/esm/src/tools/seedKeywords.d.ts.map +1 -0
  338. package/esm/src/tools/seedKeywords.js +214 -0
  339. package/esm/src/tools/sentiment.d.ts +11 -0
  340. package/esm/src/tools/sentiment.d.ts.map +1 -0
  341. package/esm/src/tools/sentiment.js +68 -0
  342. package/esm/src/tools/sources.d.ts +39 -0
  343. package/esm/src/tools/sources.d.ts.map +1 -0
  344. package/esm/src/tools/sources.js +263 -0
  345. package/esm/src/tools/topics.d.ts +74 -0
  346. package/esm/src/tools/topics.d.ts.map +1 -0
  347. package/esm/src/tools/topics.js +229 -0
  348. package/esm/src/tools/translate.d.ts +44 -0
  349. package/esm/src/tools/translate.d.ts.map +1 -0
  350. package/esm/src/tools/translate.js +112 -0
  351. package/esm/src/urls.d.ts +10 -0
  352. package/esm/src/urls.d.ts.map +1 -0
  353. package/esm/src/urls.js +49 -0
  354. package/esm/src/utils.d.ts +38 -0
  355. package/esm/src/utils.d.ts.map +1 -0
  356. package/esm/src/utils.js +175 -0
  357. package/package.json +32 -0
  358. package/script/_dnt.shims.d.ts +6 -0
  359. package/script/_dnt.shims.d.ts.map +1 -0
  360. package/script/_dnt.shims.js +65 -0
  361. package/script/deps/jsr.io/@zod/zod/4.1.12/src/index.d.ts +5 -0
  362. package/script/deps/jsr.io/@zod/zod/4.1.12/src/index.d.ts.map +1 -0
  363. package/script/deps/jsr.io/@zod/zod/4.1.12/src/index.js +43 -0
  364. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/checks.d.ts +2 -0
  365. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/checks.d.ts.map +1 -0
  366. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/checks.js +32 -0
  367. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/coerce.d.ts +18 -0
  368. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/coerce.d.ts.map +1 -0
  369. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/coerce.js +57 -0
  370. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/compat.d.ts +51 -0
  371. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/compat.d.ts.map +1 -0
  372. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/compat.js +71 -0
  373. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/errors.d.ts +31 -0
  374. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/errors.d.ts.map +1 -0
  375. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/errors.js +84 -0
  376. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/external.d.ts +14 -0
  377. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/external.d.ts.map +1 -0
  378. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/external.js +80 -0
  379. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/iso.d.ts +23 -0
  380. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/iso.d.ts.map +1 -0
  381. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/iso.js +70 -0
  382. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/parse.d.ts +32 -0
  383. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/parse.d.ts.map +1 -0
  384. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/parse.js +51 -0
  385. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/schemas.d.ts +674 -0
  386. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/schemas.d.ts.map +1 -0
  387. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/classic/schemas.js +1161 -0
  388. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/api.d.ts +296 -0
  389. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/api.d.ts.map +1 -0
  390. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/api.js +1066 -0
  391. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/checks.d.ts +279 -0
  392. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/checks.d.ts.map +1 -0
  393. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/checks.js +596 -0
  394. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/core.d.ts +53 -0
  395. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/core.d.ts.map +1 -0
  396. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/core.js +72 -0
  397. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/doc.d.ts +15 -0
  398. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/doc.d.ts.map +1 -0
  399. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/doc.js +40 -0
  400. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/errors.d.ts +211 -0
  401. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/errors.d.ts.map +1 -0
  402. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/errors.js +222 -0
  403. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/index.d.ts +15 -0
  404. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/index.d.ts.map +1 -0
  405. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/index.js +53 -0
  406. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/json-schema.d.ts +89 -0
  407. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/json-schema.d.ts.map +1 -0
  408. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/json-schema.js +2 -0
  409. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/parse.d.ts +50 -0
  410. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/parse.d.ts.map +1 -0
  411. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/parse.js +141 -0
  412. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/regexes.d.ts +79 -0
  413. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/regexes.d.ts.map +1 -0
  414. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/regexes.js +136 -0
  415. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/registries.d.ts +36 -0
  416. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/registries.d.ts.map +1 -0
  417. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/registries.js +57 -0
  418. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/schemas.d.ts +1115 -0
  419. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/schemas.d.ts.map +1 -0
  420. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/schemas.js +1995 -0
  421. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/standard-schema.d.ts +56 -0
  422. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/standard-schema.d.ts.map +1 -0
  423. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/standard-schema.js +2 -0
  424. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/to-json-schema.d.ts +91 -0
  425. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/to-json-schema.d.ts.map +1 -0
  426. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/to-json-schema.js +925 -0
  427. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/util.d.ts +198 -0
  428. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/util.d.ts.map +1 -0
  429. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/util.js +657 -0
  430. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/versions.d.ts +6 -0
  431. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/versions.d.ts.map +1 -0
  432. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/core/versions.js +8 -0
  433. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ar.d.ts +5 -0
  434. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ar.d.ts.map +1 -0
  435. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ar.js +152 -0
  436. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/az.d.ts +5 -0
  437. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/az.d.ts.map +1 -0
  438. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/az.js +151 -0
  439. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/be.d.ts +5 -0
  440. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/be.d.ts.map +1 -0
  441. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/be.js +200 -0
  442. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/bg.d.ts +6 -0
  443. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/bg.d.ts.map +1 -0
  444. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/bg.js +166 -0
  445. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ca.d.ts +5 -0
  446. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ca.d.ts.map +1 -0
  447. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ca.js +154 -0
  448. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/cs.d.ts +5 -0
  449. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/cs.d.ts.map +1 -0
  450. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/cs.js +171 -0
  451. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/da.d.ts +5 -0
  452. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/da.d.ts.map +1 -0
  453. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/da.js +167 -0
  454. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/de.d.ts +5 -0
  455. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/de.d.ts.map +1 -0
  456. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/de.js +152 -0
  457. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/en.d.ts +6 -0
  458. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/en.d.ts.map +1 -0
  459. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/en.js +155 -0
  460. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/eo.d.ts +6 -0
  461. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/eo.d.ts.map +1 -0
  462. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/eo.js +154 -0
  463. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/es.d.ts +5 -0
  464. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/es.d.ts.map +1 -0
  465. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/es.js +185 -0
  466. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fa.d.ts +5 -0
  467. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fa.d.ts.map +1 -0
  468. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fa.js +158 -0
  469. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fi.d.ts +5 -0
  470. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fi.d.ts.map +1 -0
  471. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fi.js +158 -0
  472. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr-CA.d.ts +5 -0
  473. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr-CA.d.ts.map +1 -0
  474. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr-CA.js +153 -0
  475. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr.d.ts +5 -0
  476. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr.d.ts.map +1 -0
  477. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/fr.js +152 -0
  478. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/he.d.ts +5 -0
  479. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/he.d.ts.map +1 -0
  480. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/he.js +153 -0
  481. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/hu.d.ts +5 -0
  482. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/hu.d.ts.map +1 -0
  483. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/hu.js +153 -0
  484. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/id.d.ts +5 -0
  485. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/id.d.ts.map +1 -0
  486. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/id.js +152 -0
  487. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/index.d.ts +48 -0
  488. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/index.d.ts.map +1 -0
  489. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/index.js +100 -0
  490. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/is.d.ts +6 -0
  491. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/is.d.ts.map +1 -0
  492. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/is.js +155 -0
  493. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/it.d.ts +5 -0
  494. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/it.d.ts.map +1 -0
  495. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/it.js +153 -0
  496. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ja.d.ts +5 -0
  497. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ja.d.ts.map +1 -0
  498. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ja.js +151 -0
  499. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ka.d.ts +6 -0
  500. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ka.d.ts.map +1 -0
  501. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ka.js +163 -0
  502. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/kh.d.ts +6 -0
  503. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/kh.d.ts.map +1 -0
  504. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/kh.js +11 -0
  505. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/km.d.ts +5 -0
  506. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/km.d.ts.map +1 -0
  507. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/km.js +153 -0
  508. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ko.d.ts +5 -0
  509. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ko.d.ts.map +1 -0
  510. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ko.js +157 -0
  511. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/lt.d.ts +6 -0
  512. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/lt.d.ts.map +1 -0
  513. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/lt.js +268 -0
  514. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/mk.d.ts +5 -0
  515. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/mk.d.ts.map +1 -0
  516. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/mk.js +154 -0
  517. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ms.d.ts +5 -0
  518. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ms.d.ts.map +1 -0
  519. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ms.js +152 -0
  520. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/nl.d.ts +5 -0
  521. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/nl.d.ts.map +1 -0
  522. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/nl.js +153 -0
  523. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/no.d.ts +5 -0
  524. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/no.d.ts.map +1 -0
  525. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/no.js +152 -0
  526. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ota.d.ts +5 -0
  527. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ota.d.ts.map +1 -0
  528. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ota.js +153 -0
  529. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pl.d.ts +5 -0
  530. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pl.d.ts.map +1 -0
  531. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pl.js +153 -0
  532. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ps.d.ts +5 -0
  533. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ps.d.ts.map +1 -0
  534. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ps.js +158 -0
  535. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pt.d.ts +5 -0
  536. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pt.d.ts.map +1 -0
  537. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/pt.js +152 -0
  538. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ru.d.ts +5 -0
  539. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ru.d.ts.map +1 -0
  540. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ru.js +200 -0
  541. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sl.d.ts +5 -0
  542. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sl.d.ts.map +1 -0
  543. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sl.js +153 -0
  544. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sv.d.ts +5 -0
  545. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sv.d.ts.map +1 -0
  546. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/sv.js +154 -0
  547. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ta.d.ts +5 -0
  548. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ta.d.ts.map +1 -0
  549. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ta.js +153 -0
  550. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/th.d.ts +5 -0
  551. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/th.d.ts.map +1 -0
  552. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/th.js +153 -0
  553. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/tr.d.ts +6 -0
  554. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/tr.d.ts.map +1 -0
  555. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/tr.js +153 -0
  556. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ua.d.ts +6 -0
  557. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ua.d.ts.map +1 -0
  558. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ua.js +11 -0
  559. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/uk.d.ts +5 -0
  560. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/uk.d.ts.map +1 -0
  561. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/uk.js +153 -0
  562. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ur.d.ts +5 -0
  563. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ur.d.ts.map +1 -0
  564. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/ur.js +153 -0
  565. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/vi.d.ts +5 -0
  566. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/vi.d.ts.map +1 -0
  567. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/vi.js +152 -0
  568. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/yo.d.ts +5 -0
  569. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/yo.d.ts.map +1 -0
  570. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/yo.js +151 -0
  571. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-CN.d.ts +5 -0
  572. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-CN.d.ts.map +1 -0
  573. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-CN.js +152 -0
  574. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-TW.d.ts +5 -0
  575. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-TW.d.ts.map +1 -0
  576. package/script/deps/jsr.io/@zod/zod/4.1.12/src/v4/locales/zh-TW.js +153 -0
  577. package/script/mod.d.ts +23 -0
  578. package/script/mod.d.ts.map +1 -0
  579. package/script/mod.js +38 -0
  580. package/script/package.json +3 -0
  581. package/script/src/api.d.ts +42 -0
  582. package/script/src/api.d.ts.map +1 -0
  583. package/script/src/api.js +172 -0
  584. package/script/src/apis/chatgptScraper/brightdata.d.ts +3 -0
  585. package/script/src/apis/chatgptScraper/brightdata.d.ts.map +1 -0
  586. package/script/src/apis/chatgptScraper/brightdata.js +208 -0
  587. package/script/src/apis/chatgptScraper/index.d.ts +10 -0
  588. package/script/src/apis/chatgptScraper/index.d.ts.map +1 -0
  589. package/script/src/apis/chatgptScraper/index.js +81 -0
  590. package/script/src/apis/chatgptScraper/oxy.d.ts +3 -0
  591. package/script/src/apis/chatgptScraper/oxy.d.ts.map +1 -0
  592. package/script/src/apis/chatgptScraper/oxy.js +192 -0
  593. package/script/src/apis/chatgptScraper/scraper.d.ts +46 -0
  594. package/script/src/apis/chatgptScraper/scraper.d.ts.map +1 -0
  595. package/script/src/apis/chatgptScraper/scraper.js +139 -0
  596. package/script/src/apis/googleAds/apiTypes.d.ts +131 -0
  597. package/script/src/apis/googleAds/apiTypes.d.ts.map +1 -0
  598. package/script/src/apis/googleAds/apiTypes.js +2 -0
  599. package/script/src/apis/googleAds/client.d.ts +2 -0
  600. package/script/src/apis/googleAds/client.d.ts.map +1 -0
  601. package/script/src/apis/googleAds/client.js +133 -0
  602. package/script/src/apis/googleAds/countryResourceMap.d.ts +2 -0
  603. package/script/src/apis/googleAds/countryResourceMap.d.ts.map +1 -0
  604. package/script/src/apis/googleAds/countryResourceMap.js +877 -0
  605. package/script/src/apis/googleAds/keywordPlanner.d.ts +64 -0
  606. package/script/src/apis/googleAds/keywordPlanner.d.ts.map +1 -0
  607. package/script/src/apis/googleAds/keywordPlanner.js +465 -0
  608. package/script/src/apis/googleAds/languageResourceMap.d.ts +2 -0
  609. package/script/src/apis/googleAds/languageResourceMap.d.ts.map +1 -0
  610. package/script/src/apis/googleAds/languageResourceMap.js +211 -0
  611. package/script/src/apis/hasdata/aim.d.ts +4 -0
  612. package/script/src/apis/hasdata/aim.d.ts.map +1 -0
  613. package/script/src/apis/hasdata/aim.js +36 -0
  614. package/script/src/apis/hasdata/aio.d.ts +4 -0
  615. package/script/src/apis/hasdata/aio.d.ts.map +1 -0
  616. package/script/src/apis/hasdata/aio.js +46 -0
  617. package/script/src/apis/hasdata/helpers.d.ts +55 -0
  618. package/script/src/apis/hasdata/helpers.d.ts.map +1 -0
  619. package/script/src/apis/hasdata/helpers.js +222 -0
  620. package/script/src/async.d.ts +29 -0
  621. package/script/src/async.d.ts.map +1 -0
  622. package/script/src/async.js +148 -0
  623. package/script/src/models.d.ts +18 -0
  624. package/script/src/models.d.ts.map +1 -0
  625. package/script/src/models.js +52 -0
  626. package/script/src/openai.d.ts +17 -0
  627. package/script/src/openai.d.ts.map +1 -0
  628. package/script/src/openai.js +175 -0
  629. package/script/src/schemas/brand.schema.d.ts +182 -0
  630. package/script/src/schemas/brand.schema.d.ts.map +1 -0
  631. package/script/src/schemas/brand.schema.js +52 -0
  632. package/script/src/schemas/entity.schema.d.ts +14 -0
  633. package/script/src/schemas/entity.schema.d.ts.map +1 -0
  634. package/script/src/schemas/entity.schema.js +11 -0
  635. package/script/src/schemas/funnel.schema.d.ts +94 -0
  636. package/script/src/schemas/funnel.schema.d.ts.map +1 -0
  637. package/script/src/schemas/funnel.schema.js +49 -0
  638. package/script/src/schemas/index.d.ts +21 -0
  639. package/script/src/schemas/index.d.ts.map +1 -0
  640. package/script/src/schemas/index.js +14 -0
  641. package/script/src/schemas/keyword.schema.d.ts +44 -0
  642. package/script/src/schemas/keyword.schema.d.ts.map +1 -0
  643. package/script/src/schemas/keyword.schema.js +9 -0
  644. package/script/src/schemas/models.schema.d.ts +6 -0
  645. package/script/src/schemas/models.schema.d.ts.map +1 -0
  646. package/script/src/schemas/models.schema.js +2 -0
  647. package/script/src/schemas/persona.schema.d.ts +50 -0
  648. package/script/src/schemas/persona.schema.d.ts.map +1 -0
  649. package/script/src/schemas/persona.schema.js +24 -0
  650. package/script/src/schemas/pipeline.schema.d.ts +146 -0
  651. package/script/src/schemas/pipeline.schema.d.ts.map +1 -0
  652. package/script/src/schemas/pipeline.schema.js +17 -0
  653. package/script/src/schemas/search.schema.d.ts +29 -0
  654. package/script/src/schemas/search.schema.d.ts.map +1 -0
  655. package/script/src/schemas/search.schema.js +2 -0
  656. package/script/src/schemas/seedKeyword.schema.d.ts +15 -0
  657. package/script/src/schemas/seedKeyword.schema.d.ts.map +1 -0
  658. package/script/src/schemas/seedKeyword.schema.js +8 -0
  659. package/script/src/schemas/sentiment.schema.d.ts +22 -0
  660. package/script/src/schemas/sentiment.schema.d.ts.map +1 -0
  661. package/script/src/schemas/sentiment.schema.js +12 -0
  662. package/script/src/schemas/sources.schema.d.ts +29 -0
  663. package/script/src/schemas/sources.schema.d.ts.map +1 -0
  664. package/script/src/schemas/sources.schema.js +2 -0
  665. package/script/src/schemas/topics.schema.d.ts +33 -0
  666. package/script/src/schemas/topics.schema.d.ts.map +1 -0
  667. package/script/src/schemas/topics.schema.js +17 -0
  668. package/script/src/tools/brands.d.ts +55 -0
  669. package/script/src/tools/brands.d.ts.map +1 -0
  670. package/script/src/tools/brands.js +470 -0
  671. package/script/src/tools/classifier.d.ts +17 -0
  672. package/script/src/tools/classifier.d.ts.map +1 -0
  673. package/script/src/tools/classifier.js +141 -0
  674. package/script/src/tools/entities.d.ts +19 -0
  675. package/script/src/tools/entities.d.ts.map +1 -0
  676. package/script/src/tools/entities.js +88 -0
  677. package/script/src/tools/funnel.d.ts +41 -0
  678. package/script/src/tools/funnel.d.ts.map +1 -0
  679. package/script/src/tools/funnel.js +381 -0
  680. package/script/src/tools/keywords.d.ts +21 -0
  681. package/script/src/tools/keywords.d.ts.map +1 -0
  682. package/script/src/tools/keywords.js +190 -0
  683. package/script/src/tools/personas.d.ts +3 -0
  684. package/script/src/tools/personas.d.ts.map +1 -0
  685. package/script/src/tools/personas.js +91 -0
  686. package/script/src/tools/scorer.d.ts +14 -0
  687. package/script/src/tools/scorer.d.ts.map +1 -0
  688. package/script/src/tools/scorer.js +59 -0
  689. package/script/src/tools/search.d.ts +24 -0
  690. package/script/src/tools/search.d.ts.map +1 -0
  691. package/script/src/tools/search.js +135 -0
  692. package/script/src/tools/seedKeywords.d.ts +68 -0
  693. package/script/src/tools/seedKeywords.d.ts.map +1 -0
  694. package/script/src/tools/seedKeywords.js +220 -0
  695. package/script/src/tools/sentiment.d.ts +11 -0
  696. package/script/src/tools/sentiment.d.ts.map +1 -0
  697. package/script/src/tools/sentiment.js +72 -0
  698. package/script/src/tools/sources.d.ts +39 -0
  699. package/script/src/tools/sources.d.ts.map +1 -0
  700. package/script/src/tools/sources.js +273 -0
  701. package/script/src/tools/topics.d.ts +74 -0
  702. package/script/src/tools/topics.d.ts.map +1 -0
  703. package/script/src/tools/topics.js +237 -0
  704. package/script/src/tools/translate.d.ts +44 -0
  705. package/script/src/tools/translate.d.ts.map +1 -0
  706. package/script/src/tools/translate.js +118 -0
  707. package/script/src/urls.d.ts +10 -0
  708. package/script/src/urls.d.ts.map +1 -0
  709. package/script/src/urls.js +53 -0
  710. package/script/src/utils.d.ts +38 -0
  711. package/script/src/utils.d.ts.map +1 -0
  712. package/script/src/utils.js +183 -0
@@ -0,0 +1,64 @@
1
+ /**
2
+
3
+ Google Ads API integration for comprehensive keyword research and analysis.
4
+
5
+ This module provides a streamlined interface to the Google Ads API for keyword planning
6
+ and research. It enables users to generate keyword ideas, retrieve historical search
7
+ volume data, and analyze keyword performance metrics across different geographic regions
8
+ and time periods. The module handles authentication, batching, and data processing to
9
+ deliver clean, structured keyword data for SEO and content strategy development.
10
+
11
+ Key features include keyword idea generation from seed keywords or landing pages,
12
+ historical metrics retrieval with monthly breakdowns, geographic and language targeting,
13
+ and automated data cleaning and aggregation for analysis workflows.
14
+
15
+ Useful documentation:
16
+ - Keyword ideas:
17
+ - https://developers.google.com/google-ads/api/docs/keyword-planning/generate-keyword-ideas
18
+ - https://developers.google.com/google-ads/api/samples/generate-keyword-ideas
19
+ - https://developers.google.com/google-ads/api/reference/rpc/v21/KeywordPlanIdeaService/GenerateKeywordIdeas?transport=rest
20
+ - Historical metrics:
21
+ - https://developers.google.com/google-ads/api/docs/keyword-planning/generate-historical-metrics
22
+ - https://developers.google.com/google-ads/api/reference/rpc/v21/KeywordPlanIdeaService/GenerateKeywordHistoricalMetrics?transport=rest
23
+ - ID/Code references:
24
+ - https://developers.google.com/google-ads/api/data/codes-formats#expandable-7
25
+ - https://developers.google.com/google-ads/api/data/geotargets
26
+
27
+ **/
28
+ import type { KeywordPlanCompetitionLevel } from './apiTypes.js';
29
+ export interface GoogleKeywordConfig {
30
+ keywords?: Array<string>;
31
+ url?: string;
32
+ wholeSite?: boolean;
33
+ ideas?: boolean;
34
+ maxIdeas?: number;
35
+ language?: string;
36
+ countryISOCode?: string;
37
+ metricsStart?: string;
38
+ metricsEnd?: string;
39
+ /** When true, includes seedKeywords in output records. Defaults to false. */
40
+ includeSeedKeywords?: boolean;
41
+ }
42
+ export interface KeywordRecord {
43
+ keyword: string;
44
+ avgMonthlySearches?: number;
45
+ competition?: KeywordPlanCompetitionLevel;
46
+ competitionIndex?: number;
47
+ averageCpc?: number;
48
+ lowTopOfPageBid?: number;
49
+ highTopOfPageBid?: number;
50
+ searchVolume?: Array<number>;
51
+ searchVolumeDate?: Array<string>;
52
+ searchVolumeGrowthYoy?: number;
53
+ searchVolumeGrowth3m?: number;
54
+ searchVolumeGrowth1m?: number;
55
+ searchVolumeTrend?: number;
56
+ concepts?: Array<string>;
57
+ conceptGroups?: Array<string>;
58
+ closeVariants?: Array<string>;
59
+ seedKeywords?: Array<string>;
60
+ keywordId?: number;
61
+ deduplicatedKeywords?: Array<string>;
62
+ }
63
+ export declare function keywords(cfg: GoogleKeywordConfig): Promise<Array<KeywordRecord>>;
64
+ //# sourceMappingURL=keywordPlanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keywordPlanner.d.ts","sourceRoot":"","sources":["../../../../src/src/apis/googleAds/keywordPlanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAKX,2BAA2B,EAC3B,MAAM,eAAe,CAAC;AAiCvB,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAaD,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,2BAA2B,CAAC;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,gBAAgB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACzB,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACrC;AA0gBD,wBAAsB,QAAQ,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAOtF"}
@@ -0,0 +1,462 @@
1
+ /**
2
+
3
+ Google Ads API integration for comprehensive keyword research and analysis.
4
+
5
+ This module provides a streamlined interface to the Google Ads API for keyword planning
6
+ and research. It enables users to generate keyword ideas, retrieve historical search
7
+ volume data, and analyze keyword performance metrics across different geographic regions
8
+ and time periods. The module handles authentication, batching, and data processing to
9
+ deliver clean, structured keyword data for SEO and content strategy development.
10
+
11
+ Key features include keyword idea generation from seed keywords or landing pages,
12
+ historical metrics retrieval with monthly breakdowns, geographic and language targeting,
13
+ and automated data cleaning and aggregation for analysis workflows.
14
+
15
+ Useful documentation:
16
+ - Keyword ideas:
17
+ - https://developers.google.com/google-ads/api/docs/keyword-planning/generate-keyword-ideas
18
+ - https://developers.google.com/google-ads/api/samples/generate-keyword-ideas
19
+ - https://developers.google.com/google-ads/api/reference/rpc/v21/KeywordPlanIdeaService/GenerateKeywordIdeas?transport=rest
20
+ - Historical metrics:
21
+ - https://developers.google.com/google-ads/api/docs/keyword-planning/generate-historical-metrics
22
+ - https://developers.google.com/google-ads/api/reference/rpc/v21/KeywordPlanIdeaService/GenerateKeywordHistoricalMetrics?transport=rest
23
+ - ID/Code references:
24
+ - https://developers.google.com/google-ads/api/data/codes-formats#expandable-7
25
+ - https://developers.google.com/google-ads/api/data/geotargets
26
+
27
+ **/
28
+ import { createGoogleAdsClient } from './client.js';
29
+ import { COUNTRY_RESOURCE_MAP } from './countryResourceMap.js';
30
+ import { LANGUAGE_RESOURCE_MAP } from './languageResourceMap.js';
31
+ const MONTH_NUMBER_TO_NAME = [
32
+ 'JANUARY', 'FEBRUARY', 'MARCH', 'APRIL', 'MAY', 'JUNE',
33
+ 'JULY', 'AUGUST', 'SEPTEMBER', 'OCTOBER', 'NOVEMBER', 'DECEMBER'
34
+ ];
35
+ const MONTH_TO_NUMBER = {
36
+ JANUARY: 0,
37
+ FEBRUARY: 1,
38
+ MARCH: 2,
39
+ APRIL: 3,
40
+ MAY: 4,
41
+ JUNE: 5,
42
+ JULY: 6,
43
+ AUGUST: 7,
44
+ SEPTEMBER: 8,
45
+ OCTOBER: 9,
46
+ NOVEMBER: 10,
47
+ DECEMBER: 11
48
+ };
49
+ function isDomain(url) {
50
+ if (!url) {
51
+ return false;
52
+ }
53
+ const normalized = url.startsWith('http') ? url : `https://${url}`;
54
+ try {
55
+ const parsed = new URL(normalized);
56
+ const path = parsed.pathname ?? '';
57
+ return !path || path === '/' || path.replaceAll('/', '') === '';
58
+ }
59
+ catch {
60
+ return false;
61
+ }
62
+ }
63
+ function parseYearMonth(value) {
64
+ const match = /^(\d{4})-(\d{2})$/.exec(value.trim());
65
+ if (!match) {
66
+ throw new Error(`Invalid year-month value "${value}". Expected format YYYY-MM.`);
67
+ }
68
+ const year = Number(match[1]);
69
+ const month = Number(match[2]);
70
+ if (Number.isNaN(year) || Number.isNaN(month) || month < 1 || month > 12) {
71
+ throw new Error(`Invalid year-month value "${value}". Month must be between 01 and 12.`);
72
+ }
73
+ return { year, month: MONTH_NUMBER_TO_NAME[month - 1] };
74
+ }
75
+ function monthEnumToMonthNumber(input) {
76
+ if (input == null || input === 'UNSPECIFIED' || input === 'UNKNOWN') {
77
+ return null;
78
+ }
79
+ return MONTH_TO_NUMBER[input] ?? null;
80
+ }
81
+ function normalizeConfig(input) {
82
+ const trimmedKeywords = input.keywords
83
+ ?.map((kw) => kw.trim())
84
+ .filter((kw) => kw.length > 0);
85
+ const url = input.url?.trim() || undefined;
86
+ const wholeSite = Boolean(url && input.wholeSite && isDomain(url));
87
+ let ideas = Boolean(input.ideas);
88
+ if (!ideas && !trimmedKeywords?.length && url) {
89
+ console.warn('Idea generation is disabled, no keywords are provided, but a URL is set. Enabling idea generation automatically.');
90
+ ideas = true;
91
+ }
92
+ let keywords = trimmedKeywords;
93
+ if (ideas && keywords && !wholeSite && keywords.length > 20) {
94
+ console.warn('Google only supports up to 20 seed keywords for idea generation. The first 20 will be used.');
95
+ keywords = keywords.slice(0, 20);
96
+ }
97
+ const languageRaw = input.language?.trim() || 'EN'; // If not set the API defaults to 'EN' on their end...;
98
+ const language = languageRaw && !languageRaw.includes('/') ? languageRaw.toLowerCase() : languageRaw || undefined;
99
+ const countryRaw = input.countryISOCode?.trim();
100
+ const countryISOCode = countryRaw && !countryRaw.includes('/') ? countryRaw.toUpperCase() : countryRaw || undefined;
101
+ let metricsRange;
102
+ if (input.metricsStart || input.metricsEnd) {
103
+ if (!input.metricsStart || !input.metricsEnd) {
104
+ throw new Error('Either provide both metricsStart and metricsEnd or neither.');
105
+ }
106
+ const start = parseYearMonth(input.metricsStart);
107
+ const end = parseYearMonth(input.metricsEnd);
108
+ if (start.year > end.year || (start.year === end.year && start.month > end.month)) {
109
+ throw new Error('Metrics start date must be before or equal to metrics end date.');
110
+ }
111
+ metricsRange = { start, end };
112
+ }
113
+ return {
114
+ keywords,
115
+ url,
116
+ wholeSite,
117
+ ideas,
118
+ maxIdeas: input.maxIdeas ?? 100,
119
+ language,
120
+ countryISOCode,
121
+ metricsRange
122
+ };
123
+ }
124
+ function toNumberLike(value) {
125
+ if (value == null) {
126
+ return null;
127
+ }
128
+ if (typeof value === 'number') {
129
+ return Number.isNaN(value) ? null : value;
130
+ }
131
+ if (typeof value === 'string') {
132
+ const trimmed = value.trim();
133
+ if (!trimmed) {
134
+ return null;
135
+ }
136
+ const parsed = Number(trimmed);
137
+ return Number.isNaN(parsed) ? null : parsed;
138
+ }
139
+ if (typeof value === 'bigint') {
140
+ return Number(value);
141
+ }
142
+ if (typeof value === 'object' &&
143
+ value !== null &&
144
+ 'toNumber' in value &&
145
+ typeof value.toNumber === 'function') {
146
+ const num = value.toNumber();
147
+ return Number.isNaN(num) ? null : num;
148
+ }
149
+ return null;
150
+ }
151
+ function microsToUnit(value, zerosToNull) {
152
+ const micros = toNumberLike(value);
153
+ if (micros == null) {
154
+ return null;
155
+ }
156
+ const unit = micros / 1_000_000;
157
+ if (zerosToNull && unit === 0) {
158
+ return null;
159
+ }
160
+ return unit;
161
+ }
162
+ function extractMonthlyVolumes(volumes) {
163
+ if (!volumes || volumes.length === 0) {
164
+ return null;
165
+ }
166
+ const parsedVolumes = [];
167
+ for (const volume of volumes) {
168
+ const year = toNumberLike(volume.year);
169
+ const month = monthEnumToMonthNumber(volume.month);
170
+ const searches = toNumberLike(volume.monthlySearches);
171
+ if (year == null || month == null || searches == null) {
172
+ continue;
173
+ }
174
+ const date = new Date(Date.UTC(year, month, 1)).toISOString();
175
+ parsedVolumes.push({ year, month, value: searches, date });
176
+ }
177
+ parsedVolumes.sort((a, b) => (a.year === b.year ? a.month - b.month : a.year - b.year));
178
+ if (parsedVolumes.length === 0) {
179
+ return null;
180
+ }
181
+ return {
182
+ dates: parsedVolumes.map((item) => item.date),
183
+ values: parsedVolumes.map((item) => item.value)
184
+ };
185
+ }
186
+ function calculateTrendPct(volumes, nMonths) {
187
+ if (!Array.isArray(volumes) || volumes.length < nMonths) {
188
+ return null;
189
+ }
190
+ const end = volumes[volumes.length - 1];
191
+ const start = volumes[volumes.length - nMonths];
192
+ const denominator = start === 0 ? 1 : start;
193
+ return ((end - start) / denominator) * 100;
194
+ }
195
+ function linregTrend(values) {
196
+ if (!Array.isArray(values) || values.length < 3) {
197
+ return null;
198
+ }
199
+ const n = values.length;
200
+ const sumX = ((n - 1) * n) / 2;
201
+ const sumXX = ((n - 1) * n * (2 * n - 1)) / 6;
202
+ let sumY = 0;
203
+ let sumXY = 0;
204
+ for (let i = 0; i < n; i += 1) {
205
+ const y = values[i];
206
+ sumY += y;
207
+ sumXY += i * y;
208
+ }
209
+ const denominator = n * sumXX - sumX * sumX;
210
+ if (denominator === 0) {
211
+ return null;
212
+ }
213
+ const slope = (n * sumXY - sumX * sumY) / denominator;
214
+ const meanY = sumY / n;
215
+ if (meanY === 0) {
216
+ return null;
217
+ }
218
+ return slope / meanY;
219
+ }
220
+ function addTrendFields(record) {
221
+ const volumes = record.searchVolume;
222
+ if (!volumes || volumes.length === 0) {
223
+ return;
224
+ }
225
+ if (volumes.length >= 12) {
226
+ const yoy = calculateTrendPct(volumes, 12);
227
+ if (yoy != null) {
228
+ record.searchVolumeGrowthYoy = yoy;
229
+ }
230
+ }
231
+ if (volumes.length >= 3) {
232
+ const threeMonth = calculateTrendPct(volumes, 3);
233
+ if (threeMonth != null) {
234
+ record.searchVolumeGrowth3m = threeMonth;
235
+ }
236
+ const trend = linregTrend(volumes);
237
+ if (trend != null) {
238
+ record.searchVolumeTrend = trend;
239
+ }
240
+ }
241
+ if (volumes.length > 1) {
242
+ const oneMonth = calculateTrendPct(volumes, 2);
243
+ if (oneMonth != null) {
244
+ record.searchVolumeGrowth1m = oneMonth;
245
+ }
246
+ }
247
+ }
248
+ function lookupResource(table, rawValue) {
249
+ const value = rawValue.trim();
250
+ if (!value) {
251
+ return null;
252
+ }
253
+ return (table[value] ??
254
+ table[value.toLowerCase()] ??
255
+ table[value.toUpperCase()] ??
256
+ null);
257
+ }
258
+ function languageResourceFromInput(language) {
259
+ if (!language) {
260
+ return null;
261
+ }
262
+ if (language.includes('/')) {
263
+ return language;
264
+ }
265
+ const resource = lookupResource(LANGUAGE_RESOURCE_MAP, language);
266
+ if (!resource) {
267
+ throw new Error(`Invalid language code "${language}" (not found in bundled Google Ads language table).`);
268
+ }
269
+ return resource;
270
+ }
271
+ function geoTargetResourceFromInput(country) {
272
+ if (!country) {
273
+ return null;
274
+ }
275
+ if (country.includes('/')) {
276
+ return country;
277
+ }
278
+ const resource = lookupResource(COUNTRY_RESOURCE_MAP, country);
279
+ if (!resource) {
280
+ throw new Error(`Invalid country code "${country}" (not found in bundled Google Ads geo table).`);
281
+ }
282
+ return resource;
283
+ }
284
+ async function fetchKeywords(cfg) {
285
+ const googleAdsClient = await createGoogleAdsClient();
286
+ const languageResource = languageResourceFromInput(cfg.language);
287
+ const geoResource = geoTargetResourceFromInput(cfg.countryISOCode);
288
+ const baseHistoricalOptions = {
289
+ include_average_cpc: true
290
+ };
291
+ if (cfg.metricsRange) {
292
+ baseHistoricalOptions.year_month_range = {
293
+ start: {
294
+ year: cfg.metricsRange.start.year,
295
+ month: cfg.metricsRange.start.month
296
+ },
297
+ end: {
298
+ year: cfg.metricsRange.end.year,
299
+ month: cfg.metricsRange.end.month
300
+ }
301
+ };
302
+ }
303
+ const keywordPlanNetwork = 'GOOGLE_SEARCH';
304
+ const keywordAnnotationConcept = 'KEYWORD_CONCEPT';
305
+ if (cfg.ideas) {
306
+ const request = {
307
+ includeAdultKeywords: true,
308
+ pageSize: cfg.maxIdeas,
309
+ keywordPlanNetwork: keywordPlanNetwork,
310
+ keywordAnnotation: [keywordAnnotationConcept],
311
+ historicalMetricsOptions: baseHistoricalOptions
312
+ };
313
+ if (languageResource) {
314
+ request.language = languageResource;
315
+ }
316
+ request.geoTargetConstants = geoResource ? [geoResource] : [];
317
+ if (cfg.url && cfg.wholeSite) {
318
+ request.siteSeed = { site: cfg.url };
319
+ if (cfg.keywords?.length) {
320
+ console.warn('Seed keywords are ignored when requesting whole-site keyword ideas.');
321
+ }
322
+ }
323
+ else if (cfg.url && !cfg.keywords?.length) {
324
+ request.urlSeed = { url: cfg.url };
325
+ }
326
+ else if (cfg.url && cfg.keywords?.length) {
327
+ request.keywordAndUrlSeed = { url: cfg.url, keywords: cfg.keywords };
328
+ }
329
+ else if (cfg.keywords?.length) {
330
+ request.keywordSeed = { keywords: cfg.keywords };
331
+ }
332
+ else {
333
+ throw new Error("Either 'keywords' or 'url' must be provided when 'ideas' is true. Provide seed keywords or a URL.");
334
+ }
335
+ return googleAdsClient('generateKeywordIdeas', request);
336
+ }
337
+ if (!cfg.keywords?.length) {
338
+ throw new Error('No keywords provided. Please provide keywords to fetch historical metrics for.');
339
+ }
340
+ const request = {
341
+ keywords: cfg.keywords,
342
+ includeAdultKeywords: true,
343
+ keywordPlanNetwork: keywordPlanNetwork,
344
+ historicalMetricsOptions: baseHistoricalOptions
345
+ };
346
+ if (languageResource) {
347
+ request.language = languageResource;
348
+ }
349
+ if (geoResource) {
350
+ request.geoTargetConstants = [geoResource];
351
+ }
352
+ return googleAdsClient('generateKeywordHistoricalMetrics', request);
353
+ }
354
+ function isKeywordIdeaResult(result) {
355
+ return 'keywordIdeaMetrics' in result || 'keywordAnnotations' in result;
356
+ }
357
+ function extractMetrics(result) {
358
+ if ('keywordIdeaMetrics' in result && result.keywordIdeaMetrics) {
359
+ return result.keywordIdeaMetrics;
360
+ }
361
+ if ('keywordMetrics' in result && result.keywordMetrics) {
362
+ return result.keywordMetrics;
363
+ }
364
+ return null;
365
+ }
366
+ function extractConcepts(result) {
367
+ if (!isKeywordIdeaResult(result)) {
368
+ return {};
369
+ }
370
+ const annotations = result.keywordAnnotations;
371
+ const conceptList = annotations?.concepts ?? [];
372
+ if (!conceptList || conceptList.length === 0) {
373
+ return {};
374
+ }
375
+ const conceptNames = new Set();
376
+ const conceptGroups = new Set();
377
+ for (const concept of conceptList) {
378
+ const name = concept.name?.trim();
379
+ if (name && name !== 'Others' && name !== 'Non-Brands') {
380
+ conceptNames.add(name);
381
+ }
382
+ const groupName = concept.conceptGroup?.name?.trim();
383
+ if (groupName && groupName !== 'Others') {
384
+ conceptGroups.add(groupName);
385
+ }
386
+ }
387
+ return {
388
+ concepts: conceptNames.size > 0 ? Array.from(conceptNames) : undefined,
389
+ conceptGroups: conceptGroups.size > 0 ? Array.from(conceptGroups) : undefined
390
+ };
391
+ }
392
+ function processKeywords(response, collectVolumes = true, zerosToNull = true, seedKeywords) {
393
+ const results = response.results ?? [];
394
+ const records = [];
395
+ for (const result of results) {
396
+ const keyword = typeof result.text === 'string' ? result.text : null;
397
+ if (!keyword) {
398
+ continue;
399
+ }
400
+ const record = { keyword };
401
+ const metrics = extractMetrics(result);
402
+ if (metrics) {
403
+ const avgMonthly = toNumberLike(metrics.avgMonthlySearches);
404
+ if (avgMonthly != null) {
405
+ record.avgMonthlySearches = avgMonthly;
406
+ }
407
+ const competition = metrics.competition;
408
+ if (competition) {
409
+ record.competition = competition;
410
+ }
411
+ const competitionIndex = toNumberLike(metrics.competitionIndex);
412
+ if (competitionIndex != null) {
413
+ record.competitionIndex = competitionIndex;
414
+ }
415
+ const averageCpc = microsToUnit(metrics.averageCpcMicros, zerosToNull);
416
+ if (averageCpc != null) {
417
+ record.averageCpc = averageCpc;
418
+ }
419
+ const lowTopBid = microsToUnit(metrics.lowTopOfPageBidMicros, zerosToNull);
420
+ if (lowTopBid != null) {
421
+ record.lowTopOfPageBid = lowTopBid;
422
+ }
423
+ const highTopBid = microsToUnit(metrics.highTopOfPageBidMicros, zerosToNull);
424
+ if (highTopBid != null) {
425
+ record.highTopOfPageBid = highTopBid;
426
+ }
427
+ if (collectVolumes) {
428
+ const monthly = extractMonthlyVolumes(metrics.monthlySearchVolumes);
429
+ if (monthly) {
430
+ record.searchVolume = monthly.values;
431
+ record.searchVolumeDate = monthly.dates;
432
+ }
433
+ }
434
+ }
435
+ const { concepts, conceptGroups } = extractConcepts(result);
436
+ if (concepts) {
437
+ record.concepts = concepts;
438
+ }
439
+ if (conceptGroups) {
440
+ record.conceptGroups = conceptGroups;
441
+ }
442
+ if (result.closeVariants && result.closeVariants.length > 0) {
443
+ record.closeVariants = result.closeVariants;
444
+ }
445
+ if (seedKeywords && seedKeywords.length > 0) {
446
+ record.seedKeywords = seedKeywords;
447
+ }
448
+ if (collectVolumes) {
449
+ addTrendFields(record);
450
+ }
451
+ records.push(record);
452
+ }
453
+ return records;
454
+ }
455
+ export async function keywords(cfg) {
456
+ const normalizedCfg = normalizeConfig(cfg);
457
+ const response = await fetchKeywords(normalizedCfg);
458
+ const seedKeywordsArg = cfg.includeSeedKeywords === true ? normalizedCfg.keywords : undefined;
459
+ const processed = processKeywords(response, true, true, seedKeywordsArg);
460
+ console.info(`Fetched ${processed.length} keyword records.`);
461
+ return processed;
462
+ }
@@ -0,0 +1,2 @@
1
+ export declare const LANGUAGE_RESOURCE_MAP: Readonly<Record<string, string>>;
2
+ //# sourceMappingURL=languageResourceMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"languageResourceMap.d.ts","sourceRoot":"","sources":["../../../../src/src/apis/googleAds/languageResourceMap.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA6MjE,CAAC"}