import { ClassNode, ComprehensionNode, ExecutionScopeNode, FunctionNode, LambdaNode, ModuleNode, ParseNode, StringNode } from '../parser/parseNodes'; import { AnalyzerFileInfo } from './analyzerFileInfo'; import { FlowNode } from './codeFlowTypes'; import { Declaration } from './declaration'; import { ImportResult } from './importResult'; import { Scope } from './scope'; export interface DunderAllInfo { names: string[]; stringNodes: StringNode[]; usesUnsupportedDunderAllForm: boolean; } export type ScopedNode = ModuleNode | ClassNode | FunctionNode | LambdaNode | ComprehensionNode; export declare function cleanNodeAnalysisInfo(node: ParseNode): void; export declare function getImportInfo(node: ParseNode): ImportResult | undefined; export declare function setImportInfo(node: ParseNode, importInfo: ImportResult): void; export declare function getScope(node: ParseNode): Scope | undefined; export declare function setScope(node: ParseNode, scope: Scope): void; export declare function getDeclaration(node: ParseNode): Declaration | undefined; export declare function setDeclaration(node: ParseNode, decl: Declaration): void; export declare function getFlowNode(node: ParseNode): FlowNode | undefined; export declare function setFlowNode(node: ParseNode, flowNode: FlowNode): void; export declare function getAfterFlowNode(node: ParseNode): FlowNode | undefined; export declare function setAfterFlowNode(node: ParseNode, flowNode: FlowNode): void; export declare function getFileInfo(node: ParseNode): AnalyzerFileInfo; export declare function setFileInfo(node: ModuleNode, fileInfo: AnalyzerFileInfo): void; export declare function getCodeFlowExpressions(node: ExecutionScopeNode): Set | undefined; export declare function setCodeFlowExpressions(node: ExecutionScopeNode, expressions: Set): void; export declare function getCodeFlowComplexity(node: ExecutionScopeNode): number; export declare function setCodeFlowComplexity(node: ExecutionScopeNode, complexity: number): void; export declare function getDunderAllInfo(node: ModuleNode): DunderAllInfo | undefined; export declare function setDunderAllInfo(node: ModuleNode, names: DunderAllInfo | undefined): void; export declare function isCodeUnreachable(node: ParseNode): boolean;