request-meta.d.ts 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /// <reference types="node" />
  2. /// <reference types="node" />
  3. /// <reference types="node" />
  4. import type { IncomingMessage } from 'http';
  5. import type { ParsedUrlQuery } from 'querystring';
  6. import type { UrlWithParsedQuery } from 'url';
  7. import type { BaseNextRequest } from './base-http';
  8. import type { ClonableBody } from './body-streams';
  9. export declare const NEXT_REQUEST_META: unique symbol;
  10. export declare type NextIncomingMessage = (BaseNextRequest | IncomingMessage) & {
  11. [NEXT_REQUEST_META]?: RequestMeta;
  12. };
  13. export interface RequestMeta {
  14. __NEXT_INIT_QUERY?: ParsedUrlQuery;
  15. __NEXT_INIT_URL?: string;
  16. __NEXT_CLONABLE_BODY?: ClonableBody;
  17. __nextHadTrailingSlash?: boolean;
  18. __nextIsLocaleDomain?: boolean;
  19. __nextStrippedLocale?: boolean;
  20. _nextDidRewrite?: boolean;
  21. _nextHadBasePath?: boolean;
  22. _nextRewroteUrl?: string;
  23. _protocol?: string;
  24. _nextMiddlewareCookie?: string[];
  25. _nextDataNormalizing?: boolean;
  26. }
  27. export declare function getRequestMeta(req: NextIncomingMessage, key?: undefined): RequestMeta;
  28. export declare function getRequestMeta<K extends keyof RequestMeta>(req: NextIncomingMessage, key: K): RequestMeta[K];
  29. export declare function setRequestMeta(req: NextIncomingMessage, meta: RequestMeta): RequestMeta;
  30. export declare function addRequestMeta<K extends keyof RequestMeta>(request: NextIncomingMessage, key: K, value: RequestMeta[K]): RequestMeta;
  31. declare type NextQueryMetadata = {
  32. __nextNotFoundSrcPage?: string;
  33. __nextDefaultLocale?: string;
  34. __nextFallback?: 'true';
  35. __nextLocale?: string;
  36. __nextSsgPath?: string;
  37. _nextBubbleNoFallback?: '1';
  38. __nextDataReq?: '1';
  39. __nextCustomErrorRender?: '1';
  40. };
  41. export declare type NextParsedUrlQuery = ParsedUrlQuery & NextQueryMetadata & {
  42. amp?: '1';
  43. };
  44. export interface NextUrlWithParsedQuery extends UrlWithParsedQuery {
  45. query: NextParsedUrlQuery;
  46. }
  47. export declare function getNextInternalQuery(query: NextParsedUrlQuery): NextQueryMetadata;
  48. export {};