import { Diagnostic, DiagnosticWithinFile } from '../common/diagnostic'; import { Uri } from '../common/uri/uri'; import { ScopeType } from './scope'; export declare enum SymbolCategory { Indeterminate = 0, Module = 1, Class = 2, Variable = 3, Constant = 4, Function = 5, Method = 6, TypeVar = 7, TypeAlias = 8 } export declare const enum TypeKnownStatus { Known = 0,// Type is fully known (declared) Ambiguous = 1,// Type is inferred and potentially ambiguous (may differ by type checker) PartiallyUnknown = 2,// Part of the type is unknown Unknown = 3 } export interface SymbolInfo { category: SymbolCategory; name: string; fullName: string; fileUri: Uri; isExported: boolean; typeKnownStatus: TypeKnownStatus; referenceCount: number; diagnostics: DiagnosticWithinFile[]; scopeType: ScopeType; } export interface ModuleInfo { name: string; uri: Uri; isExported: boolean; } export type AlternateSymbolNameMap = Map; export interface PackageTypeReport { packageName: string; moduleName: string; ignoreExternal: boolean; packageRootDirectoryUri: Uri | undefined; moduleRootDirectoryUri: Uri | undefined; isModuleSingleFile: boolean; pyTypedPathUri: Uri | undefined; missingFunctionDocStringCount: number; missingClassDocStringCount: number; missingDefaultParamCount: number; alternateSymbolNames: AlternateSymbolNameMap; modules: Map; generalDiagnostics: Diagnostic[]; symbols: Map; } export declare function getEmptyReport(packageName: string, packageRootUri: Uri, moduleName: string, moduleRootUri: Uri, isModuleSingleFile: boolean, ignoreExternal: boolean): PackageTypeReport;