3 import CommonBase from './CommonBase';
4 import * as bindings from '../bindings' // TODO: figure out location
8 export default class Invoice extends CommonBase {
9 constructor(_dummy: object, ptr: number) {
14 protected finalize() {
18 bindings.Invoice_free(this.ptr);
21 public boolean eq(Invoice b) {
22 boolean ret = bindings.Invoice_eq(this.ptr, b == null ? 0 : b.ptr & ~1);
27 public Invoice clone() {
28 number ret = bindings.Invoice_clone(this.ptr);
29 const ret_hu_conv: Invoice = new Invoice(null, ret);
30 ret_hu_conv.ptrs_to.add(this);
34 public SignedRawInvoice into_signed_raw() {
35 number ret = bindings.Invoice_into_signed_raw(this.ptr);
36 const ret_hu_conv: SignedRawInvoice = new SignedRawInvoice(null, ret);
37 ret_hu_conv.ptrs_to.add(this);
41 public Result_NoneSemanticErrorZ check_signature() {
42 number ret = bindings.Invoice_check_signature(this.ptr);
43 Result_NoneSemanticErrorZ ret_hu_conv = Result_NoneSemanticErrorZ.constr_from_ptr(ret);
47 public static Result_InvoiceSemanticErrorZ constructor_from_signed(SignedRawInvoice signed_invoice) {
48 number ret = bindings.Invoice_from_signed(signed_invoice == null ? 0 : signed_invoice.ptr & ~1);
49 Result_InvoiceSemanticErrorZ ret_hu_conv = Result_InvoiceSemanticErrorZ.constr_from_ptr(ret);
53 public number timestamp() {
54 number ret = bindings.Invoice_timestamp(this.ptr);
58 public Uint8Array payment_hash() {
59 Uint8Array ret = bindings.Invoice_payment_hash(this.ptr);
63 public Uint8Array payee_pub_key() {
64 Uint8Array ret = bindings.Invoice_payee_pub_key(this.ptr);
68 public Uint8Array payment_secret() {
69 Uint8Array ret = bindings.Invoice_payment_secret(this.ptr);
73 public InvoiceFeatures features() {
74 number ret = bindings.Invoice_features(this.ptr);
75 const ret_hu_conv: InvoiceFeatures = new InvoiceFeatures(null, ret);
76 ret_hu_conv.ptrs_to.add(this);
80 public Uint8Array recover_payee_pub_key() {
81 Uint8Array ret = bindings.Invoice_recover_payee_pub_key(this.ptr);
85 public number expiry_time() {
86 number ret = bindings.Invoice_expiry_time(this.ptr);
90 public boolean is_expired() {
91 boolean ret = bindings.Invoice_is_expired(this.ptr);
95 public number min_final_cltv_expiry() {
96 number ret = bindings.Invoice_min_final_cltv_expiry(this.ptr);
100 public PrivateRoute[] private_routes() {
101 number[] ret = bindings.Invoice_private_routes(this.ptr);
102 PrivateRoute[] ret_conv_14_arr = new PrivateRoute[ret.length];
103 for (int o = 0; o < ret.length; o++) {
104 number ret_conv_14 = ret[o];
105 const ret_conv_14_hu_conv: PrivateRoute = new PrivateRoute(null, ret_conv_14);
106 ret_conv_14_hu_conv.ptrs_to.add(this);
107 ret_conv_14_arr[o] = ret_conv_14_hu_conv;
109 return ret_conv_14_arr;
112 public RouteHint[] route_hints() {
113 number[] ret = bindings.Invoice_route_hints(this.ptr);
114 RouteHint[] ret_conv_11_arr = new RouteHint[ret.length];
115 for (int l = 0; l < ret.length; l++) {
116 number ret_conv_11 = ret[l];
117 const ret_conv_11_hu_conv: RouteHint = new RouteHint(null, ret_conv_11);
118 ret_conv_11_hu_conv.ptrs_to.add(this);
119 ret_conv_11_arr[l] = ret_conv_11_hu_conv;
121 return ret_conv_11_arr;
124 public Currency currency() {
125 Currency ret = bindings.Invoice_currency(this.ptr);
129 public Option_u64Z amount_milli_satoshis() {
130 number ret = bindings.Invoice_amount_milli_satoshis(this.ptr);
131 Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret);
132 ret_hu_conv.ptrs_to.add(this);
136 public static Result_InvoiceNoneZ constructor_from_str(String s) {
137 number ret = bindings.Invoice_from_str(s);
138 Result_InvoiceNoneZ ret_hu_conv = Result_InvoiceNoneZ.constr_from_ptr(ret);
142 public String to_str() {
143 String ret = bindings.Invoice_to_str(this.ptr);