@fastly/esi
Version:
ESI implementation for JavaScript, using the modern fetch and streaming APIs.
63 lines • 2.26 kB
TypeScript
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