6cbc46219235cb86ee76e7f710f63022a6c84af9
[ldk-java] / ts / structs / ChainMonitor.ts
1
2             
3 import CommonBase from './CommonBase';
4 import * as bindings from '../bindings' // TODO: figure out location
5
6
7
8             export default class ChainMonitor extends CommonBase {
9                 constructor(_dummy: object, ptr: number) {
10                     super(ptr);
11                 }
12
13                 
14                 protected finalize() {
15                     super.finalize();
16
17                     if (this.ptr != 0) {
18                         bindings.ChainMonitor_free(this.ptr);
19                     }
20                 }
21         public void block_connected(Uint8Array header, TwoTuple<Number, Uint8Array>[] txdata, number height) {
22                 bindings.ChainMonitor_block_connected(this.ptr, header, (number[])Arrays.stream(txdata).map(arr_conv_30 -> bindings.C2Tuple_usizeTransactionZ_new(arr_conv_30.a, arr_conv_30.b)).toArray(), height);
23                 /* TODO 2 TwoTuple<Number, Uint8Array>  */;
24         }
25
26         public void block_disconnected(Uint8Array header, number disconnected_height) {
27                 bindings.ChainMonitor_block_disconnected(this.ptr, header, disconnected_height);
28         }
29
30         public static ChainMonitor constructor_new(Filter chain_source, BroadcasterInterface broadcaster, Logger logger, FeeEstimator feeest, Persist persister) {
31                 number ret = bindings.ChainMonitor_new(chain_source == null ? 0 : chain_source.ptr, broadcaster == null ? 0 : broadcaster.ptr, logger == null ? 0 : logger.ptr, feeest == null ? 0 : feeest.ptr, persister == null ? 0 : persister.ptr);
32                 const ret_hu_conv: ChainMonitor = new ChainMonitor(null, ret);
33                 ret_hu_conv.ptrs_to.add(chain_source);
34                 ret_hu_conv.ptrs_to.add(broadcaster);
35                 ret_hu_conv.ptrs_to.add(logger);
36                 ret_hu_conv.ptrs_to.add(feeest);
37                 ret_hu_conv.ptrs_to.add(persister);
38                 return ret_hu_conv;
39         }
40
41         public Watch as_Watch() {
42                 number ret = bindings.ChainMonitor_as_Watch(this.ptr);
43                 Watch ret_hu_conv = new Watch(null, ret);
44                 ret_hu_conv.ptrs_to.add(this);
45                 return ret_hu_conv;
46         }
47
48         public EventsProvider as_EventsProvider() {
49                 number ret = bindings.ChainMonitor_as_EventsProvider(this.ptr);
50                 EventsProvider ret_hu_conv = new EventsProvider(null, ret);
51                 ret_hu_conv.ptrs_to.add(this);
52                 return ret_hu_conv;
53         }
54
55 }