///
import * as nunjucks from 'nunjucks';
import { ExecuteContext, UserInfo } from './compiler';
import { IncomingHttpHeaders, KoaRequest } from '../../models/index';
export declare const ReservedContextKeys: {
CurrentProfileName: string;
};
/** A helper class to manage metadata while executing templates, e.g. parameters, profile ...etc. */
export declare class NunjucksExecutionMetadata {
private profileName;
private parameters;
private userInfo?;
private req?;
private headers?;
constructor({ parameters, profileName, user, req, headers, }: ExecuteContext);
/** Load from nunjucks context */
static load(context: nunjucks.Context): NunjucksExecutionMetadata;
/** Dump to a pure object */
dump(): {
[x: string]: string | {
params: Record;
user: UserInfo | undefined;
req: KoaRequest | undefined;
profile: string;
headers: IncomingHttpHeaders | undefined;
};
context: {
params: Record;
user: UserInfo | undefined;
req: KoaRequest | undefined;
profile: string;
headers: IncomingHttpHeaders | undefined;
};
};
getProfileName(): string;
getUserInfo(): UserInfo | undefined;
getRequest(): KoaRequest | undefined;
getHeaders(): IncomingHttpHeaders | undefined;
}