import { DiagnosticRuleSet, ExecutionEnvironment } from '../common/configOptions'; import { TextRangeDiagnosticSink } from '../common/diagnosticSink'; import { TextRange } from '../common/textRange'; import { TextRangeCollection } from '../common/textRangeCollection'; import { Uri } from '../common/uri/uri'; import { Scope } from './scope'; import { IPythonMode } from './sourceFile'; import { SymbolTable } from './symbol'; export interface AbsoluteModuleDescriptor { importingFileUri: Uri; nameParts: string[]; } export interface LookupImportOptions { skipFileNeededCheck: boolean; skipParsing?: boolean; } export type ImportLookup = (fileUriOrModule: Uri | AbsoluteModuleDescriptor, options?: LookupImportOptions) => ImportLookupResult | undefined; export interface ImportLookupResult { symbolTable: SymbolTable; dunderAllNames: string[] | undefined; usesUnsupportedDunderAllForm: boolean; docString: string | undefined; isInPyTypedPackage: boolean; } export interface AnalyzerFileInfo { importLookup: ImportLookup; futureImports: Set; builtinsScope?: Scope | undefined; diagnosticSink: TextRangeDiagnosticSink; executionEnvironment: ExecutionEnvironment; diagnosticRuleSet: DiagnosticRuleSet; lines: TextRangeCollection; typingSymbolAliases: Map; definedConstants: Map; fileId: string; fileUri: Uri; moduleName: string; isStubFile: boolean; isTypingStubFile: boolean; isTypingExtensionsStubFile: boolean; isTypeshedStubFile: boolean; isBuiltInStubFile: boolean; isInPyTypedPackage: boolean; ipythonMode: IPythonMode; accessedSymbolSet: Set; } export declare function isAnnotationEvaluationPostponed(fileInfo: AnalyzerFileInfo): boolean;