X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=ts%2Fstructs%2FSpendableOutputDescriptor.ts;h=caf6286f85360060f8fd5a397a0f01605dade792;hb=c3ae2d6897e5a809459c8d9a72a4b3aa0052c8c8;hp=e1edf64f7e8a16c765d387a0cadc6ae3fbbaae29;hpb=822471992c6bf6f9985e531cc5940e4cc35e3e4c;p=ldk-java diff --git a/ts/structs/SpendableOutputDescriptor.ts b/ts/structs/SpendableOutputDescriptor.ts index e1edf64f..caf6286f 100644 --- a/ts/structs/SpendableOutputDescriptor.ts +++ b/ts/structs/SpendableOutputDescriptor.ts @@ -13,11 +13,11 @@ export default class SpendableOutputDescriptor extends CommonBase { if (raw_val instanceof bindings.LDKSpendableOutputDescriptor.StaticOutput) { return new StaticOutput(this.ptr, raw_val); } - if (raw_val instanceof bindings.LDKSpendableOutputDescriptor.DynamicOutputP2WSH) { - return new DynamicOutputP2WSH(this.ptr, raw_val); + if (raw_val instanceof bindings.LDKSpendableOutputDescriptor.DelayedPaymentOutput) { + return new DelayedPaymentOutput(this.ptr, raw_val); } - if (raw_val instanceof bindings.LDKSpendableOutputDescriptor.StaticOutputCounterpartyPayment) { - return new StaticOutputCounterpartyPayment(this.ptr, raw_val); + if (raw_val instanceof bindings.LDKSpendableOutputDescriptor.StaticPaymentOutput) { + return new StaticPaymentOutput(this.ptr, raw_val); } throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface } @@ -28,55 +28,51 @@ export class StaticOutput extends SpendableOutputDescriptor { public output: TxOut; private constructor(ptr: number, obj: bindings.LDKSpendableOutputDescriptor.StaticOutput) { super(null, ptr); - const outpoint: uint32_t = obj.outpoint; - OutPoint outpoint_hu_conv = new OutPoint(null, outpoint); + const outpoint: number = obj.outpoint; + const outpoint_hu_conv: OutPoint = new OutPoint(null, outpoint); + outpoint_hu_conv.ptrs_to.add(this); this.outpoint = outpoint_hu_conv; - const output: uint32_t = obj.output; + const output: number = obj.output; TxOut output_conv = new TxOut(null, output); this.output = output_conv; } } -export class DynamicOutputP2WSH extends SpendableOutputDescriptor { - public outpoint: OutPoint; - public per_commitment_point: byte[]; - public to_self_delay: short; - public output: TxOut; - public key_derivation_params: TwoTuple; - public revocation_pubkey: byte[]; - private constructor(ptr: number, obj: bindings.LDKSpendableOutputDescriptor.DynamicOutputP2WSH) { +export class DelayedPaymentOutput extends SpendableOutputDescriptor { + public delayed_payment_output: DelayedPaymentOutputDescriptor; + private constructor(ptr: number, obj: bindings.LDKSpendableOutputDescriptor.DelayedPaymentOutput) { super(null, ptr); - const outpoint: uint32_t = obj.outpoint; - OutPoint outpoint_hu_conv = new OutPoint(null, outpoint); - this.outpoint = outpoint_hu_conv; - this.per_commitment_point = obj.per_commitment_point; - this.to_self_delay = obj.to_self_delay; - const output: uint32_t = obj.output; - TxOut output_conv = new TxOut(null, output); - this.output = output_conv; - const key_derivation_params: uint32_t = obj.key_derivation_params; - long key_derivation_params_a = bindings.LDKC2Tuple_u64u64Z_get_a(key_derivation_params); - long key_derivation_params_b = bindings.LDKC2Tuple_u64u64Z_get_b(key_derivation_params); - TwoTuple key_derivation_params_conv = new TwoTuple(key_derivation_params_a, key_derivation_params_b); - this.key_derivation_params = key_derivation_params_conv; - this.revocation_pubkey = obj.revocation_pubkey; + const delayed_payment_output: number = obj.delayed_payment_output; + const delayed_payment_output_hu_conv: DelayedPaymentOutputDescriptor = new DelayedPaymentOutputDescriptor(null, delayed_payment_output); + delayed_payment_output_hu_conv.ptrs_to.add(this); + this.delayed_payment_output = delayed_payment_output_hu_conv; } } -export class StaticOutputCounterpartyPayment extends SpendableOutputDescriptor { - public outpoint: OutPoint; - public output: TxOut; - public key_derivation_params: TwoTuple; - private constructor(ptr: number, obj: bindings.LDKSpendableOutputDescriptor.StaticOutputCounterpartyPayment) { +export class StaticPaymentOutput extends SpendableOutputDescriptor { + public static_payment_output: StaticPaymentOutputDescriptor; + private constructor(ptr: number, obj: bindings.LDKSpendableOutputDescriptor.StaticPaymentOutput) { super(null, ptr); - const outpoint: uint32_t = obj.outpoint; - OutPoint outpoint_hu_conv = new OutPoint(null, outpoint); - this.outpoint = outpoint_hu_conv; - const output: uint32_t = obj.output; - TxOut output_conv = new TxOut(null, output); - this.output = output_conv; - const key_derivation_params: uint32_t = obj.key_derivation_params; - long key_derivation_params_a = bindings.LDKC2Tuple_u64u64Z_get_a(key_derivation_params); - long key_derivation_params_b = bindings.LDKC2Tuple_u64u64Z_get_b(key_derivation_params); - TwoTuple key_derivation_params_conv = new TwoTuple(key_derivation_params_a, key_derivation_params_b); - this.key_derivation_params = key_derivation_params_conv; + const static_payment_output: number = obj.static_payment_output; + const static_payment_output_hu_conv: StaticPaymentOutputDescriptor = new StaticPaymentOutputDescriptor(null, static_payment_output); + static_payment_output_hu_conv.ptrs_to.add(this); + this.static_payment_output = static_payment_output_hu_conv; + } +} + public SpendableOutputDescriptor clone() { + number ret = bindings.SpendableOutputDescriptor_clone(this.ptr); + SpendableOutputDescriptor ret_hu_conv = SpendableOutputDescriptor.constr_from_ptr(ret); + ret_hu_conv.ptrs_to.add(this); + return ret_hu_conv; + } + + public Uint8Array write() { + Uint8Array ret = bindings.SpendableOutputDescriptor_write(this.ptr); + return ret; + } + + public static Result_SpendableOutputDescriptorDecodeErrorZ constructor_read(Uint8Array ser) { + number ret = bindings.SpendableOutputDescriptor_read(ser); + Result_SpendableOutputDescriptorDecodeErrorZ ret_hu_conv = Result_SpendableOutputDescriptorDecodeErrorZ.constr_from_ptr(ret); + return ret_hu_conv; } + }