///
import { ExperienceConfig, ExperienceQueue, ExperienceResults, Experience, Change, Inputs, Options, VisitorProfile } from './models';
import { StickyProcesor } from './sticky';
export declare class CfEdgeRelay {
config: ExperienceConfig;
queue: ExperienceQueue;
generatedDefines: Record;
results: ExperienceResults;
deployId: string;
isSnippetless: boolean;
packageVersion: string;
browserPackageVersion: string;
logger: any;
additionalCookies: string[];
additionalHeaders: Record;
accountId?: number;
snippetId?: string;
inputs: Inputs;
stickyProcessor?: StickyProcesor;
variationMap: any;
visitorProfile: VisitorProfile;
constructor(DATA: any, options: Options, inputs: Inputs, logger: any);
validateVisitorId(): boolean;
getAdditionalHeaders(): Headers;
getStickyProcessor(): StickyProcesor;
loadStickyData(): void;
saveStickyData(): void;
decide(context: ExecutionContext): Promise;
getChangesFromVariation(exp: Experience, variationIds: Set, viewsIds: string[]): Change[];
applyTransforms(rewriter: HTMLRewriter, targetRequest: Request, existingSnippet?: string): HTMLRewriter;
shouldDeferBrowserJs(): boolean;
applyBrowserJs(rewriter: HTMLRewriter, cacheTTL?: number, position?: string, nonce?: string, isProd?: boolean, useEdgeDeliverySnippet?: boolean): Promise;
insertJquery(rewriter: HTMLRewriter, element: string, nonce?: string, tagPosition?: 'prepend' | 'append' | 'after'): void;
getJqueryUrl(version: string): string;
computeBrowserJS(cacheTTL?: number): Promise;
removeSnippetChange(existingSnippetParam: string): Change;
updateInputsWithOriginCookies(originSetCookieHeaders: string[]): void;
/**
* Add the required Content-Security-Policy directives to support Optimizely
* @param originalPolicy The original Content-Security-Policy header value
*/
addOptimizelyCSPRequirements(originalPolicy: string | null): void;
}