UNPKG

json-placeholder-replacer

Version:

Javascript/Typescript library/cli to replace placeholders in an javascript object

47 lines (46 loc) 1.49 kB
export interface DelimiterTagFixture { begin: string; end: string; } export interface Placeholder { begin: string; end: string; escapedBeginning: string; escapedEnding: string; regex: RegExp; } export interface BuildOptions { delimiterTags: DelimiterTagFixture[]; defaultValueSeparator: string; nullishValues: (boolean | number | string | null)[]; } type NullishValue = boolean | number | string | null; export interface Configuration { placeholders: Placeholder[]; defaultValueSeparator: string; nullishValues: NullishValue[]; } type VariableMap = Record<string, unknown>; export declare class JsonPlaceholderReplacer { private readonly variablesMap; private readonly configuration; private readonly delimiterTagsRegex; private readonly serializedNullishValues; private readonly stringifyCache; private readonly escapeRegExp; constructor(options?: Partial<BuildOptions>); addVariableMap(variableMap: VariableMap | string): JsonPlaceholderReplacer; setVariableMap(...variablesMap: (VariableMap | string)[]): JsonPlaceholderReplacer; replace(json: object): object; replaceWith(json: object, ...variablesMap: VariableMap[]): object; private initializeConfigurations; private replaceChildren; private replaceValue; private replacer; private safeStringify; private parseTag; private checkInEveryMap; private isNullishValue; private navigateThroughMap; } export {};