confinode
Version:
Node application configuration reader
22 lines (21 loc) • 789 B
TypeScript
import { InternalResult } from '../../ConfinodeResult';
import ConfigDescription, { ConfigDescriptionParameter, ParserContext } from '../ConfigDescription';
/**
* An object literal internal description.
*/
export declare type ConfigDescriptionLiteral<T extends object> = {
[P in keyof T]: ConfigDescriptionParameter<T[P]>;
};
/**
* Description of an object literal.
*/
export default class LiteralDescription<T extends object> implements ConfigDescription<T> {
private readonly description;
/**
* Create a literal configuration description.
*
* @param description - The description of the object literal.
*/
constructor(description: ConfigDescriptionLiteral<T>);
parse(data: unknown, context: ParserContext<T>): InternalResult<T> | undefined;
}