# generated by datamodel-codegen:
#   filename:  pyright.schema.json
#   timestamp: 2025-08-03T05:12:33+00:00

from __future__ import annotations

from typing import Dict, List, Literal, NotRequired, TypedDict, Union

Diagnostic = Union[bool, Literal["none", "information", "warning", "error"]]


ExtraPaths = List[str]


PythonVersion = str


PythonPlatform = str


DisableBytesTypePromotions = bool


StrictListInference = bool


StrictSetInference = bool


StrictDictionaryInference = bool


AnalyzeUnannotatedFunctions = bool


StrictParameterNoneValue = bool


EnableExperimentalFeatures = bool


EnableTypeIgnoreComments = bool


EnableReachabilityAnalysis = bool


DeprecateTypingAliases = bool


ReportGeneralTypeIssues = Diagnostic


ReportPropertyTypeMismatch = Diagnostic


ReportFunctionMemberAccess = Diagnostic


ReportMissingImports = Diagnostic


ReportMissingModuleSource = Diagnostic


ReportInvalidTypeForm = Diagnostic


ReportMissingTypeStubs = Diagnostic


ReportImportCycles = Diagnostic


ReportUnusedImport = Diagnostic


ReportUnusedClass = Diagnostic


ReportUnusedFunction = Diagnostic


ReportUnusedVariable = Diagnostic


ReportDuplicateImport = Diagnostic


ReportWildcardImportFromLibrary = Diagnostic


ReportAbstractUsage = Diagnostic


ReportArgumentType = Diagnostic


ReportAssertTypeFailure = Diagnostic


ReportAssignmentType = Diagnostic


ReportAttributeAccessIssue = Diagnostic


ReportCallIssue = Diagnostic


ReportInconsistentOverload = Diagnostic


ReportIndexIssue = Diagnostic


ReportInvalidTypeArguments = Diagnostic


ReportNoOverloadImplementation = Diagnostic


ReportOperatorIssue = Diagnostic


ReportOptionalSubscript = Diagnostic


ReportOptionalMemberAccess = Diagnostic


ReportOptionalCall = Diagnostic


ReportOptionalIterable = Diagnostic


ReportOptionalContextManager = Diagnostic


ReportOptionalOperand = Diagnostic


ReportRedeclaration = Diagnostic


ReportReturnType = Diagnostic


ReportTypedDictNotRequiredAccess = Diagnostic


ReportUntypedFunctionDecorator = Diagnostic


ReportUntypedClassDecorator = Diagnostic


ReportUntypedBaseClass = Diagnostic


ReportUntypedNamedTuple = Diagnostic


ReportPrivateUsage = Diagnostic


ReportTypeCommentUsage = Diagnostic


ReportPrivateImportUsage = Diagnostic


ReportConstantRedefinition = Diagnostic


ReportDeprecated = Diagnostic


ReportIncompatibleMethodOverride = Diagnostic


ReportIncompatibleVariableOverride = Diagnostic


ReportInconsistentConstructor = Diagnostic


ReportOverlappingOverload = Diagnostic


ReportPossiblyUnboundVariable = Diagnostic


ReportMissingSuperCall = Diagnostic


ReportUninitializedInstanceVariable = Diagnostic


ReportInvalidStringEscapeSequence = Diagnostic


ReportUnknownParameterType = Diagnostic


ReportUnknownArgumentType = Diagnostic


ReportUnknownLambdaType = Diagnostic


ReportUnknownVariableType = Diagnostic


ReportUnknownMemberType = Diagnostic


ReportMissingParameterType = Diagnostic


ReportMissingTypeArgument = Diagnostic


ReportInvalidTypeVarUse = Diagnostic


ReportCallInDefaultInitializer = Diagnostic


ReportUnnecessaryIsInstance = Diagnostic


ReportUnnecessaryCast = Diagnostic


ReportUnnecessaryComparison = Diagnostic


ReportUnnecessaryContains = Diagnostic


ReportAssertAlwaysTrue = Diagnostic


ReportSelfClsParameterName = Diagnostic


ReportImplicitStringConcatenation = Diagnostic


ReportUnboundVariable = Diagnostic


ReportUnhashable = Diagnostic


ReportUndefinedVariable = Diagnostic


ReportInvalidStubStatement = Diagnostic


ReportIncompleteStub = Diagnostic


ReportUnsupportedDunderAll = Diagnostic


ReportUnusedCallResult = Diagnostic


ReportUnusedCoroutine = Diagnostic


ReportUnusedExcept = Diagnostic


ReportUnusedExpression = Diagnostic


ReportUnnecessaryTypeIgnoreComment = Diagnostic


ReportMatchNotExhaustive = Diagnostic


ReportUnreachable = Diagnostic


ReportShadowedImports = Diagnostic


ReportImplicitOverride = Diagnostic


class ExecutionEnvironment(TypedDict):
    root: str
    disableBytesTypePromotions: NotRequired[DisableBytesTypePromotions]
    strictListInference: NotRequired[StrictListInference]
    strictSetInference: NotRequired[StrictSetInference]
    strictDictionaryInference: NotRequired[StrictDictionaryInference]
    analyzeUnannotatedFunctions: NotRequired[AnalyzeUnannotatedFunctions]
    strictParameterNoneValue: NotRequired[StrictParameterNoneValue]
    enableExperimentalFeatures: NotRequired[EnableExperimentalFeatures]
    enableTypeIgnoreComments: NotRequired[EnableTypeIgnoreComments]
    enableReachabilityAnalysis: NotRequired[EnableReachabilityAnalysis]
    deprecateTypingAliases: NotRequired[DeprecateTypingAliases]
    reportGeneralTypeIssues: NotRequired[ReportGeneralTypeIssues]
    reportPropertyTypeMismatch: NotRequired[ReportPropertyTypeMismatch]
    reportFunctionMemberAccess: NotRequired[ReportFunctionMemberAccess]
    reportMissingImports: NotRequired[ReportMissingImports]
    reportMissingModuleSource: NotRequired[ReportMissingModuleSource]
    reportInvalidTypeForm: NotRequired[ReportInvalidTypeForm]
    reportMissingTypeStubs: NotRequired[ReportMissingTypeStubs]
    reportImportCycles: NotRequired[ReportImportCycles]
    reportUnusedImport: NotRequired[ReportUnusedImport]
    reportUnusedClass: NotRequired[ReportUnusedClass]
    reportUnusedFunction: NotRequired[ReportUnusedFunction]
    reportUnusedVariable: NotRequired[ReportUnusedVariable]
    reportDuplicateImport: NotRequired[ReportDuplicateImport]
    reportWildcardImportFromLibrary: NotRequired[ReportWildcardImportFromLibrary]
    reportAbstractUsage: NotRequired[ReportAbstractUsage]
    reportArgumentType: NotRequired[ReportArgumentType]
    reportAssertTypeFailure: NotRequired[ReportAssertTypeFailure]
    reportAssignmentType: NotRequired[ReportAssignmentType]
    reportAttributeAccessIssue: NotRequired[ReportAttributeAccessIssue]
    reportCallIssue: NotRequired[ReportCallIssue]
    reportInconsistentOverload: NotRequired[ReportInconsistentOverload]
    reportIndexIssue: NotRequired[ReportIndexIssue]
    reportInvalidTypeArguments: NotRequired[ReportInvalidTypeArguments]
    reportNoOverloadImplementation: NotRequired[ReportNoOverloadImplementation]
    reportOperatorIssue: NotRequired[ReportOperatorIssue]
    reportOptionalSubscript: NotRequired[ReportOptionalSubscript]
    reportOptionalMemberAccess: NotRequired[ReportOptionalMemberAccess]
    reportOptionalCall: NotRequired[ReportOptionalCall]
    reportOptionalIterable: NotRequired[ReportOptionalIterable]
    reportOptionalContextManager: NotRequired[ReportOptionalContextManager]
    reportOptionalOperand: NotRequired[ReportOptionalOperand]
    reportRedeclaration: NotRequired[ReportRedeclaration]
    reportReturnType: NotRequired[ReportReturnType]
    reportTypedDictNotRequiredAccess: NotRequired[ReportTypedDictNotRequiredAccess]
    reportUntypedFunctionDecorator: NotRequired[ReportUntypedFunctionDecorator]
    reportUntypedClassDecorator: NotRequired[ReportUntypedClassDecorator]
    reportUntypedBaseClass: NotRequired[ReportUntypedBaseClass]
    reportUntypedNamedTuple: NotRequired[ReportUntypedNamedTuple]
    reportPrivateUsage: NotRequired[ReportPrivateUsage]
    reportTypeCommentUsage: NotRequired[ReportTypeCommentUsage]
    reportPrivateImportUsage: NotRequired[ReportPrivateImportUsage]
    reportConstantRedefinition: NotRequired[ReportConstantRedefinition]
    reportDeprecated: NotRequired[ReportDeprecated]
    reportIncompatibleMethodOverride: NotRequired[ReportIncompatibleMethodOverride]
    reportIncompatibleVariableOverride: NotRequired[ReportIncompatibleVariableOverride]
    reportInconsistentConstructor: NotRequired[ReportInconsistentConstructor]
    reportOverlappingOverload: NotRequired[ReportOverlappingOverload]
    reportPossiblyUnboundVariable: NotRequired[ReportPossiblyUnboundVariable]
    reportMissingSuperCall: NotRequired[ReportMissingSuperCall]
    reportUninitializedInstanceVariable: NotRequired[
        ReportUninitializedInstanceVariable
    ]
    reportInvalidStringEscapeSequence: NotRequired[ReportInvalidStringEscapeSequence]
    reportUnknownParameterType: NotRequired[ReportUnknownParameterType]
    reportUnknownArgumentType: NotRequired[ReportUnknownArgumentType]
    reportUnknownLambdaType: NotRequired[ReportUnknownLambdaType]
    reportUnknownVariableType: NotRequired[ReportUnknownVariableType]
    reportUnknownMemberType: NotRequired[ReportUnknownMemberType]
    reportMissingParameterType: NotRequired[ReportMissingParameterType]
    reportMissingTypeArgument: NotRequired[ReportMissingTypeArgument]
    reportInvalidTypeVarUse: NotRequired[ReportInvalidTypeVarUse]
    reportCallInDefaultInitializer: NotRequired[ReportCallInDefaultInitializer]
    reportUnnecessaryIsInstance: NotRequired[ReportUnnecessaryIsInstance]
    reportUnnecessaryCast: NotRequired[ReportUnnecessaryCast]
    reportUnnecessaryComparison: NotRequired[ReportUnnecessaryComparison]
    reportUnnecessaryContains: NotRequired[ReportUnnecessaryContains]
    reportAssertAlwaysTrue: NotRequired[ReportAssertAlwaysTrue]
    reportSelfClsParameterName: NotRequired[ReportSelfClsParameterName]
    reportImplicitStringConcatenation: NotRequired[ReportImplicitStringConcatenation]
    reportUnboundVariable: NotRequired[ReportUnboundVariable]
    reportUnhashable: NotRequired[ReportUnhashable]
    reportUndefinedVariable: NotRequired[ReportUndefinedVariable]
    reportInvalidStubStatement: NotRequired[ReportInvalidStubStatement]
    reportIncompleteStub: NotRequired[ReportIncompleteStub]
    reportUnsupportedDunderAll: NotRequired[ReportUnsupportedDunderAll]
    reportUnusedCallResult: NotRequired[ReportUnusedCallResult]
    reportUnusedCoroutine: NotRequired[ReportUnusedCoroutine]
    reportUnusedExcept: NotRequired[ReportUnusedExcept]
    reportUnusedExpression: NotRequired[ReportUnusedExpression]
    reportUnnecessaryTypeIgnoreComment: NotRequired[ReportUnnecessaryTypeIgnoreComment]
    reportMatchNotExhaustive: NotRequired[ReportMatchNotExhaustive]
    reportUnreachable: NotRequired[ReportUnreachable]
    reportShadowedImports: NotRequired[ReportShadowedImports]
    reportImplicitOverride: NotRequired[ReportImplicitOverride]
    extraPaths: NotRequired[ExtraPaths]
    pythonVersion: NotRequired[PythonVersion]
    pythonPlatform: NotRequired[PythonPlatform]


class Model(TypedDict):
    """
    Pyright Configuration Schema
    """

    extends: NotRequired[str]
    include: NotRequired[List[str]]
    exclude: NotRequired[List[str]]
    ignore: NotRequired[List[str]]
    strict: NotRequired[List[str]]
    defineConstant: NotRequired[Dict[str, Union[str, bool]]]
    typeCheckingMode: NotRequired[Literal["off", "basic", "standard", "strict"]]
    useLibraryCodeForTypes: NotRequired[bool]
    typeshedPath: NotRequired[str]
    stubPath: NotRequired[str]
    disableBytesTypePromotions: NotRequired[DisableBytesTypePromotions]
    strictListInference: NotRequired[StrictListInference]
    strictSetInference: NotRequired[StrictSetInference]
    strictDictionaryInference: NotRequired[StrictDictionaryInference]
    analyzeUnannotatedFunctions: NotRequired[AnalyzeUnannotatedFunctions]
    strictParameterNoneValue: NotRequired[StrictParameterNoneValue]
    enableExperimentalFeatures: NotRequired[EnableExperimentalFeatures]
    enableTypeIgnoreComments: NotRequired[EnableTypeIgnoreComments]
    enableReachabilityAnalysis: NotRequired[EnableReachabilityAnalysis]
    deprecateTypingAliases: NotRequired[DeprecateTypingAliases]
    reportGeneralTypeIssues: NotRequired[ReportGeneralTypeIssues]
    reportPropertyTypeMismatch: NotRequired[ReportPropertyTypeMismatch]
    reportFunctionMemberAccess: NotRequired[ReportFunctionMemberAccess]
    reportMissingImports: NotRequired[ReportMissingImports]
    reportMissingModuleSource: NotRequired[ReportMissingModuleSource]
    reportInvalidTypeForm: NotRequired[ReportInvalidTypeForm]
    reportMissingTypeStubs: NotRequired[ReportMissingTypeStubs]
    reportImportCycles: NotRequired[ReportImportCycles]
    reportUnusedImport: NotRequired[ReportUnusedImport]
    reportUnusedClass: NotRequired[ReportUnusedClass]
    reportUnusedFunction: NotRequired[ReportUnusedFunction]
    reportUnusedVariable: NotRequired[ReportUnusedVariable]
    reportDuplicateImport: NotRequired[ReportDuplicateImport]
    reportWildcardImportFromLibrary: NotRequired[ReportWildcardImportFromLibrary]
    reportAbstractUsage: NotRequired[ReportAbstractUsage]
    reportArgumentType: NotRequired[ReportArgumentType]
    reportAssertTypeFailure: NotRequired[ReportAssertTypeFailure]
    reportAssignmentType: NotRequired[ReportAssignmentType]
    reportAttributeAccessIssue: NotRequired[ReportAttributeAccessIssue]
    reportCallIssue: NotRequired[ReportCallIssue]
    reportInconsistentOverload: NotRequired[ReportInconsistentOverload]
    reportIndexIssue: NotRequired[ReportIndexIssue]
    reportInvalidTypeArguments: NotRequired[ReportInvalidTypeArguments]
    reportNoOverloadImplementation: NotRequired[ReportNoOverloadImplementation]
    reportOperatorIssue: NotRequired[ReportOperatorIssue]
    reportOptionalSubscript: NotRequired[ReportOptionalSubscript]
    reportOptionalMemberAccess: NotRequired[ReportOptionalMemberAccess]
    reportOptionalCall: NotRequired[ReportOptionalCall]
    reportOptionalIterable: NotRequired[ReportOptionalIterable]
    reportOptionalContextManager: NotRequired[ReportOptionalContextManager]
    reportOptionalOperand: NotRequired[ReportOptionalOperand]
    reportRedeclaration: NotRequired[ReportRedeclaration]
    reportReturnType: NotRequired[ReportReturnType]
    reportTypedDictNotRequiredAccess: NotRequired[ReportTypedDictNotRequiredAccess]
    reportUntypedFunctionDecorator: NotRequired[ReportUntypedFunctionDecorator]
    reportUntypedClassDecorator: NotRequired[ReportUntypedClassDecorator]
    reportUntypedBaseClass: NotRequired[ReportUntypedBaseClass]
    reportUntypedNamedTuple: NotRequired[ReportUntypedNamedTuple]
    reportPrivateUsage: NotRequired[ReportPrivateUsage]
    reportTypeCommentUsage: NotRequired[ReportTypeCommentUsage]
    reportPrivateImportUsage: NotRequired[ReportPrivateImportUsage]
    reportConstantRedefinition: NotRequired[ReportConstantRedefinition]
    reportDeprecated: NotRequired[ReportDeprecated]
    reportIncompatibleMethodOverride: NotRequired[ReportIncompatibleMethodOverride]
    reportIncompatibleVariableOverride: NotRequired[ReportIncompatibleVariableOverride]
    reportInconsistentConstructor: NotRequired[ReportInconsistentConstructor]
    reportOverlappingOverload: NotRequired[ReportOverlappingOverload]
    reportPossiblyUnboundVariable: NotRequired[ReportPossiblyUnboundVariable]
    reportMissingSuperCall: NotRequired[ReportMissingSuperCall]
    reportUninitializedInstanceVariable: NotRequired[
        ReportUninitializedInstanceVariable
    ]
    reportInvalidStringEscapeSequence: NotRequired[ReportInvalidStringEscapeSequence]
    reportUnknownParameterType: NotRequired[ReportUnknownParameterType]
    reportUnknownArgumentType: NotRequired[ReportUnknownArgumentType]
    reportUnknownLambdaType: NotRequired[ReportUnknownLambdaType]
    reportUnknownVariableType: NotRequired[ReportUnknownVariableType]
    reportUnknownMemberType: NotRequired[ReportUnknownMemberType]
    reportMissingParameterType: NotRequired[ReportMissingParameterType]
    reportMissingTypeArgument: NotRequired[ReportMissingTypeArgument]
    reportInvalidTypeVarUse: NotRequired[ReportInvalidTypeVarUse]
    reportCallInDefaultInitializer: NotRequired[ReportCallInDefaultInitializer]
    reportUnnecessaryIsInstance: NotRequired[ReportUnnecessaryIsInstance]
    reportUnnecessaryCast: NotRequired[ReportUnnecessaryCast]
    reportUnnecessaryComparison: NotRequired[ReportUnnecessaryComparison]
    reportUnnecessaryContains: NotRequired[ReportUnnecessaryContains]
    reportAssertAlwaysTrue: NotRequired[ReportAssertAlwaysTrue]
    reportSelfClsParameterName: NotRequired[ReportSelfClsParameterName]
    reportImplicitStringConcatenation: NotRequired[ReportImplicitStringConcatenation]
    reportUnboundVariable: NotRequired[ReportUnboundVariable]
    reportUnhashable: NotRequired[ReportUnhashable]
    reportUndefinedVariable: NotRequired[ReportUndefinedVariable]
    reportInvalidStubStatement: NotRequired[ReportInvalidStubStatement]
    reportIncompleteStub: NotRequired[ReportIncompleteStub]
    reportUnsupportedDunderAll: NotRequired[ReportUnsupportedDunderAll]
    reportUnusedCallResult: NotRequired[ReportUnusedCallResult]
    reportUnusedCoroutine: NotRequired[ReportUnusedCoroutine]
    reportUnusedExcept: NotRequired[ReportUnusedExcept]
    reportUnusedExpression: NotRequired[ReportUnusedExpression]
    reportUnnecessaryTypeIgnoreComment: NotRequired[ReportUnnecessaryTypeIgnoreComment]
    reportMatchNotExhaustive: NotRequired[ReportMatchNotExhaustive]
    reportUnreachable: NotRequired[ReportUnreachable]
    reportShadowedImports: NotRequired[ReportShadowedImports]
    reportImplicitOverride: NotRequired[ReportImplicitOverride]
    extraPaths: NotRequired[ExtraPaths]
    pythonVersion: NotRequired[PythonVersion]
    pythonPlatform: NotRequired[PythonPlatform]
    venvPath: NotRequired[str]
    venv: NotRequired[str]
    verboseOutput: NotRequired[bool]
    executionEnvironments: NotRequired[List[ExecutionEnvironment]]
