@jss-rule-engine/edge
Version:
26 lines (25 loc) • 1.1 kB
TypeScript
import { NextResponse, NextRequest } from 'next/server';
import { ExperienceParams, GraphQLPersonalizeServiceConfig } from '@sitecore-jss/sitecore-jss/personalize';
import { MiddlewareBase, MiddlewareBaseConfig } from './middleware';
export type ScPersonalizeMiddlewareConfig = MiddlewareBaseConfig & {
edgeConfig: Omit<GraphQLPersonalizeServiceConfig, 'fetch'>;
};
/**
* Middleware / handler to support Sitecore Personalize
*/
export declare class ScPersonalizeMiddleware extends MiddlewareBase {
protected config: ScPersonalizeMiddlewareConfig;
private _personalizeService;
/**
* @param {ScPersonalizeMiddlewareConfig} [config] Personalize middleware config
*/
constructor(config: ScPersonalizeMiddlewareConfig);
/**
* Gets the Next.js middleware handler with error handling
* @returns middleware handler
*/
getHandler(): (req: NextRequest, res?: NextResponse) => Promise<NextResponse>;
protected getExperienceParams(req: NextRequest): ExperienceParams;
protected excludeRoute(pathname: string): boolean | undefined;
private handler;
}