import { Dictionary } from '../configHelpers/config'; import { ParameterOptions, ScaffolderTransformer, ScaffolderFunction, Hooks } from '../configHelpers/config'; export interface ConfigGetters { parameterOptions(parameter: string): ParameterOptions; transformer(transformer: string): ScaffolderTransformer; function(aFunction: string): ScaffolderFunction; templateDescription(): string; hooks(): Hooks; } export interface IConfig { forTemplate(templateName: string): IConfig; get: ConfigGetters; validateConfig: () => void; } export declare class Config implements IConfig { private configJson; private templateName; private parsedSchemaResult; constructor(configJson: Dictionary); forTemplate(templateName: string): this; validateConfig(): void; getSchemaErrors(): string[]; private getFromTemplateScope; private hasTemplateOptions; private getFromFirstLevel; private getFromConfig; get: ConfigGetters; }