@terminalfour/terminalfour-js 1.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) hide show
  1. package/LICENSE.md +106 -0
  2. package/README.md +169 -0
  3. package/dist/cjs/element-resolver.d.ts +115 -0
  4. package/dist/cjs/element-resolver.d.ts.map +1 -0
  5. package/dist/cjs/element-resolver.js +391 -0
  6. package/dist/cjs/element-resolver.js.map +1 -0
  7. package/dist/cjs/errors.d.ts +21 -0
  8. package/dist/cjs/errors.d.ts.map +1 -0
  9. package/dist/cjs/errors.js +21 -0
  10. package/dist/cjs/errors.js.map +1 -0
  11. package/dist/cjs/handlebars.d.ts +123 -0
  12. package/dist/cjs/handlebars.d.ts.map +1 -0
  13. package/dist/cjs/handlebars.js +306 -0
  14. package/dist/cjs/handlebars.js.map +1 -0
  15. package/dist/cjs/http-client.d.ts +21 -0
  16. package/dist/cjs/http-client.d.ts.map +1 -0
  17. package/dist/cjs/http-client.js +126 -0
  18. package/dist/cjs/http-client.js.map +1 -0
  19. package/dist/cjs/index.d.ts +37 -0
  20. package/dist/cjs/index.d.ts.map +1 -0
  21. package/dist/cjs/index.js +55 -0
  22. package/dist/cjs/index.js.map +1 -0
  23. package/dist/cjs/media-category-ref.d.ts +78 -0
  24. package/dist/cjs/media-category-ref.d.ts.map +1 -0
  25. package/dist/cjs/media-category-ref.js +184 -0
  26. package/dist/cjs/media-category-ref.js.map +1 -0
  27. package/dist/cjs/media-library.d.ts +30 -0
  28. package/dist/cjs/media-library.d.ts.map +1 -0
  29. package/dist/cjs/media-library.js +77 -0
  30. package/dist/cjs/media-library.js.map +1 -0
  31. package/dist/cjs/models/content-item.d.ts +80 -0
  32. package/dist/cjs/models/content-item.d.ts.map +1 -0
  33. package/dist/cjs/models/content-item.js +682 -0
  34. package/dist/cjs/models/content-item.js.map +1 -0
  35. package/dist/cjs/models/media-category-item.d.ts +29 -0
  36. package/dist/cjs/models/media-category-item.d.ts.map +1 -0
  37. package/dist/cjs/models/media-category-item.js +33 -0
  38. package/dist/cjs/models/media-category-item.js.map +1 -0
  39. package/dist/cjs/models/media-item.d.ts +74 -0
  40. package/dist/cjs/models/media-item.d.ts.map +1 -0
  41. package/dist/cjs/models/media-item.js +188 -0
  42. package/dist/cjs/models/media-item.js.map +1 -0
  43. package/dist/cjs/models/section-item.d.ts +58 -0
  44. package/dist/cjs/models/section-item.d.ts.map +1 -0
  45. package/dist/cjs/models/section-item.js +166 -0
  46. package/dist/cjs/models/section-item.js.map +1 -0
  47. package/dist/cjs/package.json +1 -0
  48. package/dist/cjs/resources/channel-resource.d.ts +112 -0
  49. package/dist/cjs/resources/channel-resource.d.ts.map +1 -0
  50. package/dist/cjs/resources/channel-resource.js +107 -0
  51. package/dist/cjs/resources/channel-resource.js.map +1 -0
  52. package/dist/cjs/resources/content-resource.d.ts +50 -0
  53. package/dist/cjs/resources/content-resource.d.ts.map +1 -0
  54. package/dist/cjs/resources/content-resource.js +286 -0
  55. package/dist/cjs/resources/content-resource.js.map +1 -0
  56. package/dist/cjs/resources/content-type-resource.d.ts +283 -0
  57. package/dist/cjs/resources/content-type-resource.d.ts.map +1 -0
  58. package/dist/cjs/resources/content-type-resource.js +970 -0
  59. package/dist/cjs/resources/content-type-resource.js.map +1 -0
  60. package/dist/cjs/resources/group-resource.d.ts +96 -0
  61. package/dist/cjs/resources/group-resource.d.ts.map +1 -0
  62. package/dist/cjs/resources/group-resource.js +213 -0
  63. package/dist/cjs/resources/group-resource.js.map +1 -0
  64. package/dist/cjs/resources/list-resource.d.ts +111 -0
  65. package/dist/cjs/resources/list-resource.d.ts.map +1 -0
  66. package/dist/cjs/resources/list-resource.js +179 -0
  67. package/dist/cjs/resources/list-resource.js.map +1 -0
  68. package/dist/cjs/resources/media-resource.d.ts +69 -0
  69. package/dist/cjs/resources/media-resource.d.ts.map +1 -0
  70. package/dist/cjs/resources/media-resource.js +210 -0
  71. package/dist/cjs/resources/media-resource.js.map +1 -0
  72. package/dist/cjs/resources/media-type-resource.d.ts +70 -0
  73. package/dist/cjs/resources/media-type-resource.d.ts.map +1 -0
  74. package/dist/cjs/resources/media-type-resource.js +195 -0
  75. package/dist/cjs/resources/media-type-resource.js.map +1 -0
  76. package/dist/cjs/resources/navigation-resource.d.ts +664 -0
  77. package/dist/cjs/resources/navigation-resource.d.ts.map +1 -0
  78. package/dist/cjs/resources/navigation-resource.js +2349 -0
  79. package/dist/cjs/resources/navigation-resource.js.map +1 -0
  80. package/dist/cjs/resources/page-layout-resource.d.ts +83 -0
  81. package/dist/cjs/resources/page-layout-resource.d.ts.map +1 -0
  82. package/dist/cjs/resources/page-layout-resource.js +214 -0
  83. package/dist/cjs/resources/page-layout-resource.js.map +1 -0
  84. package/dist/cjs/resources/user-resource.d.ts +126 -0
  85. package/dist/cjs/resources/user-resource.d.ts.map +1 -0
  86. package/dist/cjs/resources/user-resource.js +317 -0
  87. package/dist/cjs/resources/user-resource.js.map +1 -0
  88. package/dist/cjs/section-ref.d.ts +185 -0
  89. package/dist/cjs/section-ref.d.ts.map +1 -0
  90. package/dist/cjs/section-ref.js +813 -0
  91. package/dist/cjs/section-ref.js.map +1 -0
  92. package/dist/cjs/site-structure.d.ts +18 -0
  93. package/dist/cjs/site-structure.d.ts.map +1 -0
  94. package/dist/cjs/site-structure.js +57 -0
  95. package/dist/cjs/site-structure.js.map +1 -0
  96. package/dist/cjs/t4-client.d.ts +121 -0
  97. package/dist/cjs/t4-client.d.ts.map +1 -0
  98. package/dist/cjs/t4-client.js +190 -0
  99. package/dist/cjs/t4-client.js.map +1 -0
  100. package/dist/cjs/type-registry.d.ts +31 -0
  101. package/dist/cjs/type-registry.d.ts.map +1 -0
  102. package/dist/cjs/type-registry.js +76 -0
  103. package/dist/cjs/type-registry.js.map +1 -0
  104. package/dist/cjs/types.d.ts +211 -0
  105. package/dist/cjs/types.d.ts.map +1 -0
  106. package/dist/cjs/types.js +3 -0
  107. package/dist/cjs/types.js.map +1 -0
  108. package/dist/cjs/utils.d.ts +147 -0
  109. package/dist/cjs/utils.d.ts.map +1 -0
  110. package/dist/cjs/utils.js +408 -0
  111. package/dist/cjs/utils.js.map +1 -0
  112. package/dist/esm/element-resolver.d.ts +115 -0
  113. package/dist/esm/element-resolver.d.ts.map +1 -0
  114. package/dist/esm/element-resolver.js +387 -0
  115. package/dist/esm/element-resolver.js.map +1 -0
  116. package/dist/esm/errors.d.ts +21 -0
  117. package/dist/esm/errors.d.ts.map +1 -0
  118. package/dist/esm/errors.js +17 -0
  119. package/dist/esm/errors.js.map +1 -0
  120. package/dist/esm/handlebars.d.ts +123 -0
  121. package/dist/esm/handlebars.d.ts.map +1 -0
  122. package/dist/esm/handlebars.js +300 -0
  123. package/dist/esm/handlebars.js.map +1 -0
  124. package/dist/esm/http-client.d.ts +21 -0
  125. package/dist/esm/http-client.d.ts.map +1 -0
  126. package/dist/esm/http-client.js +122 -0
  127. package/dist/esm/http-client.js.map +1 -0
  128. package/dist/esm/index.d.ts +37 -0
  129. package/dist/esm/index.d.ts.map +1 -0
  130. package/dist/esm/index.js +26 -0
  131. package/dist/esm/index.js.map +1 -0
  132. package/dist/esm/media-category-ref.d.ts +78 -0
  133. package/dist/esm/media-category-ref.d.ts.map +1 -0
  134. package/dist/esm/media-category-ref.js +180 -0
  135. package/dist/esm/media-category-ref.js.map +1 -0
  136. package/dist/esm/media-library.d.ts +30 -0
  137. package/dist/esm/media-library.d.ts.map +1 -0
  138. package/dist/esm/media-library.js +73 -0
  139. package/dist/esm/media-library.js.map +1 -0
  140. package/dist/esm/models/content-item.d.ts +80 -0
  141. package/dist/esm/models/content-item.d.ts.map +1 -0
  142. package/dist/esm/models/content-item.js +676 -0
  143. package/dist/esm/models/content-item.js.map +1 -0
  144. package/dist/esm/models/media-category-item.d.ts +29 -0
  145. package/dist/esm/models/media-category-item.d.ts.map +1 -0
  146. package/dist/esm/models/media-category-item.js +29 -0
  147. package/dist/esm/models/media-category-item.js.map +1 -0
  148. package/dist/esm/models/media-item.d.ts +74 -0
  149. package/dist/esm/models/media-item.d.ts.map +1 -0
  150. package/dist/esm/models/media-item.js +184 -0
  151. package/dist/esm/models/media-item.js.map +1 -0
  152. package/dist/esm/models/section-item.d.ts +58 -0
  153. package/dist/esm/models/section-item.d.ts.map +1 -0
  154. package/dist/esm/models/section-item.js +162 -0
  155. package/dist/esm/models/section-item.js.map +1 -0
  156. package/dist/esm/resources/channel-resource.d.ts +112 -0
  157. package/dist/esm/resources/channel-resource.d.ts.map +1 -0
  158. package/dist/esm/resources/channel-resource.js +102 -0
  159. package/dist/esm/resources/channel-resource.js.map +1 -0
  160. package/dist/esm/resources/content-resource.d.ts +50 -0
  161. package/dist/esm/resources/content-resource.d.ts.map +1 -0
  162. package/dist/esm/resources/content-resource.js +282 -0
  163. package/dist/esm/resources/content-resource.js.map +1 -0
  164. package/dist/esm/resources/content-type-resource.d.ts +283 -0
  165. package/dist/esm/resources/content-type-resource.d.ts.map +1 -0
  166. package/dist/esm/resources/content-type-resource.js +964 -0
  167. package/dist/esm/resources/content-type-resource.js.map +1 -0
  168. package/dist/esm/resources/group-resource.d.ts +96 -0
  169. package/dist/esm/resources/group-resource.d.ts.map +1 -0
  170. package/dist/esm/resources/group-resource.js +208 -0
  171. package/dist/esm/resources/group-resource.js.map +1 -0
  172. package/dist/esm/resources/list-resource.d.ts +111 -0
  173. package/dist/esm/resources/list-resource.d.ts.map +1 -0
  174. package/dist/esm/resources/list-resource.js +174 -0
  175. package/dist/esm/resources/list-resource.js.map +1 -0
  176. package/dist/esm/resources/media-resource.d.ts +69 -0
  177. package/dist/esm/resources/media-resource.d.ts.map +1 -0
  178. package/dist/esm/resources/media-resource.js +206 -0
  179. package/dist/esm/resources/media-resource.js.map +1 -0
  180. package/dist/esm/resources/media-type-resource.d.ts +70 -0
  181. package/dist/esm/resources/media-type-resource.d.ts.map +1 -0
  182. package/dist/esm/resources/media-type-resource.js +190 -0
  183. package/dist/esm/resources/media-type-resource.js.map +1 -0
  184. package/dist/esm/resources/navigation-resource.d.ts +664 -0
  185. package/dist/esm/resources/navigation-resource.d.ts.map +1 -0
  186. package/dist/esm/resources/navigation-resource.js +2344 -0
  187. package/dist/esm/resources/navigation-resource.js.map +1 -0
  188. package/dist/esm/resources/page-layout-resource.d.ts +83 -0
  189. package/dist/esm/resources/page-layout-resource.d.ts.map +1 -0
  190. package/dist/esm/resources/page-layout-resource.js +209 -0
  191. package/dist/esm/resources/page-layout-resource.js.map +1 -0
  192. package/dist/esm/resources/user-resource.d.ts +126 -0
  193. package/dist/esm/resources/user-resource.d.ts.map +1 -0
  194. package/dist/esm/resources/user-resource.js +312 -0
  195. package/dist/esm/resources/user-resource.js.map +1 -0
  196. package/dist/esm/section-ref.d.ts +185 -0
  197. package/dist/esm/section-ref.d.ts.map +1 -0
  198. package/dist/esm/section-ref.js +808 -0
  199. package/dist/esm/section-ref.js.map +1 -0
  200. package/dist/esm/site-structure.d.ts +18 -0
  201. package/dist/esm/site-structure.d.ts.map +1 -0
  202. package/dist/esm/site-structure.js +53 -0
  203. package/dist/esm/site-structure.js.map +1 -0
  204. package/dist/esm/t4-client.d.ts +121 -0
  205. package/dist/esm/t4-client.d.ts.map +1 -0
  206. package/dist/esm/t4-client.js +186 -0
  207. package/dist/esm/t4-client.js.map +1 -0
  208. package/dist/esm/type-registry.d.ts +31 -0
  209. package/dist/esm/type-registry.d.ts.map +1 -0
  210. package/dist/esm/type-registry.js +72 -0
  211. package/dist/esm/type-registry.js.map +1 -0
  212. package/dist/esm/types.d.ts +211 -0
  213. package/dist/esm/types.d.ts.map +1 -0
  214. package/dist/esm/types.js +2 -0
  215. package/dist/esm/types.js.map +1 -0
  216. package/dist/esm/utils.d.ts +147 -0
  217. package/dist/esm/utils.d.ts.map +1 -0
  218. package/dist/esm/utils.js +355 -0
  219. package/dist/esm/utils.js.map +1 -0
  220. package/docs/channels.md +62 -0
  221. package/docs/content-types.md +313 -0
  222. package/docs/content.md +199 -0
  223. package/docs/error-handling.md +86 -0
  224. package/docs/getting-started.md +146 -0
  225. package/docs/groups-and-users.md +167 -0
  226. package/docs/handlebars.md +145 -0
  227. package/docs/lists.md +98 -0
  228. package/docs/media-types.md +111 -0
  229. package/docs/media.md +169 -0
  230. package/docs/navigation/a-to-z.md +62 -0
  231. package/docs/navigation/breadcrumbs.md +67 -0
  232. package/docs/navigation/css-selector.md +53 -0
  233. package/docs/navigation/generate-file.md +48 -0
  234. package/docs/navigation/keyword-search.md +134 -0
  235. package/docs/navigation/language-switcher.md +37 -0
  236. package/docs/navigation/link-menu.md +105 -0
  237. package/docs/navigation/pagination.md +80 -0
  238. package/docs/navigation/previous-next-fulltext.md +43 -0
  239. package/docs/navigation/publish-to-one-file.md +93 -0
  240. package/docs/navigation/related-content.md +79 -0
  241. package/docs/navigation/related-section-branch.md +31 -0
  242. package/docs/navigation/return-to-index.md +35 -0
  243. package/docs/navigation/section-details.md +51 -0
  244. package/docs/navigation/section-iterator.md +33 -0
  245. package/docs/navigation/section-meta-info.md +39 -0
  246. package/docs/navigation/site-map.md +58 -0
  247. package/docs/navigation/top-content.md +80 -0
  248. package/docs/navigation/top-stories.md +47 -0
  249. package/docs/navigation.md +134 -0
  250. package/docs/page-layouts.md +71 -0
  251. package/docs/sections.md +224 -0
  252. package/docs/typescript.md +124 -0
  253. package/package.json +64 -0
@@ -0,0 +1,664 @@
1
+ import { HttpClient } from '../http-client.js';
2
+ /** SDK-friendly navigation type codes (consistent kebab-case) */
3
+ export type NavigationType = 'a-to-z' | 'breadcrumbs' | 'css-selector' | 'generate-file' | 'keyword-search' | 'language-switcher' | 'link-menu' | 'pagination' | 'previous-next-fulltext' | 'publish-to-one-file' | 'related-content' | 'related-section-branch' | 'return-to-index' | 'section-details' | 'section-iterator' | 'section-meta-info' | 'site-map' | 'top-content' | 'top-stories';
4
+ /** Human-readable type name mapping */
5
+ export declare const NAVIGATION_TYPE_NAMES: Record<NavigationType, string>;
6
+ /** Summary returned from list() */
7
+ export interface NavigationSummary {
8
+ id: number;
9
+ name: string;
10
+ description: string;
11
+ type: NavigationType;
12
+ typeName: string;
13
+ enabled: boolean;
14
+ }
15
+ /** Raw API response shape from GET /navigation/{id} */
16
+ interface RawNavigationDetail {
17
+ id: number;
18
+ name: string;
19
+ description?: string;
20
+ navigationType: string;
21
+ navigationTypeName?: string;
22
+ isEnabled: boolean;
23
+ isPreviewModeEnabled: boolean;
24
+ isCachingEnabled: boolean;
25
+ date?: string;
26
+ properties: Record<string, {
27
+ value?: string;
28
+ attribute: string;
29
+ navigationPropertyID: number;
30
+ }>;
31
+ [key: string]: unknown;
32
+ }
33
+ /**
34
+ * A mutable navigation object. Modify properties and call save() to persist.
35
+ */
36
+ export declare class NavigationObject {
37
+ readonly id: number;
38
+ name: string;
39
+ description: string;
40
+ readonly type: NavigationType;
41
+ readonly typeName: string;
42
+ enabled: boolean;
43
+ cachingEnabled: boolean;
44
+ previewEnabled: boolean;
45
+ properties: Record<string, unknown>;
46
+ private readonly _httpClient;
47
+ private _rawData;
48
+ private _originalPropertyKeys;
49
+ constructor(raw: RawNavigationDetail, httpClient: HttpClient);
50
+ /** Persists current property values to the server via PUT. */
51
+ save(): Promise<void>;
52
+ }
53
+ /** Properties for A to Z Navigation create */
54
+ export interface A2ZProperties {
55
+ /** Level to start generating from. 0 = root. Defaults to 0. */
56
+ startLevel?: number;
57
+ /** Level to stop generating at. 0 = all sections. Defaults to 0. */
58
+ endLevel?: number;
59
+ /** Whether to use section meta data element for display. Defaults to false. */
60
+ useSectionMetaData?: boolean;
61
+ /** Element name on the Section Meta Data content type to display. Only valid when useSectionMetaData is true. Defaults to ''. */
62
+ sectionMetaContentTypeElement?: string;
63
+ /** Microsite ID to scope the navigation to, or null for no microsite. Defaults to null. */
64
+ microSite?: number | null;
65
+ /** HTML before the menu. Defaults to ''. */
66
+ beforeMenu?: string;
67
+ /** HTML after the menu. Defaults to ''. */
68
+ afterMenu?: string;
69
+ /** HTML before each item. Defaults to ''. */
70
+ beforeItem?: string;
71
+ /** HTML after each item. Defaults to ''. */
72
+ afterItem?: string;
73
+ }
74
+ /** Properties for Breadcrumbs create */
75
+ export interface BreadcrumbsProperties {
76
+ /** Level to start from. 0 = root. Defaults to 0. Must be >= 0. */
77
+ startLevel?: number;
78
+ /** Level to end at. 0 = all. Defaults to 0. Must be >= 0. */
79
+ endLevel?: number;
80
+ /** Whether breadcrumb items are links. Defaults to false. */
81
+ useLinks?: boolean;
82
+ /** Whether the current (last) item is a link. Defaults to false. */
83
+ linkCurrent?: boolean;
84
+ /** Whether to hide the home section from the breadcrumb trail. Defaults to false. */
85
+ hideHome?: boolean;
86
+ /** Whether to remove spaces from links. Only valid when useLinks is true. Defaults to false. */
87
+ noSpace?: boolean;
88
+ /** Maximum number of characters before truncation. 0 = no limit. Defaults to 0. Must be >= 0. */
89
+ maxLength?: number;
90
+ /** HTML separator between breadcrumb items. Defaults to ''. */
91
+ separator?: string;
92
+ /** Content element name to append to the breadcrumb trail. If set, enables content element appending. Defaults to ''. */
93
+ elementToAppend?: string;
94
+ /** HTML before the breadcrumb. Defaults to ''. */
95
+ beforeHtml?: string;
96
+ /** HTML after the breadcrumb. Defaults to ''. */
97
+ afterHtml?: string;
98
+ }
99
+ /** A branch override for CSS Selector */
100
+ export interface CssSelectorBranch {
101
+ /** Media ID of the stylesheet for this branch. Required. */
102
+ stylesheet: number;
103
+ /** Section name to match for this branch. Cannot be combined with rootSection. */
104
+ name?: string;
105
+ /** Section ID to use as root for this branch. Cannot be combined with name. */
106
+ rootSection?: number;
107
+ }
108
+ /** Properties for CSS Selector create */
109
+ export interface CssSelectorProperties {
110
+ /** Media ID of the default stylesheet. Required. */
111
+ defaultStylesheet: number;
112
+ /** Language code. Optional, defaults to ''. */
113
+ language?: string;
114
+ /** Branch-specific stylesheet overrides. Optional. */
115
+ branches?: CssSelectorBranch[];
116
+ }
117
+ /** Properties for Generate File create */
118
+ export interface GenerateFileProperties {
119
+ /** Output file name. Optional, defaults to ''. */
120
+ fileName?: string;
121
+ /** Whether to append the content ID to the file name. Defaults to false. */
122
+ appendContentId?: boolean;
123
+ /** File extension for the generated file. Optional, defaults to ''. */
124
+ fileExtension?: string;
125
+ /** Base directory for output. Optional, defaults to ''. */
126
+ baseDirectory?: string;
127
+ /** Content layout name to use. Optional, defaults to ''. */
128
+ layout?: string;
129
+ /** Whether to append the directory path. Defaults to false. */
130
+ appendDirectory?: boolean;
131
+ /** Media ID to associate with the generated file. Optional. Validated if provided. */
132
+ mediaFile?: number | null;
133
+ }
134
+ /** Properties for Language Switcher create */
135
+ export interface LanguageSwitcherProperties {
136
+ /** Language code. Optional, defaults to ''. */
137
+ langCode?: string;
138
+ /** Whether to always output the switcher even when only one language exists. Defaults to false. */
139
+ alwaysOutput?: boolean;
140
+ /** URL for image-based language links. Optional, defaults to ''. */
141
+ imageUrl?: string;
142
+ /** File extension for language images (e.g. '.gif'). Optional, defaults to ''. */
143
+ imageExtension?: string;
144
+ /** HTML attributes for language images (e.g. 'width="30" height="30"'). Optional, defaults to ''. */
145
+ imageProperties?: string;
146
+ /** HTML before the switcher. Optional, defaults to ''. */
147
+ beforeHtml?: string;
148
+ /** HTML after the switcher. Optional, defaults to ''. */
149
+ afterHtml?: string;
150
+ }
151
+ /** Fetch method options for Pagination */
152
+ export type PaginationFetchMethod = 'current' | 'current-branch' | 'branch' | 'branch-at-level' | 'section';
153
+ /** Properties for Pagination create */
154
+ export interface PaginationProperties {
155
+ /** Content Type ID to paginate. Required, validated. */
156
+ contentTypeId: number;
157
+ /** Fetch method. Defaults to 'current'. */
158
+ fetchMethod?: PaginationFetchMethod;
159
+ /** Section ID (required for 'branch', 'branch-at-level', 'section'). Validated. */
160
+ section?: number;
161
+ /** Level for 'branch-at-level'. Defaults to 0. */
162
+ level?: number;
163
+ /** Recursion depth for 'current-branch', 'branch', 'branch-at-level'. Defaults to 0. */
164
+ numToRecurse?: number;
165
+ /** Number of content items per page. Defaults to 0 (no pagination). */
166
+ contentItemsPerPage?: number;
167
+ /** Maximum total content items. Defaults to 0 (unlimited). */
168
+ maxContentItems?: number;
169
+ /** Maximum pagination links to show. Defaults to 0 (all). */
170
+ maxLinksPerPage?: number;
171
+ /** Alternative layout name. If set, validates against content type layouts. Defaults to ''. */
172
+ altLayoutName?: string;
173
+ /** Whether to search hidden sections. Defaults to false. */
174
+ searchHiddenSections?: boolean;
175
+ /** HTML before the content. Defaults to ''. */
176
+ beforeHtml?: string;
177
+ /** HTML after the content. Defaults to ''. */
178
+ afterHtml?: string;
179
+ /** HTML before pagination links. Defaults to ''. */
180
+ beforePaginationHtml?: string;
181
+ /** HTML after pagination links. Defaults to ''. */
182
+ afterPaginationHtml?: string;
183
+ /** HTML between pagination links. Defaults to ''. */
184
+ betweenPaginationHtml?: string;
185
+ }
186
+ /** Direction type for Previous/Next Fulltext Content */
187
+ export type PreviousNextType = 'previous' | 'next' | 'both';
188
+ /** Properties for Previous/Next Fulltext Content create */
189
+ export interface PreviousNextProperties {
190
+ /** Which direction links to show. Defaults to 'previous'. */
191
+ type?: PreviousNextType;
192
+ /** Alternative layout name. If set, enables custom formatter. Defaults to ''. */
193
+ altLayoutName?: string;
194
+ /** Whether to skip content that doesn't have fulltext. Defaults to false. */
195
+ skipNonFulltextContent?: boolean;
196
+ /** Whether to only link to content that also has a prev/next navigation. Defaults to false. */
197
+ onlyLinkToContentWithNav?: boolean;
198
+ /** Whether to restrict to content of the same content type. Defaults to false. */
199
+ sameContentTypeRestriction?: boolean;
200
+ /** Whether to display links on boundaries (first/last item). Defaults to false. */
201
+ displayOnBoundary?: boolean;
202
+ /** Whether to display content name as the link title. Defaults to false. */
203
+ displayContentNameAsTitle?: boolean;
204
+ /** HTML for the previous link. Defaults to ''. */
205
+ previousHtml?: string;
206
+ /** HTML between previous and next links. Defaults to ''. */
207
+ betweenHtml?: string;
208
+ /** HTML for the next link. Defaults to ''. */
209
+ nextHtml?: string;
210
+ }
211
+ /** Properties for Section Iterator create */
212
+ export interface SectionIteratorProperties {
213
+ /** HTML before the iterator output. Defaults to ''. */
214
+ beforeHtml?: string;
215
+ /** HTML between each iterated section. Defaults to ''. */
216
+ betweenHtml?: string;
217
+ /** HTML after the iterator output. Defaults to ''. */
218
+ afterHtml?: string;
219
+ }
220
+ /** Properties for Related Section Branch create */
221
+ export interface RelatedSectionBranchProperties {
222
+ /** Name of the child section to link to. Defaults to ''. */
223
+ childSectionName?: string;
224
+ /** Link text to display. Defaults to ''. */
225
+ linkText?: string;
226
+ }
227
+ /** Properties for Return to Index create */
228
+ export interface ReturnToIndexProperties {
229
+ /** Link text. Defaults to ''. */
230
+ linkText?: string;
231
+ /** Whether to append the section name to the link text. Defaults to false. */
232
+ appendSectionName?: boolean;
233
+ /** Whether to scroll to the content on click. Defaults to false. */
234
+ scrollToContent?: boolean;
235
+ /** Link target attribute (e.g. '_blank'). Defaults to ''. */
236
+ linkTarget?: string;
237
+ }
238
+ /** Properties for Section Meta Info create */
239
+ export interface SectionMetaInfoProperties {
240
+ /** Meta tag name (e.g. 'description', 'og:title'). Required. Validated against GET /meta/level. */
241
+ metaType: string;
242
+ /** Date format string (e.g. 'dd.MM.yyyy'). Optional, defaults to ''. */
243
+ dateFormat?: string;
244
+ /** HTML before the meta output. Optional, defaults to ''. */
245
+ beforeHtml?: string;
246
+ /** HTML after the meta output. Optional, defaults to ''. */
247
+ afterHtml?: string;
248
+ }
249
+ /** Properties for Top Stories create */
250
+ export interface TopStoriesProperties {
251
+ /** Section ID to pull top stories from. Required, validated. */
252
+ section: number;
253
+ /** Number of items to show. 0 = all. Defaults to 0. */
254
+ numToShow?: number;
255
+ /** Whether to link items to their fulltext page. Defaults to false. */
256
+ linkToFulltext?: boolean;
257
+ /** Title text. Defaults to ''. */
258
+ title?: string;
259
+ /** HTML before the menu. Defaults to ''. */
260
+ beforeMenuHtml?: string;
261
+ /** HTML after the menu. Defaults to ''. */
262
+ afterMenuHtml?: string;
263
+ /** HTML before each item. Defaults to ''. */
264
+ beforeHtml?: string;
265
+ /** HTML after each item. Defaults to ''. */
266
+ afterHtml?: string;
267
+ }
268
+ /** Properties for Site Map create */
269
+ export interface SiteMapProperties {
270
+ /** Section ID to start from. 0 = channel root. Optional, validated if non-zero. Defaults to 0. */
271
+ startSection?: number;
272
+ /** Number of levels to display. 0 = all. Defaults to 0. */
273
+ levels?: number;
274
+ /** Whether to show links to child sections. Defaults to false. */
275
+ childSectionLinks?: boolean;
276
+ /** Whether to enable content counting. Defaults to false. */
277
+ enableContentCount?: boolean;
278
+ /** Content Type IDs to count. Empty array or omitted = all types. Only valid when enableContentCount is true. Validated. */
279
+ contentTypeIds?: number[];
280
+ /** Maximum levels to recurse when counting. Only valid when enableContentCount is true. Defaults to ''. */
281
+ maxLevelsToCount?: number | string;
282
+ /** Whether to count content recursively through child sections. Only valid when enableContentCount is true. Defaults to false. */
283
+ countRecursively?: boolean;
284
+ /** HTML before the content count. Only valid when enableContentCount is true. Defaults to ''. */
285
+ htmlBeforeContentCount?: string;
286
+ /** HTML after the content count. Only valid when enableContentCount is true. Defaults to ''. */
287
+ htmlAfterContentCount?: string;
288
+ }
289
+ /** Detail method for Section Details */
290
+ export type SectionDetailMethod = 'current' | 'level' | 'section';
291
+ /** Display type for Section Details */
292
+ export type SectionDetailDisplayType = 'id' | 'name' | 'path' | 'link';
293
+ /** Properties for Section Details create */
294
+ export interface SectionDetailsProperties {
295
+ /** How to determine which section to display details for. Defaults to 'current'. */
296
+ detailMethod?: SectionDetailMethod;
297
+ /** Level to use when detailMethod is 'level'. Defaults to 0. */
298
+ level?: number;
299
+ /** Section ID when detailMethod is 'section'. Required and validated when method is 'section'. */
300
+ section?: number;
301
+ /** What to display about the section. Defaults to 'id'. */
302
+ displayType?: SectionDetailDisplayType;
303
+ }
304
+ /** Fetch method for Related Content */
305
+ export type RelatedContentFetchMethod = 'current' | 'section' | 'child';
306
+ /** Properties for Related Content create */
307
+ export interface RelatedContentProperties {
308
+ /** Fetch method. Defaults to 'current'. */
309
+ fetchMethod?: RelatedContentFetchMethod;
310
+ /** Section ID (required for 'section' method). Validated. */
311
+ section?: number;
312
+ /** Child section name to search in (for 'child' method). Optional. */
313
+ childSectionName?: string;
314
+ /** Content Type IDs to filter by (required for 'child' method). Validated. */
315
+ contentTypeIds?: number[];
316
+ /** Number of items to display. 0 = all. Defaults to 0. */
317
+ display?: number;
318
+ /** Whether to recurse into child sections (for 'child' method). Defaults to false. */
319
+ recurseChildSection?: boolean;
320
+ /** Alternative layout name. If set, enables alt formatter. Defaults to ''. */
321
+ altLayoutName?: string;
322
+ /** Title text. Defaults to ''. */
323
+ title?: string;
324
+ /** HTML before the content. Defaults to ''. */
325
+ beforeHtml?: string;
326
+ /** HTML after the content. Defaults to ''. */
327
+ afterHtml?: string;
328
+ }
329
+ /** Menu type for Link Menu */
330
+ export type LinkMenuType = 'branch-at-level' | 'children' | 'siblings' | 'siblings-and-children';
331
+ /** Menu display type for Link Menu */
332
+ export type LinkMenuDisplayType = 'normal' | 'dropdown';
333
+ /** Link display type for Link Menu */
334
+ export type LinkDisplayType = 'ul' | 'table' | 'div';
335
+ /** Properties for Link Menu create */
336
+ export interface LinkMenuProperties {
337
+ /** Menu type. Required. */
338
+ menuType: LinkMenuType;
339
+ /** Menu display type. Defaults to 'normal'. */
340
+ menuDisplayType?: LinkMenuDisplayType;
341
+ /** Level (only for 'branch-at-level'). Defaults to 0. */
342
+ level?: number;
343
+ /** Recursion depth (only for 'branch-at-level'). Defaults to 1. */
344
+ numToRecurse?: number;
345
+ /** Link display type (only when branch-at-level + numToRecurse>1, or siblings-and-children). */
346
+ subNavigationType?: LinkDisplayType;
347
+ /** Whether to show non-current children. Defaults to false. */
348
+ showNonCurrentChildren?: boolean;
349
+ /** Whether to add a CSS class to the current branch. Defaults to false. */
350
+ useCurrentBranchClass?: boolean;
351
+ /** Whether to make the current section a link. Defaults to false. */
352
+ currentSectionLink?: boolean;
353
+ /** Whether to prepend section name to the title. Defaults to false. */
354
+ addSectionName?: boolean;
355
+ /** Whether to display a specific branch (only for 'children'). Defaults to false. */
356
+ displaySpecificBranch?: boolean;
357
+ /** Section ID of the specific branch (only when displaySpecificBranch is true). Validated. */
358
+ specificBranchId?: number;
359
+ /** Whether to show siblings if no children (only for 'children'). Defaults to false. */
360
+ showSiblingsIfNoChildren?: boolean;
361
+ /** Whether to show ancestors if no children (only for 'children'). Defaults to false. */
362
+ showAncestorsIfNoChildren?: boolean;
363
+ /** Title text. Defaults to ''. */
364
+ title?: string;
365
+ /** HTML before the menu. Defaults to ''. */
366
+ beforeMenuHtml?: string;
367
+ /** HTML after the menu. Defaults to ''. */
368
+ afterMenuHtml?: string;
369
+ /** HTML before each link. Defaults to ''. */
370
+ beforeLinkHtml?: string;
371
+ /** HTML after each link. Defaults to ''. */
372
+ afterLinkHtml?: string;
373
+ /** HTML between links. Defaults to ''. */
374
+ betweenLink?: string;
375
+ }
376
+ /** Start section mode for Publish to One File */
377
+ export type PublishOneFileStartSection = 'current' | 'specific' | 'element';
378
+ /** Properties for Publish to One File create */
379
+ export interface PublishToOneFileProperties {
380
+ /** Content Type ID to filter by. null = all content types. Validated if provided. */
381
+ contentTypeId?: number | null;
382
+ /** Start section mode. Defaults to 'current'. */
383
+ startSection?: PublishOneFileStartSection;
384
+ /** Section ID (only for 'specific' mode). Required and validated. */
385
+ section?: number;
386
+ /** Element name to derive section from (only for 'element' mode). Free text. */
387
+ startSectionElement?: string;
388
+ /** Whether to include hidden sections. Defaults to false. */
389
+ showHiddenSections?: boolean;
390
+ /** Number of levels to recurse. Defaults to 1. */
391
+ levelsToRecurse?: number;
392
+ /** HTML before content. Defaults to ''. */
393
+ beforeHtml?: string;
394
+ /** HTML after content. Defaults to ''. */
395
+ afterHtml?: string;
396
+ /** Whether to display section names in output. Defaults to false. */
397
+ showSectionName?: boolean;
398
+ /** Whether to show section name for hidden sections (only when showSectionName is true). Defaults to false. */
399
+ showNameForHidden?: boolean;
400
+ /** HTML before section name (only when showSectionName is true). Defaults to ''. */
401
+ beforeSectionName?: string;
402
+ /** HTML after section name (only when showSectionName is true). Defaults to ''. */
403
+ afterSectionName?: string;
404
+ /** Page Layout ID to wrap output in. Optional, validated if provided. */
405
+ surroundingPageLayout?: number;
406
+ /** Alternative content layout name. If set, enables alt formatter. Defaults to ''. */
407
+ altLayoutName?: string;
408
+ /** Whether to enable caching. Defaults to true. */
409
+ enableCaching?: boolean;
410
+ /** Whether to paginate output across pages. Defaults to false. */
411
+ pagination?: boolean;
412
+ /** Content items per page (only when pagination is true). Defaults to 0. */
413
+ contentPerPage?: number;
414
+ /** HTML before pagination (only when pagination is true). Defaults to ''. */
415
+ beforePaginationHtml?: string;
416
+ /** HTML between pagination links (only when pagination is true). Defaults to ''. */
417
+ betweenPaginationHtml?: string;
418
+ /** HTML after pagination (only when pagination is true). Defaults to ''. */
419
+ afterPaginationHtml?: string;
420
+ }
421
+ /** Fetch method for Top Content */
422
+ export type TopContentFetchMethod = 'current' | 'current-branch' | 'branch' | 'section';
423
+ /** Properties for Top Content create */
424
+ export interface TopContentProperties {
425
+ /** Fetch method. Defaults to 'current'. */
426
+ fetchMethod?: TopContentFetchMethod;
427
+ /** Section ID (required for 'branch' and 'section'). Validated. */
428
+ section?: number;
429
+ /** Content Type IDs to filter by. Empty = all. Validated. */
430
+ contentTypeIds?: number[];
431
+ /** Channel ID to restrict to. 0 = no restriction. Validated if non-zero. */
432
+ channelId?: number;
433
+ /** Whether to show upcoming/future content instead of current. Defaults to false. */
434
+ upcomingContent?: boolean;
435
+ /** Date element name for ordering/filtering. Defaults to ''. */
436
+ dateElement?: string;
437
+ /** Whether to ignore date ordering and use T4's section order. Defaults to false. */
438
+ ignoreDateOrdering?: boolean;
439
+ /** Number of content items to display. 0 = all. Defaults to 0. */
440
+ numToDisplay?: number;
441
+ /** Number of content items to skip. Defaults to 0. */
442
+ startAt?: number;
443
+ /** Alternative content layout name. If set, enables alt formatter. Defaults to ''. */
444
+ altLayoutName?: string;
445
+ /** Title text. Defaults to ''. */
446
+ title?: string;
447
+ /** HTML before the content. Defaults to ''. */
448
+ beforeHtml?: string;
449
+ /** HTML after the content. Defaults to ''. */
450
+ afterHtml?: string;
451
+ }
452
+ /** Keyword fetch method for Keyword Search Content */
453
+ export type KeywordFetchMethod = 'current' | 'parent' | 'section';
454
+ /** Content fetch method for Keyword Search Content */
455
+ export type KeywordContentFetchMethod = 'section' | 'branch' | 'branch-at-level';
456
+ /** Sort type for Keyword Search Content */
457
+ export type KeywordSortType = 'name' | 'name-desc' | 'last-modified';
458
+ /** Properties for Keyword Search Content create */
459
+ export interface KeywordSearchProperties {
460
+ /** Keyword fetch method. Defaults to 'current'. */
461
+ keywordFetchMethod?: KeywordFetchMethod;
462
+ /** Section ID for keyword retrieval (required when keywordFetchMethod is 'section'). Validated. */
463
+ keywordSection?: number;
464
+ /** Whether to narrow keyword selection to single content item. Defaults to false. */
465
+ narrowToSingleContentItem?: boolean;
466
+ /** Content Type ID for keyword retrieval. null = any content type. Validated if provided. */
467
+ keywordContentTypeId?: number | null;
468
+ /** Element names to get keywords from. Array. */
469
+ keywordElements?: string[];
470
+ /** Content fetch method. Defaults to 'section'. */
471
+ contentFetchMethod?: KeywordContentFetchMethod;
472
+ /** Section ID to search in (for section/branch, when not using searchSectionElement). Validated. */
473
+ searchSection?: number;
474
+ /** Content element name to derive search section from (alternative to searchSection). */
475
+ searchSectionElement?: string;
476
+ /** Start level (only for 'branch-at-level'). Defaults to 0. */
477
+ startLevel?: number;
478
+ /** End level / recursion depth (only for 'branch-at-level'). Defaults to 0. */
479
+ endLevel?: number;
480
+ /** Content Type ID to search keywords in. null = any content type. Validated if provided. */
481
+ searchContentTypeId?: number | null;
482
+ /** Element names to search keywords in. Array. */
483
+ searchElements?: string[];
484
+ /** Number of content items to display. Defaults to 0 (all). */
485
+ numToDisplay?: number;
486
+ /** Sort type. Defaults to 'name'. */
487
+ sortType?: KeywordSortType;
488
+ /** Whether to sort by a date element. Defaults to false. */
489
+ sortByDateElement?: boolean;
490
+ /** Date element name (only when sortByDateElement is true). */
491
+ dateElementName?: string;
492
+ /** Whether to show upcoming/future content. Defaults to false. */
493
+ showUpcomingContent?: boolean;
494
+ /** Whether to include hidden sections. Defaults to false. */
495
+ showHiddenSections?: boolean;
496
+ /** Whether to match composite keywords. Defaults to false. */
497
+ matchCompositeKeywords?: boolean;
498
+ /** Whether to match sub-items. Defaults to false. */
499
+ matchSubItems?: boolean;
500
+ /** Whether to enable cross-language searching. Defaults to false. */
501
+ crossLanguageSearch?: boolean;
502
+ /** Language codes for cross-language searching. Array. */
503
+ crossLanguageLanguages?: string[];
504
+ /** Alternative content layout name. Defaults to ''. */
505
+ altLayoutName?: string;
506
+ /** HTML before content. Defaults to ''. */
507
+ beforeHtml?: string;
508
+ /** HTML after content. Defaults to ''. */
509
+ afterHtml?: string;
510
+ /** Whether to enable pagination. Defaults to false. */
511
+ pagination?: boolean;
512
+ /** Content items per page (only when pagination is true). Defaults to 0. */
513
+ contentPerPage?: number;
514
+ /** HTML before pagination. Defaults to ''. */
515
+ beforePaginationHtml?: string;
516
+ /** HTML between pagination links. Defaults to ''. */
517
+ betweenPaginationHtml?: string;
518
+ /** HTML after pagination. Defaults to ''. */
519
+ afterPaginationHtml?: string;
520
+ }
521
+ /** Create data shape — type determines which properties are valid */
522
+ export interface CreateNavigationData {
523
+ type: NavigationType;
524
+ name: string;
525
+ description?: string;
526
+ enabled?: boolean;
527
+ previewEnabled?: boolean;
528
+ properties?: A2ZProperties | BreadcrumbsProperties | CssSelectorProperties | GenerateFileProperties | LanguageSwitcherProperties | PaginationProperties | PreviousNextProperties | SectionIteratorProperties | RelatedSectionBranchProperties | ReturnToIndexProperties | SectionMetaInfoProperties | TopStoriesProperties | SiteMapProperties | SectionDetailsProperties | RelatedContentProperties | LinkMenuProperties | PublishToOneFileProperties | TopContentProperties | KeywordSearchProperties | Record<string, unknown>;
529
+ }
530
+ /**
531
+ * Data for updating a navigation object (immutable pattern).
532
+ * `type` is omitted — a navigation object's type cannot be changed after creation.
533
+ * `properties` is merged into the existing properties.
534
+ */
535
+ export interface UpdateNavigationData {
536
+ name?: string;
537
+ description?: string;
538
+ enabled?: boolean;
539
+ previewEnabled?: boolean;
540
+ cachingEnabled?: boolean;
541
+ properties?: A2ZProperties | BreadcrumbsProperties | CssSelectorProperties | GenerateFileProperties | LanguageSwitcherProperties | PaginationProperties | PreviousNextProperties | SectionIteratorProperties | RelatedSectionBranchProperties | ReturnToIndexProperties | SectionMetaInfoProperties | TopStoriesProperties | SiteMapProperties | SectionDetailsProperties | RelatedContentProperties | LinkMenuProperties | PublishToOneFileProperties | TopContentProperties | KeywordSearchProperties | Record<string, unknown>;
542
+ }
543
+ /**
544
+ * Resource for navigation object operations.
545
+ * Accessible via `t4.navigation`.
546
+ */
547
+ export declare class NavigationResource {
548
+ private readonly httpClient;
549
+ constructor(httpClient: HttpClient);
550
+ /**
551
+ * Lists all navigation objects.
552
+ * Optionally filter by type.
553
+ */
554
+ list(options?: {
555
+ type?: NavigationType;
556
+ }): Promise<NavigationSummary[]>;
557
+ /** Gets a single navigation object by ID. Returns a mutable NavigationObject. */
558
+ get(id: number): Promise<NavigationObject>;
559
+ /** Post-construction async resolution — resolves IDs to names and raw element names to aliases. */
560
+ private resolveNavigationProperties;
561
+ /** Creates a new navigation object. */
562
+ create(data: CreateNavigationData): Promise<NavigationObject>;
563
+ /**
564
+ * Updates a navigation object's properties (immutable pattern).
565
+ * Fetches the existing object, applies your changes, saves, and returns it.
566
+ *
567
+ * `properties` is merged into the existing properties — pass only the keys you
568
+ * want to change. Everything else is preserved. The navigation `type` cannot be
569
+ * changed after creation.
570
+ */
571
+ update(id: number, data: UpdateNavigationData): Promise<NavigationObject>;
572
+ /** Deletes a navigation object by ID. */
573
+ delete(id: number): Promise<void>;
574
+ /** Returns the default caching value per type (some types always use false). */
575
+ private getDefaultCaching;
576
+ /** Builds and validates properties for the given navigation type. */
577
+ private buildProperties;
578
+ /** Builds properties for A to Z Navigation with validation. */
579
+ private buildA2ZProperties;
580
+ /** Builds properties for Breadcrumbs with validation. */
581
+ private buildBreadcrumbsProperties;
582
+ /** Builds properties for Section Iterator. */
583
+ private buildSectionIteratorProperties;
584
+ /** Builds properties for Related Section Branch. */
585
+ private buildRelatedSectionBranchProperties;
586
+ /** Builds properties for Return to Index. */
587
+ private buildReturnToIndexProperties;
588
+ /** Builds properties for Section Meta Info with meta type validation. */
589
+ private buildSectionMetaInfoProperties;
590
+ /** Fetches meta tag level definitions from GET /meta/level. */
591
+ private getMetaLevels;
592
+ /** Builds properties for Section Details with validation. */
593
+ private buildSectionDetailsProperties;
594
+ /** Builds properties for Link Menu with validation. */
595
+ private buildLinkMenuProperties;
596
+ /** Builds properties for Publish to One File with validation. */
597
+ private buildPublishToOneFileProperties;
598
+ /** Builds properties for Top Content with validation. */
599
+ private buildTopContentProperties;
600
+ /** Builds properties for Keyword Search Content with validation. */
601
+ private buildKeywordSearchProperties;
602
+ /** Fetches content type elements. */
603
+ private getContentTypeElements;
604
+ /** Resolves an element type name (e.g. 'Plain Text', 'Section/Content Link') to its numeric ID via GET /type/. */
605
+ private getElementTypeId;
606
+ /**
607
+ * Validates an element alias exists on a content type and returns the raw name.
608
+ * Developer passes alias → SDK sends raw name to API.
609
+ */
610
+ private resolveElementAliasToName;
611
+ /**
612
+ * Resolves multiple element aliases to raw names.
613
+ */
614
+ private resolveElementAliasesToNames;
615
+ /**
616
+ * Resolves raw element names back to aliases for display.
617
+ * API stores raw name → SDK returns alias to developer.
618
+ */
619
+ private resolveElementNamesToAliases;
620
+ /**
621
+ * Resolves a single raw element name back to its alias.
622
+ */
623
+ private resolveElementNameToAlias;
624
+ /** Validates that an element name exists on a content type (legacy — used by searchSectionElement validation in builder). */
625
+ private validateElementOnContentType;
626
+ /** Validates that a channel exists by ID. */
627
+ private validateChannelExists;
628
+ /** Validates that a page layout exists by ID. */
629
+ private validatePageLayoutExists;
630
+ /** Builds properties for Related Content with validation. */
631
+ private buildRelatedContentProperties;
632
+ /** Builds properties for Top Stories with section validation. */
633
+ private buildTopStoriesProperties;
634
+ /** Builds properties for Previous/Next Fulltext Content. */
635
+ private buildPreviousNextProperties;
636
+ /** Builds properties for Pagination with validation. */
637
+ private buildPaginationProperties;
638
+ /** Builds properties for Site Map with validation. */
639
+ private buildSiteMapProperties;
640
+ /** Validates that a content type exists by ID. */
641
+ private validateContentTypeExists;
642
+ /** Validates that a layout name exists on a content type. */
643
+ private validateLayoutOnContentType;
644
+ /** Builds properties for Language Switcher. */
645
+ private buildLanguageSwitcherProperties;
646
+ /** Builds properties for Generate File with validation. */
647
+ private buildGenerateFileProperties;
648
+ /** Builds properties for CSS Selector with validation. */
649
+ private buildCssSelectorProperties;
650
+ /** Validates that a media item exists by ID. */
651
+ private validateMediaExists;
652
+ /** Validates that a section exists by ID. */
653
+ private validateSectionExists;
654
+ /** Passes properties through without type-specific validation. */
655
+ private buildGenericProperties;
656
+ /** Resolves a meta data element alias to its raw name. Returns the raw name for the API. Only Plain Text elements are valid. */
657
+ private resolveMetaDataElementAlias;
658
+ /** Resolves a raw meta data element name back to its alias for display. */
659
+ private resolveMetaDataElementName;
660
+ /** Validates that a microsite ID exists. */
661
+ private validateMicrositeId;
662
+ }
663
+ export {};
664
+ //# sourceMappingURL=navigation-resource.d.ts.map