Initial checkin
[ldk-swift-linux] / LDKSwift / Sources / LDKSwift / traits / BaseSign.swift
1 import LDKCHeaders
2 import LDKCHeaders
3 open class BaseSign {
4
5     public var cOpaqueStruct: LDKBaseSign?;
6
7     public init() {
8
9         /* NATIVE_CALLBACKS_START */
10
11                 func get_per_commitment_pointCallback(pointer: UnsafeRawPointer?, idx: UInt64) -> LDKPublicKey {
12                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::get_per_commitment_point")
13                         
14                         return Bindings.new_LDKPublicKey(array: instance.get_per_commitment_point(idx: idx));
15                 }
16
17                 func release_commitment_secretCallback(pointer: UnsafeRawPointer?, idx: UInt64) -> LDKThirtyTwoBytes {
18                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::release_commitment_secret")
19                         
20                         return Bindings.new_LDKThirtyTwoBytes(array: instance.release_commitment_secret(idx: idx));
21                 }
22
23                 func channel_keys_idCallback(pointer: UnsafeRawPointer?) -> LDKThirtyTwoBytes {
24                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::channel_keys_id")
25                         
26                         return Bindings.new_LDKThirtyTwoBytes(array: instance.channel_keys_id());
27                 }
28
29                 func sign_counterparty_commitmentCallback(pointer: UnsafeRawPointer?, commitment_txPointer: UnsafePointer<LDKCommitmentTransaction>) -> LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ {
30                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::sign_counterparty_commitment")
31                         let commitment_tx = CommitmentTransaction(pointer: commitment_txPointer.pointee);
32
33                         return instance.sign_counterparty_commitment(commitment_tx: commitment_tx).cOpaqueStruct!;
34                 }
35
36                 func sign_holder_commitment_and_htlcsCallback(pointer: UnsafeRawPointer?, commitment_txPointer: UnsafePointer<LDKHolderCommitmentTransaction>) -> LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ {
37                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::sign_holder_commitment_and_htlcs")
38                         let commitment_tx = HolderCommitmentTransaction(pointer: commitment_txPointer.pointee);
39
40                         return instance.sign_holder_commitment_and_htlcs(commitment_tx: commitment_tx).cOpaqueStruct!;
41                 }
42
43                 func sign_justice_revoked_outputCallback(pointer: UnsafeRawPointer?, justice_tx: LDKTransaction, input: uintptr_t, amount: UInt64, per_commitment_keyPointer: UnsafePointer<(UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8)>?) -> LDKCResult_SignatureNoneZ {
44                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::sign_justice_revoked_output")
45                         
46                                                                 var per_commitment_key: [UInt8]? = nil
47                                                                 if let per_commitment_keyUnwrapped = per_commitment_keyPointer {
48                                                                         per_commitment_key = Bindings.tuple32_to_array(nativeType: per_commitment_keyUnwrapped.pointee)
49                                                                 }
50                                                         
51                         return instance.sign_justice_revoked_output(justice_tx: Bindings.LDKTransaction_to_array(nativeType: justice_tx), input: input, amount: amount, per_commitment_key: per_commitment_key).cOpaqueStruct!;
52                 }
53
54                 func sign_justice_revoked_htlcCallback(pointer: UnsafeRawPointer?, justice_tx: LDKTransaction, input: uintptr_t, amount: UInt64, per_commitment_keyPointer: UnsafePointer<(UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8)>?, htlcPointer: UnsafePointer<LDKHTLCOutputInCommitment>) -> LDKCResult_SignatureNoneZ {
55                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::sign_justice_revoked_htlc")
56                         
57                                                                 var per_commitment_key: [UInt8]? = nil
58                                                                 if let per_commitment_keyUnwrapped = per_commitment_keyPointer {
59                                                                         per_commitment_key = Bindings.tuple32_to_array(nativeType: per_commitment_keyUnwrapped.pointee)
60                                                                 }
61                                                         let htlc = HTLCOutputInCommitment(pointer: htlcPointer.pointee);
62
63                         return instance.sign_justice_revoked_htlc(justice_tx: Bindings.LDKTransaction_to_array(nativeType: justice_tx), input: input, amount: amount, per_commitment_key: per_commitment_key, htlc: htlc).cOpaqueStruct!;
64                 }
65
66                 func sign_counterparty_htlc_transactionCallback(pointer: UnsafeRawPointer?, htlc_tx: LDKTransaction, input: uintptr_t, amount: UInt64, per_commitment_point: LDKPublicKey, htlcPointer: UnsafePointer<LDKHTLCOutputInCommitment>) -> LDKCResult_SignatureNoneZ {
67                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::sign_counterparty_htlc_transaction")
68                         let htlc = HTLCOutputInCommitment(pointer: htlcPointer.pointee);
69
70                         return instance.sign_counterparty_htlc_transaction(htlc_tx: Bindings.LDKTransaction_to_array(nativeType: htlc_tx), input: input, amount: amount, per_commitment_point: Bindings.tuple33_to_array(nativeType: per_commitment_point.compressed_form), htlc: htlc).cOpaqueStruct!;
71                 }
72
73                 func sign_closing_transactionCallback(pointer: UnsafeRawPointer?, closing_tx: LDKTransaction) -> LDKCResult_SignatureNoneZ {
74                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::sign_closing_transaction")
75                         
76                         return instance.sign_closing_transaction(closing_tx: Bindings.LDKTransaction_to_array(nativeType: closing_tx)).cOpaqueStruct!;
77                 }
78
79                 func sign_channel_announcementCallback(pointer: UnsafeRawPointer?, msgPointer: UnsafePointer<LDKUnsignedChannelAnnouncement>) -> LDKCResult_SignatureNoneZ {
80                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::sign_channel_announcement")
81                         let msg = UnsignedChannelAnnouncement(pointer: msgPointer.pointee);
82
83                         return instance.sign_channel_announcement(msg: msg).cOpaqueStruct!;
84                 }
85
86                 func ready_channelCallback(pointer: UnsafeMutableRawPointer?, channel_parametersPointer: UnsafePointer<LDKChannelTransactionParameters>) -> Void {
87                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::ready_channel")
88                         let channel_parameters = ChannelTransactionParameters(pointer: channel_parametersPointer.pointee);
89
90                         return instance.ready_channel(channel_parameters: channel_parameters);
91                 }
92
93                 func freeCallback(pointer: UnsafeMutableRawPointer?) -> Void {
94                         let instance: BaseSign = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "BaseSign.swift::free")
95                         
96                         return instance.free();
97                 }
98
99                 /* NATIVE_CALLBACKS_END */
100
101         self.cOpaqueStruct = LDKBaseSign(this_arg: Bindings.instanceToPointer(instance: self), 
102                         get_per_commitment_point: get_per_commitment_pointCallback,
103                         release_commitment_secret: release_commitment_secretCallback,
104                         pubkeys: LDKChannelPublicKeys(),
105                         set_pubkeys: nil,
106                         channel_keys_id: channel_keys_idCallback,
107                         sign_counterparty_commitment: sign_counterparty_commitmentCallback,
108                         sign_holder_commitment_and_htlcs: sign_holder_commitment_and_htlcsCallback,
109                         sign_justice_revoked_output: sign_justice_revoked_outputCallback,
110                         sign_justice_revoked_htlc: sign_justice_revoked_htlcCallback,
111                         sign_counterparty_htlc_transaction: sign_counterparty_htlc_transactionCallback,
112                         sign_closing_transaction: sign_closing_transactionCallback,
113                         sign_channel_announcement: sign_channel_announcementCallback,
114                         ready_channel: ready_channelCallback,
115                         free: freeCallback)
116     }
117
118     public init(pointer: LDKBaseSign){
119                 self.cOpaqueStruct = pointer
120         }
121
122     /* SWIFT_CALLBACKS_START */
123
124     open func get_per_commitment_point(idx: UInt64) -> [UInt8] {
125         /* EDIT ME */
126                 return [UInt8]()
127     }
128
129     open func release_commitment_secret(idx: UInt64) -> [UInt8] {
130         /* EDIT ME */
131                 return [UInt8]()
132     }
133
134     open func channel_keys_id() -> [UInt8] {
135         /* EDIT ME */
136                 return [UInt8]()
137     }
138
139     open func sign_counterparty_commitment(commitment_tx: CommitmentTransaction) -> Result_C2Tuple_SignatureCVec_SignatureZZNoneZ {
140         /* EDIT ME */
141                 return Result_C2Tuple_SignatureCVec_SignatureZZNoneZ(pointer: LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ())
142     }
143
144     open func sign_holder_commitment_and_htlcs(commitment_tx: HolderCommitmentTransaction) -> Result_C2Tuple_SignatureCVec_SignatureZZNoneZ {
145         /* EDIT ME */
146                 return Result_C2Tuple_SignatureCVec_SignatureZZNoneZ(pointer: LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ())
147     }
148
149     open func sign_justice_revoked_output(justice_tx: [UInt8], input: UInt, amount: UInt64, per_commitment_key: [UInt8]?) -> Result_SignatureNoneZ {
150         /* EDIT ME */
151                 return Result_SignatureNoneZ(pointer: LDKCResult_SignatureNoneZ())
152     }
153
154     open func sign_justice_revoked_htlc(justice_tx: [UInt8], input: UInt, amount: UInt64, per_commitment_key: [UInt8]?, htlc: HTLCOutputInCommitment) -> Result_SignatureNoneZ {
155         /* EDIT ME */
156                 return Result_SignatureNoneZ(pointer: LDKCResult_SignatureNoneZ())
157     }
158
159     open func sign_counterparty_htlc_transaction(htlc_tx: [UInt8], input: UInt, amount: UInt64, per_commitment_point: [UInt8], htlc: HTLCOutputInCommitment) -> Result_SignatureNoneZ {
160         /* EDIT ME */
161                 return Result_SignatureNoneZ(pointer: LDKCResult_SignatureNoneZ())
162     }
163
164     open func sign_closing_transaction(closing_tx: [UInt8]) -> Result_SignatureNoneZ {
165         /* EDIT ME */
166                 return Result_SignatureNoneZ(pointer: LDKCResult_SignatureNoneZ())
167     }
168
169     open func sign_channel_announcement(msg: UnsignedChannelAnnouncement) -> Result_SignatureNoneZ {
170         /* EDIT ME */
171                 return Result_SignatureNoneZ(pointer: LDKCResult_SignatureNoneZ())
172     }
173
174     open func ready_channel(channel_parameters: ChannelTransactionParameters) -> Void {
175         /* EDIT ME */
176                 
177     }
178
179     open func free() -> Void {
180         /* EDIT ME */
181                 
182     }
183
184     /* SWIFT_CALLBACKS_END */
185
186 }
187
188
189 public class NativelyImplementedBaseSign: BaseSign {
190         /* SWIFT_DEFAULT_CALLBACKS_START */
191
192         public override func get_per_commitment_point(idx: UInt64) -> [UInt8] {
193                 
194                                 return 
195                                 Bindings.LDKPublicKey_to_array(nativeType: self.cOpaqueStruct!.get_per_commitment_point(self.cOpaqueStruct!.this_arg, idx))
196                                 
197                         
198         }
199
200         public override func release_commitment_secret(idx: UInt64) -> [UInt8] {
201                 
202                                 return 
203                                 Bindings.LDKThirtyTwoBytes_to_array(nativeType: self.cOpaqueStruct!.release_commitment_secret(self.cOpaqueStruct!.this_arg, idx))
204                                 
205                         
206         }
207
208         public override func channel_keys_id() -> [UInt8] {
209                 
210                                 return 
211                                 Bindings.LDKThirtyTwoBytes_to_array(nativeType: self.cOpaqueStruct!.channel_keys_id(self.cOpaqueStruct!.this_arg))
212                                 
213                         
214         }
215
216         public override func sign_counterparty_commitment(commitment_tx: CommitmentTransaction) -> Result_C2Tuple_SignatureCVec_SignatureZZNoneZ {
217                 
218                                 return withUnsafePointer(to: commitment_tx.cOpaqueStruct!) { (commitment_txPointer: UnsafePointer<LDKCommitmentTransaction>) in
219
220                                 Result_C2Tuple_SignatureCVec_SignatureZZNoneZ(pointer: self.cOpaqueStruct!.sign_counterparty_commitment(self.cOpaqueStruct!.this_arg, commitment_txPointer))
221                                 
222 }
223                         
224         }
225
226         public override func sign_holder_commitment_and_htlcs(commitment_tx: HolderCommitmentTransaction) -> Result_C2Tuple_SignatureCVec_SignatureZZNoneZ {
227                 
228                                 return withUnsafePointer(to: commitment_tx.cOpaqueStruct!) { (commitment_txPointer: UnsafePointer<LDKHolderCommitmentTransaction>) in
229
230                                 Result_C2Tuple_SignatureCVec_SignatureZZNoneZ(pointer: self.cOpaqueStruct!.sign_holder_commitment_and_htlcs(self.cOpaqueStruct!.this_arg, commitment_txPointer))
231                                 
232 }
233                         
234         }
235
236         public override func sign_justice_revoked_output(justice_tx: [UInt8], input: UInt, amount: UInt64, per_commitment_key: [UInt8]?) -> Result_SignatureNoneZ {
237                 
238                                 return withUnsafePointer(to: Bindings.array_to_tuple32(array: per_commitment_key!)) { (per_commitment_keyPointer: UnsafePointer<(UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8)>) in
239
240                                 Result_SignatureNoneZ(pointer: self.cOpaqueStruct!.sign_justice_revoked_output(self.cOpaqueStruct!.this_arg, Bindings.new_LDKTransaction(array: justice_tx), input, amount, per_commitment_keyPointer))
241                                 
242 }
243                         
244         }
245
246         public override func sign_justice_revoked_htlc(justice_tx: [UInt8], input: UInt, amount: UInt64, per_commitment_key: [UInt8]?, htlc: HTLCOutputInCommitment) -> Result_SignatureNoneZ {
247                 
248                                 return withUnsafePointer(to: Bindings.array_to_tuple32(array: per_commitment_key!)) { (per_commitment_keyPointer: UnsafePointer<(UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8)>) in
249 withUnsafePointer(to: htlc.cOpaqueStruct!) { (htlcPointer: UnsafePointer<LDKHTLCOutputInCommitment>) in
250
251                                 Result_SignatureNoneZ(pointer: self.cOpaqueStruct!.sign_justice_revoked_htlc(self.cOpaqueStruct!.this_arg, Bindings.new_LDKTransaction(array: justice_tx), input, amount, per_commitment_keyPointer, htlcPointer))
252                                 
253 }
254 }
255                         
256         }
257
258         public override func sign_counterparty_htlc_transaction(htlc_tx: [UInt8], input: UInt, amount: UInt64, per_commitment_point: [UInt8], htlc: HTLCOutputInCommitment) -> Result_SignatureNoneZ {
259                 
260                                 return withUnsafePointer(to: htlc.cOpaqueStruct!) { (htlcPointer: UnsafePointer<LDKHTLCOutputInCommitment>) in
261
262                                 Result_SignatureNoneZ(pointer: self.cOpaqueStruct!.sign_counterparty_htlc_transaction(self.cOpaqueStruct!.this_arg, Bindings.new_LDKTransaction(array: htlc_tx), input, amount, Bindings.new_LDKPublicKey(array: per_commitment_point), htlcPointer))
263                                 
264 }
265                         
266         }
267
268         public override func sign_closing_transaction(closing_tx: [UInt8]) -> Result_SignatureNoneZ {
269                 
270                                 return 
271                                 Result_SignatureNoneZ(pointer: self.cOpaqueStruct!.sign_closing_transaction(self.cOpaqueStruct!.this_arg, Bindings.new_LDKTransaction(array: closing_tx)))
272                                 
273                         
274         }
275
276         public override func sign_channel_announcement(msg: UnsignedChannelAnnouncement) -> Result_SignatureNoneZ {
277                 
278                                 return withUnsafePointer(to: msg.cOpaqueStruct!) { (msgPointer: UnsafePointer<LDKUnsignedChannelAnnouncement>) in
279
280                                 Result_SignatureNoneZ(pointer: self.cOpaqueStruct!.sign_channel_announcement(self.cOpaqueStruct!.this_arg, msgPointer))
281                                 
282 }
283                         
284         }
285
286         public override func ready_channel(channel_parameters: ChannelTransactionParameters) -> Void {
287                 
288                                 withUnsafePointer(to: channel_parameters.cOpaqueStruct!) { (channel_parametersPointer: UnsafePointer<LDKChannelTransactionParameters>) in
289
290                                 self.cOpaqueStruct!.ready_channel(self.cOpaqueStruct!.this_arg, channel_parametersPointer)
291                                 
292 }
293                         
294         }
295
296         public override func free() -> Void {
297                 
298                                 
299                                 self.cOpaqueStruct!.free(self.cOpaqueStruct!.this_arg)
300                                 
301                         
302         }
303
304         /* SWIFT_DEFAULT_CALLBACKS_END */
305 }