typescript 7.0.2 → 7.1.0-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE.txt +5 -36
- package/dist/api/async/api.d.ts +597 -122
- package/dist/api/async/api.d.ts.map +1 -1
- package/dist/api/async/api.js +1775 -333
- package/dist/api/async/api.js.map +1 -1
- package/dist/api/async/client.d.ts +18 -2
- package/dist/api/async/client.d.ts.map +1 -1
- package/dist/api/async/client.js +255 -68
- package/dist/api/async/client.js.map +1 -1
- package/dist/api/async/types.d.ts +99 -34
- package/dist/api/async/types.d.ts.map +1 -1
- package/dist/api/compilerOptions.generated.d.ts +123 -0
- package/dist/api/compilerOptions.generated.d.ts.map +1 -0
- package/dist/api/compilerOptions.generated.js +8 -0
- package/dist/api/compilerOptions.generated.js.map +1 -0
- package/dist/api/diagnosticFormatter.d.ts +9 -0
- package/dist/api/diagnosticFormatter.d.ts.map +1 -0
- package/dist/api/diagnosticFormatter.js +169 -0
- package/dist/api/diagnosticFormatter.js.map +1 -0
- package/dist/api/fs.d.ts +68 -13
- package/dist/api/fs.d.ts.map +1 -1
- package/dist/api/fs.js +62 -101
- package/dist/api/fs.js.map +1 -1
- package/dist/api/fsCallbacks.d.ts +27 -0
- package/dist/api/fsCallbacks.d.ts.map +1 -0
- package/dist/api/fsCallbacks.js +111 -0
- package/dist/api/fsCallbacks.js.map +1 -0
- package/dist/api/node/encoder.d.ts +3 -0
- package/dist/api/node/encoder.d.ts.map +1 -1
- package/dist/api/node/encoder.generated.js +2 -2
- package/dist/api/node/encoder.generated.js.map +1 -1
- package/dist/api/node/encoder.js +20 -15
- package/dist/api/node/encoder.js.map +1 -1
- package/dist/api/node/msgpack.d.ts.map +1 -1
- package/dist/api/node/msgpack.js +2 -3
- package/dist/api/node/msgpack.js.map +1 -1
- package/dist/api/node/node.d.ts +28 -9
- package/dist/api/node/node.d.ts.map +1 -1
- package/dist/api/node/node.generated.d.ts +9 -2
- package/dist/api/node/node.generated.d.ts.map +1 -1
- package/dist/api/node/node.generated.js +55 -6
- package/dist/api/node/node.generated.js.map +1 -1
- package/dist/api/node/node.infrastructure.d.ts +6 -4
- package/dist/api/node/node.infrastructure.d.ts.map +1 -1
- package/dist/api/node/node.infrastructure.js +20 -40
- package/dist/api/node/node.infrastructure.js.map +1 -1
- package/dist/api/node/node.js +178 -23
- package/dist/api/node/node.js.map +1 -1
- package/dist/api/node/protocol.d.ts +5 -2
- package/dist/api/node/protocol.d.ts.map +1 -1
- package/dist/api/node/protocol.generated.js +2 -2
- package/dist/api/node/protocol.generated.js.map +1 -1
- package/dist/api/node/protocol.js +5 -2
- package/dist/api/node/protocol.js.map +1 -1
- package/dist/api/node/wtf8.d.ts +6 -2
- package/dist/api/node/wtf8.d.ts.map +1 -1
- package/dist/api/node/wtf8.js +71 -2
- package/dist/api/node/wtf8.js.map +1 -1
- package/dist/api/options.d.ts +19 -7
- package/dist/api/options.d.ts.map +1 -1
- package/dist/api/options.js +21 -0
- package/dist/api/options.js.map +1 -1
- package/dist/api/path.d.ts +49 -39
- package/dist/api/path.d.ts.map +1 -1
- package/dist/api/path.js +409 -33
- package/dist/api/path.js.map +1 -1
- package/dist/api/prepareCompilerOptions.generated.d.ts +5 -0
- package/dist/api/prepareCompilerOptions.generated.d.ts.map +1 -0
- package/dist/api/prepareCompilerOptions.generated.js +24 -0
- package/dist/api/prepareCompilerOptions.generated.js.map +1 -0
- package/dist/api/proto.d.ts +58 -217
- package/dist/api/proto.d.ts.map +1 -1
- package/dist/api/proto.generated.d.ts +1419 -0
- package/dist/api/proto.generated.d.ts.map +1 -0
- package/dist/api/proto.generated.js +21 -0
- package/dist/api/proto.generated.js.map +1 -0
- package/dist/api/proto.js +28 -15
- package/dist/api/proto.js.map +1 -1
- package/dist/api/sourceFileCache.d.ts +51 -20
- package/dist/api/sourceFileCache.d.ts.map +1 -1
- package/dist/api/sourceFileCache.js +168 -37
- package/dist/api/sourceFileCache.js.map +1 -1
- package/dist/api/sync/api.d.ts +1365 -220
- package/dist/api/sync/api.d.ts.map +1 -1
- package/dist/api/sync/api.js +4673 -930
- package/dist/api/sync/api.js.map +1 -1
- package/dist/api/sync/client.d.ts +8 -2
- package/dist/api/sync/client.d.ts.map +1 -1
- package/dist/api/sync/client.js +80 -30
- package/dist/api/sync/client.js.map +1 -1
- package/dist/api/sync/generatorSupport.d.ts +32 -0
- package/dist/api/sync/generatorSupport.d.ts.map +1 -0
- package/dist/api/sync/generatorSupport.js +338 -0
- package/dist/api/sync/generatorSupport.js.map +1 -0
- package/dist/api/sync/types.d.ts +248 -56
- package/dist/api/sync/types.d.ts.map +1 -1
- package/dist/api/syncChannel.d.ts +3 -0
- package/dist/api/syncChannel.d.ts.map +1 -1
- package/dist/api/syncChannel.js +20 -2
- package/dist/api/syncChannel.js.map +1 -1
- package/dist/api/timing.d.ts +2 -2
- package/dist/api/timing.d.ts.map +1 -1
- package/dist/api/timing.js +1 -1
- package/dist/api/timing.js.map +1 -1
- package/dist/api/timingDump.d.ts +13 -0
- package/dist/api/timingDump.d.ts.map +1 -0
- package/dist/api/timingDump.js +38 -0
- package/dist/api/timingDump.js.map +1 -0
- package/dist/api/typedPaths.d.ts +3 -0
- package/dist/api/typedPaths.d.ts.map +1 -0
- package/dist/api/typedPaths.js +2 -0
- package/dist/api/typedPaths.js.map +1 -0
- package/dist/api/userPreferences.generated.d.ts +195 -0
- package/dist/api/userPreferences.generated.d.ts.map +1 -0
- package/dist/api/userPreferences.generated.js +3 -0
- package/dist/api/userPreferences.generated.js.map +1 -0
- package/dist/ast/ast.d.ts +90 -7
- package/dist/ast/ast.d.ts.map +1 -1
- package/dist/ast/ast.generated.d.ts +45 -39
- package/dist/ast/ast.generated.d.ts.map +1 -1
- package/dist/ast/ast.generated.js +1 -1
- package/dist/ast/ast.generated.js.map +1 -1
- package/dist/ast/ast.js +1 -0
- package/dist/ast/ast.js.map +1 -1
- package/dist/ast/astnav.d.ts +3 -2
- package/dist/ast/astnav.d.ts.map +1 -1
- package/dist/ast/astnav.js +148 -3
- package/dist/ast/astnav.js.map +1 -1
- package/dist/ast/factory.generated.d.ts +8 -154
- package/dist/ast/factory.generated.d.ts.map +1 -1
- package/dist/ast/factory.generated.js +2701 -7
- package/dist/ast/factory.generated.js.map +1 -1
- package/dist/ast/index.d.ts +5 -0
- package/dist/ast/index.d.ts.map +1 -1
- package/dist/ast/index.js +5 -0
- package/dist/ast/index.js.map +1 -1
- package/dist/ast/is.d.ts +2 -12
- package/dist/ast/is.d.ts.map +1 -1
- package/dist/ast/is.generated.d.ts +889 -1
- package/dist/ast/is.generated.d.ts.map +1 -1
- package/dist/ast/is.generated.js +300 -3
- package/dist/ast/is.generated.js.map +1 -1
- package/dist/ast/is.js +224 -1
- package/dist/ast/is.js.map +1 -1
- package/dist/ast/jsdoc.d.ts +2 -1
- package/dist/ast/jsdoc.d.ts.map +1 -1
- package/dist/ast/jsdoc.js +14 -8
- package/dist/ast/jsdoc.js.map +1 -1
- package/dist/ast/modifiers.d.ts +4 -0
- package/dist/ast/modifiers.d.ts.map +1 -0
- package/dist/ast/modifiers.js +41 -0
- package/dist/ast/modifiers.js.map +1 -0
- package/dist/ast/scanner.d.ts.map +1 -1
- package/dist/ast/scanner.js +2 -1
- package/dist/ast/scanner.js.map +1 -1
- package/dist/ast/spanMap.d.ts +88 -0
- package/dist/ast/spanMap.d.ts.map +1 -0
- package/dist/ast/spanMap.js +417 -0
- package/dist/ast/spanMap.js.map +1 -0
- package/dist/ast/utils.d.ts +14 -1
- package/dist/ast/utils.d.ts.map +1 -1
- package/dist/ast/utils.js +251 -0
- package/dist/ast/utils.js.map +1 -1
- package/dist/ast/visitor.d.ts +2 -0
- package/dist/ast/visitor.d.ts.map +1 -1
- package/dist/ast/visitor.generated.d.ts.map +1 -1
- package/dist/ast/visitor.generated.js +5 -4
- package/dist/ast/visitor.generated.js.map +1 -1
- package/dist/ast/visitor.js +40 -0
- package/dist/ast/visitor.js.map +1 -1
- package/dist/enums/caseSensitivity.d.ts +2 -0
- package/dist/enums/caseSensitivity.d.ts.map +1 -0
- package/dist/enums/caseSensitivity.enum.d.ts +5 -0
- package/dist/enums/caseSensitivity.enum.d.ts.map +1 -0
- package/dist/enums/caseSensitivity.enum.js +7 -0
- package/dist/enums/caseSensitivity.enum.js.map +1 -0
- package/dist/enums/caseSensitivity.js +7 -0
- package/dist/enums/caseSensitivity.js.map +1 -0
- package/dist/enums/checkFlags.d.ts +2 -0
- package/dist/enums/checkFlags.d.ts.map +1 -0
- package/dist/enums/checkFlags.enum.d.ts +34 -0
- package/dist/enums/checkFlags.enum.d.ts.map +1 -0
- package/dist/enums/checkFlags.enum.js +36 -0
- package/dist/enums/checkFlags.enum.js.map +1 -0
- package/dist/enums/checkFlags.js +36 -0
- package/dist/enums/checkFlags.js.map +1 -0
- package/dist/enums/completionItemKind.enum.js +1 -1
- package/dist/enums/completionItemKind.enum.js.map +1 -1
- package/dist/enums/completionItemKind.js +1 -1
- package/dist/enums/completionItemKind.js.map +1 -1
- package/dist/enums/diagnosticCategory.enum.js +1 -1
- package/dist/enums/diagnosticCategory.enum.js.map +1 -1
- package/dist/enums/diagnosticCategory.js +1 -1
- package/dist/enums/diagnosticCategory.js.map +1 -1
- package/dist/enums/diagnosticDirectivePolicy.d.ts +2 -0
- package/dist/enums/diagnosticDirectivePolicy.d.ts.map +1 -0
- package/dist/enums/diagnosticDirectivePolicy.enum.d.ts +5 -0
- package/dist/enums/diagnosticDirectivePolicy.enum.d.ts.map +1 -0
- package/dist/enums/diagnosticDirectivePolicy.enum.js +7 -0
- package/dist/enums/diagnosticDirectivePolicy.enum.js.map +1 -0
- package/dist/enums/diagnosticDirectivePolicy.js +7 -0
- package/dist/enums/diagnosticDirectivePolicy.js.map +1 -0
- package/dist/enums/elementFlags.enum.js +1 -1
- package/dist/enums/elementFlags.enum.js.map +1 -1
- package/dist/enums/elementFlags.js +1 -1
- package/dist/enums/elementFlags.js.map +1 -1
- package/dist/enums/emitOnly.d.ts +2 -0
- package/dist/enums/emitOnly.d.ts.map +1 -0
- package/dist/enums/emitOnly.enum.d.ts +6 -0
- package/dist/enums/emitOnly.enum.d.ts.map +1 -0
- package/dist/enums/emitOnly.enum.js +8 -0
- package/dist/enums/emitOnly.enum.js.map +1 -0
- package/dist/enums/emitOnly.js +8 -0
- package/dist/enums/emitOnly.js.map +1 -0
- package/dist/enums/indexKind.d.ts +2 -0
- package/dist/enums/indexKind.d.ts.map +1 -0
- package/dist/enums/indexKind.enum.d.ts +5 -0
- package/dist/enums/indexKind.enum.d.ts.map +1 -0
- package/dist/enums/indexKind.enum.js +7 -0
- package/dist/enums/indexKind.enum.js.map +1 -0
- package/dist/enums/indexKind.js +7 -0
- package/dist/enums/indexKind.js.map +1 -0
- package/dist/enums/internalSymbolName.enum.js +1 -1
- package/dist/enums/internalSymbolName.enum.js.map +1 -1
- package/dist/enums/internalSymbolName.js +1 -1
- package/dist/enums/internalSymbolName.js.map +1 -1
- package/dist/enums/jsDeclarationKind.d.ts +2 -0
- package/dist/enums/jsDeclarationKind.d.ts.map +1 -0
- package/dist/enums/jsDeclarationKind.enum.d.ts +10 -0
- package/dist/enums/jsDeclarationKind.enum.d.ts.map +1 -0
- package/dist/enums/jsDeclarationKind.enum.js +12 -0
- package/dist/enums/jsDeclarationKind.enum.js.map +1 -0
- package/dist/enums/jsDeclarationKind.js +12 -0
- package/dist/enums/jsDeclarationKind.js.map +1 -0
- package/dist/enums/jsxEmit.enum.d.ts +2 -2
- package/dist/enums/jsxEmit.enum.d.ts.map +1 -1
- package/dist/enums/jsxEmit.enum.js +3 -3
- package/dist/enums/jsxEmit.enum.js.map +1 -1
- package/dist/enums/jsxEmit.js +3 -3
- package/dist/enums/jsxEmit.js.map +1 -1
- package/dist/enums/modifierFlags.enum.js +1 -1
- package/dist/enums/modifierFlags.enum.js.map +1 -1
- package/dist/enums/modifierFlags.js +1 -1
- package/dist/enums/modifierFlags.js.map +1 -1
- package/dist/enums/moduleDetectionKind.enum.js +1 -1
- package/dist/enums/moduleDetectionKind.enum.js.map +1 -1
- package/dist/enums/moduleDetectionKind.js +1 -1
- package/dist/enums/moduleDetectionKind.js.map +1 -1
- package/dist/enums/moduleKind.enum.js +1 -1
- package/dist/enums/moduleKind.enum.js.map +1 -1
- package/dist/enums/moduleKind.js +1 -1
- package/dist/enums/moduleKind.js.map +1 -1
- package/dist/enums/moduleResolutionKind.enum.js +1 -1
- package/dist/enums/moduleResolutionKind.enum.js.map +1 -1
- package/dist/enums/moduleResolutionKind.js +1 -1
- package/dist/enums/moduleResolutionKind.js.map +1 -1
- package/dist/enums/newLineKind.enum.js +1 -1
- package/dist/enums/newLineKind.enum.js.map +1 -1
- package/dist/enums/newLineKind.js +1 -1
- package/dist/enums/newLineKind.js.map +1 -1
- package/dist/enums/nodeBuilderFlags.enum.js +1 -1
- package/dist/enums/nodeBuilderFlags.enum.js.map +1 -1
- package/dist/enums/nodeBuilderFlags.js +1 -1
- package/dist/enums/nodeBuilderFlags.js.map +1 -1
- package/dist/enums/nodeFlags.enum.js +1 -1
- package/dist/enums/nodeFlags.enum.js.map +1 -1
- package/dist/enums/nodeFlags.js +1 -1
- package/dist/enums/nodeFlags.js.map +1 -1
- package/dist/enums/objectFlags.enum.d.ts +3 -2
- package/dist/enums/objectFlags.enum.d.ts.map +1 -1
- package/dist/enums/objectFlags.enum.js +4 -3
- package/dist/enums/objectFlags.enum.js.map +1 -1
- package/dist/enums/objectFlags.js +4 -3
- package/dist/enums/objectFlags.js.map +1 -1
- package/dist/enums/outerExpressionKinds.enum.js +1 -1
- package/dist/enums/outerExpressionKinds.enum.js.map +1 -1
- package/dist/enums/outerExpressionKinds.js +1 -1
- package/dist/enums/outerExpressionKinds.js.map +1 -1
- package/dist/enums/scriptKind.d.ts.map +1 -1
- package/dist/enums/scriptKind.enum.d.ts +1 -3
- package/dist/enums/scriptKind.enum.d.ts.map +1 -1
- package/dist/enums/scriptKind.enum.js +1 -2
- package/dist/enums/scriptKind.enum.js.map +1 -1
- package/dist/enums/scriptKind.js +1 -2
- package/dist/enums/scriptKind.js.map +1 -1
- package/dist/enums/scriptTarget.d.ts.map +1 -1
- package/dist/enums/scriptTarget.enum.d.ts +1 -0
- package/dist/enums/scriptTarget.enum.d.ts.map +1 -1
- package/dist/enums/scriptTarget.enum.js +2 -0
- package/dist/enums/scriptTarget.enum.js.map +1 -1
- package/dist/enums/scriptTarget.js +2 -0
- package/dist/enums/scriptTarget.js.map +1 -1
- package/dist/enums/signatureFlags.enum.js +1 -1
- package/dist/enums/signatureFlags.enum.js.map +1 -1
- package/dist/enums/signatureFlags.js +1 -1
- package/dist/enums/signatureFlags.js.map +1 -1
- package/dist/enums/signatureKind.enum.js +1 -1
- package/dist/enums/signatureKind.enum.js.map +1 -1
- package/dist/enums/signatureKind.js +1 -1
- package/dist/enums/signatureKind.js.map +1 -1
- package/dist/enums/spanMapFeature.d.ts +2 -0
- package/dist/enums/spanMapFeature.d.ts.map +1 -0
- package/dist/enums/spanMapFeature.enum.d.ts +25 -0
- package/dist/enums/spanMapFeature.enum.d.ts.map +1 -0
- package/dist/enums/spanMapFeature.enum.js +27 -0
- package/dist/enums/spanMapFeature.enum.js.map +1 -0
- package/dist/enums/spanMapFeature.js +27 -0
- package/dist/enums/spanMapFeature.js.map +1 -0
- package/dist/enums/spanMapFidelity.d.ts +2 -0
- package/dist/enums/spanMapFidelity.d.ts.map +1 -0
- package/dist/enums/spanMapFidelity.enum.d.ts +7 -0
- package/dist/enums/spanMapFidelity.enum.d.ts.map +1 -0
- package/dist/enums/spanMapFidelity.enum.js +9 -0
- package/dist/enums/spanMapFidelity.enum.js.map +1 -0
- package/dist/enums/spanMapFidelity.js +9 -0
- package/dist/enums/spanMapFidelity.js.map +1 -0
- package/dist/enums/spanMapKind.d.ts +2 -0
- package/dist/enums/spanMapKind.d.ts.map +1 -0
- package/dist/enums/spanMapKind.enum.d.ts +6 -0
- package/dist/enums/spanMapKind.enum.d.ts.map +1 -0
- package/dist/enums/spanMapKind.enum.js +8 -0
- package/dist/enums/spanMapKind.enum.js.map +1 -0
- package/dist/enums/spanMapKind.js +8 -0
- package/dist/enums/spanMapKind.js.map +1 -0
- package/dist/enums/symbolFlags.enum.d.ts +1 -2
- package/dist/enums/symbolFlags.enum.d.ts.map +1 -1
- package/dist/enums/symbolFlags.enum.js +2 -3
- package/dist/enums/symbolFlags.enum.js.map +1 -1
- package/dist/enums/symbolFlags.js +2 -3
- package/dist/enums/symbolFlags.js.map +1 -1
- package/dist/enums/symbolOwnerKind.d.ts +2 -0
- package/dist/enums/symbolOwnerKind.d.ts.map +1 -0
- package/dist/enums/symbolOwnerKind.enum.d.ts +5 -0
- package/dist/enums/symbolOwnerKind.enum.d.ts.map +1 -0
- package/dist/enums/symbolOwnerKind.enum.js +7 -0
- package/dist/enums/symbolOwnerKind.enum.js.map +1 -0
- package/dist/enums/symbolOwnerKind.js +7 -0
- package/dist/enums/symbolOwnerKind.js.map +1 -0
- package/dist/enums/syntaxKind.enum.d.ts +198 -197
- package/dist/enums/syntaxKind.enum.d.ts.map +1 -1
- package/dist/enums/syntaxKind.enum.js +199 -198
- package/dist/enums/syntaxKind.enum.js.map +1 -1
- package/dist/enums/syntaxKind.js +199 -198
- package/dist/enums/syntaxKind.js.map +1 -1
- package/dist/enums/tokenFlags.enum.js +1 -1
- package/dist/enums/tokenFlags.enum.js.map +1 -1
- package/dist/enums/tokenFlags.js +1 -1
- package/dist/enums/tokenFlags.js.map +1 -1
- package/dist/enums/typeFlags.enum.js +1 -1
- package/dist/enums/typeFlags.enum.js.map +1 -1
- package/dist/enums/typeFlags.js +1 -1
- package/dist/enums/typeFlags.js.map +1 -1
- package/dist/enums/typeFormatFlags.d.ts +2 -0
- package/dist/enums/typeFormatFlags.d.ts.map +1 -0
- package/dist/enums/typeFormatFlags.enum.d.ts +29 -0
- package/dist/enums/typeFormatFlags.enum.d.ts.map +1 -0
- package/dist/enums/typeFormatFlags.enum.js +31 -0
- package/dist/enums/typeFormatFlags.enum.js.map +1 -0
- package/dist/enums/typeFormatFlags.js +31 -0
- package/dist/enums/typeFormatFlags.js.map +1 -0
- package/dist/enums/typePredicateKind.enum.js +1 -1
- package/dist/enums/typePredicateKind.enum.js.map +1 -1
- package/dist/enums/typePredicateKind.js +1 -1
- package/dist/enums/typePredicateKind.js.map +1 -1
- package/dist/internal/utils.js.map +1 -1
- package/dist/vscode/extensionApi.d.ts +101 -0
- package/dist/vscode/extensionApi.d.ts.map +1 -0
- package/dist/vscode/extensionApi.js +2 -0
- package/dist/vscode/extensionApi.js.map +1 -0
- package/dist/vscode/moduleLoader.d.ts +14 -0
- package/dist/vscode/moduleLoader.d.ts.map +1 -0
- package/dist/vscode/moduleLoader.js +36 -0
- package/dist/vscode/moduleLoader.js.map +1 -0
- package/dist/vscode/protocol.generated.d.ts +2886 -0
- package/dist/vscode/protocol.generated.d.ts.map +1 -0
- package/dist/vscode/protocol.generated.js +4 -0
- package/dist/vscode/protocol.generated.js.map +1 -0
- package/lib/getExePath.js +2 -2
- package/lib/version.cjs +1 -1
- package/lib/version.d.cts +1 -1
- package/package.json +40 -34
- package/schemas/jsconfig.schema.json +2207 -0
- package/schemas/tsconfig.schema.json +2206 -0
- package/vendor/vscode-jsonrpc/lib/node/main.js +1 -1
- package/vendor/vscode-jsonrpc/package.json +1 -1
- package/dist/api/compilerOptions.d.ts +0 -109
- package/dist/api/compilerOptions.d.ts.map +0 -1
- package/dist/api/compilerOptions.js +0 -2
- package/dist/api/compilerOptions.js.map +0 -1
package/dist/api/async/client.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createMessageConnection, RequestType, SocketMessageReader, SocketMessageWriter, StreamMessageReader, StreamMessageWriter, } from "#vscode-jsonrpc/node";
|
|
2
|
-
import {
|
|
3
|
-
import { isSpawnOptions, resolveExePath, } from "../options.js";
|
|
2
|
+
import { configureFileSystemCallbacks, encodeFileSystemCallbackResult, } from "../fsCallbacks.js";
|
|
3
|
+
import { getAPIProcessArgs, isSpawnOptions, resolveExePath, } from "../options.js";
|
|
4
4
|
import { combineTimingInfo, disabledServerTimingInfo, disabledTimingInfo, TimingCollector, } from "../timing.js";
|
|
5
|
+
import { TimingDump } from "../timingDump.js";
|
|
5
6
|
/**
|
|
6
7
|
* Client handles communication with the TypeScript API server
|
|
7
8
|
* over STDIO (spawned process) or a Unix domain socket using JSON-RPC.
|
|
@@ -12,16 +13,36 @@ export class Client {
|
|
|
12
13
|
connection;
|
|
13
14
|
options;
|
|
14
15
|
connected = false;
|
|
16
|
+
closed = false;
|
|
17
|
+
connecting;
|
|
15
18
|
timing;
|
|
19
|
+
timingDump;
|
|
20
|
+
closing;
|
|
21
|
+
batchedRequests = [];
|
|
22
|
+
nextBatch;
|
|
16
23
|
constructor(options) {
|
|
17
|
-
this.
|
|
18
|
-
if (isSpawnOptions(options) && options.collectTiming) {
|
|
24
|
+
this.timingDump = TimingDump.fromEnvironment("async", isSpawnOptions(options) ? "spawn" : "socket");
|
|
25
|
+
if (this.timingDump || isSpawnOptions(options) && options.collectTiming) {
|
|
19
26
|
this.timing = new TimingCollector();
|
|
20
27
|
}
|
|
28
|
+
if (this.timingDump && isSpawnOptions(options)) {
|
|
29
|
+
options = { ...options, collectTiming: true };
|
|
30
|
+
}
|
|
31
|
+
this.options = options;
|
|
32
|
+
if (isSpawnOptions(options)) {
|
|
33
|
+
configureFileSystemCallbacks(options.fs);
|
|
34
|
+
}
|
|
21
35
|
}
|
|
22
|
-
|
|
36
|
+
connect() {
|
|
37
|
+
if (this.closed)
|
|
38
|
+
return Promise.reject(new Error("Client is closed"));
|
|
23
39
|
if (this.connected)
|
|
24
|
-
return;
|
|
40
|
+
return Promise.resolve();
|
|
41
|
+
return this.connecting ??= this.connectWorker().finally(() => {
|
|
42
|
+
this.connecting = undefined;
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
async connectWorker() {
|
|
25
46
|
if (isSpawnOptions(this.options)) {
|
|
26
47
|
await this.connectViaSpawn(this.options);
|
|
27
48
|
}
|
|
@@ -32,26 +53,10 @@ export class Client {
|
|
|
32
53
|
async connectViaSpawn(options) {
|
|
33
54
|
const { spawn } = await import("node:child_process");
|
|
34
55
|
return new Promise((resolve, reject) => {
|
|
35
|
-
const args =
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
"
|
|
39
|
-
options.cwd ?? process.cwd(),
|
|
40
|
-
];
|
|
41
|
-
if (options.collectTiming) {
|
|
42
|
-
args.push("--timing");
|
|
43
|
-
}
|
|
44
|
-
// Enable virtual FS callbacks for each provided FS function
|
|
45
|
-
const enabledCallbacks = [];
|
|
46
|
-
if (options.fs) {
|
|
47
|
-
for (const name of fsCallbackNames) {
|
|
48
|
-
if (options.fs[name]) {
|
|
49
|
-
enabledCallbacks.push(name);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
if (enabledCallbacks.length > 0) {
|
|
54
|
-
args.push(`--callbacks=${enabledCallbacks.join(",")}`);
|
|
56
|
+
const args = getAPIProcessArgs(options, true);
|
|
57
|
+
const fsConfiguration = configureFileSystemCallbacks(options.fs);
|
|
58
|
+
if (fsConfiguration.arguments.length > 0) {
|
|
59
|
+
args.push(`--callbacks=${fsConfiguration.arguments.join(",")}`);
|
|
55
60
|
}
|
|
56
61
|
this.process = spawn(resolveExePath(options), args, {
|
|
57
62
|
stdio: ["pipe", "pipe", "inherit"],
|
|
@@ -66,7 +71,7 @@ export class Client {
|
|
|
66
71
|
const reader = new StreamMessageReader(this.process.stdout);
|
|
67
72
|
const writer = new StreamMessageWriter(this.process.stdin);
|
|
68
73
|
this.connection = createMessageConnection(reader, writer);
|
|
69
|
-
this.registerFSCallbacks(this.connection, options.fs);
|
|
74
|
+
this.registerFSCallbacks(this.connection, options.fs, fsConfiguration);
|
|
70
75
|
this.connection.listen();
|
|
71
76
|
});
|
|
72
77
|
}
|
|
@@ -86,35 +91,90 @@ export class Client {
|
|
|
86
91
|
});
|
|
87
92
|
});
|
|
88
93
|
}
|
|
89
|
-
registerFSCallbacks(connection, fs) {
|
|
94
|
+
registerFSCallbacks(connection, fs, configuration) {
|
|
90
95
|
if (!fs)
|
|
91
96
|
return;
|
|
92
|
-
for (const name of
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
97
|
+
for (const name of configuration.callbackNames) {
|
|
98
|
+
switch (name) {
|
|
99
|
+
case "readFile": {
|
|
100
|
+
const callback = fs.readFile;
|
|
101
|
+
if (typeof callback !== "function")
|
|
102
|
+
throw new Error("Invalid readFile callback configuration");
|
|
103
|
+
connection.onRequest(new RequestType(name), fileName => {
|
|
104
|
+
return encodeFileSystemCallbackResult(name, callback(fileName));
|
|
105
|
+
});
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
case "fileExists": {
|
|
109
|
+
const callback = fs.fileExists;
|
|
110
|
+
if (typeof callback !== "function")
|
|
111
|
+
throw new Error("Invalid fileExists callback configuration");
|
|
112
|
+
connection.onRequest(new RequestType(name), fileName => {
|
|
113
|
+
return encodeFileSystemCallbackResult(name, callback(fileName));
|
|
114
|
+
});
|
|
115
|
+
break;
|
|
116
|
+
}
|
|
117
|
+
case "directoryExists": {
|
|
118
|
+
const callback = fs.directoryExists;
|
|
119
|
+
if (typeof callback !== "function")
|
|
120
|
+
throw new Error("Invalid directoryExists callback configuration");
|
|
121
|
+
connection.onRequest(new RequestType(name), directoryName => {
|
|
122
|
+
return encodeFileSystemCallbackResult(name, callback(directoryName));
|
|
123
|
+
});
|
|
124
|
+
break;
|
|
125
|
+
}
|
|
126
|
+
case "getAccessibleEntries": {
|
|
127
|
+
const callback = fs.getAccessibleEntries;
|
|
128
|
+
if (typeof callback !== "function")
|
|
129
|
+
throw new Error("Invalid getAccessibleEntries callback configuration");
|
|
130
|
+
connection.onRequest(new RequestType(name), directoryName => {
|
|
131
|
+
return encodeFileSystemCallbackResult(name, callback(directoryName));
|
|
132
|
+
});
|
|
133
|
+
break;
|
|
134
|
+
}
|
|
135
|
+
case "realpath": {
|
|
136
|
+
const callback = fs.realpath;
|
|
137
|
+
if (typeof callback !== "function")
|
|
138
|
+
throw new Error("Invalid realpath callback configuration");
|
|
139
|
+
connection.onRequest(new RequestType(name), path => {
|
|
140
|
+
return encodeFileSystemCallbackResult(name, callback(path));
|
|
141
|
+
});
|
|
142
|
+
break;
|
|
143
|
+
}
|
|
144
|
+
case "stat": {
|
|
145
|
+
const callback = fs.stat;
|
|
146
|
+
if (typeof callback !== "function")
|
|
147
|
+
throw new Error("Invalid stat callback configuration");
|
|
148
|
+
connection.onRequest(new RequestType(name), path => {
|
|
149
|
+
return encodeFileSystemCallbackResult(name, callback(path));
|
|
150
|
+
});
|
|
151
|
+
break;
|
|
152
|
+
}
|
|
153
|
+
case "writeFile": {
|
|
154
|
+
const callback = fs.writeFile;
|
|
155
|
+
if (typeof callback !== "function")
|
|
156
|
+
throw new Error("Invalid writeFile callback configuration");
|
|
157
|
+
connection.onRequest(new RequestType(name), arg => {
|
|
158
|
+
return encodeFileSystemCallbackResult(name, callback(arg.path, arg.data));
|
|
159
|
+
});
|
|
160
|
+
break;
|
|
161
|
+
}
|
|
162
|
+
case "removeFile": {
|
|
163
|
+
const callback = fs.removeFile;
|
|
164
|
+
if (typeof callback !== "function")
|
|
165
|
+
throw new Error("Invalid removeFile callback configuration");
|
|
166
|
+
connection.onRequest(new RequestType(name), path => {
|
|
167
|
+
return encodeFileSystemCallbackResult(name, callback(path));
|
|
168
|
+
});
|
|
169
|
+
break;
|
|
170
|
+
}
|
|
107
171
|
}
|
|
108
172
|
}
|
|
109
173
|
}
|
|
110
|
-
async
|
|
111
|
-
if (!this.connected) {
|
|
112
|
-
await this.connect();
|
|
113
|
-
}
|
|
174
|
+
async sendRequestWithTiming(requestType, params) {
|
|
114
175
|
if (!this.connection) {
|
|
115
176
|
throw new Error("Connection not established");
|
|
116
177
|
}
|
|
117
|
-
const requestType = new RequestType(method);
|
|
118
178
|
if (!this.timing) {
|
|
119
179
|
return this.connection.sendRequest(requestType, params);
|
|
120
180
|
}
|
|
@@ -127,7 +187,7 @@ export class Client {
|
|
|
127
187
|
const result = await this.connection.sendRequest(requestType, params);
|
|
128
188
|
const roundTripMs = performance.now() - start;
|
|
129
189
|
this.timing.record({
|
|
130
|
-
method,
|
|
190
|
+
method: requestType.method,
|
|
131
191
|
roundTripMs,
|
|
132
192
|
bytesSent,
|
|
133
193
|
bytesReceived: result === undefined || result === null
|
|
@@ -136,6 +196,105 @@ export class Client {
|
|
|
136
196
|
});
|
|
137
197
|
return result;
|
|
138
198
|
}
|
|
199
|
+
registerCallback(name, callback) {
|
|
200
|
+
if (!this.connection) {
|
|
201
|
+
throw new Error("Connection not established");
|
|
202
|
+
}
|
|
203
|
+
const disposable = this.connection.onRequest(new RequestType(name), callback);
|
|
204
|
+
return () => disposable.dispose();
|
|
205
|
+
}
|
|
206
|
+
async doBatch() {
|
|
207
|
+
this.nextBatch = undefined;
|
|
208
|
+
if (!this.batchedRequests.length)
|
|
209
|
+
return;
|
|
210
|
+
const requests = this.batchedRequests;
|
|
211
|
+
this.batchedRequests = [];
|
|
212
|
+
try {
|
|
213
|
+
if (!this.connected) {
|
|
214
|
+
await this.connect();
|
|
215
|
+
}
|
|
216
|
+
if (!this.connection) {
|
|
217
|
+
throw new Error("Connection not established");
|
|
218
|
+
}
|
|
219
|
+
if (requests.length === 1) {
|
|
220
|
+
// send single queued requests directly instead of as a batched request
|
|
221
|
+
const requestType = new RequestType(requests[0].method);
|
|
222
|
+
const response = await this.sendRequestWithTiming(requestType, requests[0].params);
|
|
223
|
+
requests[0].resolve(response);
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
const requestType = new RequestType("batchRequests");
|
|
227
|
+
const params = { requests: requests.map(request => ({ method: request.method, params: request.params })) };
|
|
228
|
+
if (this.options.maxResponseBytesPerPage !== undefined) {
|
|
229
|
+
params.maxResponseBytesPerPage = this.options.maxResponseBytesPerPage;
|
|
230
|
+
}
|
|
231
|
+
const response = await this.sendRequestWithTiming(requestType, params);
|
|
232
|
+
let responses = response.responses;
|
|
233
|
+
let continuationToken = response.continuationToken;
|
|
234
|
+
while (continuationToken) {
|
|
235
|
+
const pageParams = {
|
|
236
|
+
requests: [],
|
|
237
|
+
continuationToken,
|
|
238
|
+
};
|
|
239
|
+
if (this.options.maxResponseBytesPerPage !== undefined) {
|
|
240
|
+
pageParams.maxResponseBytesPerPage = this.options.maxResponseBytesPerPage;
|
|
241
|
+
}
|
|
242
|
+
const page = await this.sendRequestWithTiming(requestType, pageParams);
|
|
243
|
+
responses = responses.concat(page.responses);
|
|
244
|
+
continuationToken = page.continuationToken;
|
|
245
|
+
}
|
|
246
|
+
for (let i = 0; i < requests.length; i++) {
|
|
247
|
+
const { resolve, reject } = requests[i];
|
|
248
|
+
const item = responses[i];
|
|
249
|
+
if (item.error !== undefined) {
|
|
250
|
+
reject(new Error(item.error));
|
|
251
|
+
}
|
|
252
|
+
else {
|
|
253
|
+
resolve(item.result);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
catch (error) {
|
|
258
|
+
for (const { reject } of requests)
|
|
259
|
+
reject(error);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
scheduleImmediateBatch() {
|
|
263
|
+
if (this.nextBatch)
|
|
264
|
+
return;
|
|
265
|
+
this.nextBatch = setImmediate(this.doBatch.bind(this));
|
|
266
|
+
}
|
|
267
|
+
batchContext() {
|
|
268
|
+
if (this.nextBatch === "manual") {
|
|
269
|
+
throw new Error("Already in a manual batch context");
|
|
270
|
+
}
|
|
271
|
+
if (this.nextBatch) {
|
|
272
|
+
clearImmediate(this.nextBatch);
|
|
273
|
+
this.doBatch(); // empty the queue before entering a manual batch context
|
|
274
|
+
}
|
|
275
|
+
this.nextBatch = "manual";
|
|
276
|
+
return {
|
|
277
|
+
[Symbol.dispose]: () => {
|
|
278
|
+
this.nextBatch = undefined;
|
|
279
|
+
this.scheduleImmediateBatch();
|
|
280
|
+
},
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
async apiRequest(method, params) {
|
|
284
|
+
if (this.closed)
|
|
285
|
+
throw new Error("Client is closed");
|
|
286
|
+
if (!this.connected) {
|
|
287
|
+
await this.connect();
|
|
288
|
+
}
|
|
289
|
+
if (!this.connection) {
|
|
290
|
+
throw new Error("Connection not established");
|
|
291
|
+
}
|
|
292
|
+
const resultPromise = new Promise((resolve, reject) => {
|
|
293
|
+
this.batchedRequests.push({ method, params, resolve, reject });
|
|
294
|
+
this.scheduleImmediateBatch();
|
|
295
|
+
});
|
|
296
|
+
return resultPromise;
|
|
297
|
+
}
|
|
139
298
|
async apiRequestBinary(method, params) {
|
|
140
299
|
const response = await this.apiRequest(method, params);
|
|
141
300
|
if (!response)
|
|
@@ -187,25 +346,53 @@ export class Client {
|
|
|
187
346
|
const requestType = new RequestType("getServerTiming");
|
|
188
347
|
return this.connection.sendRequest(requestType, undefined);
|
|
189
348
|
}
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
this.
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
349
|
+
close() {
|
|
350
|
+
return this.closing ??= this.closeWorker();
|
|
351
|
+
}
|
|
352
|
+
async closeWorker() {
|
|
353
|
+
await this.connecting?.catch(() => { }); // if connection is still in-progress, wait for it to finish before closing the connection
|
|
354
|
+
this.closed = true;
|
|
355
|
+
try {
|
|
356
|
+
if (this.timingDump && this.timing) {
|
|
357
|
+
const local = this.timing.getInfo();
|
|
358
|
+
let server;
|
|
359
|
+
let serverTimingError;
|
|
360
|
+
const connection = this.connection;
|
|
361
|
+
// Closing alone does not reject pending JSON-RPC requests.
|
|
362
|
+
const onClose = connection?.onClose(() => connection.dispose());
|
|
363
|
+
try {
|
|
364
|
+
if (this.connected)
|
|
365
|
+
server = await this.fetchServerTiming();
|
|
366
|
+
}
|
|
367
|
+
catch (error) {
|
|
368
|
+
serverTimingError = String(error);
|
|
369
|
+
}
|
|
370
|
+
finally {
|
|
371
|
+
onClose?.dispose();
|
|
372
|
+
}
|
|
373
|
+
this.timingDump.write(local, server, serverTimingError);
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
finally {
|
|
377
|
+
if (this.connection) {
|
|
378
|
+
this.connection.dispose();
|
|
379
|
+
this.connection = undefined;
|
|
380
|
+
}
|
|
381
|
+
if (this.socket) {
|
|
382
|
+
this.socket.destroy();
|
|
383
|
+
this.socket = undefined;
|
|
384
|
+
}
|
|
385
|
+
if (this.process) {
|
|
386
|
+
// Close stdin to unblock the server's read loop, allowing it to exit cleanly.
|
|
387
|
+
// The server is blocked on stdin.Read(), so just sending SIGTERM would deadlock:
|
|
388
|
+
// - Node won't exit while child is alive
|
|
389
|
+
// - Child can't process SIGTERM while blocked on read
|
|
390
|
+
// - Read won't error until stdin is closed
|
|
391
|
+
this.process.stdin?.end();
|
|
392
|
+
this.process = undefined;
|
|
393
|
+
}
|
|
394
|
+
this.connected = false;
|
|
395
|
+
}
|
|
209
396
|
}
|
|
210
397
|
}
|
|
211
398
|
//# sourceMappingURL=client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/async/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,uBAAuB,EAEvB,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAEH,eAAe,GAClB,MAAM,UAAU,CAAC;AAClB,OAAO,EAIH,cAAc,EACd,cAAc,GACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,iBAAiB,EACjB,wBAAwB,EACxB,kBAAkB,EAElB,eAAe,GAElB,MAAM,cAAc,CAAC;AAItB;;;GAGG;AACH,MAAM,OAAO,MAAM;IACP,MAAM,CAAqB;IAC3B,OAAO,CAA2B;IAClC,UAAU,CAAgC;IAC1C,OAAO,CAAgB;IACvB,SAAS,GAAG,KAAK,CAAC;IAClB,MAAM,CAA8B;IAE5C,YAAY,OAAsB;QAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACnD,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACxC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO;QACT,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAE3B,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;aACI,CAAC;YACF,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,OAA2B;QACrD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAErD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,IAAI,GAAG;gBACT,OAAO;gBACP,SAAS;gBACT,OAAO;gBACP,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;aAC/B,CAAC;YAEF,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;gBACxB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC1B,CAAC;YAED,4DAA4D;YAC5D,MAAM,gBAAgB,GAAa,EAAE,CAAC;YACtC,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;gBACb,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;oBACjC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAChC,CAAC;gBACL,CAAC;YACL,CAAC;YACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,eAAe,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE;gBAChD,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;aACrC,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gBAC/B,MAAM,CAAC,IAAI,KAAK,CAAC,iCAAiC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAO,CAAC,CAAC;YAC7D,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;YAC5D,IAAI,CAAC,UAAU,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,OAA4B;QACvD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QAEtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE;gBAC9C,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC;gBACrD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC;gBACrD,IAAI,CAAC,UAAU,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAC1D,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gBAC9B,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,mBAAmB,CAAC,UAA6B,EAAE,EAA0B;QACjF,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,QAAQ,EAAE,CAAC;gBACX,MAAM,WAAW,GAAG,IAAI,WAAW,CAAyB,IAAI,CAAC,CAAC;gBAClE,UAAU,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,GAAY,EAAE,EAAE;oBAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAU,CAAC,CAAC;oBACpC,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;wBACtB,qFAAqF;wBACrF,qEAAqE;wBACrE,IAAI,MAAM,KAAK,SAAS;4BAAE,OAAO,IAAI,CAAC;wBACtC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBAC/B,CAAC;oBACD,OAAO,MAAM,IAAI,IAAI,CAAC;gBAC1B,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAI,MAAc,EAAE,MAAgB;QAChD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,WAAW,CAAmB,MAAM,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QAED,wEAAwE;QACxE,sEAAsE;QACtE,6DAA6D;QAC7D,6DAA6D;QAC7D,MAAM,SAAS,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;QAChG,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACf,MAAM;YACN,WAAW;YACX,SAAS;YACT,aAAa,EAAE,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI;gBAClD,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;SAC3D,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAAc,EAAE,MAAgB;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAA2B,MAAM,EAAE,MAAM,CAAC,CAAC;QACjF,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpD,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACH,kBAAkB;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,kBAAkB,EAAE,CAAC;QAChC,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,oEAAoE;QACpE,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,iBAAiB,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,eAAe;QACjB,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,2EAA2E;YAC3E,MAAM,WAAW,GAAG,IAAI,WAAW,CAAsB,mBAAmB,CAAC,CAAC;YAC9E,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC9D,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC3B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,OAAO,wBAAwB,EAAE,CAAC;QACtC,CAAC;QACD,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,WAAW,GAAG,IAAI,WAAW,CAAkC,iBAAiB,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,KAAK;QACP,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAChC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QAC5B,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,8EAA8E;YAC9E,iFAAiF;YACjF,yCAAyC;YACzC,sDAAsD;YACtD,2CAA2C;YAC3C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QAC7B,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IAC3B,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/async/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,uBAAuB,EAEvB,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACtB,MAAM,sBAAsB,CAAC;AAS9B,OAAO,EACH,4BAA4B,EAC5B,8BAA8B,GAEjC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAIH,iBAAiB,EACjB,cAAc,EACd,cAAc,GACjB,MAAM,eAAe,CAAC;AAQvB,OAAO,EACH,iBAAiB,EACjB,wBAAwB,EACxB,kBAAkB,EAElB,eAAe,GAElB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAI9C;;;GAGG;AACH,MAAM,OAAO,MAAM;IACP,MAAM,CAAqB;IAC3B,OAAO,CAA2B;IAClC,UAAU,CAAgC;IAC1C,OAAO,CAAgB;IACvB,SAAS,GAAG,KAAK,CAAC;IAClB,MAAM,GAAG,KAAK,CAAC;IACf,UAAU,CAA4B;IACtC,MAAM,CAA8B;IACpC,UAAU,CAAyB;IACnC,OAAO,CAA4B;IACnC,eAAe,GAAyI,EAAE,CAAC;IAC3J,SAAS,CAA0C;IAE3D,YAAY,OAAsB;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,eAAe,CAAC,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACpG,IAAI,IAAI,CAAC,UAAU,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACtE,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACxC,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,4BAA4B,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAED,OAAO;QACH,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;QACtE,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YACzD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAChC,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,aAAa;QACvB,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;aACI,CAAC;YACF,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,OAA2B;QACrD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAErD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC9C,MAAM,eAAe,GAAG,4BAA4B,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAEjE,IAAI,eAAe,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC,IAAI,CAAC,eAAe,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpE,CAAC;YAED,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE;gBAChD,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;aACrC,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gBAC/B,MAAM,CAAC,IAAI,KAAK,CAAC,iCAAiC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAO,CAAC,CAAC;YAC7D,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;YAC5D,IAAI,CAAC,UAAU,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;YACvE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,OAA4B;QACvD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QAEtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE;gBAC9C,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC;gBACrD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC;gBACrD,IAAI,CAAC,UAAU,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAC1D,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gBAC9B,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,mBAAmB,CACvB,UAA6B,EAC7B,EAAmC,EACnC,aAA8C;QAE9C,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,aAAa,EAAE,CAAC;YAC7C,QAAQ,IAAI,EAAE,CAAC;gBACX,KAAK,UAAU,EAAE,CAAC;oBACd,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;oBAC7B,IAAI,OAAO,QAAQ,KAAK,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;oBAC/F,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAAgC,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE;wBAClF,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACpE,CAAC,CAAC,CAAC;oBACH,MAAM;gBACV,CAAC;gBACD,KAAK,YAAY,EAAE,CAAC;oBAChB,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC;oBAC/B,IAAI,OAAO,QAAQ,KAAK,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;oBACjG,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAAgC,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE;wBAClF,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACpE,CAAC,CAAC,CAAC;oBACH,MAAM;gBACV,CAAC;gBACD,KAAK,iBAAiB,EAAE,CAAC;oBACrB,MAAM,QAAQ,GAAG,EAAE,CAAC,eAAe,CAAC;oBACpC,IAAI,OAAO,QAAQ,KAAK,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;oBACtG,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAAqC,IAAI,CAAC,EAAE,aAAa,CAAC,EAAE;wBAC5F,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;oBACzE,CAAC,CAAC,CAAC;oBACH,MAAM;gBACV,CAAC;gBACD,KAAK,sBAAsB,EAAE,CAAC;oBAC1B,MAAM,QAAQ,GAAG,EAAE,CAAC,oBAAoB,CAAC;oBACzC,IAAI,OAAO,QAAQ,KAAK,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;oBAC3G,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAAqC,IAAI,CAAC,EAAE,aAAa,CAAC,EAAE;wBAC5F,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;oBACzE,CAAC,CAAC,CAAC;oBACH,MAAM;gBACV,CAAC;gBACD,KAAK,UAAU,EAAE,CAAC;oBACd,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;oBAC7B,IAAI,OAAO,QAAQ,KAAK,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;oBAC/F,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAA4B,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE;wBAC1E,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;oBAChE,CAAC,CAAC,CAAC;oBACH,MAAM;gBACV,CAAC;gBACD,KAAK,MAAM,EAAE,CAAC;oBACV,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC;oBACzB,IAAI,OAAO,QAAQ,KAAK,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;oBAC3F,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAA4B,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE;wBAC1E,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;oBAChE,CAAC,CAAC,CAAC;oBACH,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,EAAE,CAAC;oBACf,MAAM,QAAQ,GAAG,EAAE,CAAC,SAAS,CAAC;oBAC9B,IAAI,OAAO,QAAQ,KAAK,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;oBAChG,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAAyD,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE;wBACtG,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC9E,CAAC,CAAC,CAAC;oBACH,MAAM;gBACV,CAAC;gBACD,KAAK,YAAY,EAAE,CAAC;oBAChB,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC;oBAC/B,IAAI,OAAO,QAAQ,KAAK,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;oBACjG,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAA4B,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE;wBAC1E,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;oBAChE,CAAC,CAAC,CAAC;oBACH,MAAM;gBACV,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAY,WAAkD,EAAE,MAAe;QAC9G,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QAED,wEAAwE;QACxE,sEAAsE;QACtE,6DAA6D;QAC7D,6DAA6D;QAC7D,MAAM,SAAS,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;QAChG,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACf,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,WAAW;YACX,SAAS;YACT,aAAa,EAAE,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI;gBAClD,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;SAC3D,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,gBAAgB,CAAC,IAAY,EAAE,QAAyD;QACpF,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAAyB,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QACtG,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,OAAO;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM;YAAE,OAAO;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC;QACtC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBAClB,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,uEAAuE;gBACvE,MAAM,WAAW,GAAG,IAAI,WAAW,CAAyB,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBAChF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACnF,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC9B,OAAO;YACX,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,WAAW,CAAuC,eAAe,CAAC,CAAC;YAC3F,MAAM,MAAM,GAAwB,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC;YAChI,IAAI,IAAI,CAAC,OAAO,CAAC,uBAAuB,KAAK,SAAS,EAAE,CAAC;gBACrD,MAAM,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC;YAC1E,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACvE,IAAI,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;YACnC,IAAI,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;YACnD,OAAO,iBAAiB,EAAE,CAAC;gBACvB,MAAM,UAAU,GAAwB;oBACpC,QAAQ,EAAE,EAAE;oBACZ,iBAAiB;iBACpB,CAAC;gBACF,IAAI,IAAI,CAAC,OAAO,CAAC,uBAAuB,KAAK,SAAS,EAAE,CAAC;oBACrD,UAAU,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC;gBAC9E,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;gBACvE,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7C,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;YAC/C,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACxC,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC3B,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAClC,CAAC;qBACI,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzB,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACX,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,QAAQ;gBAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC;IACL,CAAC;IAEO,sBAAsB;QAC1B,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,YAAY;QACR,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,yDAAyD;QAC7E,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,OAAO;YACH,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE;gBACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAClC,CAAC;SACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,UAAU,CAAiC,MAAS,EAAE,MAAkC;QAC1F,IAAI,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,OAAO,CAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9E,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAC/D,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAqC,MAAS,EAAE,MAAkC;QACpG,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpD,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACH,kBAAkB;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,kBAAkB,EAAE,CAAC;QAChC,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,oEAAoE;QACpE,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,iBAAiB,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,eAAe;QACjB,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,2EAA2E;YAC3E,MAAM,WAAW,GAAG,IAAI,WAAW,CAAsB,mBAAmB,CAAC,CAAC;YAC9E,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC9D,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC3B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,OAAO,wBAAwB,EAAE,CAAC;QACtC,CAAC;QACD,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,WAAW,GAAG,IAAI,WAAW,CAAkC,iBAAiB,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK;QACD,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,WAAW;QACrB,MAAM,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,0FAA0F;QAClI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpC,IAAI,MAAoC,CAAC;gBACzC,IAAI,iBAAqC,CAAC;gBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBACnC,2DAA2D;gBAC3D,MAAM,OAAO,GAAG,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChE,IAAI,CAAC;oBACD,IAAI,IAAI,CAAC,SAAS;wBAAE,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAChE,CAAC;gBACD,OAAO,KAAK,EAAE,CAAC;oBACX,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtC,CAAC;wBACO,CAAC;oBACL,OAAO,EAAE,OAAO,EAAE,CAAC;gBACvB,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;YAC5D,CAAC;QACL,CAAC;gBACO,CAAC;YACL,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAChC,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACd,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACtB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YAC5B,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACf,8EAA8E;gBAC9E,iFAAiF;gBACjF,yCAAyC;gBACzC,sDAAsD;gBACtD,2CAA2C;gBAC3C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;gBAC1B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YAC7B,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAC3B,CAAC;IACL,CAAC;CACJ"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import type { CompletionItemKind } from "#enums/completionItemKind";
|
|
2
|
-
import type { DiagnosticCategory } from "#enums/diagnosticCategory";
|
|
3
2
|
import type { ElementFlags } from "#enums/elementFlags";
|
|
4
3
|
import type { ObjectFlags } from "#enums/objectFlags";
|
|
5
4
|
import type { TypeFlags } from "#enums/typeFlags";
|
|
6
5
|
import type { TypePredicateKind } from "#enums/typePredicateKind";
|
|
7
|
-
import type {
|
|
6
|
+
import type { IndexSignatureDeclaration, NamedTupleMember, ParameterDeclaration } from "../../ast/ast.ts";
|
|
7
|
+
import type { RootedFilePath } from "../../ast/index.ts";
|
|
8
|
+
import type { Diagnostic, RequestFileSystem } from "../proto.ts";
|
|
9
|
+
import type { NodeHandle, Signature, Symbol } from "./api.ts";
|
|
10
|
+
export type { Diagnostic } from "../proto.ts";
|
|
8
11
|
/**
|
|
9
12
|
* A TypeScript type.
|
|
10
13
|
*
|
|
@@ -24,6 +27,28 @@ export interface Type {
|
|
|
24
27
|
readonly id: number;
|
|
25
28
|
/** Get the symbol associated with this type, if any */
|
|
26
29
|
getSymbol(): Promise<Symbol | undefined>;
|
|
30
|
+
/** Get the properties of this type. */
|
|
31
|
+
getProperties(): Promise<readonly Symbol[]>;
|
|
32
|
+
/** Get a named property of this type, if present. */
|
|
33
|
+
getProperty(propertyName: string): Promise<Symbol | undefined>;
|
|
34
|
+
/** Get the properties of the apparent type of this type. */
|
|
35
|
+
getApparentProperties(): Promise<readonly Symbol[]>;
|
|
36
|
+
/** Get the apparent type of this type. */
|
|
37
|
+
getApparentType(): Promise<Type>;
|
|
38
|
+
/** Get the reduced type of this type. */
|
|
39
|
+
getReducedType(): Promise<Type>;
|
|
40
|
+
/** Get the call signatures of this type. */
|
|
41
|
+
getCallSignatures(): Promise<readonly Signature[]>;
|
|
42
|
+
/** Get the construct signatures of this type. */
|
|
43
|
+
getConstructSignatures(): Promise<readonly Signature[]>;
|
|
44
|
+
/** Get this type with `null` and `undefined` removed. */
|
|
45
|
+
getNonNullableType(): Promise<Type>;
|
|
46
|
+
/** Get this type's string index value type, if present. */
|
|
47
|
+
getStringIndexType(): Promise<Type | undefined>;
|
|
48
|
+
/** Get this type's number index value type, if present. */
|
|
49
|
+
getNumberIndexType(): Promise<Type | undefined>;
|
|
50
|
+
/** Get all index information for this type. */
|
|
51
|
+
getIndexInfos(): Promise<readonly IndexInfo[]>;
|
|
27
52
|
/** Get the type arguments of the type alias this type was instantiated from, if any */
|
|
28
53
|
getAliasTypeArguments(): Promise<readonly Type[]>;
|
|
29
54
|
/** Get the symbol of the type alias this type was instantiated from, if any */
|
|
@@ -60,8 +85,10 @@ export interface Type {
|
|
|
60
85
|
isBooleanLiteralType(): this is BooleanLiteralType;
|
|
61
86
|
/** Whether this type is a type reference */
|
|
62
87
|
isTypeReference(): this is TypeReference;
|
|
63
|
-
/** Whether this type is a tuple type */
|
|
64
|
-
isTupleType(): this is
|
|
88
|
+
/** Whether this type is a tuple type reference */
|
|
89
|
+
isTupleType(): this is TupleTypeReference;
|
|
90
|
+
/** Whether this type owns tuple metadata */
|
|
91
|
+
isTupleTypeTarget(): this is TupleType;
|
|
65
92
|
/** Whether this type is an index type (`keyof T`) */
|
|
66
93
|
isIndexType(): this is IndexType;
|
|
67
94
|
/** Whether this type is an indexed access type (`T[K]`) */
|
|
@@ -76,6 +103,8 @@ export interface Type {
|
|
|
76
103
|
isStringMappingType(): this is StringMappingType;
|
|
77
104
|
/** Whether this type is a type parameter */
|
|
78
105
|
isTypeParameter(): this is TypeParameter;
|
|
106
|
+
/** Whether this is a mapped type */
|
|
107
|
+
isMappedType(): this is MappedType;
|
|
79
108
|
}
|
|
80
109
|
/**
|
|
81
110
|
* Freshable types (TypeFlags.Freshable) - literal types (TypeFlags.Literal) and computed enum types (TypeFlags.Enum).
|
|
@@ -116,10 +145,26 @@ export interface ObjectType extends Type {
|
|
|
116
145
|
/** Object flags — use to determine the specific kind of object type. */
|
|
117
146
|
readonly objectFlags: ObjectFlags;
|
|
118
147
|
}
|
|
148
|
+
/** Mapped types (ObjectFlags.Mapped) */
|
|
149
|
+
export interface MappedType extends ObjectType {
|
|
150
|
+
/** Get the type parameter iterated by the mapped type */
|
|
151
|
+
getTypeParameter(): Promise<TypeParameter>;
|
|
152
|
+
/** Get the constraint over which the mapped type iterates */
|
|
153
|
+
getConstraintType(): Promise<Type>;
|
|
154
|
+
/** Get the remapped property name type, if present */
|
|
155
|
+
getNameType(): Promise<Type | undefined>;
|
|
156
|
+
/** Get the property value template type */
|
|
157
|
+
getTemplateType(): Promise<Type>;
|
|
158
|
+
}
|
|
119
159
|
/** Type references (ObjectFlags.Reference) — e.g. Array<string>, Map<K, V> */
|
|
120
160
|
export interface TypeReference extends ObjectType {
|
|
121
161
|
/** Get the generic target type (e.g. Array for Array<string>) */
|
|
122
|
-
getTarget(): Promise<
|
|
162
|
+
getTarget(): Promise<GenericType>;
|
|
163
|
+
}
|
|
164
|
+
/** References to tuple types */
|
|
165
|
+
export interface TupleTypeReference extends TypeReference {
|
|
166
|
+
/** Get the tuple type that describes this reference's shape */
|
|
167
|
+
getTarget(): Promise<TupleType>;
|
|
123
168
|
}
|
|
124
169
|
/** Interface types — classes and interfaces (ObjectFlags.ClassOrInterface) */
|
|
125
170
|
export interface InterfaceType extends TypeReference {
|
|
@@ -129,15 +174,24 @@ export interface InterfaceType extends TypeReference {
|
|
|
129
174
|
getOuterTypeParameters(): Promise<readonly TypeParameter[]>;
|
|
130
175
|
/** Get local type parameters declared on this interface/class */
|
|
131
176
|
getLocalTypeParameters(): Promise<readonly TypeParameter[]>;
|
|
177
|
+
/** Get the synthetic `this` type of this interface/class */
|
|
178
|
+
getThisType(): Promise<TypeParameter | undefined>;
|
|
179
|
+
}
|
|
180
|
+
/** Generic types */
|
|
181
|
+
export interface GenericType extends InterfaceType, TypeReference {
|
|
132
182
|
}
|
|
133
|
-
/** Tuple
|
|
134
|
-
export interface TupleType extends
|
|
183
|
+
/** Tuple type targets (ObjectFlags.Tuple) */
|
|
184
|
+
export interface TupleType extends GenericType {
|
|
185
|
+
/** Get this tuple target */
|
|
186
|
+
getTarget(): Promise<TupleType>;
|
|
135
187
|
/** Per-element flags (Required, Optional, Rest, Variadic) */
|
|
136
188
|
readonly elementFlags: readonly ElementFlags[];
|
|
137
189
|
/** Number of initial required or optional elements */
|
|
138
190
|
readonly fixedLength: number;
|
|
139
191
|
/** Whether the tuple is readonly */
|
|
140
192
|
readonly readonly: boolean;
|
|
193
|
+
/** Declarations providing tuple element names */
|
|
194
|
+
readonly labeledElementDeclarations?: readonly (NodeHandle<NamedTupleMember | ParameterDeclaration> | undefined)[];
|
|
141
195
|
}
|
|
142
196
|
/** Union or intersection types (TypeFlags.Union | TypeFlags.Intersection) */
|
|
143
197
|
export interface UnionOrIntersectionType extends Type {
|
|
@@ -150,10 +204,16 @@ export interface UnionType extends UnionOrIntersectionType {
|
|
|
150
204
|
/** Intersection types (TypeFlags.Intersection) */
|
|
151
205
|
export interface IntersectionType extends UnionOrIntersectionType {
|
|
152
206
|
}
|
|
207
|
+
/** Structured types (TypeFlags.StructuredType) */
|
|
208
|
+
export type StructuredType = ObjectType | UnionType | IntersectionType;
|
|
153
209
|
/** Type parameters (TypeFlags.TypeParameter) */
|
|
154
210
|
export interface TypeParameter extends Type {
|
|
155
211
|
/** True if this is the synthetic `this` type of an interface, class, or tuple */
|
|
156
212
|
readonly isThisType?: boolean | undefined;
|
|
213
|
+
/** Get the constraint (the `T` in `<U extends T>`), or undefined if it has none */
|
|
214
|
+
getConstraint(): Promise<Type | undefined>;
|
|
215
|
+
/** Get the default type (the `T` in `<U = T>`), or undefined if it has none */
|
|
216
|
+
getDefault(): Promise<Type | undefined>;
|
|
157
217
|
}
|
|
158
218
|
/** Index types — keyof T (TypeFlags.Index) */
|
|
159
219
|
export interface IndexType extends Type {
|
|
@@ -244,7 +304,7 @@ export interface IndexInfo {
|
|
|
244
304
|
/** Whether the index signature is readonly */
|
|
245
305
|
readonly isReadonly: boolean;
|
|
246
306
|
/** The index signature declaration, if any */
|
|
247
|
-
readonly declaration?: NodeHandle | undefined;
|
|
307
|
+
readonly declaration?: NodeHandle<IndexSignatureDeclaration> | undefined;
|
|
248
308
|
}
|
|
249
309
|
/**
|
|
250
310
|
* A single JSDoc tag attached to a symbol — e.g. `@param`, `@returns`.
|
|
@@ -259,13 +319,13 @@ export interface CompletionEntryLabelDetails {
|
|
|
259
319
|
detail?: string | undefined;
|
|
260
320
|
description?: string | undefined;
|
|
261
321
|
}
|
|
262
|
-
/** Options for {@link
|
|
322
|
+
/** Options for {@link LanguageService.getCompletionsAtPosition}. */
|
|
263
323
|
export interface CompletionOptions {
|
|
264
324
|
triggerCharacter?: string | undefined;
|
|
265
325
|
/** Include a `symbol` property on each completion entry. Only populated for symbol-based completions (not keywords or literals). */
|
|
266
326
|
includeSymbol?: boolean | undefined;
|
|
267
327
|
}
|
|
268
|
-
/** A single completion item returned by {@link
|
|
328
|
+
/** A single completion item returned by {@link LanguageService.getCompletionsAtPosition}. */
|
|
269
329
|
export interface CompletionEntry {
|
|
270
330
|
readonly name: string;
|
|
271
331
|
readonly kind?: CompletionItemKind | undefined;
|
|
@@ -277,34 +337,39 @@ export interface CompletionEntry {
|
|
|
277
337
|
/** The symbol associated with this completion entry. Only set when `includeSymbol: true` is passed and a symbol is available. */
|
|
278
338
|
readonly symbol?: Symbol | undefined;
|
|
279
339
|
}
|
|
280
|
-
/** The result of {@link
|
|
340
|
+
/** The result of {@link LanguageService.getCompletionsAtPosition}. */
|
|
281
341
|
export interface CompletionInfo {
|
|
282
342
|
readonly isIncomplete: boolean;
|
|
283
343
|
readonly entries: readonly CompletionEntry[];
|
|
284
344
|
}
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
/** Start position of the diagnostic */
|
|
292
|
-
readonly pos: number;
|
|
293
|
-
/** End position of the diagnostic */
|
|
294
|
-
readonly end: number;
|
|
295
|
-
/** Diagnostic error code */
|
|
296
|
-
readonly code: number;
|
|
297
|
-
/** Diagnostic category (error, warning, suggestion, message) */
|
|
298
|
-
readonly category: DiagnosticCategory;
|
|
299
|
-
/** Localized diagnostic message text */
|
|
345
|
+
export interface FormatDiagnosticsHost {
|
|
346
|
+
getCurrentDirectory(): string;
|
|
347
|
+
getCanonicalFileName(fileName: string): string;
|
|
348
|
+
getNewLine(): string;
|
|
349
|
+
}
|
|
350
|
+
export interface EmitOutputFile {
|
|
300
351
|
readonly text: string;
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
readonly
|
|
305
|
-
|
|
306
|
-
readonly
|
|
307
|
-
/**
|
|
308
|
-
readonly
|
|
352
|
+
readonly sourceFileName?: RootedFilePath | undefined;
|
|
353
|
+
}
|
|
354
|
+
export interface EmitResult {
|
|
355
|
+
readonly emitSkipped: boolean;
|
|
356
|
+
readonly diagnostics: readonly Diagnostic[];
|
|
357
|
+
readonly emittedFiles: readonly RootedFilePath[];
|
|
358
|
+
/** Emitted files captured as a filesystem layer suitable for {@link Snapshot.update}. */
|
|
359
|
+
readonly fileSystem?: RequestFileSystem | undefined;
|
|
360
|
+
}
|
|
361
|
+
export interface EmitOutput {
|
|
362
|
+
readonly emitSkipped: boolean;
|
|
363
|
+
readonly diagnostics: readonly Diagnostic[];
|
|
364
|
+
readonly outputFiles: ReadonlyMap<RootedFilePath, EmitOutputFile>;
|
|
365
|
+
}
|
|
366
|
+
export interface ImportSymbolAction {
|
|
367
|
+
readonly kind: "importSymbol";
|
|
368
|
+
readonly symbol: Symbol;
|
|
369
|
+
readonly isValidTypeOnlyUseSite?: boolean | undefined;
|
|
370
|
+
}
|
|
371
|
+
export type ImportAdderAction = ImportSymbolAction;
|
|
372
|
+
export interface GetImportEditsForSymbolsOptions {
|
|
373
|
+
readonly isValidTypeOnlyUseSite?: boolean | undefined;
|
|
309
374
|
}
|
|
310
375
|
//# sourceMappingURL=types.d.ts.map
|