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