UNPKG

confinode

Version:

Node application configuration reader

25 lines (24 loc) 1.01 kB
import { InternalResult } from '../../ConfinodeResult'; import ConfigDescription, { ConfigDescriptionParameter, ParserContext } from '../ConfigDescription'; /** * Description of an array. */ export default class ArrayDescription<T> implements ConfigDescription<T[]> { protected readonly description: ConfigDescriptionParameter<T>; /** * Create the array description. * * @param description - The description to replicate for each array item. */ constructor(description: ConfigDescriptionParameter<T>); parse(data: unknown, context: ParserContext<T[]>): InternalResult<T[]> | undefined; /** * Parse and merge the array content. The default behavior is to concatenate the child nodes to the parsed * parent ones. * * @param data - The array to parse and merge. * @param context - The parsing context. * @returns The parsed and merged array. */ protected mergeArray(data: any[], context: ParserContext<T[]>): InternalResult<T[]>; }