import { PathExpression } from "@atomist/tree-path"; import { FileParser } from "./FileParser"; /** * Registry of FileParsers. Allows resolution of the appropriate parser * for a path expression */ export interface FileParserRegistry { /** * Find a parser for the given path expression. * It's first location step must start with a node name. * If the FileParser supports validation, validate that it * can execute the path expression and throw an exception if not. * @param {string | PathExpression} pex * @return {FileParser} */ parserFor(pex: string | PathExpression): FileParser | undefined; } /** * Implementation of FileParserRegistry implementing fluent builder pattern */ export declare class DefaultFileParserRegistry implements FileParserRegistry { private parserRegistry; addParser(pr: FileParser): this; parserFor(pathExpression: string | PathExpression): FileParser | any; toString(): string; }