import { MessageReader , MessageWriter , Logger , ConnectionStrategy , ConnectionOptions , ProtocolConnection , WatchDog , InitializeParams , createProtocolConnection , createConnection as createCommonConnection , Connection , Features , _Connection , _ } from '../common/api' ; export * from 'vscode-languageserver-protocol/browser' ; export * from '../common/api' ; let _shutdownReceived = false ; const watchDog = { initialize : ( _params ) : void => { } , get shutdownReceived ( ) : boolean { return _shutdownReceived ; } , set shutdownReceived ( value ) { _shutdownReceived = value ; } , exit : ( _code ) : void => { } } ; param factories param reader param writer param options export function createConnection < PConsole = _ , PTracer = _ , PTelemetry = _ , PClient = _ , PWindow = _ , PWorkspace = _ , PLanguages = _ > ( factories , reader , writer , options ? ) ; param reader param writer param options export function createConnection ( reader , writer , options ? ) ; export function createConnection ( arg1 , arg2 , arg3 ? , arg4 ? ) { let factories ; let reader ; let writer ; let options ; if ( arg1 !== void 0 && ( arg1 as Features ) . __brand === 'features' ) { factories = arg1 ; arg1 = arg2 ; arg2 = arg3 ; arg3 = arg4 ; } if ( ConnectionStrategy . is ( arg1 ) || ConnectionOptions . is ( arg1 ) ) { options = arg1 ; } else { reader = arg1 ; writer = arg2 ; options = arg3 ; } const connectionFactory = ( logger ) : ProtocolConnection => { return createProtocolConnection ( reader ! , writer ! , logger , options ) ; } ; return createCommonConnection ( connectionFactory , watchDog , factories ) ; }