3 import CommonBase from './CommonBase';
4 import * as bindings from '../bindings' // TODO: figure out location
8 export default class RawInvoice extends CommonBase {
9 constructor(_dummy: object, ptr: number) {
14 protected finalize() {
18 bindings.RawInvoice_free(this.ptr);
21 public RawDataPart get_data() {
22 number ret = bindings.RawInvoice_get_data(this.ptr);
23 const ret_hu_conv: RawDataPart = new RawDataPart(null, ret);
24 ret_hu_conv.ptrs_to.add(this);
28 public void set_data(RawDataPart val) {
29 bindings.RawInvoice_set_data(this.ptr, val == null ? 0 : val.ptr & ~1);
30 this.ptrs_to.add(val);
33 public boolean eq(RawInvoice b) {
34 boolean ret = bindings.RawInvoice_eq(this.ptr, b == null ? 0 : b.ptr & ~1);
39 public RawInvoice clone() {
40 number ret = bindings.RawInvoice_clone(this.ptr);
41 const ret_hu_conv: RawInvoice = new RawInvoice(null, ret);
42 ret_hu_conv.ptrs_to.add(this);
46 public Uint8Array hash() {
47 Uint8Array ret = bindings.RawInvoice_hash(this.ptr);
51 public Sha256 payment_hash() {
52 number ret = bindings.RawInvoice_payment_hash(this.ptr);
53 const ret_hu_conv: Sha256 = new Sha256(null, ret);
54 ret_hu_conv.ptrs_to.add(this);
58 public Description description() {
59 number ret = bindings.RawInvoice_description(this.ptr);
60 const ret_hu_conv: Description = new Description(null, ret);
61 ret_hu_conv.ptrs_to.add(this);
65 public PayeePubKey payee_pub_key() {
66 number ret = bindings.RawInvoice_payee_pub_key(this.ptr);
67 const ret_hu_conv: PayeePubKey = new PayeePubKey(null, ret);
68 ret_hu_conv.ptrs_to.add(this);
72 public Sha256 description_hash() {
73 number ret = bindings.RawInvoice_description_hash(this.ptr);
74 const ret_hu_conv: Sha256 = new Sha256(null, ret);
75 ret_hu_conv.ptrs_to.add(this);
79 public ExpiryTime expiry_time() {
80 number ret = bindings.RawInvoice_expiry_time(this.ptr);
81 const ret_hu_conv: ExpiryTime = new ExpiryTime(null, ret);
82 ret_hu_conv.ptrs_to.add(this);
86 public MinFinalCltvExpiry min_final_cltv_expiry() {
87 number ret = bindings.RawInvoice_min_final_cltv_expiry(this.ptr);
88 const ret_hu_conv: MinFinalCltvExpiry = new MinFinalCltvExpiry(null, ret);
89 ret_hu_conv.ptrs_to.add(this);
93 public Uint8Array payment_secret() {
94 Uint8Array ret = bindings.RawInvoice_payment_secret(this.ptr);
98 public InvoiceFeatures features() {
99 number ret = bindings.RawInvoice_features(this.ptr);
100 const ret_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, ret);
101 ret_hu_conv.ptrs_to.add(this);
105 public PrivateRoute[] private_routes() {
106 number[] ret = bindings.RawInvoice_private_routes(this.ptr);
107 PrivateRoute[] ret_conv_14_arr = new PrivateRoute[ret.length];
108 for (int o = 0; o < ret.length; o++) {
109 number ret_conv_14 = ret[o];
110 const ret_conv_14_hu_conv: PrivateRoute = new PrivateRoute(null, ret_conv_14);
111 ret_conv_14_hu_conv.ptrs_to.add(this);
112 ret_conv_14_arr[o] = ret_conv_14_hu_conv;
114 return ret_conv_14_arr;
117 public Option_u64Z amount_pico_btc() {
118 number ret = bindings.RawInvoice_amount_pico_btc(this.ptr);
119 Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret);
120 ret_hu_conv.ptrs_to.add(this);
124 public Currency currency() {
125 Currency ret = bindings.RawInvoice_currency(this.ptr);