strapi-nextgen-framework
Version:
Production-ready, type-safe framework bridging Strapi v4 CMS and Next.js 14+ App Router with automatic cache management, Error Boundaries, and SEO optimization
60 lines • 1.59 kB
TypeScript
/**
* Preview Mode Handler - Phase 4 Implementation
* This is a placeholder for the preview/draft mode handler
*/
import { NextResponse, type NextRequest } from 'next/server';
/**
* Configuration for the preview handler
*/
export interface PreviewConfig {
/** Secret for preview mode validation */
secret: string;
/** Enable logging */
logging?: boolean;
}
/**
* Creates a preview mode handler for draft content
*
* Enables Next.js draft mode to preview unpublished content from Strapi.
* The SDK automatically detects draft mode and fetches draft content.
*
* @param config - Preview configuration
* @returns Next.js Route Handler
*
* @example
* ```typescript
* // app/api/preview/route.ts
* import { createPreviewHandler } from 'strapi-nextgen-framework';
*
* const handler = createPreviewHandler({
* secret: process.env.STRAPI_PREVIEW_SECRET!,
* logging: true,
* });
*
* export { handler as GET };
* ```
*
* Usage:
* ```
* /api/preview?secret=YOUR_SECRET&slug=/about
* ```
*/
export declare function createPreviewHandler(config: PreviewConfig): (request: NextRequest) => Promise<NextResponse<{
error: string;
}>>;
/**
* Creates a handler to disable preview mode
*
* @example
* ```typescript
* // app/api/exit-preview/route.ts
* import { createExitPreviewHandler } from 'strapi-nextgen-framework';
*
* const handler = createExitPreviewHandler();
* export { handler as GET };
* ```
*/
export declare function createExitPreviewHandler(): () => Promise<NextResponse<{
preview: boolean;
}>>;
//# sourceMappingURL=index.d.ts.map