@@ -60,6 +60,8 @@ func WithReOrgChan(reOrgChan chan struct{}) NotifierOption {
6060
6161// ChainNotifierClient exposes base lightning functionality. 
6262type  ChainNotifierClient  interface  {
63+ 	ServiceClient [chainrpc.ChainNotifierClient ]
64+ 
6365	RegisterBlockEpochNtfn (ctx  context.Context ) (
6466		chan  int32 , chan  error , error )
6567
@@ -81,6 +83,10 @@ type chainNotifierClient struct {
8183	wg  sync.WaitGroup 
8284}
8385
86+ // A compile time check to ensure that chainNotifierClient implements the 
87+ // ChainNotifierClient interface. 
88+ var  _  ChainNotifierClient  =  (* chainNotifierClient )(nil )
89+ 
8490func  newChainNotifierClient (conn  grpc.ClientConnInterface ,
8591	chainMac  serializedMacaroon , timeout  time.Duration ) * chainNotifierClient  {
8692
@@ -95,6 +101,15 @@ func (s *chainNotifierClient) WaitForFinished() {
95101	s .wg .Wait ()
96102}
97103
104+ // RawClientWithMacAuth returns a context with the proper macaroon 
105+ // authentication, the default RPC timeout, and the raw client. 
106+ func  (s  * chainNotifierClient ) RawClientWithMacAuth (
107+ 	parentCtx  context.Context ) (context.Context , time.Duration ,
108+ 	chainrpc.ChainNotifierClient ) {
109+ 
110+ 	return  s .chainMac .WithMacaroonAuth (parentCtx ), s .timeout , s .client 
111+ }
112+ 
98113func  (s  * chainNotifierClient ) RegisterSpendNtfn (ctx  context.Context ,
99114	outpoint  * wire.OutPoint , pkScript  []byte , heightHint  int32 ) (
100115	chan  * chainntnfs.SpendDetail , chan  error , error ) {
0 commit comments