import { TypeDeclaration } from "./models/TypeDeclaration"; declare type ParserConfig = { breakOnUnresolvedImports?: boolean; unknownTypeForUnresolved?: boolean; /** * Defines if imports from libraries, that are located in the node_modules directory, should be resolved. */ resolveLibraries?: boolean; /** * Identifier that should not be resolved. * * Example: * * ```ts * type DateString = string * type ListOfDates = Array * ``` * * would normally: * * ```ts * resolve("ListOfDates") // into type ListOfDates = Array * ``` * * However, if `"DateString"` is added to this property, it will: * * ```ts * resolve("ListOfDates") // into type ListOfDates = Array * ``` */ doNotResolve?: Array; }; export declare class Parser { private imports; private declarations; private config; private fileManager; constructor(path: string, config?: ParserConfig); private parseFile; getDeclarations(): Array; getSourcePathOf(declaration: TypeDeclaration): string | null; getDeclaration(name: string): TypeDeclaration | undefined; /** * Checks if a the requested type exists and is resolved. */ isResolved(identifier: string): boolean; private getImport; private resolveImport; private isTypeResolved; resolve(name: string): TypeDeclaration; private resolveType; private resolveTypeReference; private resolveUnionType; private resolveTypeLiteral; private resolveArrayType; private createResolvedTypeDeclaration; } export declare type DeclarationMeta = { identifier: string; exported: boolean; default: boolean; }; export {};