@depup/next-intl 4.8.3-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +33 -0
  3. package/changes.json +18 -0
  4. package/config.d.ts +4 -0
  5. package/dist/cjs/development/ExtractorCodec-D9Tw618d.cjs +7 -0
  6. package/dist/cjs/development/JSONCodec-rhejs716.cjs +50 -0
  7. package/dist/cjs/development/POCodec-Cv3VdXQG.cjs +105 -0
  8. package/dist/cjs/development/plugin-YzBhQjAo.cjs +1457 -0
  9. package/dist/cjs/development/plugin.cjs +13 -0
  10. package/dist/esm/development/config.js +5 -0
  11. package/dist/esm/development/extractor/ExtractionCompiler.js +38 -0
  12. package/dist/esm/development/extractor/catalog/CatalogLocales.js +84 -0
  13. package/dist/esm/development/extractor/catalog/CatalogManager.js +370 -0
  14. package/dist/esm/development/extractor/catalog/CatalogPersister.js +63 -0
  15. package/dist/esm/development/extractor/catalog/SaveScheduler.js +85 -0
  16. package/dist/esm/development/extractor/catalogLoader.js +96 -0
  17. package/dist/esm/development/extractor/extractMessages.js +15 -0
  18. package/dist/esm/development/extractor/extractionLoader.js +26 -0
  19. package/dist/esm/development/extractor/extractor/LRUCache.js +30 -0
  20. package/dist/esm/development/extractor/extractor/MessageExtractor.js +66 -0
  21. package/dist/esm/development/extractor/format/ExtractorCodec.js +5 -0
  22. package/dist/esm/development/extractor/format/codecs/JSONCodec.js +42 -0
  23. package/dist/esm/development/extractor/format/codecs/POCodec.js +93 -0
  24. package/dist/esm/development/extractor/format/index.js +44 -0
  25. package/dist/esm/development/extractor/source/SourceFileFilter.js +29 -0
  26. package/dist/esm/development/extractor/source/SourceFileScanner.js +31 -0
  27. package/dist/esm/development/extractor/source/SourceFileWatcher.js +132 -0
  28. package/dist/esm/development/extractor/utils.js +46 -0
  29. package/dist/esm/development/extractor.js +2 -0
  30. package/dist/esm/development/index.react-client.js +4 -0
  31. package/dist/esm/development/index.react-server.js +9 -0
  32. package/dist/esm/development/middleware/getAlternateLinksHeaderValue.js +91 -0
  33. package/dist/esm/development/middleware/middleware.js +168 -0
  34. package/dist/esm/development/middleware/resolveLocale.js +129 -0
  35. package/dist/esm/development/middleware/syncCookie.js +27 -0
  36. package/dist/esm/development/middleware/utils.js +194 -0
  37. package/dist/esm/development/middleware.js +1 -0
  38. package/dist/esm/development/navigation/react-client/createNavigation.js +80 -0
  39. package/dist/esm/development/navigation/react-client/useBasePathname.js +36 -0
  40. package/dist/esm/development/navigation/react-server/createNavigation.js +22 -0
  41. package/dist/esm/development/navigation/react-server/getServerLocale.js +12 -0
  42. package/dist/esm/development/navigation/shared/BaseLink.js +51 -0
  43. package/dist/esm/development/navigation/shared/createSharedNavigationFns.js +105 -0
  44. package/dist/esm/development/navigation/shared/syncLocaleCookie.js +47 -0
  45. package/dist/esm/development/navigation/shared/utils.js +165 -0
  46. package/dist/esm/development/navigation.react-client.js +1 -0
  47. package/dist/esm/development/navigation.react-server.js +1 -0
  48. package/dist/esm/development/plugin/config.js +10 -0
  49. package/dist/esm/development/plugin/createNextIntlPlugin.js +26 -0
  50. package/dist/esm/development/plugin/declaration/createMessagesDeclaration.js +70 -0
  51. package/dist/esm/development/plugin/extractor/initExtractionCompiler.js +59 -0
  52. package/dist/esm/development/plugin/getNextConfig.js +267 -0
  53. package/dist/esm/development/plugin/nextFlags.js +32 -0
  54. package/dist/esm/development/plugin/utils.js +26 -0
  55. package/dist/esm/development/plugin/watchFile.js +21 -0
  56. package/dist/esm/development/plugin.js +1 -0
  57. package/dist/esm/development/react-client/index.js +34 -0
  58. package/dist/esm/development/react-server/NextIntlClientProviderServer.js +34 -0
  59. package/dist/esm/development/react-server/useConfig.js +21 -0
  60. package/dist/esm/development/react-server/useExtracted.js +9 -0
  61. package/dist/esm/development/react-server/useFormatter.js +9 -0
  62. package/dist/esm/development/react-server/useLocale.js +8 -0
  63. package/dist/esm/development/react-server/useMessages.js +9 -0
  64. package/dist/esm/development/react-server/useNow.js +12 -0
  65. package/dist/esm/development/react-server/useTimeZone.js +8 -0
  66. package/dist/esm/development/react-server/useTranslations.js +9 -0
  67. package/dist/esm/development/routing/config.js +26 -0
  68. package/dist/esm/development/routing/defineRouting.js +25 -0
  69. package/dist/esm/development/routing.js +1 -0
  70. package/dist/esm/development/server/react-client/index.js +32 -0
  71. package/dist/esm/development/server/react-server/RequestLocale.js +36 -0
  72. package/dist/esm/development/server/react-server/RequestLocaleCache.js +18 -0
  73. package/dist/esm/development/server/react-server/createRequestConfig.js +2 -0
  74. package/dist/esm/development/server/react-server/getConfig.js +59 -0
  75. package/dist/esm/development/server/react-server/getConfigNow.js +10 -0
  76. package/dist/esm/development/server/react-server/getDefaultNow.js +9 -0
  77. package/dist/esm/development/server/react-server/getExtracted.js +24 -0
  78. package/dist/esm/development/server/react-server/getFormats.js +10 -0
  79. package/dist/esm/development/server/react-server/getFormatter.js +21 -0
  80. package/dist/esm/development/server/react-server/getLocale.js +10 -0
  81. package/dist/esm/development/server/react-server/getMessages.js +19 -0
  82. package/dist/esm/development/server/react-server/getNow.js +8 -0
  83. package/dist/esm/development/server/react-server/getRequestConfig.js +8 -0
  84. package/dist/esm/development/server/react-server/getServerExtractor.js +38 -0
  85. package/dist/esm/development/server/react-server/getServerFormatter.js +17 -0
  86. package/dist/esm/development/server/react-server/getServerTranslator.js +12 -0
  87. package/dist/esm/development/server/react-server/getTimeZone.js +13 -0
  88. package/dist/esm/development/server/react-server/getTranslations.js +28 -0
  89. package/dist/esm/development/server/react-server/validateLocale.js +12 -0
  90. package/dist/esm/development/server.react-client.js +1 -0
  91. package/dist/esm/development/server.react-server.js +9 -0
  92. package/dist/esm/development/shared/NextIntlClientProvider.js +18 -0
  93. package/dist/esm/development/shared/constants.js +4 -0
  94. package/dist/esm/development/shared/use.js +13 -0
  95. package/dist/esm/development/shared/utils.js +140 -0
  96. package/dist/esm/production/config.js +1 -0
  97. package/dist/esm/production/extractor/ExtractionCompiler.js +1 -0
  98. package/dist/esm/production/extractor/catalog/CatalogLocales.js +1 -0
  99. package/dist/esm/production/extractor/catalog/CatalogManager.js +1 -0
  100. package/dist/esm/production/extractor/catalog/CatalogPersister.js +1 -0
  101. package/dist/esm/production/extractor/catalog/SaveScheduler.js +1 -0
  102. package/dist/esm/production/extractor/catalogLoader.js +1 -0
  103. package/dist/esm/production/extractor/extractMessages.js +1 -0
  104. package/dist/esm/production/extractor/extractionLoader.js +1 -0
  105. package/dist/esm/production/extractor/extractor/LRUCache.js +1 -0
  106. package/dist/esm/production/extractor/extractor/MessageExtractor.js +1 -0
  107. package/dist/esm/production/extractor/format/ExtractorCodec.js +1 -0
  108. package/dist/esm/production/extractor/format/codecs/JSONCodec.js +1 -0
  109. package/dist/esm/production/extractor/format/codecs/POCodec.js +1 -0
  110. package/dist/esm/production/extractor/format/index.js +1 -0
  111. package/dist/esm/production/extractor/source/SourceFileFilter.js +1 -0
  112. package/dist/esm/production/extractor/source/SourceFileScanner.js +1 -0
  113. package/dist/esm/production/extractor/source/SourceFileWatcher.js +1 -0
  114. package/dist/esm/production/extractor/utils.js +1 -0
  115. package/dist/esm/production/extractor.js +1 -0
  116. package/dist/esm/production/index.react-client.js +1 -0
  117. package/dist/esm/production/index.react-server.js +1 -0
  118. package/dist/esm/production/middleware/getAlternateLinksHeaderValue.js +1 -0
  119. package/dist/esm/production/middleware/middleware.js +1 -0
  120. package/dist/esm/production/middleware/resolveLocale.js +1 -0
  121. package/dist/esm/production/middleware/syncCookie.js +1 -0
  122. package/dist/esm/production/middleware/utils.js +1 -0
  123. package/dist/esm/production/middleware.js +1 -0
  124. package/dist/esm/production/navigation/react-client/createNavigation.js +1 -0
  125. package/dist/esm/production/navigation/react-client/useBasePathname.js +1 -0
  126. package/dist/esm/production/navigation/react-server/createNavigation.js +1 -0
  127. package/dist/esm/production/navigation/react-server/getServerLocale.js +1 -0
  128. package/dist/esm/production/navigation/shared/BaseLink.js +2 -0
  129. package/dist/esm/production/navigation/shared/createSharedNavigationFns.js +1 -0
  130. package/dist/esm/production/navigation/shared/syncLocaleCookie.js +1 -0
  131. package/dist/esm/production/navigation/shared/utils.js +1 -0
  132. package/dist/esm/production/navigation.react-client.js +1 -0
  133. package/dist/esm/production/navigation.react-server.js +1 -0
  134. package/dist/esm/production/plugin/config.js +1 -0
  135. package/dist/esm/production/plugin/createNextIntlPlugin.js +1 -0
  136. package/dist/esm/production/plugin/declaration/createMessagesDeclaration.js +1 -0
  137. package/dist/esm/production/plugin/extractor/initExtractionCompiler.js +1 -0
  138. package/dist/esm/production/plugin/getNextConfig.js +1 -0
  139. package/dist/esm/production/plugin/nextFlags.js +1 -0
  140. package/dist/esm/production/plugin/utils.js +1 -0
  141. package/dist/esm/production/plugin/watchFile.js +1 -0
  142. package/dist/esm/production/plugin.js +1 -0
  143. package/dist/esm/production/react-client/index.js +1 -0
  144. package/dist/esm/production/react-server/NextIntlClientProviderServer.js +1 -0
  145. package/dist/esm/production/react-server/useConfig.js +1 -0
  146. package/dist/esm/production/react-server/useExtracted.js +1 -0
  147. package/dist/esm/production/react-server/useFormatter.js +1 -0
  148. package/dist/esm/production/react-server/useLocale.js +1 -0
  149. package/dist/esm/production/react-server/useMessages.js +1 -0
  150. package/dist/esm/production/react-server/useNow.js +1 -0
  151. package/dist/esm/production/react-server/useTimeZone.js +1 -0
  152. package/dist/esm/production/react-server/useTranslations.js +1 -0
  153. package/dist/esm/production/routing/config.js +1 -0
  154. package/dist/esm/production/routing/defineRouting.js +1 -0
  155. package/dist/esm/production/routing.js +1 -0
  156. package/dist/esm/production/server/react-client/index.js +1 -0
  157. package/dist/esm/production/server/react-server/RequestLocale.js +1 -0
  158. package/dist/esm/production/server/react-server/RequestLocaleCache.js +1 -0
  159. package/dist/esm/production/server/react-server/createRequestConfig.js +1 -0
  160. package/dist/esm/production/server/react-server/getConfig.js +1 -0
  161. package/dist/esm/production/server/react-server/getConfigNow.js +1 -0
  162. package/dist/esm/production/server/react-server/getDefaultNow.js +1 -0
  163. package/dist/esm/production/server/react-server/getExtracted.js +1 -0
  164. package/dist/esm/production/server/react-server/getFormats.js +1 -0
  165. package/dist/esm/production/server/react-server/getFormatter.js +1 -0
  166. package/dist/esm/production/server/react-server/getLocale.js +1 -0
  167. package/dist/esm/production/server/react-server/getMessages.js +1 -0
  168. package/dist/esm/production/server/react-server/getNow.js +1 -0
  169. package/dist/esm/production/server/react-server/getRequestConfig.js +1 -0
  170. package/dist/esm/production/server/react-server/getServerExtractor.js +1 -0
  171. package/dist/esm/production/server/react-server/getServerFormatter.js +1 -0
  172. package/dist/esm/production/server/react-server/getServerTranslator.js +1 -0
  173. package/dist/esm/production/server/react-server/getTimeZone.js +1 -0
  174. package/dist/esm/production/server/react-server/getTranslations.js +1 -0
  175. package/dist/esm/production/server.react-client.js +1 -0
  176. package/dist/esm/production/server.react-server.js +1 -0
  177. package/dist/esm/production/shared/NextIntlClientProvider.js +2 -0
  178. package/dist/esm/production/shared/constants.js +1 -0
  179. package/dist/esm/production/shared/use.js +1 -0
  180. package/dist/esm/production/shared/utils.js +1 -0
  181. package/dist/types/config.d.ts +1 -0
  182. package/dist/types/extractor/ExtractionCompiler.d.ts +15 -0
  183. package/dist/types/extractor/catalog/CatalogLocales.d.ts +29 -0
  184. package/dist/types/extractor/catalog/CatalogManager.d.ts +59 -0
  185. package/dist/types/extractor/catalog/CatalogPersister.d.ts +20 -0
  186. package/dist/types/extractor/catalog/SaveScheduler.d.ts +18 -0
  187. package/dist/types/extractor/extractMessages.d.ts +2 -0
  188. package/dist/types/extractor/extractor/KeyGenerator.d.ts +3 -0
  189. package/dist/types/extractor/extractor/LRUCache.d.ts +7 -0
  190. package/dist/types/extractor/extractor/MessageExtractor.bench.d.ts +1 -0
  191. package/dist/types/extractor/extractor/MessageExtractor.d.ts +21 -0
  192. package/dist/types/extractor/format/ExtractorCodec.d.ts +33 -0
  193. package/dist/types/extractor/format/codecs/JSONCodec.d.ts +2 -0
  194. package/dist/types/extractor/format/codecs/POCodec.d.ts +2 -0
  195. package/dist/types/extractor/format/codecs/fixtures/JSONCodecStructured.d.ts +2 -0
  196. package/dist/types/extractor/format/codecs/fixtures/POCodecSourceMessageKey.d.ts +2 -0
  197. package/dist/types/extractor/format/index.d.ts +15 -0
  198. package/dist/types/extractor/format/types.d.ts +8 -0
  199. package/dist/types/extractor/index.d.ts +2 -0
  200. package/dist/types/extractor/source/SourceFileFilter.d.ts +8 -0
  201. package/dist/types/extractor/source/SourceFileScanner.d.ts +4 -0
  202. package/dist/types/extractor/source/SourceFileWatcher.d.ts +15 -0
  203. package/dist/types/extractor/types.d.ts +28 -0
  204. package/dist/types/extractor/utils.d.ts +7 -0
  205. package/dist/types/extractor.d.ts +1 -0
  206. package/dist/types/index.react-client.d.ts +8 -0
  207. package/dist/types/index.react-server.d.ts +1 -0
  208. package/dist/types/middleware/getAlternateLinksHeaderValue.d.ts +13 -0
  209. package/dist/types/middleware/index.d.ts +4 -0
  210. package/dist/types/middleware/middleware.d.ts +4 -0
  211. package/dist/types/middleware/resolveLocale.d.ts +9 -0
  212. package/dist/types/middleware/syncCookie.d.ts +7 -0
  213. package/dist/types/middleware/utils.d.ts +26 -0
  214. package/dist/types/middleware.d.ts +1 -0
  215. package/dist/types/navigation/react-client/createNavigation.d.ts +464 -0
  216. package/dist/types/navigation/react-client/index.d.ts +2 -0
  217. package/dist/types/navigation/react-client/useBasePathname.d.ts +5 -0
  218. package/dist/types/navigation/react-server/createNavigation.d.ts +384 -0
  219. package/dist/types/navigation/react-server/getServerLocale.d.ts +5 -0
  220. package/dist/types/navigation/react-server/index.d.ts +2 -0
  221. package/dist/types/navigation/shared/BaseLink.d.ts +11 -0
  222. package/dist/types/navigation/shared/StrictParams.d.ts +8 -0
  223. package/dist/types/navigation/shared/createSharedNavigationFns.d.ts +370 -0
  224. package/dist/types/navigation/shared/syncLocaleCookie.d.ts +8 -0
  225. package/dist/types/navigation/shared/utils.d.ts +53 -0
  226. package/dist/types/navigation.react-client.d.ts +1 -0
  227. package/dist/types/navigation.react-server.d.ts +1 -0
  228. package/dist/types/plugin/catalog/catalogLoader.d.ts +10 -0
  229. package/dist/types/plugin/config.d.ts +3 -0
  230. package/dist/types/plugin/createNextIntlPlugin.d.ts +3 -0
  231. package/dist/types/plugin/declaration/createMessagesDeclaration.d.ts +1 -0
  232. package/dist/types/plugin/declaration/index.d.ts +1 -0
  233. package/dist/types/plugin/extractor/extractionLoader.d.ts +3 -0
  234. package/dist/types/plugin/extractor/initExtractionCompiler.d.ts +2 -0
  235. package/dist/types/plugin/getNextConfig.d.ts +3 -0
  236. package/dist/types/plugin/index.d.ts +1 -0
  237. package/dist/types/plugin/nextFlags.d.ts +2 -0
  238. package/dist/types/plugin/types.d.ts +29 -0
  239. package/dist/types/plugin/utils.d.ts +8 -0
  240. package/dist/types/plugin/watchFile.d.ts +6 -0
  241. package/dist/types/plugin.d.ts +1 -0
  242. package/dist/types/react-client/index.d.ts +16 -0
  243. package/dist/types/react-server/NextIntlClientProviderServer.d.ts +5 -0
  244. package/dist/types/react-server/index.d.ts +16 -0
  245. package/dist/types/react-server/testUtils.d.ts +2 -0
  246. package/dist/types/react-server/useConfig.d.ts +2 -0
  247. package/dist/types/react-server/useExtracted.d.ts +2 -0
  248. package/dist/types/react-server/useFormatter.d.ts +2 -0
  249. package/dist/types/react-server/useLocale.d.ts +2 -0
  250. package/dist/types/react-server/useMessages.d.ts +2 -0
  251. package/dist/types/react-server/useNow.d.ts +2 -0
  252. package/dist/types/react-server/useTimeZone.d.ts +2 -0
  253. package/dist/types/react-server/useTranslations.d.ts +2 -0
  254. package/dist/types/routing/config.d.ts +73 -0
  255. package/dist/types/routing/defineRouting.d.ts +3 -0
  256. package/dist/types/routing/index.d.ts +3 -0
  257. package/dist/types/routing/types.d.ts +24 -0
  258. package/dist/types/routing.d.ts +1 -0
  259. package/dist/types/server/react-client/index.d.ts +10 -0
  260. package/dist/types/server/react-server/RequestLocale.d.ts +1 -0
  261. package/dist/types/server/react-server/RequestLocaleCache.d.ts +3 -0
  262. package/dist/types/server/react-server/createRequestConfig.d.ts +3 -0
  263. package/dist/types/server/react-server/getConfig.d.ts +13 -0
  264. package/dist/types/server/react-server/getConfigNow.d.ts +4 -0
  265. package/dist/types/server/react-server/getDefaultNow.d.ts +3 -0
  266. package/dist/types/server/react-server/getExtracted.d.ts +10 -0
  267. package/dist/types/server/react-server/getFormats.d.ts +3 -0
  268. package/dist/types/server/react-server/getFormatter.d.ts +10 -0
  269. package/dist/types/server/react-server/getLocale.d.ts +4 -0
  270. package/dist/types/server/react-server/getMessages.d.ts +6 -0
  271. package/dist/types/server/react-server/getNow.d.ts +4 -0
  272. package/dist/types/server/react-server/getRequestConfig.d.ts +35 -0
  273. package/dist/types/server/react-server/getServerExtractor.d.ts +5 -0
  274. package/dist/types/server/react-server/getServerFormatter.d.ts +25 -0
  275. package/dist/types/server/react-server/getServerTranslator.d.ts +4 -0
  276. package/dist/types/server/react-server/getTimeZone.d.ts +4 -0
  277. package/dist/types/server/react-server/getTranslations.d.ts +8 -0
  278. package/dist/types/server/react-server/index.d.ts +12 -0
  279. package/dist/types/server/react-server/validateLocale.d.ts +1 -0
  280. package/dist/types/server.react-client.d.ts +1 -0
  281. package/dist/types/server.react-server.d.ts +1 -0
  282. package/dist/types/shared/NextIntlClientProvider.d.ts +9 -0
  283. package/dist/types/shared/constants.d.ts +1 -0
  284. package/dist/types/shared/types.d.ts +5 -0
  285. package/dist/types/shared/use.d.ts +3 -0
  286. package/dist/types/shared/utils.d.ts +20 -0
  287. package/extractor/catalogLoader.d.ts +4 -0
  288. package/extractor/extractionLoader.d.ts +4 -0
  289. package/extractor.d.ts +2 -0
  290. package/middleware.d.ts +4 -0
  291. package/navigation.d.ts +2 -0
  292. package/package.json +175 -0
  293. package/plugin.d.cts +3 -0
  294. package/plugin.d.ts +4 -0
  295. package/routing.d.ts +2 -0
  296. package/server.d.ts +2 -0
@@ -0,0 +1,370 @@
1
+ import type { Locale } from 'use-intl';
2
+ import { type RoutingConfigLocalizedNavigation, type RoutingConfigSharedNavigation } from '../../routing/config.js';
3
+ import type { DomainsConfig, LocalePrefixMode, Locales, Pathnames } from '../../routing/types.js';
4
+ import { type HrefOrHrefWithParams, type QueryParams } from './utils.js';
5
+ type PromiseOrValue<Type> = Type | Promise<Type>;
6
+ /**
7
+ * Shared implementations for `react-server` and `react-client`
8
+ */
9
+ export default function createSharedNavigationFns<const AppLocales extends Locales, const AppPathnames extends Pathnames<AppLocales> = never, const AppLocalePrefixMode extends LocalePrefixMode = 'always', const AppDomains extends DomainsConfig<AppLocales> = never>(getLocale: () => PromiseOrValue<Locale>, routing?: [AppPathnames] extends [never] ? RoutingConfigSharedNavigation<AppLocales, AppLocalePrefixMode, AppDomains> | undefined : RoutingConfigLocalizedNavigation<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>): {
10
+ config: Omit<{}, "localePrefix" | "localeCookie" | "alternateLinks" | "localeDetection"> & {
11
+ localePrefix: {
12
+ mode: "never";
13
+ } | {
14
+ mode: "always";
15
+ prefixes?: Partial<Record<string, string>> | undefined;
16
+ } | {
17
+ mode: "as-needed";
18
+ prefixes?: Partial<Record<string, string>> | undefined;
19
+ };
20
+ localeCookie: import("../../routing/config.js").InitializedLocaleCookieConfig;
21
+ localeDetection: NonNullable<boolean | undefined>;
22
+ alternateLinks: NonNullable<boolean | undefined>;
23
+ };
24
+ Link: import("react").ForwardRefExoticComponent<Omit<{
25
+ id?: string | undefined | undefined;
26
+ target?: import("react").HTMLAttributeAnchorTarget | undefined;
27
+ replace?: boolean | undefined;
28
+ slot?: string | undefined | undefined;
29
+ style?: import("react").CSSProperties | undefined;
30
+ title?: string | undefined | undefined;
31
+ locale?: Locale | undefined;
32
+ onError?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
33
+ children?: import("react").ReactNode;
34
+ ref?: import("react").Ref<HTMLAnchorElement> | undefined;
35
+ prefix?: string | undefined | undefined;
36
+ key?: import("react").Key | null | undefined;
37
+ as?: (string | import("url").UrlObject) | undefined;
38
+ scroll?: boolean | undefined;
39
+ shallow?: boolean | undefined;
40
+ passHref?: boolean | undefined;
41
+ prefetch?: boolean | "auto" | null | undefined;
42
+ legacyBehavior?: boolean | undefined;
43
+ onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
44
+ onTouchStart?: React.TouchEventHandler<HTMLAnchorElement> | undefined;
45
+ onClick?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
46
+ onNavigate?: ((event: {
47
+ preventDefault: () => void;
48
+ }) => void) | undefined;
49
+ download?: any;
50
+ hrefLang?: string | undefined | undefined;
51
+ media?: string | undefined | undefined;
52
+ ping?: string | undefined | undefined;
53
+ type?: string | undefined | undefined;
54
+ referrerPolicy?: import("react").HTMLAttributeReferrerPolicy | undefined;
55
+ defaultChecked?: boolean | undefined | undefined;
56
+ defaultValue?: string | number | readonly string[] | undefined;
57
+ suppressContentEditableWarning?: boolean | undefined | undefined;
58
+ suppressHydrationWarning?: boolean | undefined | undefined;
59
+ accessKey?: string | undefined | undefined;
60
+ autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {}) | undefined;
61
+ autoFocus?: boolean | undefined | undefined;
62
+ className?: string | undefined | undefined;
63
+ contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
64
+ contextMenu?: string | undefined | undefined;
65
+ dir?: string | undefined | undefined;
66
+ draggable?: (boolean | "true" | "false") | undefined;
67
+ enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
68
+ hidden?: boolean | undefined | undefined;
69
+ lang?: string | undefined | undefined;
70
+ nonce?: string | undefined | undefined;
71
+ spellCheck?: (boolean | "true" | "false") | undefined;
72
+ tabIndex?: number | undefined | undefined;
73
+ translate?: "yes" | "no" | undefined | undefined;
74
+ radioGroup?: string | undefined | undefined;
75
+ role?: import("react").AriaRole | undefined;
76
+ about?: string | undefined | undefined;
77
+ content?: string | undefined | undefined;
78
+ datatype?: string | undefined | undefined;
79
+ inlist?: any;
80
+ property?: string | undefined | undefined;
81
+ rel?: string | undefined | undefined;
82
+ resource?: string | undefined | undefined;
83
+ rev?: string | undefined | undefined;
84
+ typeof?: string | undefined | undefined;
85
+ vocab?: string | undefined | undefined;
86
+ autoCorrect?: string | undefined | undefined;
87
+ autoSave?: string | undefined | undefined;
88
+ color?: string | undefined | undefined;
89
+ itemProp?: string | undefined | undefined;
90
+ itemScope?: boolean | undefined | undefined;
91
+ itemType?: string | undefined | undefined;
92
+ itemID?: string | undefined | undefined;
93
+ itemRef?: string | undefined | undefined;
94
+ results?: number | undefined | undefined;
95
+ security?: string | undefined | undefined;
96
+ unselectable?: "on" | "off" | undefined | undefined;
97
+ popover?: "" | "auto" | "manual" | "hint" | undefined | undefined;
98
+ popoverTargetAction?: "toggle" | "show" | "hide" | undefined | undefined;
99
+ popoverTarget?: string | undefined | undefined;
100
+ inert?: boolean | undefined | undefined;
101
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | undefined;
102
+ is?: string | undefined | undefined;
103
+ exportparts?: string | undefined | undefined;
104
+ part?: string | undefined | undefined;
105
+ tw?: string | undefined;
106
+ "aria-activedescendant"?: string | undefined | undefined;
107
+ "aria-atomic"?: (boolean | "true" | "false") | undefined;
108
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined | undefined;
109
+ "aria-braillelabel"?: string | undefined | undefined;
110
+ "aria-brailleroledescription"?: string | undefined | undefined;
111
+ "aria-busy"?: (boolean | "true" | "false") | undefined;
112
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
113
+ "aria-colcount"?: number | undefined | undefined;
114
+ "aria-colindex"?: number | undefined | undefined;
115
+ "aria-colindextext"?: string | undefined | undefined;
116
+ "aria-colspan"?: number | undefined | undefined;
117
+ "aria-controls"?: string | undefined | undefined;
118
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined | undefined;
119
+ "aria-describedby"?: string | undefined | undefined;
120
+ "aria-description"?: string | undefined | undefined;
121
+ "aria-details"?: string | undefined | undefined;
122
+ "aria-disabled"?: (boolean | "true" | "false") | undefined;
123
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined | undefined;
124
+ "aria-errormessage"?: string | undefined | undefined;
125
+ "aria-expanded"?: (boolean | "true" | "false") | undefined;
126
+ "aria-flowto"?: string | undefined | undefined;
127
+ "aria-grabbed"?: (boolean | "true" | "false") | undefined;
128
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined | undefined;
129
+ "aria-hidden"?: (boolean | "true" | "false") | undefined;
130
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined | undefined;
131
+ "aria-keyshortcuts"?: string | undefined | undefined;
132
+ "aria-label"?: string | undefined | undefined;
133
+ "aria-labelledby"?: string | undefined | undefined;
134
+ "aria-level"?: number | undefined | undefined;
135
+ "aria-live"?: "off" | "assertive" | "polite" | undefined | undefined;
136
+ "aria-modal"?: (boolean | "true" | "false") | undefined;
137
+ "aria-multiline"?: (boolean | "true" | "false") | undefined;
138
+ "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
139
+ "aria-orientation"?: "horizontal" | "vertical" | undefined | undefined;
140
+ "aria-owns"?: string | undefined | undefined;
141
+ "aria-placeholder"?: string | undefined | undefined;
142
+ "aria-posinset"?: number | undefined | undefined;
143
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
144
+ "aria-readonly"?: (boolean | "true" | "false") | undefined;
145
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined | undefined;
146
+ "aria-required"?: (boolean | "true" | "false") | undefined;
147
+ "aria-roledescription"?: string | undefined | undefined;
148
+ "aria-rowcount"?: number | undefined | undefined;
149
+ "aria-rowindex"?: number | undefined | undefined;
150
+ "aria-rowindextext"?: string | undefined | undefined;
151
+ "aria-rowspan"?: number | undefined | undefined;
152
+ "aria-selected"?: (boolean | "true" | "false") | undefined;
153
+ "aria-setsize"?: number | undefined | undefined;
154
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined | undefined;
155
+ "aria-valuemax"?: number | undefined | undefined;
156
+ "aria-valuemin"?: number | undefined | undefined;
157
+ "aria-valuenow"?: number | undefined | undefined;
158
+ "aria-valuetext"?: string | undefined | undefined;
159
+ dangerouslySetInnerHTML?: {
160
+ __html: string | TrustedHTML;
161
+ } | undefined | undefined;
162
+ onCopy?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
163
+ onCopyCapture?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
164
+ onCut?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
165
+ onCutCapture?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
166
+ onPaste?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
167
+ onPasteCapture?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
168
+ onCompositionEnd?: import("react").CompositionEventHandler<HTMLAnchorElement> | undefined;
169
+ onCompositionEndCapture?: import("react").CompositionEventHandler<HTMLAnchorElement> | undefined;
170
+ onCompositionStart?: import("react").CompositionEventHandler<HTMLAnchorElement> | undefined;
171
+ onCompositionStartCapture?: import("react").CompositionEventHandler<HTMLAnchorElement> | undefined;
172
+ onCompositionUpdate?: import("react").CompositionEventHandler<HTMLAnchorElement> | undefined;
173
+ onCompositionUpdateCapture?: import("react").CompositionEventHandler<HTMLAnchorElement> | undefined;
174
+ onFocus?: import("react").FocusEventHandler<HTMLAnchorElement> | undefined;
175
+ onFocusCapture?: import("react").FocusEventHandler<HTMLAnchorElement> | undefined;
176
+ onBlur?: import("react").FocusEventHandler<HTMLAnchorElement> | undefined;
177
+ onBlurCapture?: import("react").FocusEventHandler<HTMLAnchorElement> | undefined;
178
+ onChange?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
179
+ onChangeCapture?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
180
+ onBeforeInput?: import("react").InputEventHandler<HTMLAnchorElement> | undefined;
181
+ onBeforeInputCapture?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
182
+ onInput?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
183
+ onInputCapture?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
184
+ onReset?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
185
+ onResetCapture?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
186
+ onSubmit?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
187
+ onSubmitCapture?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
188
+ onInvalid?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
189
+ onInvalidCapture?: import("react").FormEventHandler<HTMLAnchorElement> | undefined;
190
+ onLoad?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
191
+ onLoadCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
192
+ onErrorCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
193
+ onKeyDown?: import("react").KeyboardEventHandler<HTMLAnchorElement> | undefined;
194
+ onKeyDownCapture?: import("react").KeyboardEventHandler<HTMLAnchorElement> | undefined;
195
+ onKeyPress?: import("react").KeyboardEventHandler<HTMLAnchorElement> | undefined;
196
+ onKeyPressCapture?: import("react").KeyboardEventHandler<HTMLAnchorElement> | undefined;
197
+ onKeyUp?: import("react").KeyboardEventHandler<HTMLAnchorElement> | undefined;
198
+ onKeyUpCapture?: import("react").KeyboardEventHandler<HTMLAnchorElement> | undefined;
199
+ onAbort?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
200
+ onAbortCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
201
+ onCanPlay?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
202
+ onCanPlayCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
203
+ onCanPlayThrough?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
204
+ onCanPlayThroughCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
205
+ onDurationChange?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
206
+ onDurationChangeCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
207
+ onEmptied?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
208
+ onEmptiedCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
209
+ onEncrypted?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
210
+ onEncryptedCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
211
+ onEnded?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
212
+ onEndedCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
213
+ onLoadedData?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
214
+ onLoadedDataCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
215
+ onLoadedMetadata?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
216
+ onLoadedMetadataCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
217
+ onLoadStart?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
218
+ onLoadStartCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
219
+ onPause?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
220
+ onPauseCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
221
+ onPlay?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
222
+ onPlayCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
223
+ onPlaying?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
224
+ onPlayingCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
225
+ onProgress?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
226
+ onProgressCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
227
+ onRateChange?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
228
+ onRateChangeCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
229
+ onSeeked?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
230
+ onSeekedCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
231
+ onSeeking?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
232
+ onSeekingCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
233
+ onStalled?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
234
+ onStalledCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
235
+ onSuspend?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
236
+ onSuspendCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
237
+ onTimeUpdate?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
238
+ onTimeUpdateCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
239
+ onVolumeChange?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
240
+ onVolumeChangeCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
241
+ onWaiting?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
242
+ onWaitingCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
243
+ onAuxClick?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
244
+ onAuxClickCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
245
+ onClickCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
246
+ onContextMenu?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
247
+ onContextMenuCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
248
+ onDoubleClick?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
249
+ onDoubleClickCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
250
+ onDrag?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
251
+ onDragCapture?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
252
+ onDragEnd?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
253
+ onDragEndCapture?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
254
+ onDragEnter?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
255
+ onDragEnterCapture?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
256
+ onDragExit?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
257
+ onDragExitCapture?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
258
+ onDragLeave?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
259
+ onDragLeaveCapture?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
260
+ onDragOver?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
261
+ onDragOverCapture?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
262
+ onDragStart?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
263
+ onDragStartCapture?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
264
+ onDrop?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
265
+ onDropCapture?: import("react").DragEventHandler<HTMLAnchorElement> | undefined;
266
+ onMouseDown?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
267
+ onMouseDownCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
268
+ onMouseLeave?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
269
+ onMouseMove?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
270
+ onMouseMoveCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
271
+ onMouseOut?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
272
+ onMouseOutCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
273
+ onMouseOver?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
274
+ onMouseOverCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
275
+ onMouseUp?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
276
+ onMouseUpCapture?: import("react").MouseEventHandler<HTMLAnchorElement> | undefined;
277
+ onSelect?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
278
+ onSelectCapture?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
279
+ onTouchCancel?: import("react").TouchEventHandler<HTMLAnchorElement> | undefined;
280
+ onTouchCancelCapture?: import("react").TouchEventHandler<HTMLAnchorElement> | undefined;
281
+ onTouchEnd?: import("react").TouchEventHandler<HTMLAnchorElement> | undefined;
282
+ onTouchEndCapture?: import("react").TouchEventHandler<HTMLAnchorElement> | undefined;
283
+ onTouchMove?: import("react").TouchEventHandler<HTMLAnchorElement> | undefined;
284
+ onTouchMoveCapture?: import("react").TouchEventHandler<HTMLAnchorElement> | undefined;
285
+ onTouchStartCapture?: import("react").TouchEventHandler<HTMLAnchorElement> | undefined;
286
+ onPointerDown?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
287
+ onPointerDownCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
288
+ onPointerMove?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
289
+ onPointerMoveCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
290
+ onPointerUp?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
291
+ onPointerUpCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
292
+ onPointerCancel?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
293
+ onPointerCancelCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
294
+ onPointerEnter?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
295
+ onPointerLeave?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
296
+ onPointerOver?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
297
+ onPointerOverCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
298
+ onPointerOut?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
299
+ onPointerOutCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
300
+ onGotPointerCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
301
+ onGotPointerCaptureCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
302
+ onLostPointerCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
303
+ onLostPointerCaptureCapture?: import("react").PointerEventHandler<HTMLAnchorElement> | undefined;
304
+ onScroll?: import("react").UIEventHandler<HTMLAnchorElement> | undefined;
305
+ onScrollCapture?: import("react").UIEventHandler<HTMLAnchorElement> | undefined;
306
+ onScrollEnd?: import("react").UIEventHandler<HTMLAnchorElement> | undefined;
307
+ onScrollEndCapture?: import("react").UIEventHandler<HTMLAnchorElement> | undefined;
308
+ onWheel?: import("react").WheelEventHandler<HTMLAnchorElement> | undefined;
309
+ onWheelCapture?: import("react").WheelEventHandler<HTMLAnchorElement> | undefined;
310
+ onAnimationStart?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
311
+ onAnimationStartCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
312
+ onAnimationEnd?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
313
+ onAnimationEndCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
314
+ onAnimationIteration?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
315
+ onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
316
+ onToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
317
+ onBeforeToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
318
+ onTransitionCancel?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
319
+ onTransitionCancelCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
320
+ onTransitionEnd?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
321
+ onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
322
+ onTransitionRun?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
323
+ onTransitionRunCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
324
+ onTransitionStart?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
325
+ onTransitionStartCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
326
+ href: [AppPathnames] extends [never] ? string | import("url").UrlObject : keyof AppPathnames extends infer T ? T extends keyof AppPathnames ? T extends `${string}[[...${string}` ? T | ({
327
+ pathname: T;
328
+ params?: import("./StrictParams.js").default<T> | undefined;
329
+ } & Omit<import("url").UrlObject, "pathname">) : T extends `${string}[${string}` ? {
330
+ pathname: T;
331
+ params: import("./StrictParams.js").default<T>;
332
+ } & Omit<import("url").UrlObject, "pathname"> : T | ({
333
+ pathname: T;
334
+ } & Omit<import("url").UrlObject, "pathname">) : never : never;
335
+ }, "ref"> & import("react").RefAttributes<HTMLAnchorElement>>;
336
+ redirect: (args: Parameters<(args: {
337
+ /** @see https://next-intl.dev/docs/routing/navigation#getpathname */
338
+ href: [AppPathnames] extends [never] ? string | {
339
+ pathname: string;
340
+ query?: QueryParams;
341
+ } : HrefOrHrefWithParams<keyof AppPathnames>;
342
+ /** The locale to compute the pathname for. */
343
+ locale: Locale;
344
+ /** Will prepend the pathname with the locale prefix, regardless of your `localePrefix` setting. This can be helpful to update a locale cookie when changing locales. */
345
+ forcePrefix?: boolean;
346
+ }) => string>[0], type?: import("next/navigation.js").RedirectType | undefined) => never;
347
+ permanentRedirect: (args: Parameters<(args: {
348
+ /** @see https://next-intl.dev/docs/routing/navigation#getpathname */
349
+ href: [AppPathnames] extends [never] ? string | {
350
+ pathname: string;
351
+ query?: QueryParams;
352
+ } : HrefOrHrefWithParams<keyof AppPathnames>;
353
+ /** The locale to compute the pathname for. */
354
+ locale: Locale;
355
+ /** Will prepend the pathname with the locale prefix, regardless of your `localePrefix` setting. This can be helpful to update a locale cookie when changing locales. */
356
+ forcePrefix?: boolean;
357
+ }) => string>[0], type?: import("next/navigation.js").RedirectType | undefined) => never;
358
+ getPathname: (args: {
359
+ /** @see https://next-intl.dev/docs/routing/navigation#getpathname */
360
+ href: [AppPathnames] extends [never] ? string | {
361
+ pathname: string;
362
+ query?: QueryParams;
363
+ } : HrefOrHrefWithParams<keyof AppPathnames>;
364
+ /** The locale to compute the pathname for. */
365
+ locale: Locale;
366
+ /** Will prepend the pathname with the locale prefix, regardless of your `localePrefix` setting. This can be helpful to update a locale cookie when changing locales. */
367
+ forcePrefix?: boolean;
368
+ }) => string;
369
+ };
370
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { Locale } from 'use-intl';
2
+ import type { InitializedLocaleCookieConfig } from '../../routing/config.js';
3
+ /**
4
+ * We have to keep the cookie value in sync as Next.js might
5
+ * skip a request to the server due to its router cache.
6
+ * See https://github.com/amannn/next-intl/issues/786.
7
+ */
8
+ export default function syncLocaleCookie(localeCookie: InitializedLocaleCookieConfig, pathname: string | null, locale: Locale, nextLocale?: Locale): void;
@@ -0,0 +1,53 @@
1
+ import type { ParsedUrlQueryInput } from 'node:querystring';
2
+ import type { UrlObject } from 'url';
3
+ import type { Locale } from 'use-intl';
4
+ import type { ResolvedRoutingConfig } from '../../routing/config.js';
5
+ import type { DomainsConfig, LocalePrefixMode, Locales, Pathnames } from '../../routing/types.js';
6
+ import type StrictParams from './StrictParams.js';
7
+ type SearchParamValue = ParsedUrlQueryInput[keyof ParsedUrlQueryInput];
8
+ type HrefOrHrefWithParamsImpl<Pathname, Other> = Pathname extends `${string}[[...${string}` ? Pathname | ({
9
+ pathname: Pathname;
10
+ params?: StrictParams<Pathname>;
11
+ } & Other) : Pathname extends `${string}[${string}` ? // Required catch-all & regular params
12
+ {
13
+ pathname: Pathname;
14
+ params: StrictParams<Pathname>;
15
+ } & Other : // No params
16
+ Pathname | ({
17
+ pathname: Pathname;
18
+ } & Other);
19
+ export type HrefOrUrlObjectWithParams<Pathname> = HrefOrHrefWithParamsImpl<Pathname, Omit<UrlObject, 'pathname'>>;
20
+ export type QueryParams = Record<string, SearchParamValue>;
21
+ export type HrefOrHrefWithParams<Pathname> = HrefOrHrefWithParamsImpl<Pathname, {
22
+ query?: QueryParams;
23
+ }>;
24
+ export declare function normalizeNameOrNameWithParams<Pathname>(href: HrefOrHrefWithParams<Pathname> | {
25
+ locale: Locale;
26
+ href: HrefOrHrefWithParams<Pathname>;
27
+ }): {
28
+ pathname: Pathname;
29
+ params?: StrictParams<Pathname>;
30
+ };
31
+ export declare function serializeSearchParams(searchParams: Record<string, SearchParamValue>): string;
32
+ type StrictUrlObject<Pathname> = Omit<UrlObject, 'pathname'> & {
33
+ pathname: Pathname;
34
+ };
35
+ export declare function compileLocalizedPathname<AppLocales extends Locales, Pathname>(opts: {
36
+ locale: AppLocales[number];
37
+ pathname: Pathname;
38
+ params?: StrictParams<Pathname>;
39
+ pathnames: Pathnames<AppLocales>;
40
+ query?: Record<string, SearchParamValue>;
41
+ }): string;
42
+ export declare function compileLocalizedPathname<AppLocales extends Locales, Pathname>(opts: {
43
+ locale: AppLocales[number];
44
+ pathname: StrictUrlObject<Pathname>;
45
+ params?: StrictParams<Pathname>;
46
+ pathnames: Pathnames<AppLocales>;
47
+ query?: Record<string, SearchParamValue>;
48
+ }): UrlObject;
49
+ export declare function getRoute<AppLocales extends Locales>(locale: AppLocales[number], pathname: string, pathnames: Pathnames<AppLocales>): keyof Pathnames<AppLocales>;
50
+ export declare function getBasePath(pathname: string, windowPathname?: string): string;
51
+ export declare function applyPathnamePrefix<AppLocales extends Locales, AppLocalePrefixMode extends LocalePrefixMode, AppPathnames extends Pathnames<AppLocales> | undefined, AppDomains extends DomainsConfig<AppLocales> | undefined>(pathname: string, locale: Locales[number], routing: Pick<ResolvedRoutingConfig<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>, 'localePrefix' | 'domains'> & Partial<Pick<ResolvedRoutingConfig<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>, 'defaultLocale'>>, force?: boolean): string;
52
+ export declare function validateReceivedConfig<AppLocales extends Locales, AppLocalePrefixMode extends LocalePrefixMode, AppPathnames extends Pathnames<AppLocales> | undefined, AppDomains extends DomainsConfig<AppLocales> | undefined>(config: Partial<Pick<ResolvedRoutingConfig<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>, 'defaultLocale' | 'localePrefix'>>): void;
53
+ export {};
@@ -0,0 +1 @@
1
+ export * from './navigation/react-client/index.js';
@@ -0,0 +1 @@
1
+ export * from './navigation/react-server/index.js';
@@ -0,0 +1,10 @@
1
+ import type { CatalogLoaderConfig } from '../../extractor/types.js';
2
+ import type { TurbopackLoaderContext } from '../types.js';
3
+ /**
4
+ * Parses and optimizes catalog files.
5
+ *
6
+ * Note that if we use a dynamic import like `import(`${locale}.json`)`, then
7
+ * the loader will optimistically run for all candidates in this folder (both
8
+ * during dev as well as at build time).
9
+ */
10
+ export default function catalogLoader(this: TurbopackLoaderContext<CatalogLoaderConfig>, source: string): void;
@@ -0,0 +1,3 @@
1
+ export declare const isDevelopment: boolean;
2
+ export declare const isNextBuild: boolean;
3
+ export declare const isDevelopmentOrNextBuild: boolean;
@@ -0,0 +1,3 @@
1
+ import type { NextConfig } from 'next';
2
+ import type { PluginConfig } from './types.js';
3
+ export default function createNextIntlPlugin(i18nPathOrConfig?: string | PluginConfig): (nextConfig?: NextConfig) => NextConfig;
@@ -0,0 +1 @@
1
+ export default function createMessagesDeclaration(messagesPaths: Array<string>): void;
@@ -0,0 +1 @@
1
+ export { default } from './createMessagesDeclaration.js';
@@ -0,0 +1,3 @@
1
+ import type { ExtractorConfig } from '../../extractor/types.js';
2
+ import type { TurbopackLoaderContext } from '../types.js';
3
+ export default function extractionLoader(this: TurbopackLoaderContext<ExtractorConfig>, source: string): void;
@@ -0,0 +1,2 @@
1
+ import type { PluginConfig } from '../types.js';
2
+ export default function initExtractionCompiler(pluginConfig: PluginConfig): void;
@@ -0,0 +1,3 @@
1
+ import type { NextConfig } from 'next';
2
+ import type { PluginConfig } from './types.js';
3
+ export default function getNextConfig(pluginConfig: PluginConfig, nextConfig?: NextConfig): NextConfig & Partial<NextConfig>;
@@ -0,0 +1 @@
1
+ export { default } from './createNextIntlPlugin.js';
@@ -0,0 +1,2 @@
1
+ export declare function hasStableTurboConfig(): boolean;
2
+ export declare function isNextJs16OrHigher(): boolean;
@@ -0,0 +1,29 @@
1
+ import type { LoaderContext } from 'webpack';
2
+ import type { MessagesFormat } from '../extractor/format/types.js';
3
+ export type PluginConfig = {
4
+ requestConfig?: string;
5
+ experimental?: {
6
+ /** A path to the messages file that you'd like to create a declaration for. In case you want to consider multiple files, you can pass an array of paths. */
7
+ createMessagesDeclaration?: string | Array<string>;
8
+ /** Relative path(s) to your source files, to be used in combination with `extract` and `messages`. */
9
+ srcPath?: string | Array<string>;
10
+ /** Configuration about your catalogs of messages, to be used in combination with `srcPath` and `extract`. */
11
+ messages?: {
12
+ /** Relative path to the directory containing your messages. */
13
+ path: string;
14
+ /** Defines the format for how your messages are stored. */
15
+ format: MessagesFormat;
16
+ /** Either automatically infer the locales based on catalog files in `path` or explicitly define them. */
17
+ locales: 'infer' | ReadonlyArray<string>;
18
+ /**
19
+ * When enabled, ICU messages are precompiled at build time, resulting in smaller bundles and faster message formatting.
20
+ */
21
+ precompile?: boolean;
22
+ };
23
+ /** Enables the usage of `useExtracted`, to be used in combination with `srcPath` and `messages`. */
24
+ extract?: {
25
+ sourceLocale: string;
26
+ };
27
+ };
28
+ };
29
+ export type TurbopackLoaderContext<Options> = Pick<LoaderContext<Options>, 'rootContext' | 'sourceMap' | 'getOptions' | 'getResolve' | 'emitWarning' | 'emitError' | 'getLogger' | 'context' | 'loaderIndex' | 'loaders' | 'resourcePath' | 'resourceQuery' | 'resourceFragment' | 'async' | 'callback' | 'cacheable' | 'addDependency' | 'dependency' | 'addContextDependency' | 'addMissingDependency' | 'getDependencies' | 'getContextDependencies' | 'getMissingDependencies' | 'clearDependencies' | 'resource' | 'request' | 'remainingRequest' | 'currentRequest' | 'previousRequest' | 'query' | 'data'>;
@@ -0,0 +1,8 @@
1
+ export declare function throwError(message: string): never;
2
+ export declare function warn(message: string): void;
3
+ /**
4
+ * Returns a function that runs the provided callback only once per process.
5
+ * Next.js can call the config multiple times - this ensures we only run once.
6
+ * Uses an environment variable to track execution across config loads.
7
+ */
8
+ export declare function once(namespace: string): (fn: () => void) => void;
@@ -0,0 +1,6 @@
1
+ import fs from 'fs';
2
+ /**
3
+ * Wrapper around `fs.watch` that provides a workaround
4
+ * for https://github.com/nodejs/node/issues/5039.
5
+ */
6
+ export default function watchFile(filepath: string, callback: () => void): fs.FSWatcher;
@@ -0,0 +1 @@
1
+ export { default } from './plugin/index.js';
@@ -0,0 +1,16 @@
1
+ /**
2
+ * This is the main entry file when non-'react-server'
3
+ * environments import from 'next-intl'.
4
+ *
5
+ * Maintainer notes:
6
+ * - Make sure this mirrors the API from 'react-server'.
7
+ * - Make sure everything exported from this module is
8
+ * supported in all Next.js versions that are supported.
9
+ */
10
+ import { useFormatter as base_useFormatter, useTranslations as base_useTranslations } from 'use-intl';
11
+ export * from 'use-intl/core';
12
+ export { IntlProvider, useLocale, useNow, useTimeZone, useMessages } from 'use-intl/react';
13
+ export { _useExtracted as useExtracted } from 'use-intl/react';
14
+ export declare const useTranslations: typeof base_useTranslations;
15
+ export declare const useFormatter: typeof base_useFormatter;
16
+ export { default as NextIntlClientProvider } from '../shared/NextIntlClientProvider.js';
@@ -0,0 +1,5 @@
1
+ import type { ComponentProps } from 'react';
2
+ import BaseNextIntlClientProvider from '../shared/NextIntlClientProvider.js';
3
+ type Props = ComponentProps<typeof BaseNextIntlClientProvider>;
4
+ export default function NextIntlClientProviderServer({ formats, locale, messages, now, timeZone, ...rest }: Props): Promise<import("react/jsx-runtime").JSX.Element>;
5
+ export {};
@@ -0,0 +1,16 @@
1
+ /**
2
+ * This is the main entry file when 'react-server' environments
3
+ * (i.e. RSC) import from 'next-intl'. Currently we export everything
4
+ * from `use-intl` core, but React-APIs are stubbed out.
5
+ *
6
+ * Make sure this mirrors the API from '../react-client'.
7
+ */
8
+ export { default as useLocale } from './useLocale.js';
9
+ export { default as useTranslations } from './useTranslations.js';
10
+ export { default as useFormatter } from './useFormatter.js';
11
+ export { default as useNow } from './useNow.js';
12
+ export { default as useTimeZone } from './useTimeZone.js';
13
+ export { default as useMessages } from './useMessages.js';
14
+ export { default as NextIntlClientProvider } from './NextIntlClientProviderServer.js';
15
+ export { default as useExtracted } from './useExtracted.js';
16
+ export * from 'use-intl/core';
@@ -0,0 +1,2 @@
1
+ import { type ReactNode } from 'react';
2
+ export declare function renderToStream(children: ReactNode): Promise<string>;
@@ -0,0 +1,2 @@
1
+ import getConfig from '../server/react-server/getConfig.js';
2
+ export default function useConfig(hookName: string): Awaited<ReturnType<typeof getConfig>>;
@@ -0,0 +1,2 @@
1
+ import getServerExtractor from '../server/react-server/getServerExtractor.js';
2
+ export default function useExtracted(namespace?: string): ReturnType<typeof getServerExtractor>;
@@ -0,0 +1,2 @@
1
+ import type { useFormatter as useFormatterType } from 'use-intl';
2
+ export default function useFormatter(): ReturnType<typeof useFormatterType>;
@@ -0,0 +1,2 @@
1
+ import type { useLocale as useLocaleType } from 'use-intl';
2
+ export default function useLocale(): ReturnType<typeof useLocaleType>;
@@ -0,0 +1,2 @@
1
+ import type { useMessages as useMessagesType } from 'use-intl';
2
+ export default function useMessages(): ReturnType<typeof useMessagesType>;
@@ -0,0 +1,2 @@
1
+ import type { useNow as useNowType } from 'use-intl';
2
+ export default function useNow(options?: Parameters<typeof useNowType>[0]): ReturnType<typeof useNowType>;