Merge pull request #45 from TheBlueMatt/main
[ldk-c-bindings] / lightning-c-bindings / include / ldk_rust_types.h
1 #if defined(__GNUC__)
2 #define MUST_USE_STRUCT __attribute__((warn_unused))
3 #define MUST_USE_RES __attribute__((warn_unused_result))
4 #else
5 #define MUST_USE_STRUCT
6 #define MUST_USE_RES
7 #endif
8 #if defined(__clang__)
9 #define NONNULL_PTR _Nonnull
10 #else
11 #define NONNULL_PTR
12 #endif
13 struct nativeTxCreationKeysOpaque;
14 typedef struct nativeTxCreationKeysOpaque LDKnativeTxCreationKeys;
15 struct nativeChannelPublicKeysOpaque;
16 typedef struct nativeChannelPublicKeysOpaque LDKnativeChannelPublicKeys;
17 struct nativeHTLCOutputInCommitmentOpaque;
18 typedef struct nativeHTLCOutputInCommitmentOpaque LDKnativeHTLCOutputInCommitment;
19 struct nativeChannelTransactionParametersOpaque;
20 typedef struct nativeChannelTransactionParametersOpaque LDKnativeChannelTransactionParameters;
21 struct nativeCounterpartyChannelTransactionParametersOpaque;
22 typedef struct nativeCounterpartyChannelTransactionParametersOpaque LDKnativeCounterpartyChannelTransactionParameters;
23 struct nativeDirectedChannelTransactionParametersOpaque;
24 typedef struct nativeDirectedChannelTransactionParametersOpaque LDKnativeDirectedChannelTransactionParameters;
25 struct nativeHolderCommitmentTransactionOpaque;
26 typedef struct nativeHolderCommitmentTransactionOpaque LDKnativeHolderCommitmentTransaction;
27 struct nativeBuiltCommitmentTransactionOpaque;
28 typedef struct nativeBuiltCommitmentTransactionOpaque LDKnativeBuiltCommitmentTransaction;
29 struct nativeClosingTransactionOpaque;
30 typedef struct nativeClosingTransactionOpaque LDKnativeClosingTransaction;
31 struct nativeTrustedClosingTransactionOpaque;
32 typedef struct nativeTrustedClosingTransactionOpaque LDKnativeTrustedClosingTransaction;
33 struct nativeCommitmentTransactionOpaque;
34 typedef struct nativeCommitmentTransactionOpaque LDKnativeCommitmentTransaction;
35 struct nativeTrustedCommitmentTransactionOpaque;
36 typedef struct nativeTrustedCommitmentTransactionOpaque LDKnativeTrustedCommitmentTransaction;
37 struct nativeShutdownScriptOpaque;
38 typedef struct nativeShutdownScriptOpaque LDKnativeShutdownScript;
39 struct nativeInvalidShutdownScriptOpaque;
40 typedef struct nativeInvalidShutdownScriptOpaque LDKnativeInvalidShutdownScript;
41 struct nativeBackgroundProcessorOpaque;
42 typedef struct nativeBackgroundProcessorOpaque LDKnativeBackgroundProcessor;
43 struct nativeRouteHopOpaque;
44 typedef struct nativeRouteHopOpaque LDKnativeRouteHop;
45 struct nativeRouteOpaque;
46 typedef struct nativeRouteOpaque LDKnativeRoute;
47 struct nativeRouteHintOpaque;
48 typedef struct nativeRouteHintOpaque LDKnativeRouteHint;
49 struct nativeRouteHintHopOpaque;
50 typedef struct nativeRouteHintHopOpaque LDKnativeRouteHintHop;
51 struct nativeBestBlockOpaque;
52 typedef struct nativeBestBlockOpaque LDKnativeBestBlock;
53 struct nativeWatchedOutputOpaque;
54 typedef struct nativeWatchedOutputOpaque LDKnativeWatchedOutput;
55 struct nativeInitFeaturesOpaque;
56 typedef struct nativeInitFeaturesOpaque LDKnativeInitFeatures;
57 struct nativeNodeFeaturesOpaque;
58 typedef struct nativeNodeFeaturesOpaque LDKnativeNodeFeatures;
59 struct nativeChannelFeaturesOpaque;
60 typedef struct nativeChannelFeaturesOpaque LDKnativeChannelFeatures;
61 struct nativeInvoiceFeaturesOpaque;
62 typedef struct nativeInvoiceFeaturesOpaque LDKnativeInvoiceFeatures;
63 struct nativeDelayedPaymentOutputDescriptorOpaque;
64 typedef struct nativeDelayedPaymentOutputDescriptorOpaque LDKnativeDelayedPaymentOutputDescriptor;
65 struct nativeStaticPaymentOutputDescriptorOpaque;
66 typedef struct nativeStaticPaymentOutputDescriptorOpaque LDKnativeStaticPaymentOutputDescriptor;
67 struct LDKBaseSign;
68 struct nativeInMemorySignerOpaque;
69 typedef struct nativeInMemorySignerOpaque LDKnativeInMemorySigner;
70 struct nativeKeysManagerOpaque;
71 typedef struct nativeKeysManagerOpaque LDKnativeKeysManager;
72 struct nativeFilesystemPersisterOpaque;
73 typedef struct nativeFilesystemPersisterOpaque LDKnativeFilesystemPersister;
74 struct nativeChannelManagerOpaque;
75 typedef struct nativeChannelManagerOpaque LDKnativeChannelManager;
76 struct nativeChainParametersOpaque;
77 typedef struct nativeChainParametersOpaque LDKnativeChainParameters;
78 struct nativeCounterpartyForwardingInfoOpaque;
79 typedef struct nativeCounterpartyForwardingInfoOpaque LDKnativeCounterpartyForwardingInfo;
80 struct nativeChannelCounterpartyOpaque;
81 typedef struct nativeChannelCounterpartyOpaque LDKnativeChannelCounterparty;
82 struct nativeChannelDetailsOpaque;
83 typedef struct nativeChannelDetailsOpaque LDKnativeChannelDetails;
84 struct nativeChannelManagerReadArgsOpaque;
85 typedef struct nativeChannelManagerReadArgsOpaque LDKnativeChannelManagerReadArgs;
86 struct nativeChannelHandshakeConfigOpaque;
87 typedef struct nativeChannelHandshakeConfigOpaque LDKnativeChannelHandshakeConfig;
88 struct nativeChannelHandshakeLimitsOpaque;
89 typedef struct nativeChannelHandshakeLimitsOpaque LDKnativeChannelHandshakeLimits;
90 struct nativeChannelConfigOpaque;
91 typedef struct nativeChannelConfigOpaque LDKnativeChannelConfig;
92 struct nativeUserConfigOpaque;
93 typedef struct nativeUserConfigOpaque LDKnativeUserConfig;
94 struct nativeOutPointOpaque;
95 typedef struct nativeOutPointOpaque LDKnativeOutPoint;
96 struct nativeInvoiceOpaque;
97 typedef struct nativeInvoiceOpaque LDKnativeInvoice;
98 struct nativeSignedRawInvoiceOpaque;
99 typedef struct nativeSignedRawInvoiceOpaque LDKnativeSignedRawInvoice;
100 struct nativeRawInvoiceOpaque;
101 typedef struct nativeRawInvoiceOpaque LDKnativeRawInvoice;
102 struct nativeRawDataPartOpaque;
103 typedef struct nativeRawDataPartOpaque LDKnativeRawDataPart;
104 struct nativePositiveTimestampOpaque;
105 typedef struct nativePositiveTimestampOpaque LDKnativePositiveTimestamp;
106 struct nativeSha256Opaque;
107 typedef struct nativeSha256Opaque LDKnativeSha256;
108 struct nativeDescriptionOpaque;
109 typedef struct nativeDescriptionOpaque LDKnativeDescription;
110 struct nativePayeePubKeyOpaque;
111 typedef struct nativePayeePubKeyOpaque LDKnativePayeePubKey;
112 struct nativeExpiryTimeOpaque;
113 typedef struct nativeExpiryTimeOpaque LDKnativeExpiryTime;
114 struct nativeMinFinalCltvExpiryOpaque;
115 typedef struct nativeMinFinalCltvExpiryOpaque LDKnativeMinFinalCltvExpiry;
116 struct nativeInvoiceSignatureOpaque;
117 typedef struct nativeInvoiceSignatureOpaque LDKnativeInvoiceSignature;
118 struct nativePrivateRouteOpaque;
119 typedef struct nativePrivateRouteOpaque LDKnativePrivateRoute;
120 struct nativeChannelMonitorUpdateOpaque;
121 typedef struct nativeChannelMonitorUpdateOpaque LDKnativeChannelMonitorUpdate;
122 struct nativeMonitorUpdateErrorOpaque;
123 typedef struct nativeMonitorUpdateErrorOpaque LDKnativeMonitorUpdateError;
124 struct nativeHTLCUpdateOpaque;
125 typedef struct nativeHTLCUpdateOpaque LDKnativeHTLCUpdate;
126 struct nativeChannelMonitorOpaque;
127 typedef struct nativeChannelMonitorOpaque LDKnativeChannelMonitor;
128 struct nativeIgnoringMessageHandlerOpaque;
129 typedef struct nativeIgnoringMessageHandlerOpaque LDKnativeIgnoringMessageHandler;
130 struct nativeErroringMessageHandlerOpaque;
131 typedef struct nativeErroringMessageHandlerOpaque LDKnativeErroringMessageHandler;
132 struct nativeMessageHandlerOpaque;
133 typedef struct nativeMessageHandlerOpaque LDKnativeMessageHandler;
134 struct nativePeerHandleErrorOpaque;
135 typedef struct nativePeerHandleErrorOpaque LDKnativePeerHandleError;
136 struct nativePeerManagerOpaque;
137 typedef struct nativePeerManagerOpaque LDKnativePeerManager;
138 struct nativeNetworkGraphOpaque;
139 typedef struct nativeNetworkGraphOpaque LDKnativeNetworkGraph;
140 struct nativeReadOnlyNetworkGraphOpaque;
141 typedef struct nativeReadOnlyNetworkGraphOpaque LDKnativeReadOnlyNetworkGraph;
142 struct nativeNetGraphMsgHandlerOpaque;
143 typedef struct nativeNetGraphMsgHandlerOpaque LDKnativeNetGraphMsgHandler;
144 struct nativeDirectionalChannelInfoOpaque;
145 typedef struct nativeDirectionalChannelInfoOpaque LDKnativeDirectionalChannelInfo;
146 struct nativeChannelInfoOpaque;
147 typedef struct nativeChannelInfoOpaque LDKnativeChannelInfo;
148 struct nativeRoutingFeesOpaque;
149 typedef struct nativeRoutingFeesOpaque LDKnativeRoutingFees;
150 struct nativeNodeAnnouncementInfoOpaque;
151 typedef struct nativeNodeAnnouncementInfoOpaque LDKnativeNodeAnnouncementInfo;
152 struct nativeNodeInfoOpaque;
153 typedef struct nativeNodeInfoOpaque LDKnativeNodeInfo;
154 struct nativeDecodeErrorOpaque;
155 typedef struct nativeDecodeErrorOpaque LDKnativeDecodeError;
156 struct nativeInitOpaque;
157 typedef struct nativeInitOpaque LDKnativeInit;
158 struct nativeErrorMessageOpaque;
159 typedef struct nativeErrorMessageOpaque LDKnativeErrorMessage;
160 struct nativePingOpaque;
161 typedef struct nativePingOpaque LDKnativePing;
162 struct nativePongOpaque;
163 typedef struct nativePongOpaque LDKnativePong;
164 struct nativeOpenChannelOpaque;
165 typedef struct nativeOpenChannelOpaque LDKnativeOpenChannel;
166 struct nativeAcceptChannelOpaque;
167 typedef struct nativeAcceptChannelOpaque LDKnativeAcceptChannel;
168 struct nativeFundingCreatedOpaque;
169 typedef struct nativeFundingCreatedOpaque LDKnativeFundingCreated;
170 struct nativeFundingSignedOpaque;
171 typedef struct nativeFundingSignedOpaque LDKnativeFundingSigned;
172 struct nativeFundingLockedOpaque;
173 typedef struct nativeFundingLockedOpaque LDKnativeFundingLocked;
174 struct nativeShutdownOpaque;
175 typedef struct nativeShutdownOpaque LDKnativeShutdown;
176 struct nativeClosingSignedFeeRangeOpaque;
177 typedef struct nativeClosingSignedFeeRangeOpaque LDKnativeClosingSignedFeeRange;
178 struct nativeClosingSignedOpaque;
179 typedef struct nativeClosingSignedOpaque LDKnativeClosingSigned;
180 struct nativeUpdateAddHTLCOpaque;
181 typedef struct nativeUpdateAddHTLCOpaque LDKnativeUpdateAddHTLC;
182 struct nativeUpdateFulfillHTLCOpaque;
183 typedef struct nativeUpdateFulfillHTLCOpaque LDKnativeUpdateFulfillHTLC;
184 struct nativeUpdateFailHTLCOpaque;
185 typedef struct nativeUpdateFailHTLCOpaque LDKnativeUpdateFailHTLC;
186 struct nativeUpdateFailMalformedHTLCOpaque;
187 typedef struct nativeUpdateFailMalformedHTLCOpaque LDKnativeUpdateFailMalformedHTLC;
188 struct nativeCommitmentSignedOpaque;
189 typedef struct nativeCommitmentSignedOpaque LDKnativeCommitmentSigned;
190 struct nativeRevokeAndACKOpaque;
191 typedef struct nativeRevokeAndACKOpaque LDKnativeRevokeAndACK;
192 struct nativeUpdateFeeOpaque;
193 typedef struct nativeUpdateFeeOpaque LDKnativeUpdateFee;
194 struct nativeDataLossProtectOpaque;
195 typedef struct nativeDataLossProtectOpaque LDKnativeDataLossProtect;
196 struct nativeChannelReestablishOpaque;
197 typedef struct nativeChannelReestablishOpaque LDKnativeChannelReestablish;
198 struct nativeAnnouncementSignaturesOpaque;
199 typedef struct nativeAnnouncementSignaturesOpaque LDKnativeAnnouncementSignatures;
200 struct nativeUnsignedNodeAnnouncementOpaque;
201 typedef struct nativeUnsignedNodeAnnouncementOpaque LDKnativeUnsignedNodeAnnouncement;
202 struct nativeNodeAnnouncementOpaque;
203 typedef struct nativeNodeAnnouncementOpaque LDKnativeNodeAnnouncement;
204 struct nativeUnsignedChannelAnnouncementOpaque;
205 typedef struct nativeUnsignedChannelAnnouncementOpaque LDKnativeUnsignedChannelAnnouncement;
206 struct nativeChannelAnnouncementOpaque;
207 typedef struct nativeChannelAnnouncementOpaque LDKnativeChannelAnnouncement;
208 struct nativeUnsignedChannelUpdateOpaque;
209 typedef struct nativeUnsignedChannelUpdateOpaque LDKnativeUnsignedChannelUpdate;
210 struct nativeChannelUpdateOpaque;
211 typedef struct nativeChannelUpdateOpaque LDKnativeChannelUpdate;
212 struct nativeQueryChannelRangeOpaque;
213 typedef struct nativeQueryChannelRangeOpaque LDKnativeQueryChannelRange;
214 struct nativeReplyChannelRangeOpaque;
215 typedef struct nativeReplyChannelRangeOpaque LDKnativeReplyChannelRange;
216 struct nativeQueryShortChannelIdsOpaque;
217 typedef struct nativeQueryShortChannelIdsOpaque LDKnativeQueryShortChannelIds;
218 struct nativeReplyShortChannelIdsEndOpaque;
219 typedef struct nativeReplyShortChannelIdsEndOpaque LDKnativeReplyShortChannelIdsEnd;
220 struct nativeGossipTimestampFilterOpaque;
221 typedef struct nativeGossipTimestampFilterOpaque LDKnativeGossipTimestampFilter;
222 struct nativeLightningErrorOpaque;
223 typedef struct nativeLightningErrorOpaque LDKnativeLightningError;
224 struct nativeCommitmentUpdateOpaque;
225 typedef struct nativeCommitmentUpdateOpaque LDKnativeCommitmentUpdate;
226 struct nativeChainMonitorOpaque;
227 typedef struct nativeChainMonitorOpaque LDKnativeChainMonitor;