UNPKG

@fastly/esi

Version:

ESI implementation for JavaScript, using the modern fetch and streaming APIs.

63 lines 2.26 kB
export interface IEsiVariable { getValue(): string | undefined; getSubValue(key: string): string | undefined; } export declare function parseAsNumber(val: string | undefined): number | undefined; export declare class EsiStringVariable implements IEsiVariable { value: string; constructor(value: string); getSubValue(_key: string): string | undefined; getValue(): string | undefined; } type EsiListDefFunc = (value: string) => { [k: string]: boolean; }; export declare class EsiListVariable implements IEsiVariable { value: string; fn: EsiListDefFunc; map?: { [k: string]: boolean; }; constructor(value: string, fn: EsiListDefFunc); getSubValue(key: string): string | undefined; getValue(): string | undefined; } type EsiDictionaryDefFunc = (value: string) => { [k: string]: string | undefined; }; export declare class EsiDictionaryVariable implements IEsiVariable { value: string; fn: EsiDictionaryDefFunc; map?: { [k: string]: string | undefined; }; constructor(value: string, fn: EsiDictionaryDefFunc); getSubValue(key: string): string | undefined; getValue(): string | undefined; } export declare class EsiAcceptLanguageVariable extends EsiListVariable { constructor(value: string); } export declare class EsiCookieVariable extends EsiDictionaryVariable { constructor(value: string); } export declare class EsiQueryStringVariable extends EsiDictionaryVariable { constructor(value: string); } export declare class EsiUserAgentVariable extends EsiDictionaryVariable { constructor(value: string); } export interface IEsiVariables { getValue(name: string, subKey: string | null): string | undefined; } export declare class EsiVariables implements IEsiVariables { values: { [name: string]: IEsiVariable | undefined; }; constructor(url?: URL, headers?: Headers); getValue(name: string, subKey?: string | null): string | undefined; } export declare function applyEsiVariables(input: string | undefined, vars?: IEsiVariables): string | undefined; export declare function evaluateEsiVariable(input: string | undefined, vars?: IEsiVariables): string | undefined; export {}; //# sourceMappingURL=EsiVariables.d.ts.map