@sitecore-content-sdk/core 1.3.0-canary.9 → 1.4.0-canary.2

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 (342) hide show
  1. package/README.md +7 -7
  2. package/dist/cjs/cache-client.js +55 -54
  3. package/dist/cjs/client/constants.js +7 -7
  4. package/dist/cjs/client/edge-proxy.js +24 -22
  5. package/dist/cjs/client/index.js +15 -15
  6. package/dist/cjs/client/models.js +2 -2
  7. package/dist/cjs/client/sitecore-client.js +421 -419
  8. package/dist/cjs/client/utils.js +47 -46
  9. package/dist/cjs/config/define-config.js +194 -193
  10. package/dist/cjs/config/index.js +7 -7
  11. package/dist/cjs/config/models.js +12 -11
  12. package/dist/cjs/config-cli/define-cli-config.js +23 -22
  13. package/dist/cjs/config-cli/index.js +7 -7
  14. package/dist/cjs/config-cli/models.js +8 -7
  15. package/dist/cjs/constants.js +49 -17
  16. package/dist/cjs/debug.js +48 -46
  17. package/dist/cjs/editing/codegen/index.js +14 -9
  18. package/dist/cjs/editing/codegen/preview.js +277 -193
  19. package/dist/cjs/editing/component-layout-service.js +62 -61
  20. package/dist/cjs/editing/design-library.js +183 -126
  21. package/dist/cjs/editing/editing-service.js +75 -74
  22. package/dist/cjs/editing/index.js +33 -27
  23. package/dist/cjs/editing/metadata.js +42 -42
  24. package/dist/cjs/editing/models.js +44 -38
  25. package/dist/cjs/editing/utils.js +108 -90
  26. package/dist/cjs/form/form.js +81 -78
  27. package/dist/cjs/form/index.js +7 -7
  28. package/dist/cjs/graphql-request-client.js +108 -107
  29. package/dist/cjs/i18n/dictionary-service.js +122 -121
  30. package/dist/cjs/i18n/index.js +7 -7
  31. package/dist/cjs/i18n/utils.js +16 -15
  32. package/dist/cjs/index.js +60 -60
  33. package/dist/cjs/layout/content-styles.js +72 -71
  34. package/dist/cjs/layout/index.js +24 -24
  35. package/dist/cjs/layout/layout-service.js +62 -57
  36. package/dist/cjs/layout/models.js +39 -34
  37. package/dist/cjs/layout/themes.js +76 -75
  38. package/dist/cjs/layout/utils.js +117 -110
  39. package/dist/cjs/media/index.js +38 -38
  40. package/dist/cjs/media/media-api.js +100 -96
  41. package/dist/cjs/models.js +2 -2
  42. package/dist/cjs/native-fetcher.js +194 -179
  43. package/dist/cjs/personalize/index.js +15 -15
  44. package/dist/cjs/personalize/layout-personalizer.js +98 -97
  45. package/dist/cjs/personalize/personalize-service.js +98 -94
  46. package/dist/cjs/personalize/utils.js +143 -136
  47. package/dist/cjs/retries.js +43 -42
  48. package/dist/cjs/site/error-pages-service.js +65 -64
  49. package/dist/cjs/site/index.js +26 -26
  50. package/dist/cjs/site/models.js +2 -2
  51. package/dist/cjs/site/redirects-service.js +94 -81
  52. package/dist/cjs/site/robots-service.js +66 -65
  53. package/dist/cjs/site/site-resolver.js +73 -72
  54. package/dist/cjs/site/siteinfo-service.js +84 -80
  55. package/dist/cjs/site/sitemap-xml-service.js +84 -83
  56. package/dist/cjs/site/sitepath-service.js +165 -164
  57. package/dist/cjs/site/utils.js +55 -47
  58. package/dist/cjs/sitecore-service-base.js +36 -36
  59. package/dist/cjs/tools/auth/flow.js +65 -64
  60. package/dist/cjs/tools/auth/index.js +5 -5
  61. package/dist/cjs/tools/auth/models.js +2 -2
  62. package/dist/cjs/tools/auth/tenant-store.js +38 -38
  63. package/dist/cjs/tools/codegen/component-generation.js +52 -50
  64. package/dist/cjs/tools/codegen/extract-files.js +105 -107
  65. package/dist/cjs/tools/codegen/import-map.js +401 -349
  66. package/dist/cjs/tools/codegen/utils.js +418 -418
  67. package/dist/cjs/tools/generate-map.js +2 -2
  68. package/dist/cjs/tools/generateMetadata.js +36 -35
  69. package/dist/cjs/tools/generateSites.js +59 -58
  70. package/dist/cjs/tools/index.js +75 -73
  71. package/dist/cjs/tools/scaffold.js +60 -59
  72. package/dist/cjs/tools/templating/components.js +96 -266
  73. package/dist/cjs/tools/templating/index.js +11 -14
  74. package/dist/cjs/tools/templating/plugins.js +80 -78
  75. package/dist/cjs/tools/templating/utils.js +67 -66
  76. package/dist/cjs/utils/ensurePath.js +20 -20
  77. package/dist/cjs/utils/env.js +28 -27
  78. package/dist/cjs/utils/globalCache.js +55 -0
  79. package/dist/cjs/utils/index.js +26 -21
  80. package/dist/cjs/utils/is-server.js +11 -10
  81. package/dist/cjs/utils/normalize-url.js +5 -5
  82. package/dist/cjs/utils/timeout-promise.js +31 -31
  83. package/dist/cjs/utils/utils.js +254 -229
  84. package/dist/esm/cache-client.js +51 -50
  85. package/dist/esm/client/constants.js +4 -4
  86. package/dist/esm/client/edge-proxy.js +19 -17
  87. package/dist/esm/client/index.js +5 -5
  88. package/dist/esm/client/models.js +1 -1
  89. package/dist/esm/client/sitecore-client.js +414 -412
  90. package/dist/esm/client/utils.js +43 -42
  91. package/dist/esm/config/define-config.js +188 -187
  92. package/dist/esm/config/index.js +2 -2
  93. package/dist/esm/config/models.js +9 -8
  94. package/dist/esm/config-cli/define-cli-config.js +19 -18
  95. package/dist/esm/config-cli/index.js +2 -2
  96. package/dist/esm/config-cli/models.js +5 -4
  97. package/dist/esm/constants.js +46 -14
  98. package/dist/esm/debug.js +41 -39
  99. package/dist/esm/editing/codegen/index.js +1 -1
  100. package/dist/esm/editing/codegen/preview.js +263 -185
  101. package/dist/esm/editing/component-layout-service.js +55 -54
  102. package/dist/esm/editing/design-library.js +171 -117
  103. package/dist/esm/editing/editing-service.js +68 -67
  104. package/dist/esm/editing/index.js +6 -5
  105. package/dist/esm/editing/metadata.js +39 -39
  106. package/dist/esm/editing/models.js +41 -35
  107. package/dist/esm/editing/utils.js +98 -80
  108. package/dist/esm/form/form.js +72 -69
  109. package/dist/esm/form/index.js +1 -1
  110. package/dist/esm/graphql-request-client.js +101 -100
  111. package/dist/esm/i18n/dictionary-service.js +115 -114
  112. package/dist/esm/i18n/index.js +2 -2
  113. package/dist/esm/i18n/utils.js +13 -12
  114. package/dist/esm/index.js +13 -13
  115. package/dist/esm/layout/content-styles.js +64 -63
  116. package/dist/esm/layout/index.js +6 -6
  117. package/dist/esm/layout/layout-service.js +55 -50
  118. package/dist/esm/layout/models.js +36 -31
  119. package/dist/esm/layout/themes.js +71 -70
  120. package/dist/esm/layout/utils.js +109 -102
  121. package/dist/esm/media/index.js +2 -2
  122. package/dist/esm/media/media-api.js +90 -86
  123. package/dist/esm/models.js +1 -1
  124. package/dist/esm/native-fetcher.js +187 -172
  125. package/dist/esm/personalize/index.js +3 -3
  126. package/dist/esm/personalize/layout-personalizer.js +93 -92
  127. package/dist/esm/personalize/personalize-service.js +91 -87
  128. package/dist/esm/personalize/utils.js +135 -128
  129. package/dist/esm/retries.js +39 -38
  130. package/dist/esm/site/error-pages-service.js +58 -57
  131. package/dist/esm/site/index.js +8 -8
  132. package/dist/esm/site/models.js +1 -1
  133. package/dist/esm/site/redirects-service.js +87 -74
  134. package/dist/esm/site/robots-service.js +59 -58
  135. package/dist/esm/site/site-resolver.js +69 -68
  136. package/dist/esm/site/siteinfo-service.js +77 -73
  137. package/dist/esm/site/sitemap-xml-service.js +77 -76
  138. package/dist/esm/site/sitepath-service.js +157 -156
  139. package/dist/esm/site/utils.js +49 -41
  140. package/dist/esm/sitecore-service-base.js +29 -29
  141. package/dist/esm/tools/auth/flow.js +62 -61
  142. package/dist/esm/tools/auth/index.js +1 -1
  143. package/dist/esm/tools/auth/models.js +1 -1
  144. package/dist/esm/tools/auth/tenant-store.js +35 -35
  145. package/dist/esm/tools/codegen/component-generation.js +44 -42
  146. package/dist/esm/tools/codegen/extract-files.js +99 -101
  147. package/dist/esm/tools/codegen/import-map.js +358 -306
  148. package/dist/esm/tools/codegen/utils.js +373 -373
  149. package/dist/esm/tools/generate-map.js +1 -1
  150. package/dist/esm/tools/generateMetadata.js +29 -28
  151. package/dist/esm/tools/generateSites.js +52 -51
  152. package/dist/esm/tools/index.js +28 -27
  153. package/dist/esm/tools/scaffold.js +52 -51
  154. package/dist/esm/tools/templating/components.js +59 -223
  155. package/dist/esm/tools/templating/index.js +3 -3
  156. package/dist/esm/tools/templating/plugins.js +72 -70
  157. package/dist/esm/tools/templating/utils.js +59 -58
  158. package/dist/esm/utils/ensurePath.js +13 -13
  159. package/dist/esm/utils/env.js +24 -23
  160. package/dist/esm/utils/globalCache.js +49 -0
  161. package/dist/esm/utils/index.js +4 -3
  162. package/dist/esm/utils/is-server.js +9 -8
  163. package/dist/esm/utils/normalize-url.js +1 -1
  164. package/dist/esm/utils/timeout-promise.js +28 -28
  165. package/dist/esm/utils/utils.js +238 -213
  166. package/package.json +73 -5
  167. package/types/cache-client.d.ts +68 -64
  168. package/types/cache-client.d.ts.map +1 -0
  169. package/types/client/constants.d.ts +5 -4
  170. package/types/client/constants.d.ts.map +1 -0
  171. package/types/client/edge-proxy.d.ts +18 -15
  172. package/types/client/edge-proxy.d.ts.map +1 -0
  173. package/types/client/index.d.ts +8 -7
  174. package/types/client/index.d.ts.map +1 -0
  175. package/types/client/models.d.ts +21 -19
  176. package/types/client/models.d.ts.map +1 -0
  177. package/types/client/sitecore-client.d.ts +338 -327
  178. package/types/client/sitecore-client.d.ts.map +1 -0
  179. package/types/client/utils.d.ts +15 -9
  180. package/types/client/utils.d.ts.map +1 -0
  181. package/types/config/define-config.d.ts +20 -18
  182. package/types/config/define-config.d.ts.map +1 -0
  183. package/types/config/index.d.ts +3 -2
  184. package/types/config/index.d.ts.map +1 -0
  185. package/types/config/models.d.ts +287 -268
  186. package/types/config/models.d.ts.map +1 -0
  187. package/types/config-cli/define-cli-config.d.ts +9 -7
  188. package/types/config-cli/define-cli-config.d.ts.map +1 -0
  189. package/types/config-cli/index.d.ts +3 -2
  190. package/types/config-cli/index.d.ts.map +1 -0
  191. package/types/config-cli/models.d.ts +6 -4
  192. package/types/config-cli/models.d.ts.map +1 -0
  193. package/types/constants.d.ts +44 -11
  194. package/types/constants.d.ts.map +1 -0
  195. package/types/debug.d.ts +35 -28
  196. package/types/debug.d.ts.map +1 -0
  197. package/types/editing/codegen/index.d.ts +2 -1
  198. package/types/editing/codegen/index.d.ts.map +1 -0
  199. package/types/editing/codegen/preview.d.ts +256 -195
  200. package/types/editing/codegen/preview.d.ts.map +1 -0
  201. package/types/editing/component-layout-service.d.ts +84 -80
  202. package/types/editing/component-layout-service.d.ts.map +1 -0
  203. package/types/editing/design-library.d.ts +111 -63
  204. package/types/editing/design-library.d.ts.map +1 -0
  205. package/types/editing/editing-service.d.ts +72 -62
  206. package/types/editing/editing-service.d.ts.map +1 -0
  207. package/types/editing/index.d.ts +7 -6
  208. package/types/editing/index.d.ts.map +1 -0
  209. package/types/editing/metadata.d.ts +8 -7
  210. package/types/editing/metadata.d.ts.map +1 -0
  211. package/types/editing/models.d.ts +103 -92
  212. package/types/editing/models.d.ts.map +1 -0
  213. package/types/editing/utils.d.ts +91 -74
  214. package/types/editing/utils.d.ts.map +1 -0
  215. package/types/form/form.d.ts +25 -21
  216. package/types/form/form.d.ts.map +1 -0
  217. package/types/form/index.d.ts +2 -1
  218. package/types/form/index.d.ts.map +1 -0
  219. package/types/graphql-request-client.d.ts +112 -105
  220. package/types/graphql-request-client.d.ts.map +1 -0
  221. package/types/i18n/dictionary-service.d.ts +135 -131
  222. package/types/i18n/dictionary-service.d.ts.map +1 -0
  223. package/types/i18n/index.d.ts +3 -2
  224. package/types/i18n/index.d.ts.map +1 -0
  225. package/types/i18n/utils.d.ts +9 -7
  226. package/types/i18n/utils.d.ts.map +1 -0
  227. package/types/index.d.ts +13 -12
  228. package/types/index.d.ts.map +1 -0
  229. package/types/layout/content-styles.d.ts +20 -18
  230. package/types/layout/content-styles.d.ts.map +1 -0
  231. package/types/layout/index.d.ts +6 -5
  232. package/types/layout/index.d.ts.map +1 -0
  233. package/types/layout/layout-service.d.ts +45 -35
  234. package/types/layout/layout-service.d.ts.map +1 -0
  235. package/types/layout/models.d.ts +174 -151
  236. package/types/layout/models.d.ts.map +1 -0
  237. package/types/layout/themes.d.ts +13 -11
  238. package/types/layout/themes.d.ts.map +1 -0
  239. package/types/layout/utils.d.ts +56 -41
  240. package/types/layout/utils.d.ts.map +1 -0
  241. package/types/media/index.d.ts +3 -2
  242. package/types/media/index.d.ts.map +1 -0
  243. package/types/media/media-api.d.ts +60 -55
  244. package/types/media/media-api.d.ts.map +1 -0
  245. package/types/models.d.ts +94 -84
  246. package/types/models.d.ts.map +1 -0
  247. package/types/native-fetcher.d.ts +124 -114
  248. package/types/native-fetcher.d.ts.map +1 -0
  249. package/types/personalize/index.d.ts +4 -3
  250. package/types/personalize/index.d.ts.map +1 -0
  251. package/types/personalize/layout-personalizer.d.ts +29 -27
  252. package/types/personalize/layout-personalizer.d.ts.map +1 -0
  253. package/types/personalize/personalize-service.d.ts +90 -80
  254. package/types/personalize/personalize-service.d.ts.map +1 -0
  255. package/types/personalize/utils.d.ts +78 -69
  256. package/types/personalize/utils.d.ts.map +1 -0
  257. package/types/retries.d.ts +26 -24
  258. package/types/retries.d.ts.map +1 -0
  259. package/types/site/error-pages-service.d.ts +64 -57
  260. package/types/site/error-pages-service.d.ts.map +1 -0
  261. package/types/site/index.d.ts +10 -9
  262. package/types/site/index.d.ts.map +1 -0
  263. package/types/site/models.d.ts +23 -18
  264. package/types/site/models.d.ts.map +1 -0
  265. package/types/site/redirects-service.d.ts +92 -69
  266. package/types/site/redirects-service.d.ts.map +1 -0
  267. package/types/site/robots-service.d.ts +57 -50
  268. package/types/site/robots-service.d.ts.map +1 -0
  269. package/types/site/site-resolver.d.ts +28 -26
  270. package/types/site/site-resolver.d.ts.map +1 -0
  271. package/types/site/siteinfo-service.d.ts +65 -52
  272. package/types/site/siteinfo-service.d.ts.map +1 -0
  273. package/types/site/sitemap-xml-service.d.ts +63 -56
  274. package/types/site/sitemap-xml-service.d.ts.map +1 -0
  275. package/types/site/sitepath-service.d.ts +137 -134
  276. package/types/site/sitepath-service.d.ts.map +1 -0
  277. package/types/site/utils.d.ts +41 -28
  278. package/types/site/utils.d.ts.map +1 -0
  279. package/types/sitecore-service-base.d.ts +31 -30
  280. package/types/sitecore-service-base.d.ts.map +1 -0
  281. package/types/tools/auth/flow.d.ts +29 -27
  282. package/types/tools/auth/flow.d.ts.map +1 -0
  283. package/types/tools/auth/index.d.ts +2 -1
  284. package/types/tools/auth/index.d.ts.map +1 -0
  285. package/types/tools/auth/models.d.ts +35 -33
  286. package/types/tools/auth/models.d.ts.map +1 -0
  287. package/types/tools/auth/tenant-store.d.ts +12 -11
  288. package/types/tools/auth/tenant-store.d.ts.map +1 -0
  289. package/types/tools/codegen/component-generation.d.ts +50 -47
  290. package/types/tools/codegen/component-generation.d.ts.map +1 -0
  291. package/types/tools/codegen/extract-files.d.ts +24 -22
  292. package/types/tools/codegen/extract-files.d.ts.map +1 -0
  293. package/types/tools/codegen/import-map.d.ts +103 -70
  294. package/types/tools/codegen/import-map.d.ts.map +1 -0
  295. package/types/tools/codegen/utils.d.ts +76 -75
  296. package/types/tools/codegen/utils.d.ts.map +1 -0
  297. package/types/tools/generate-map.d.ts +36 -26
  298. package/types/tools/generate-map.d.ts.map +1 -0
  299. package/types/tools/generateMetadata.d.ts +24 -22
  300. package/types/tools/generateMetadata.d.ts.map +1 -0
  301. package/types/tools/generateSites.d.ts +25 -22
  302. package/types/tools/generateSites.d.ts.map +1 -0
  303. package/types/tools/index.d.ts +22 -20
  304. package/types/tools/index.d.ts.map +1 -0
  305. package/types/tools/scaffold.d.ts +27 -25
  306. package/types/tools/scaffold.d.ts.map +1 -0
  307. package/types/tools/templating/components.d.ts +104 -103
  308. package/types/tools/templating/components.d.ts.map +1 -0
  309. package/types/tools/templating/index.d.ts +4 -3
  310. package/types/tools/templating/index.d.ts.map +1 -0
  311. package/types/tools/templating/plugins.d.ts +71 -67
  312. package/types/tools/templating/plugins.d.ts.map +1 -0
  313. package/types/tools/templating/utils.d.ts +42 -40
  314. package/types/tools/templating/utils.d.ts.map +1 -0
  315. package/types/utils/ensurePath.d.ts +7 -6
  316. package/types/utils/ensurePath.d.ts.map +1 -0
  317. package/types/utils/env.d.ts +9 -7
  318. package/types/utils/env.d.ts.map +1 -0
  319. package/types/utils/globalCache.d.ts +37 -0
  320. package/types/utils/globalCache.d.ts.map +1 -0
  321. package/types/utils/index.d.ts +5 -3
  322. package/types/utils/index.d.ts.map +1 -0
  323. package/types/utils/is-server.d.ts +8 -6
  324. package/types/utils/is-server.d.ts.map +1 -0
  325. package/types/utils/normalize-url.d.ts +2 -1
  326. package/types/utils/normalize-url.d.ts.map +1 -0
  327. package/types/utils/timeout-promise.d.ts +18 -17
  328. package/types/utils/timeout-promise.d.ts.map +1 -0
  329. package/types/utils/utils.d.ts +104 -79
  330. package/types/utils/utils.d.ts.map +1 -0
  331. package/client.js +0 -1
  332. package/codegen.js +0 -1
  333. package/config-cli.js +0 -1
  334. package/config.js +0 -1
  335. package/editing.js +0 -1
  336. package/i18n.js +0 -1
  337. package/layout.js +0 -1
  338. package/media.js +0 -1
  339. package/personalize.js +0 -1
  340. package/site.js +0 -1
  341. package/tools.js +0 -1
  342. package/utils.js +0 -1
@@ -1,327 +1,338 @@
1
- import { DesignLibraryRenderPreviewData, EditingPreviewData, EditingService, ComponentLayoutService, DesignLibraryMode } from '../editing';
2
- import { DocumentNode } from 'graphql';
3
- import { GraphQLClient, GraphQLRequestClientFactory } from '../graphql-request-client';
4
- import { DictionaryPhrases, DictionaryService } from '../i18n';
5
- import { LayoutService, LayoutServiceData, RouteOptions, LayoutServicePageState } from '../layout';
6
- import { HTMLLink, FetchOptions, StaticPath, RetryStrategy } from '../models';
7
- import { PersonalizedRewriteData } from '../personalize/utils';
8
- import { ErrorPages, ErrorPagesService, SitePathService, SitemapXmlService } from '../site';
9
- import { SitecoreClientInit } from './models';
10
- import { RobotsService } from '../site/robots-service';
11
- /**
12
- * Error page codes
13
- */
14
- export declare enum ErrorPage {
15
- NotFound = "404",
16
- InternalServerError = "500"
17
- }
18
- /**
19
- * Page mode name
20
- */
21
- type PageModeName = LayoutServicePageState | DesignLibraryMode;
22
- /**
23
- * Represents the mode of the page
24
- */
25
- export type PageMode = {
26
- /**
27
- * Page mode name.
28
- */
29
- name: PageModeName;
30
- /**
31
- * Design Library related properties. Only available in Design Library mode.
32
- */
33
- designLibrary: {
34
- /**
35
- * Whether the page is in variant generation mode
36
- */
37
- isVariantGeneration: boolean;
38
- };
39
- /**
40
- * Whether the page is in normal mode
41
- */
42
- isNormal: boolean;
43
- /**
44
- * Whether the page is in preview mode
45
- */
46
- isPreview: boolean;
47
- /**
48
- * Whether the page is in editing mode
49
- */
50
- isEditing: boolean;
51
- /**
52
- * Whether the page is in Design Library mode
53
- */
54
- isDesignLibrary: boolean;
55
- };
56
- /**
57
- * Represent a Page model returned from Edge endpoint
58
- */
59
- export type Page = {
60
- /**
61
- * Layout details and props for the page
62
- */
63
- layout: LayoutServiceData;
64
- /**
65
- * Site name for current page / route
66
- */
67
- siteName?: string;
68
- /**
69
- * Route locale
70
- */
71
- locale: string;
72
- /**
73
- * Page mode
74
- */
75
- mode: PageMode;
76
- };
77
- export type PageOptions = Partial<RouteOptions> & {
78
- personalize?: PersonalizedRewriteData;
79
- };
80
- /**
81
- * Request options for the getSiteMap method
82
- */
83
- export type SitemapXmlOptions = {
84
- /** The hostname from the request (e.g., 'example.com') */
85
- reqHost: string;
86
- /** The protocol from request headers (e.g., 'https' or 'http') */
87
- reqProtocol: string | string[];
88
- /** Optional sitemap identifier when requesting a specific sitemap */
89
- id?: string;
90
- /** The site name to resolve the sitemap for */
91
- siteName?: string;
92
- };
93
- /**
94
- * Options for fetching robots.txt content.
95
- */
96
- export type RobotsOptions = {
97
- /**
98
- * The name of the site for which to fetch robots.txt content.
99
- */
100
- siteName: string;
101
- };
102
- /**
103
- * Contract for the Sitecore Client implementations
104
- */
105
- export interface BaseSitecoreClient {
106
- /**
107
- * Execute a raw GraphQL request using the client's configured GraphQL endpoint(s).
108
- * This is a thin pass-through to the underlying {@link GraphQLClient.request},
109
- * @param query GraphQL string or DocumentNode
110
- * @param variables Optional variables bag
111
- * @param fetchOptions Optional fetch/retry overrides (headers, retries, fetch impl, debugger)
112
- */
113
- getData<T = unknown>(query: string | DocumentNode, variables?: Record<string, unknown>, fetchOptions?: FetchOptions): Promise<T>;
114
- /**
115
- * Retrieves page layoutData and returns page details like language, layoutData and site info for current request
116
- * @param {string} path current request path
117
- * @param {PageOptions} pageOptions additional overrides like language, site name and personalization variants
118
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
119
- * @returns {Page | null} page details when page layout is found and null when not
120
- */
121
- getPage(path: string | string[], pageOptions?: PageOptions, fetchOptions?: FetchOptions): Promise<Page | null>;
122
- /**
123
- * Retrieves the robots.txt content for a given site name.
124
- * @param {string} siteName - The name of the site for which to fetch robots.txt content.
125
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
126
- * @returns {Promise<string>} A promise that resolves to the robots.txt content.
127
- */
128
- getRobots(siteName: string, fetchOptions?: FetchOptions): Promise<string | null>;
129
- getDictionary(routeOptions?: Partial<RouteOptions>, fetchOptions?: FetchOptions): Promise<DictionaryPhrases>;
130
- /**
131
- * Get error pages configured by SXA for a given site and locale
132
- * @param {RouteOptions} [routeOptions] language and site to load error pages for
133
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
134
- */
135
- getErrorPages(routeOptions?: RouteOptions, fetchOptions?: FetchOptions): Promise<ErrorPages | null>;
136
- /**
137
- * Get preview layout details based on details from EditingPreviewData input
138
- * @param {EditingPreviewData | undefined} previewData preview details like route, site, language etc used to retrieve preview page and layout
139
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
140
- */
141
- getPreview(previewData: EditingPreviewData | undefined, fetchOptions?: FetchOptions): Promise<Page | null>;
142
- /**
143
- * Get error page details for a given error code
144
- * @param {ErrorPage} code - The error code to get the error page for
145
- * @param {Partial<RouteOptions>} [pageOptions] - The page options to get the error page for
146
- * @param {FetchOptions} [fetchOptions] - Additional fetch fetch options to override GraphQL requests
147
- * @returns {Promise<Page | null>} A promise that resolves to the error page details or null if not found
148
- */
149
- getErrorPage(code: ErrorPage, pageOptions?: Partial<RouteOptions>, fetchOptions?: FetchOptions): Promise<Page | null>;
150
- /**
151
- * Get route paths for all pages in the site. Can be used for static site generation.
152
- * @param {string[]} sites - sites to fetch routes for
153
- * @param {string[]} [languages] languages to fetch routes in
154
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
155
- */
156
- getPagePaths(sites: string[], languages?: string[], fetchOptions?: FetchOptions): Promise<StaticPath[]>;
157
- /**
158
- * Retrieves the links to be loaded in app's <head> element for each page.
159
- * @param {LayoutServiceData} layoutData - The layout data containing styles and themes.
160
- * @param {object} [options] - Optional configuration for enabling styles and themes.
161
- * @param {boolean} [options.enableStyles] - Whether to include content styles.
162
- * @param {boolean} [options.enableThemes] - Whether to include theme styles.
163
- * @returns {HTMLLink[]} An array of `<link>` elements.
164
- */
165
- getHeadLinks(layoutData: LayoutServiceData, options: {
166
- enableStyles?: boolean;
167
- enableThemes?: boolean;
168
- }): HTMLLink[];
169
- /**
170
- * Retrieves sitemap XML content - either a specific sitemap or the index of all sitemaps.
171
- * @param { SitemapRequestConfig} reqOptions - Configuration for sitemap retrieval
172
- * @param {FetchOptions} [fetchOptions] - Additional fetchOptions Additional fetch options to override GraphQL requests
173
- * @returns {Promise<string>} Promise resolving to the sitemap XML content as string
174
- */
175
- getSiteMap(reqOptions: SitemapXmlOptions, fetchOptions?: FetchOptions): Promise<string>;
176
- /**
177
- * Retrieves the robots.txt content for a given site name.
178
- * @param {string} siteName - The name of the site for which to fetch robots.txt content.
179
- * @param {FetchOptions} fetchOptions Additional fetch options to override GraphQL requests
180
- * @returns {Promise<string>} A promise that resolves to the robots.txt content.
181
- */
182
- getRobots(siteName: string, fetchOptions?: FetchOptions): Promise<string | null>;
183
- }
184
- export interface BaseServiceOptions {
185
- defaultSite: string;
186
- clientFactory: GraphQLRequestClientFactory;
187
- retries: {
188
- count: number;
189
- retryStrategy: RetryStrategy;
190
- };
191
- }
192
- /**
193
- * This is a generic content client that can be used by any framework.
194
- * Use it to retrieve pages, preview data, dictionary and other data
195
- */
196
- export declare class SitecoreClient implements BaseSitecoreClient {
197
- protected initOptions: SitecoreClientInit;
198
- protected layoutService: LayoutService;
199
- protected dictionaryService: DictionaryService;
200
- protected editingService: EditingService;
201
- protected clientFactory: GraphQLRequestClientFactory;
202
- protected errorPagesService: ErrorPagesService;
203
- protected componentService: ComponentLayoutService;
204
- protected sitePathService: SitePathService;
205
- protected graphQLClient: GraphQLClient;
206
- /**
207
- * Init SitecoreClient
208
- * @param {SitecoreClientInit} initOptions initOptions for the client, containing site and Sitecore connection details
209
- */
210
- constructor(initOptions: SitecoreClientInit);
211
- /**
212
- * Normalize path regardless of type
213
- * @param {string | string[]} path string or string array path
214
- * @returns {string} string path
215
- */
216
- parsePath(path: string | string[]): string;
217
- /**
218
- * Execute a raw GraphQL request using the client's configured GraphQL Edge endpoint.
219
- * This is a thin pass-through to the underlying {@link GraphQLClient.request},
220
- * @param {string | DocumentNode} query GraphQL query
221
- * @param {Record<string, unknown>} [variables] Optional variables bag
222
- * @param {FetchOptions} [fetchOptions] Optional fetch overrides (e.g. fetch, headers)
223
- */
224
- getData<T = unknown>(query: string | DocumentNode, variables?: Record<string, unknown>, fetchOptions?: FetchOptions): Promise<T>;
225
- /**
226
- * Get page details for a route, with layout and other details
227
- * @param {string} path route path
228
- * @param {PageOptions} [pageOptions] site, language and personalization variant details for route
229
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
230
- * @returns {Page | null} page details
231
- */
232
- getPage(path: string | string[], pageOptions?: PageOptions, fetchOptions?: FetchOptions): Promise<Page | null>;
233
- /**
234
- * Retrieves the head `<link>` elements for Sitecore styles and themes.
235
- * @param {LayoutServiceData} layoutData - The layout data containing styles and themes.
236
- * @param {object} [options] - Optional configuration for enabling styles and themes.
237
- * @param {boolean} [options.enableStyles] - Whether to include content styles.
238
- * @param {boolean} [options.enableThemes] - Whether to include theme styles.
239
- * @returns {HTMLLink[]} An array of `<link>` elements for stylesheets.
240
- */
241
- getHeadLinks(layoutData: LayoutServiceData, options?: {
242
- enableStyles?: boolean;
243
- enableThemes?: boolean;
244
- }): HTMLLink[];
245
- /**
246
- * Retrieves dictionary phrases for a given site and locale.
247
- * @param {RouteOptions} routeOptions - Route options containing language and site name to load dictionary for
248
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
249
- * @returns {DictionaryPhrases} A promise that resolves to the dictionary phrases.
250
- */
251
- getDictionary(routeOptions?: Partial<RouteOptions>, fetchOptions?: FetchOptions): Promise<DictionaryPhrases>;
252
- /**
253
- * Retrieves error pages for a given site and locale.
254
- * @param {RouteOptions} routeOptions - Route options containing language and site name to load error pages
255
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
256
- * @returns {ErrorPages | null} A promise that resolves to the error pages or null if not found.
257
- */
258
- getErrorPages(routeOptions?: RouteOptions, fetchOptions?: FetchOptions): Promise<ErrorPages | null>;
259
- /**
260
- * Retrieves preview page and layout details
261
- * @param {EditingPreviewData | undefined} previewData - The editing preview data for metadata mode.
262
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
263
- * @returns {Page} preview page details
264
- */
265
- getPreview(previewData: EditingPreviewData | undefined, fetchOptions?: FetchOptions): Promise<Page | null>;
266
- /**
267
- * Get design library page details for Design Library mode of your app
268
- * @param {DesignLibraryRenderPreviewData} designLibData preview data set in 'library' mode of the app
269
- * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
270
- * @returns {Page} preview page for Design Library
271
- */
272
- getDesignLibraryData(designLibData: DesignLibraryRenderPreviewData, fetchOptions?: FetchOptions): Promise<Page>;
273
- /**
274
- * Get error page details for a given error code
275
- * @param {ErrorPage} code - The error code to get the error page for
276
- * @param {Partial<RouteOptions>} pageOptions - The page options to get the error page for
277
- * @param {FetchOptions} [fetchOptions] - Additional fetch fetch options to override GraphQL requests
278
- * @returns {Promise<Page | null>} A promise that resolves to the error page details or null if not found
279
- */
280
- getErrorPage(code: ErrorPage, pageOptions?: Partial<RouteOptions>, fetchOptions?: FetchOptions): Promise<Page | null>;
281
- /**
282
- * Retrieves the static paths for pages based on the given languages.
283
- * @param {string[]} sites - An array of site names to fetch routes for.
284
- * @param {string[]} [languages] - An optional array of language codes to generate paths for.
285
- * @param {FetchOptions} [fetchOptions] - Additional fetch options.
286
- * @returns {Promise<StaticPath[]>} A promise that resolves to an array of static paths.
287
- */
288
- getPagePaths(sites: string[], languages?: string[], fetchOptions?: FetchOptions): Promise<StaticPath[]>;
289
- /**
290
- * Retrieves sitemap XML content - either a specific sitemap or the index of all sitemaps.
291
- * @param {SitemapXmlOptions} reqOptions - Options for sitemap retrieval
292
- * @param {FetchOptions} [fetchOptions] - Additional fetch options.
293
- * @returns {Promise<string>} Promise resolving to the sitemap XML content as string
294
- * @throws {Error} Throws 'REDIRECT_404' if requested sitemap is not found
295
- */
296
- getSiteMap(reqOptions: SitemapXmlOptions, fetchOptions?: FetchOptions): Promise<string>;
297
- /**
298
- * Retrieves the robots.txt content for a given site name.
299
- * @param {string} siteName - The name of the site to retrieve the robots.txt for.
300
- * @param {FetchOptions} [fetchOptions] - Optional fetch options.
301
- * @returns {Promise<string | null>} A promise that resolves to the robots.txt content,
302
- * or null if no content is found.
303
- */
304
- getRobots(siteName: string, fetchOptions?: FetchOptions): Promise<string | null>;
305
- /**
306
- * Factory methods for creating dependencies
307
- * Subclasses can override these to provide custom implementations.
308
- */
309
- protected getGraphqlSitemapXMLService(siteName: string): SitemapXmlService;
310
- protected getRobotsService(siteName: string): RobotsService;
311
- protected getBaseServiceOptions(): BaseServiceOptions;
312
- /**
313
- * Get page mode based on mode name
314
- * @param {PageModeName} mode - The mode name to get the page mode for
315
- * @param { DesignLibraryVariantGeneration} generation - The variant generation mode, if applicable
316
- * @returns {PageMode} The page mode
317
- */
318
- private getPageMode;
319
- private getClientFactory;
320
- private getLayoutService;
321
- private getDictionaryService;
322
- private getEditingService;
323
- private getErrorPagesService;
324
- private getComponentService;
325
- private getSitePathService;
326
- }
327
- export {};
1
+ import { DesignLibraryRenderPreviewData, EditingPreviewData, EditingService, ComponentLayoutService, DesignLibraryMode } from '../editing';
2
+ import { DocumentNode } from 'graphql';
3
+ import { GraphQLClient, GraphQLRequestClientFactory } from '../graphql-request-client';
4
+ import { DictionaryPhrases, DictionaryService } from '../i18n';
5
+ import { LayoutService, LayoutServiceData, RouteOptions, LayoutServicePageState } from '../layout';
6
+ import { HTMLLink, FetchOptions, StaticPath, RetryStrategy } from '../models';
7
+ import { PersonalizedRewriteData } from '../personalize/utils';
8
+ import { ErrorPages, ErrorPagesService, SitePathService, SitemapXmlService } from '../site';
9
+ import { SitecoreClientInit } from './models';
10
+ import { RobotsService } from '../site/robots-service';
11
+ /**
12
+ * Error page codes
13
+ * @public
14
+ */
15
+ export declare enum ErrorPage {
16
+ NotFound = "404",
17
+ InternalServerError = "500"
18
+ }
19
+ /**
20
+ * Page mode name
21
+ * @public
22
+ */
23
+ type PageModeName = LayoutServicePageState | DesignLibraryMode;
24
+ /**
25
+ * Represents the mode of the page
26
+ * @public
27
+ */
28
+ export type PageMode = {
29
+ /**
30
+ * Page mode name.
31
+ */
32
+ name: PageModeName;
33
+ /**
34
+ * Design Library related properties. Only available in Design Library mode.
35
+ */
36
+ designLibrary: {
37
+ /**
38
+ * Whether the page is in variant generation mode
39
+ */
40
+ isVariantGeneration: boolean;
41
+ };
42
+ /**
43
+ * Whether the page is in normal mode
44
+ */
45
+ isNormal: boolean;
46
+ /**
47
+ * Whether the page is in preview mode
48
+ */
49
+ isPreview: boolean;
50
+ /**
51
+ * Whether the page is in editing mode
52
+ */
53
+ isEditing: boolean;
54
+ /**
55
+ * Whether the page is in Design Library mode
56
+ */
57
+ isDesignLibrary: boolean;
58
+ };
59
+ /**
60
+ * Represent a Page model returned from Edge endpoint
61
+ * @public
62
+ */
63
+ export type Page = {
64
+ /**
65
+ * Layout details and props for the page
66
+ */
67
+ layout: LayoutServiceData;
68
+ /**
69
+ * Site name for current page / route
70
+ */
71
+ siteName?: string;
72
+ /**
73
+ * Route locale
74
+ */
75
+ locale: string;
76
+ /**
77
+ * Page mode
78
+ */
79
+ mode: PageMode;
80
+ };
81
+ /**
82
+ * Page options
83
+ * @public
84
+ */
85
+ export type PageOptions = Partial<RouteOptions> & {
86
+ personalize?: PersonalizedRewriteData;
87
+ };
88
+ /**
89
+ * Request options for the getSiteMap method
90
+ * @public
91
+ */
92
+ export type SitemapXmlOptions = {
93
+ /** The hostname from the request (e.g., 'example.com') */
94
+ reqHost: string;
95
+ /** The protocol from request headers (e.g., 'https' or 'http') */
96
+ reqProtocol: string | string[];
97
+ /** Optional sitemap identifier when requesting a specific sitemap */
98
+ id?: string;
99
+ /** The site name to resolve the sitemap for */
100
+ siteName?: string;
101
+ };
102
+ /**
103
+ * Options for fetching robots.txt content.
104
+ */
105
+ export type RobotsOptions = {
106
+ /**
107
+ * The name of the site for which to fetch robots.txt content.
108
+ */
109
+ siteName: string;
110
+ };
111
+ /**
112
+ * Contract for the Sitecore Client implementations
113
+ */
114
+ export interface BaseSitecoreClient {
115
+ /**
116
+ * Execute a raw GraphQL request using the client's configured GraphQL endpoint(s).
117
+ * This is a thin pass-through to the underlying {@link GraphQLClient.request},
118
+ * @param query GraphQL string or DocumentNode
119
+ * @param variables Optional variables bag
120
+ * @param fetchOptions Optional fetch/retry overrides (headers, retries, fetch impl, debugger)
121
+ */
122
+ getData<T = unknown>(query: string | DocumentNode, variables?: Record<string, unknown>, fetchOptions?: FetchOptions): Promise<T>;
123
+ /**
124
+ * Retrieves page layoutData and returns page details like language, layoutData and site info for current request
125
+ * @param {string} path current request path
126
+ * @param {PageOptions} pageOptions additional overrides like language, site name and personalization variants
127
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
128
+ * @returns {Page | null} page details when page layout is found and null when not
129
+ */
130
+ getPage(path: string | string[], pageOptions?: PageOptions, fetchOptions?: FetchOptions): Promise<Page | null>;
131
+ /**
132
+ * Retrieves the robots.txt content for a given site name.
133
+ * @param {string} siteName - The name of the site for which to fetch robots.txt content.
134
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
135
+ * @returns {Promise<string>} A promise that resolves to the robots.txt content.
136
+ */
137
+ getRobots(siteName: string, fetchOptions?: FetchOptions): Promise<string | null>;
138
+ getDictionary(routeOptions?: Partial<RouteOptions>, fetchOptions?: FetchOptions): Promise<DictionaryPhrases>;
139
+ /**
140
+ * Get error pages configured by SXA for a given site and locale
141
+ * @param {RouteOptions} [routeOptions] language and site to load error pages for
142
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
143
+ */
144
+ getErrorPages(routeOptions?: RouteOptions, fetchOptions?: FetchOptions): Promise<ErrorPages | null>;
145
+ /**
146
+ * Get preview layout details based on details from EditingPreviewData input
147
+ * @param {EditingPreviewData | undefined} previewData preview details like route, site, language etc used to retrieve preview page and layout
148
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
149
+ */
150
+ getPreview(previewData: EditingPreviewData | undefined, fetchOptions?: FetchOptions): Promise<Page | null>;
151
+ /**
152
+ * Get error page details for a given error code
153
+ * @param {ErrorPage} code - The error code to get the error page for
154
+ * @param {Partial<RouteOptions>} [pageOptions] - The page options to get the error page for
155
+ * @param {FetchOptions} [fetchOptions] - Additional fetch fetch options to override GraphQL requests
156
+ * @returns {Promise<Page | null>} A promise that resolves to the error page details or null if not found
157
+ */
158
+ getErrorPage(code: ErrorPage, pageOptions?: Partial<RouteOptions>, fetchOptions?: FetchOptions): Promise<Page | null>;
159
+ /**
160
+ * Get route paths for all pages in the site. Can be used for static site generation.
161
+ * @param {string[]} sites - sites to fetch routes for
162
+ * @param {string[]} [languages] languages to fetch routes in
163
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
164
+ */
165
+ getPagePaths(sites: string[], languages?: string[], fetchOptions?: FetchOptions): Promise<StaticPath[]>;
166
+ /**
167
+ * Retrieves the links to be loaded in app's <head> element for each page.
168
+ * @param {LayoutServiceData} layoutData - The layout data containing styles and themes.
169
+ * @param {object} [options] - Optional configuration for enabling styles and themes.
170
+ * @param {boolean} [options.enableStyles] - Whether to include content styles.
171
+ * @param {boolean} [options.enableThemes] - Whether to include theme styles.
172
+ * @returns {HTMLLink[]} An array of `<link>` elements.
173
+ */
174
+ getHeadLinks(layoutData: LayoutServiceData, options: {
175
+ enableStyles?: boolean;
176
+ enableThemes?: boolean;
177
+ }): HTMLLink[];
178
+ /**
179
+ * Retrieves sitemap XML content - either a specific sitemap or the index of all sitemaps.
180
+ * @param { SitemapRequestConfig} reqOptions - Configuration for sitemap retrieval
181
+ * @param {FetchOptions} [fetchOptions] - Additional fetchOptions Additional fetch options to override GraphQL requests
182
+ * @returns {Promise<string>} Promise resolving to the sitemap XML content as string
183
+ */
184
+ getSiteMap(reqOptions: SitemapXmlOptions, fetchOptions?: FetchOptions): Promise<string>;
185
+ /**
186
+ * Retrieves the robots.txt content for a given site name.
187
+ * @param {string} siteName - The name of the site for which to fetch robots.txt content.
188
+ * @param {FetchOptions} fetchOptions Additional fetch options to override GraphQL requests
189
+ * @returns {Promise<string>} A promise that resolves to the robots.txt content.
190
+ */
191
+ getRobots(siteName: string, fetchOptions?: FetchOptions): Promise<string | null>;
192
+ }
193
+ export interface BaseServiceOptions {
194
+ defaultSite: string;
195
+ clientFactory: GraphQLRequestClientFactory;
196
+ retries: {
197
+ count: number;
198
+ retryStrategy: RetryStrategy;
199
+ };
200
+ }
201
+ /**
202
+ * This is a generic content client that can be used by any framework.
203
+ * Use it to retrieve pages, preview data, dictionary and other data
204
+ * @public
205
+ */
206
+ export declare class SitecoreClient implements BaseSitecoreClient {
207
+ protected initOptions: SitecoreClientInit;
208
+ protected layoutService: LayoutService;
209
+ protected dictionaryService: DictionaryService;
210
+ protected editingService: EditingService;
211
+ protected clientFactory: GraphQLRequestClientFactory;
212
+ protected errorPagesService: ErrorPagesService;
213
+ protected componentService: ComponentLayoutService;
214
+ protected sitePathService: SitePathService;
215
+ protected graphQLClient: GraphQLClient;
216
+ /**
217
+ * Init SitecoreClient
218
+ * @param {SitecoreClientInit} initOptions initOptions for the client, containing site and Sitecore connection details
219
+ */
220
+ constructor(initOptions: SitecoreClientInit);
221
+ /**
222
+ * Normalize path regardless of type
223
+ * @param {string | string[]} path string or string array path
224
+ * @returns {string} string path
225
+ */
226
+ parsePath(path: string | string[]): string;
227
+ /**
228
+ * Execute a raw GraphQL request using the client's configured GraphQL Edge endpoint.
229
+ * This is a thin pass-through to the underlying {@link GraphQLClient.request},
230
+ * @param {string | DocumentNode} query GraphQL query
231
+ * @param {Record<string, unknown>} [variables] Optional variables bag
232
+ * @param {FetchOptions} [fetchOptions] Optional fetch overrides (e.g. fetch, headers)
233
+ */
234
+ getData<T = unknown>(query: string | DocumentNode, variables?: Record<string, unknown>, fetchOptions?: FetchOptions): Promise<T>;
235
+ /**
236
+ * Get page details for a route, with layout and other details
237
+ * @param {string} path route path
238
+ * @param {PageOptions} [pageOptions] site, language and personalization variant details for route
239
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
240
+ * @returns {Page | null} page details
241
+ */
242
+ getPage(path: string | string[], pageOptions?: PageOptions, fetchOptions?: FetchOptions): Promise<Page | null>;
243
+ /**
244
+ * Retrieves the head `<link>` elements for Sitecore styles and themes.
245
+ * @param {LayoutServiceData} layoutData - The layout data containing styles and themes.
246
+ * @param {object} [options] - Optional configuration for enabling styles and themes.
247
+ * @param {boolean} [options.enableStyles] - Whether to include content styles.
248
+ * @param {boolean} [options.enableThemes] - Whether to include theme styles.
249
+ * @returns {HTMLLink[]} An array of `<link>` elements for stylesheets.
250
+ */
251
+ getHeadLinks(layoutData: LayoutServiceData, options?: {
252
+ enableStyles?: boolean;
253
+ enableThemes?: boolean;
254
+ }): HTMLLink[];
255
+ /**
256
+ * Retrieves dictionary phrases for a given site and locale.
257
+ * @param {RouteOptions} routeOptions - Route options containing language and site name to load dictionary for
258
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
259
+ * @returns {DictionaryPhrases} A promise that resolves to the dictionary phrases.
260
+ */
261
+ getDictionary(routeOptions?: Partial<RouteOptions>, fetchOptions?: FetchOptions): Promise<DictionaryPhrases>;
262
+ /**
263
+ * Retrieves error pages for a given site and locale.
264
+ * @param {RouteOptions} routeOptions - Route options containing language and site name to load error pages
265
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
266
+ * @returns {ErrorPages | null} A promise that resolves to the error pages or null if not found.
267
+ */
268
+ getErrorPages(routeOptions?: RouteOptions, fetchOptions?: FetchOptions): Promise<ErrorPages | null>;
269
+ /**
270
+ * Retrieves preview page and layout details
271
+ * @param {EditingPreviewData | undefined} previewData - The editing preview data for metadata mode.
272
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
273
+ * @returns {Page} preview page details
274
+ */
275
+ getPreview(previewData: EditingPreviewData | undefined, fetchOptions?: FetchOptions): Promise<Page | null>;
276
+ /**
277
+ * Get design library page details for Design Library mode of your app
278
+ * @param {DesignLibraryRenderPreviewData} designLibData preview data set in 'library' mode of the app
279
+ * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
280
+ * @returns {Page} preview page for Design Library
281
+ */
282
+ getDesignLibraryData(designLibData: DesignLibraryRenderPreviewData, fetchOptions?: FetchOptions): Promise<Page>;
283
+ /**
284
+ * Get error page details for a given error code
285
+ * @param {ErrorPage} code - The error code to get the error page for
286
+ * @param {Partial<RouteOptions>} pageOptions - The page options to get the error page for
287
+ * @param {FetchOptions} [fetchOptions] - Additional fetch fetch options to override GraphQL requests
288
+ * @returns {Promise<Page | null>} A promise that resolves to the error page details or null if not found
289
+ */
290
+ getErrorPage(code: ErrorPage, pageOptions?: Partial<RouteOptions>, fetchOptions?: FetchOptions): Promise<Page | null>;
291
+ /**
292
+ * Retrieves the static paths for pages based on the given languages.
293
+ * @param {string[]} sites - An array of site names to fetch routes for.
294
+ * @param {string[]} [languages] - An optional array of language codes to generate paths for.
295
+ * @param {FetchOptions} [fetchOptions] - Additional fetch options.
296
+ * @returns {Promise<StaticPath[]>} A promise that resolves to an array of static paths.
297
+ */
298
+ getPagePaths(sites: string[], languages?: string[], fetchOptions?: FetchOptions): Promise<StaticPath[]>;
299
+ /**
300
+ * Retrieves sitemap XML content - either a specific sitemap or the index of all sitemaps.
301
+ * @param {SitemapXmlOptions} reqOptions - Options for sitemap retrieval
302
+ * @param {FetchOptions} [fetchOptions] - Additional fetch options.
303
+ * @returns {Promise<string>} Promise resolving to the sitemap XML content as string
304
+ * @throws {Error} Throws 'REDIRECT_404' if requested sitemap is not found
305
+ */
306
+ getSiteMap(reqOptions: SitemapXmlOptions, fetchOptions?: FetchOptions): Promise<string>;
307
+ /**
308
+ * Retrieves the robots.txt content for a given site name.
309
+ * @param {string} siteName - The name of the site to retrieve the robots.txt for.
310
+ * @param {FetchOptions} [fetchOptions] - Optional fetch options.
311
+ * @returns {Promise<string | null>} A promise that resolves to the robots.txt content,
312
+ * or null if no content is found.
313
+ */
314
+ getRobots(siteName: string, fetchOptions?: FetchOptions): Promise<string | null>;
315
+ /**
316
+ * Factory methods for creating dependencies
317
+ * Subclasses can override these to provide custom implementations.
318
+ */
319
+ protected getGraphqlSitemapXMLService(siteName: string): SitemapXmlService;
320
+ protected getRobotsService(siteName: string): RobotsService;
321
+ protected getBaseServiceOptions(): BaseServiceOptions;
322
+ /**
323
+ * Get page mode based on mode name
324
+ * @param {PageModeName} mode - The mode name to get the page mode for
325
+ * @param { DesignLibraryVariantGeneration} generation - The variant generation mode, if applicable
326
+ * @returns {PageMode} The page mode
327
+ */
328
+ private getPageMode;
329
+ private getClientFactory;
330
+ private getLayoutService;
331
+ private getDictionaryService;
332
+ private getEditingService;
333
+ private getErrorPagesService;
334
+ private getComponentService;
335
+ private getSitePathService;
336
+ }
337
+ export {};
338
+ //# sourceMappingURL=sitecore-client.d.ts.map