@prismicio/next
Version:
Helpers to integrate Prismic into Next.js apps
30 lines (29 loc) • 1.23 kB
TypeScript
import { EnableAutoPreviewsConfig } from "./enableAutoPreviews.js";
import { ClientConfig } from "@prismicio/client";
//#region src/pages/types.d.ts
/** Configuration for creating a Prismic client with automatic preview support in Next.js apps. */
type CreateClientConfig = ClientConfig & Pick<EnableAutoPreviewsConfig, "previewData" | "req">;
/**
* The minimal set of properties needed from `next`'s `NextApiRequest` type.
*
* This request type is only compatible with API routes defined in the `pages` directory.
*/
type NextApiRequestLike = {
query: Partial<Record<string, string | string[]>>;
cookies: Partial<Record<string, string>>;
};
/**
* The minimal set of properties needed from `next`'s `NextApiResponse` type.
*
* This request type is only compatible with API routes defined in the `pages` directory.
*/
type NextApiResponseLike = {
redirect(url: string): NextApiResponseLike;
clearPreviewData(): NextApiResponseLike;
setHeader(name: string, value: string | string[]): NextApiResponseLike;
json(body: any): void;
setPreviewData(data: object | string): NextApiResponseLike;
};
//#endregion
export { CreateClientConfig, NextApiRequestLike, NextApiResponseLike };
//# sourceMappingURL=types.d.ts.map