import { AssertNode, AssignmentExpressionNode, AssignmentNode, AugmentedAssignmentNode, AwaitNode, BinaryOperationNode, BreakNode, CallNode, ClassNode, ComprehensionNode, ContinueNode, DelNode, ExceptNode, ForNode, FunctionNode, GlobalNode, IfNode, ImportAsNode, ImportFromNode, IndexNode, LambdaNode, MatchNode, MemberAccessNode, ModuleNameNode, ModuleNode, NameNode, NonlocalNode, ParseNode, PatternAsNode, PatternCaptureNode, PatternMappingExpandEntryNode, RaiseNode, ReturnNode, SuiteNode, TernaryNode, TryNode, TypeAliasNode, TypeAnnotationNode, TypeParameterListNode, UnaryOperationNode, WhileNode, WithNode, YieldFromNode, YieldNode } from '../parser/parseNodes'; import { AnalyzerFileInfo } from './analyzerFileInfo'; import { ParseTreeWalker } from './parseTreeWalker'; import { Scope } from './scope'; export declare class Binder extends ParseTreeWalker { private _moduleSymbolOnly; private readonly _fileInfo; private _deferredBindingTasks; private _currentScope; private _currentFlowNode; private _targetFunctionDeclaration; private _currentBreakTarget; private _currentContinueTarget; private _currentTrueTarget; private _currentFalseTarget; private _currentExceptTargets; private _finallyTargets; private _currentReturnTarget; private _currentScopeCodeFlowExpressions; private _currentMatchSubjExpr; private _typingImportAliases; private _sysImportAliases; private _dataclassesImportAliases; private _typingSymbolAliases; private _dataclassesSymbolAliases; private _dunderAllNames; private _dunderAllStringNodes; private _usesUnsupportedDunderAllForm; private _isInExceptSuite; private _isInAnnotatedAnnotation; private _dunderSlotsEntries; private static _unreachableStaticConditionFlowNode; private static _unreachableStructuralFlowNode; private _potentialHiddenSymbols; private _potentialPrivateSymbols; private _codeFlowComplexity; constructor(fileInfo: AnalyzerFileInfo, _moduleSymbolOnly?: boolean); bindModule(node: ModuleNode): void; visitModule(node: ModuleNode): boolean; visitSuite(node: SuiteNode): boolean; visitModuleName(node: ModuleNameNode): boolean; visitClass(node: ClassNode): boolean; visitFunction(node: FunctionNode): boolean; visitLambda(node: LambdaNode): boolean; visitCall(node: CallNode): boolean; visitTypeParameterList(node: TypeParameterListNode): boolean; visitTypeAlias(node: TypeAliasNode): boolean; visitAssignment(node: AssignmentNode): boolean; visitAssignmentExpression(node: AssignmentExpressionNode): boolean; visitAugmentedAssignment(node: AugmentedAssignmentNode): boolean; visitDel(node: DelNode): boolean; visitTypeAnnotation(node: TypeAnnotationNode): boolean; visitFor(node: ForNode): boolean; visitContinue(node: ContinueNode): boolean; visitBreak(node: BreakNode): boolean; visitReturn(node: ReturnNode): boolean; visitYield(node: YieldNode): boolean; visitYieldFrom(node: YieldFromNode): boolean; visitMemberAccess(node: MemberAccessNode): boolean; visitName(node: NameNode): boolean; visitIndex(node: IndexNode): boolean; visitIf(node: IfNode): boolean; visitWhile(node: WhileNode): boolean; visitAssert(node: AssertNode): boolean; visitExcept(node: ExceptNode): boolean; visitRaise(node: RaiseNode): boolean; visitTry(node: TryNode): boolean; visitAwait(node: AwaitNode): boolean; visitGlobal(node: GlobalNode): boolean; visitNonlocal(node: NonlocalNode): boolean; visitImportAs(node: ImportAsNode): boolean; visitImportFrom(node: ImportFromNode): boolean; visitWith(node: WithNode): boolean; visitTernary(node: TernaryNode): boolean; visitUnaryOperation(node: UnaryOperationNode): boolean; visitBinaryOperation(node: BinaryOperationNode): boolean; visitComprehension(node: ComprehensionNode): boolean; visitMatch(node: MatchNode): boolean; visitPatternAs(node: PatternAsNode): boolean; visitPatternCapture(node: PatternCaptureNode): boolean; visitPatternMappingExpandEntry(node: PatternMappingExpandEntryNode): boolean; private _addTypingImportAliasesFromBuiltinsScope; private _formatModuleName; private _getNonClassParentScope; private _addSlotsToCurrentScope; private _isInComprehension; private _addPatternCaptureTarget; private _useExceptTargets; private _getDunderAllNamesFromImport; private _addImplicitFromImport; private _createAliasDeclarationForMultipartImportName; private _walkStatementsAndReportUnreachable; private _createStartFlowNode; private _createBranchLabel; private _createFlowNarrowForPattern; private _createContextManagerLabel; private _createLoopLabel; private _finishFlowLabel; private _bindNeverCondition; private _bindConditional; private _disableTrueFalseTargets; private _setTrueFalseTargets; private _createFlowConditional; private _isLogicalExpression; private _isNarrowingExpression; private _createAssignmentTargetFlowNodes; private _createCallFlowNode; private _createVariableAnnotationFlowNode; private _createFlowAssignment; private _createFlowWildcardImport; private _createFlowExhaustedMatch; private _isCodeUnreachable; private _addExceptTargets; private _trackCodeFlowExpressions; private _bindLoopStatement; private _addAntecedent; private _bindNameToScope; private _bindNameValueToScope; private _bindPossibleTupleNamedTarget; private _addImplicitSymbolToCurrentScope; private _addSymbolToCurrentScope; private _createNewScope; private _addInferredTypeAssignmentForVariable; private _isInferenceAllowedInPyTyped; private _addTypeDeclarationForVariable; private _isTypingAnnotation; private _isDataclassesAnnotation; private _isKnownAnnotation; private _getVariableDocString; private _isAnnotationFinal; private _isAnnotationClassVar; private _getMemberAccessInfo; private _addImplicitImportsToLoaderActions; private _handleTypingStubAssignmentOrAnnotation; private _deferBinding; private _bindDeferred; private _bindYield; private _getUniqueFlowNodeId; private _addDiagnostic; private _addSyntaxError; } export declare class YieldFinder extends ParseTreeWalker { private _containsYield; checkContainsYield(node: ParseNode): boolean; visitYield(node: YieldNode): boolean; visitYieldFrom(node: YieldFromNode): boolean; } export declare class ReturnFinder extends ParseTreeWalker { private _containsReturn; checkContainsReturn(node: ParseNode): boolean; visitReturn(node: ReturnNode): boolean; } export declare class DummyScopeGenerator extends ParseTreeWalker { private _currentScope; constructor(currentScope: Scope | undefined); visitClass(node: ClassNode): boolean; visitFunction(node: FunctionNode): boolean; private _createNewScope; }