@@ -33,10 +33,14 @@ import { SharedWorkerAcceptor } from "./SharedWorkerAcceptor";
3333 * 
3434 * @template  Header Type of the header containing initial data. 
3535 * @template  Provider Type of features provided for the remote system. 
36+  * @template  Remote Type of features supported by remote system, used for {@link  getDriver} function. 
3637 * @author  Jeongho Nam - https://github.com/samchon 
3738 */ 
38- export  class  SharedWorkerServer < Header ,  Provider  extends  object  |  null > 
39-   implements  IServer < SharedWorkerServer . State > 
39+ export  class  SharedWorkerServer < 
40+   Header , 
41+   Provider  extends  object  |  null , 
42+   Remote  extends  object  |  null , 
43+ >  implements  IServer < SharedWorkerServer . State > 
4044{ 
4145  /** 
4246   * @hidden  
@@ -46,7 +50,7 @@ export class SharedWorkerServer<Header, Provider extends object | null>
4650  /** 
4751   * @hidden  
4852   */ 
49-   private  acceptors_ : HashSet < SharedWorkerAcceptor < Header ,  Provider > > ; 
53+   private  acceptors_ : HashSet < SharedWorkerAcceptor < Header ,  Provider ,   Remote > > ; 
5054
5155  /* ---------------------------------------------------------------- 
5256    CONSTRUCTOR 
@@ -75,7 +79,7 @@ export class SharedWorkerServer<Header, Provider extends object | null>
7579   */ 
7680  public  async  open ( 
7781    handler : ( 
78-       acceptor : SharedWorkerAcceptor < Header ,  Provider > , 
82+       acceptor : SharedWorkerAcceptor < Header ,  Provider ,   Remote > , 
7983    )  =>  Promise < void > , 
8084  ) : Promise < void >  { 
8185    // TEST CONDITION 
@@ -130,15 +134,15 @@ export class SharedWorkerServer<Header, Provider extends object | null>
130134   */ 
131135  private  _Handle_connect ( 
132136    port : MessagePort , 
133-     handler : ( acceptor : SharedWorkerAcceptor < Header ,  Provider > )  =>  any , 
137+     handler : ( acceptor : SharedWorkerAcceptor < Header ,  Provider ,   Remote > )  =>  any , 
134138  ) : void   { 
135139    port . onmessage  =  once ( ( evt )  =>  { 
136140      // ARGUMENTS 
137141      const  wrapper : IHeaderWrapper < Header >  =  JSON . parse ( evt . data ) ; 
138142
139143      // CREATE ACCEPTOR 
140144      /* eslint-disable */ 
141-       let  acceptor : SharedWorkerAcceptor < Header ,  Provider > ; 
145+       let  acceptor : SharedWorkerAcceptor < Header ,  Provider ,   Remote > ; 
142146      acceptor  =  SharedWorkerAcceptor . create ( port ,  wrapper . header ,  ( )  =>  { 
143147        this . acceptors_ . erase ( acceptor ) ; 
144148      } ) ; 
0 commit comments