97f76fbe937b4240d6b8538c6256eeb8d0cf799c
[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 nativeCounterpartyCommitmentSecretsOpaque;
14 typedef struct nativeCounterpartyCommitmentSecretsOpaque LDKnativeCounterpartyCommitmentSecrets;
15 struct nativeTxCreationKeysOpaque;
16 typedef struct nativeTxCreationKeysOpaque LDKnativeTxCreationKeys;
17 struct nativeChannelPublicKeysOpaque;
18 typedef struct nativeChannelPublicKeysOpaque LDKnativeChannelPublicKeys;
19 struct nativeHTLCOutputInCommitmentOpaque;
20 typedef struct nativeHTLCOutputInCommitmentOpaque LDKnativeHTLCOutputInCommitment;
21 struct nativeChannelTransactionParametersOpaque;
22 typedef struct nativeChannelTransactionParametersOpaque LDKnativeChannelTransactionParameters;
23 struct nativeCounterpartyChannelTransactionParametersOpaque;
24 typedef struct nativeCounterpartyChannelTransactionParametersOpaque LDKnativeCounterpartyChannelTransactionParameters;
25 struct nativeDirectedChannelTransactionParametersOpaque;
26 typedef struct nativeDirectedChannelTransactionParametersOpaque LDKnativeDirectedChannelTransactionParameters;
27 struct nativeHolderCommitmentTransactionOpaque;
28 typedef struct nativeHolderCommitmentTransactionOpaque LDKnativeHolderCommitmentTransaction;
29 struct nativeBuiltCommitmentTransactionOpaque;
30 typedef struct nativeBuiltCommitmentTransactionOpaque LDKnativeBuiltCommitmentTransaction;
31 struct nativeClosingTransactionOpaque;
32 typedef struct nativeClosingTransactionOpaque LDKnativeClosingTransaction;
33 struct nativeTrustedClosingTransactionOpaque;
34 typedef struct nativeTrustedClosingTransactionOpaque LDKnativeTrustedClosingTransaction;
35 struct nativeCommitmentTransactionOpaque;
36 typedef struct nativeCommitmentTransactionOpaque LDKnativeCommitmentTransaction;
37 struct nativeTrustedCommitmentTransactionOpaque;
38 typedef struct nativeTrustedCommitmentTransactionOpaque LDKnativeTrustedCommitmentTransaction;
39 struct nativeShutdownScriptOpaque;
40 typedef struct nativeShutdownScriptOpaque LDKnativeShutdownScript;
41 struct nativeInvalidShutdownScriptOpaque;
42 typedef struct nativeInvalidShutdownScriptOpaque LDKnativeInvalidShutdownScript;
43 struct nativeBackgroundProcessorOpaque;
44 typedef struct nativeBackgroundProcessorOpaque LDKnativeBackgroundProcessor;
45 struct nativeRouteHopOpaque;
46 typedef struct nativeRouteHopOpaque LDKnativeRouteHop;
47 struct nativeRouteOpaque;
48 typedef struct nativeRouteOpaque LDKnativeRoute;
49 struct nativeRouteParametersOpaque;
50 typedef struct nativeRouteParametersOpaque LDKnativeRouteParameters;
51 struct nativePaymentParametersOpaque;
52 typedef struct nativePaymentParametersOpaque LDKnativePaymentParameters;
53 struct nativeRouteHintOpaque;
54 typedef struct nativeRouteHintOpaque LDKnativeRouteHint;
55 struct nativeRouteHintHopOpaque;
56 typedef struct nativeRouteHintHopOpaque LDKnativeRouteHintHop;
57 struct nativeBestBlockOpaque;
58 typedef struct nativeBestBlockOpaque LDKnativeBestBlock;
59 struct nativeWatchedOutputOpaque;
60 typedef struct nativeWatchedOutputOpaque LDKnativeWatchedOutput;
61 struct nativeMultiThreadedLockableScoreOpaque;
62 typedef struct nativeMultiThreadedLockableScoreOpaque LDKnativeMultiThreadedLockableScore;
63 struct nativeChannelUsageOpaque;
64 typedef struct nativeChannelUsageOpaque LDKnativeChannelUsage;
65 struct nativeFixedPenaltyScorerOpaque;
66 typedef struct nativeFixedPenaltyScorerOpaque LDKnativeFixedPenaltyScorer;
67 struct nativeProbabilisticScorerOpaque;
68 typedef struct nativeProbabilisticScorerOpaque LDKnativeProbabilisticScorer;
69 struct nativeProbabilisticScoringParametersOpaque;
70 typedef struct nativeProbabilisticScoringParametersOpaque LDKnativeProbabilisticScoringParameters;
71 struct nativeInitFeaturesOpaque;
72 typedef struct nativeInitFeaturesOpaque LDKnativeInitFeatures;
73 struct nativeNodeFeaturesOpaque;
74 typedef struct nativeNodeFeaturesOpaque LDKnativeNodeFeatures;
75 struct nativeChannelFeaturesOpaque;
76 typedef struct nativeChannelFeaturesOpaque LDKnativeChannelFeatures;
77 struct nativeInvoiceFeaturesOpaque;
78 typedef struct nativeInvoiceFeaturesOpaque LDKnativeInvoiceFeatures;
79 struct nativeChannelTypeFeaturesOpaque;
80 typedef struct nativeChannelTypeFeaturesOpaque LDKnativeChannelTypeFeatures;
81 struct nativeNodeIdOpaque;
82 typedef struct nativeNodeIdOpaque LDKnativeNodeId;
83 struct nativeNetworkGraphOpaque;
84 typedef struct nativeNetworkGraphOpaque LDKnativeNetworkGraph;
85 struct nativeReadOnlyNetworkGraphOpaque;
86 typedef struct nativeReadOnlyNetworkGraphOpaque LDKnativeReadOnlyNetworkGraph;
87 struct nativeP2PGossipSyncOpaque;
88 typedef struct nativeP2PGossipSyncOpaque LDKnativeP2PGossipSync;
89 struct nativeChannelUpdateInfoOpaque;
90 typedef struct nativeChannelUpdateInfoOpaque LDKnativeChannelUpdateInfo;
91 struct nativeChannelInfoOpaque;
92 typedef struct nativeChannelInfoOpaque LDKnativeChannelInfo;
93 struct nativeDirectedChannelInfoOpaque;
94 typedef struct nativeDirectedChannelInfoOpaque LDKnativeDirectedChannelInfo;
95 struct nativeRoutingFeesOpaque;
96 typedef struct nativeRoutingFeesOpaque LDKnativeRoutingFees;
97 struct nativeNodeAnnouncementInfoOpaque;
98 typedef struct nativeNodeAnnouncementInfoOpaque LDKnativeNodeAnnouncementInfo;
99 struct nativeNodeAliasOpaque;
100 typedef struct nativeNodeAliasOpaque LDKnativeNodeAlias;
101 struct nativeNodeInfoOpaque;
102 typedef struct nativeNodeInfoOpaque LDKnativeNodeInfo;
103 struct nativeDelayedPaymentOutputDescriptorOpaque;
104 typedef struct nativeDelayedPaymentOutputDescriptorOpaque LDKnativeDelayedPaymentOutputDescriptor;
105 struct nativeStaticPaymentOutputDescriptorOpaque;
106 typedef struct nativeStaticPaymentOutputDescriptorOpaque LDKnativeStaticPaymentOutputDescriptor;
107 struct LDKBaseSign;
108 struct nativeInMemorySignerOpaque;
109 typedef struct nativeInMemorySignerOpaque LDKnativeInMemorySigner;
110 struct nativeKeysManagerOpaque;
111 typedef struct nativeKeysManagerOpaque LDKnativeKeysManager;
112 struct nativePhantomKeysManagerOpaque;
113 typedef struct nativePhantomKeysManagerOpaque LDKnativePhantomKeysManager;
114 struct nativeFilesystemPersisterOpaque;
115 typedef struct nativeFilesystemPersisterOpaque LDKnativeFilesystemPersister;
116 struct nativeChannelManagerOpaque;
117 typedef struct nativeChannelManagerOpaque LDKnativeChannelManager;
118 struct nativeChainParametersOpaque;
119 typedef struct nativeChainParametersOpaque LDKnativeChainParameters;
120 struct nativeCounterpartyForwardingInfoOpaque;
121 typedef struct nativeCounterpartyForwardingInfoOpaque LDKnativeCounterpartyForwardingInfo;
122 struct nativeChannelCounterpartyOpaque;
123 typedef struct nativeChannelCounterpartyOpaque LDKnativeChannelCounterparty;
124 struct nativeChannelDetailsOpaque;
125 typedef struct nativeChannelDetailsOpaque LDKnativeChannelDetails;
126 struct nativePhantomRouteHintsOpaque;
127 typedef struct nativePhantomRouteHintsOpaque LDKnativePhantomRouteHints;
128 struct nativeChannelManagerReadArgsOpaque;
129 typedef struct nativeChannelManagerReadArgsOpaque LDKnativeChannelManagerReadArgs;
130 struct nativeChannelHandshakeConfigOpaque;
131 typedef struct nativeChannelHandshakeConfigOpaque LDKnativeChannelHandshakeConfig;
132 struct nativeChannelHandshakeLimitsOpaque;
133 typedef struct nativeChannelHandshakeLimitsOpaque LDKnativeChannelHandshakeLimits;
134 struct nativeChannelConfigOpaque;
135 typedef struct nativeChannelConfigOpaque LDKnativeChannelConfig;
136 struct nativeUserConfigOpaque;
137 typedef struct nativeUserConfigOpaque LDKnativeUserConfig;
138 struct nativeBigSizeOpaque;
139 typedef struct nativeBigSizeOpaque LDKnativeBigSize;
140 struct nativeHostnameOpaque;
141 typedef struct nativeHostnameOpaque LDKnativeHostname;
142 struct nativeOutPointOpaque;
143 typedef struct nativeOutPointOpaque LDKnativeOutPoint;
144 struct nativeInvoicePayerOpaque;
145 typedef struct nativeInvoicePayerOpaque LDKnativeInvoicePayer;
146 struct nativeInvoiceOpaque;
147 typedef struct nativeInvoiceOpaque LDKnativeInvoice;
148 struct nativeSignedRawInvoiceOpaque;
149 typedef struct nativeSignedRawInvoiceOpaque LDKnativeSignedRawInvoice;
150 struct nativeRawInvoiceOpaque;
151 typedef struct nativeRawInvoiceOpaque LDKnativeRawInvoice;
152 struct nativeRawDataPartOpaque;
153 typedef struct nativeRawDataPartOpaque LDKnativeRawDataPart;
154 struct nativePositiveTimestampOpaque;
155 typedef struct nativePositiveTimestampOpaque LDKnativePositiveTimestamp;
156 struct nativeSha256Opaque;
157 typedef struct nativeSha256Opaque LDKnativeSha256;
158 struct nativeDescriptionOpaque;
159 typedef struct nativeDescriptionOpaque LDKnativeDescription;
160 struct nativePayeePubKeyOpaque;
161 typedef struct nativePayeePubKeyOpaque LDKnativePayeePubKey;
162 struct nativeExpiryTimeOpaque;
163 typedef struct nativeExpiryTimeOpaque LDKnativeExpiryTime;
164 struct nativeMinFinalCltvExpiryOpaque;
165 typedef struct nativeMinFinalCltvExpiryOpaque LDKnativeMinFinalCltvExpiry;
166 struct nativeInvoiceSignatureOpaque;
167 typedef struct nativeInvoiceSignatureOpaque LDKnativeInvoiceSignature;
168 struct nativePrivateRouteOpaque;
169 typedef struct nativePrivateRouteOpaque LDKnativePrivateRoute;
170 struct nativeChannelMonitorUpdateOpaque;
171 typedef struct nativeChannelMonitorUpdateOpaque LDKnativeChannelMonitorUpdate;
172 struct nativeHTLCUpdateOpaque;
173 typedef struct nativeHTLCUpdateOpaque LDKnativeHTLCUpdate;
174 struct nativeChannelMonitorOpaque;
175 typedef struct nativeChannelMonitorOpaque LDKnativeChannelMonitor;
176 struct nativeExpandedKeyOpaque;
177 typedef struct nativeExpandedKeyOpaque LDKnativeExpandedKey;
178 struct nativeIgnoringMessageHandlerOpaque;
179 typedef struct nativeIgnoringMessageHandlerOpaque LDKnativeIgnoringMessageHandler;
180 struct nativeErroringMessageHandlerOpaque;
181 typedef struct nativeErroringMessageHandlerOpaque LDKnativeErroringMessageHandler;
182 struct nativeMessageHandlerOpaque;
183 typedef struct nativeMessageHandlerOpaque LDKnativeMessageHandler;
184 struct nativePeerHandleErrorOpaque;
185 typedef struct nativePeerHandleErrorOpaque LDKnativePeerHandleError;
186 struct nativePeerManagerOpaque;
187 typedef struct nativePeerManagerOpaque LDKnativePeerManager;
188 struct nativeRapidGossipSyncOpaque;
189 typedef struct nativeRapidGossipSyncOpaque LDKnativeRapidGossipSync;
190 struct nativeDecodeErrorOpaque;
191 typedef struct nativeDecodeErrorOpaque LDKnativeDecodeError;
192 struct nativeInitOpaque;
193 typedef struct nativeInitOpaque LDKnativeInit;
194 struct nativeErrorMessageOpaque;
195 typedef struct nativeErrorMessageOpaque LDKnativeErrorMessage;
196 struct nativeWarningMessageOpaque;
197 typedef struct nativeWarningMessageOpaque LDKnativeWarningMessage;
198 struct nativePingOpaque;
199 typedef struct nativePingOpaque LDKnativePing;
200 struct nativePongOpaque;
201 typedef struct nativePongOpaque LDKnativePong;
202 struct nativeOpenChannelOpaque;
203 typedef struct nativeOpenChannelOpaque LDKnativeOpenChannel;
204 struct nativeAcceptChannelOpaque;
205 typedef struct nativeAcceptChannelOpaque LDKnativeAcceptChannel;
206 struct nativeFundingCreatedOpaque;
207 typedef struct nativeFundingCreatedOpaque LDKnativeFundingCreated;
208 struct nativeFundingSignedOpaque;
209 typedef struct nativeFundingSignedOpaque LDKnativeFundingSigned;
210 struct nativeChannelReadyOpaque;
211 typedef struct nativeChannelReadyOpaque LDKnativeChannelReady;
212 struct nativeShutdownOpaque;
213 typedef struct nativeShutdownOpaque LDKnativeShutdown;
214 struct nativeClosingSignedFeeRangeOpaque;
215 typedef struct nativeClosingSignedFeeRangeOpaque LDKnativeClosingSignedFeeRange;
216 struct nativeClosingSignedOpaque;
217 typedef struct nativeClosingSignedOpaque LDKnativeClosingSigned;
218 struct nativeUpdateAddHTLCOpaque;
219 typedef struct nativeUpdateAddHTLCOpaque LDKnativeUpdateAddHTLC;
220 struct nativeUpdateFulfillHTLCOpaque;
221 typedef struct nativeUpdateFulfillHTLCOpaque LDKnativeUpdateFulfillHTLC;
222 struct nativeUpdateFailHTLCOpaque;
223 typedef struct nativeUpdateFailHTLCOpaque LDKnativeUpdateFailHTLC;
224 struct nativeUpdateFailMalformedHTLCOpaque;
225 typedef struct nativeUpdateFailMalformedHTLCOpaque LDKnativeUpdateFailMalformedHTLC;
226 struct nativeCommitmentSignedOpaque;
227 typedef struct nativeCommitmentSignedOpaque LDKnativeCommitmentSigned;
228 struct nativeRevokeAndACKOpaque;
229 typedef struct nativeRevokeAndACKOpaque LDKnativeRevokeAndACK;
230 struct nativeUpdateFeeOpaque;
231 typedef struct nativeUpdateFeeOpaque LDKnativeUpdateFee;
232 struct nativeDataLossProtectOpaque;
233 typedef struct nativeDataLossProtectOpaque LDKnativeDataLossProtect;
234 struct nativeChannelReestablishOpaque;
235 typedef struct nativeChannelReestablishOpaque LDKnativeChannelReestablish;
236 struct nativeAnnouncementSignaturesOpaque;
237 typedef struct nativeAnnouncementSignaturesOpaque LDKnativeAnnouncementSignatures;
238 struct nativeUnsignedNodeAnnouncementOpaque;
239 typedef struct nativeUnsignedNodeAnnouncementOpaque LDKnativeUnsignedNodeAnnouncement;
240 struct nativeNodeAnnouncementOpaque;
241 typedef struct nativeNodeAnnouncementOpaque LDKnativeNodeAnnouncement;
242 struct nativeUnsignedChannelAnnouncementOpaque;
243 typedef struct nativeUnsignedChannelAnnouncementOpaque LDKnativeUnsignedChannelAnnouncement;
244 struct nativeChannelAnnouncementOpaque;
245 typedef struct nativeChannelAnnouncementOpaque LDKnativeChannelAnnouncement;
246 struct nativeUnsignedChannelUpdateOpaque;
247 typedef struct nativeUnsignedChannelUpdateOpaque LDKnativeUnsignedChannelUpdate;
248 struct nativeChannelUpdateOpaque;
249 typedef struct nativeChannelUpdateOpaque LDKnativeChannelUpdate;
250 struct nativeQueryChannelRangeOpaque;
251 typedef struct nativeQueryChannelRangeOpaque LDKnativeQueryChannelRange;
252 struct nativeReplyChannelRangeOpaque;
253 typedef struct nativeReplyChannelRangeOpaque LDKnativeReplyChannelRange;
254 struct nativeQueryShortChannelIdsOpaque;
255 typedef struct nativeQueryShortChannelIdsOpaque LDKnativeQueryShortChannelIds;
256 struct nativeReplyShortChannelIdsEndOpaque;
257 typedef struct nativeReplyShortChannelIdsEndOpaque LDKnativeReplyShortChannelIdsEnd;
258 struct nativeGossipTimestampFilterOpaque;
259 typedef struct nativeGossipTimestampFilterOpaque LDKnativeGossipTimestampFilter;
260 struct nativeLightningErrorOpaque;
261 typedef struct nativeLightningErrorOpaque LDKnativeLightningError;
262 struct nativeCommitmentUpdateOpaque;
263 typedef struct nativeCommitmentUpdateOpaque LDKnativeCommitmentUpdate;
264 struct nativeDefaultRouterOpaque;
265 typedef struct nativeDefaultRouterOpaque LDKnativeDefaultRouter;
266 struct nativeRecordOpaque;
267 typedef struct nativeRecordOpaque LDKnativeRecord;
268 struct nativeMonitorUpdateIdOpaque;
269 typedef struct nativeMonitorUpdateIdOpaque LDKnativeMonitorUpdateId;
270 struct nativeLockedChannelMonitorOpaque;
271 typedef struct nativeLockedChannelMonitorOpaque LDKnativeLockedChannelMonitor;
272 struct nativeChainMonitorOpaque;
273 typedef struct nativeChainMonitorOpaque LDKnativeChainMonitor;