rust_libindy_wrapper/native/
payments.rs1use super::*;
2
3use native::{CString, Error, Handle};
4
5extern {
6 #[no_mangle]
7 pub fn indy_register_payment_method(command_handle: Handle,
8 payment_method: CString,
9 create_payment_address: Option<CreatePaymentAddressCB>,
10 add_request_fees: Option<AddRequestFeesCB>,
11 parse_response_with_fees: Option<ParseResponseWithFeesCB>,
12 build_get_payment_sources_request: Option<BuildGetPaymentSourcesRequestCB>,
13 parse_get_payment_sources_response: Option<ParseGetPaymentSourcesResponseCB>,
14 build_payment_req: Option<BuildPaymentReqCB>,
15 parse_payment_response: Option<ParsePaymentResponseCB>,
16 build_mint_req: Option<BuildMintReqCB>,
17 build_set_txn_fees_req: Option<BuildSetTxnFeesReqCB>,
18 build_get_txn_fees_req: Option<BuildGetTxnFeesReqCB>,
19 parse_get_txn_fees_response: Option<ParseGetTxnFeesResponseCB>,
20 build_verify_payment_req: Option<BuildVerifyPaymentReqCB>,
21 parse_verify_payment_response: Option<ParseVerifyPaymentResponseCB>,
22 cb: Option<ResponseEmptyCB>) -> Error;
23 #[no_mangle]
24 pub fn indy_create_payment_address(command_handle: Handle,
25 wallet_handle: Handle,
26 payment_method: CString,
27 config: CString,
28 cb: Option<ResponseStringCB>) -> Error;
29 #[no_mangle]
30 pub fn indy_list_payment_addresses(command_handle: Handle,
31 wallet_handle: Handle,
32 cb: Option<ResponseStringCB>) -> Error;
33 #[no_mangle]
34 pub fn indy_add_request_fees(command_handle: Handle,
35 wallet_handle: Handle,
36 submitter_did: CString,
37 req_json: CString,
38 inputs_json: CString,
39 outputs_json: CString,
40 extra: CString,
41 cb: Option<ResponseStringStringCB>) -> Error;
42 #[no_mangle]
43 pub fn indy_parse_response_with_fees(command_handle: Handle,
44 payment_method: CString,
45 resp_json: CString,
46 cb: Option<ResponseStringCB>) -> Error;
47 #[no_mangle]
48 pub fn indy_build_get_payment_sources_request(command_handle: Handle,
49 wallet_handle: Handle,
50 submitter_did: CString,
51 payment_address: CString,
52 cb: Option<ResponseStringStringCB>) -> Error;
53 #[no_mangle]
54 pub fn indy_parse_get_payment_sources_response(command_handle: Handle,
55 payment_method: CString,
56 resp_json: CString,
57 cb: Option<ResponseStringCB>) -> Error;
58 #[no_mangle]
59 pub fn indy_build_payment_req(command_handle: Handle,
60 wallet_handle: Handle,
61 submitter_did: CString,
62 inputs_json: CString,
63 outputs_json: CString,
64 extra: CString,
65 cb: Option<ResponseStringStringCB>) -> Error;
66 #[no_mangle]
67 pub fn indy_parse_payment_response(command_handle: Handle,
68 payment_method: CString,
69 resp_json: CString,
70 cb: Option<ResponseStringCB>) -> Error;
71 #[no_mangle]
72 pub fn indy_build_mint_req(command_handle: Handle,
73 wallet_handle: Handle,
74 submitter_did: CString,
75 outputs_json: CString,
76 extra: CString,
77 cb: Option<ResponseStringStringCB>) -> Error;
78 #[no_mangle]
79 pub fn indy_build_set_txn_fees_req(command_handle: Handle,
80 wallet_handle: Handle,
81 submitter_did: CString,
82 payment_method: CString,
83 fees_json: CString,
84 cb: Option<ResponseStringCB>) -> Error;
85 #[no_mangle]
86 pub fn indy_build_get_txn_fees_req(command_handle: Handle,
87 wallet_handle: Handle,
88 submitter_did: CString,
89 payment_method: CString,
90 cb: Option<ResponseStringCB>) -> Error;
91 #[no_mangle]
92 pub fn indy_parse_get_txn_fees_response(command_handle: Handle,
93 payment_method: CString,
94 resp_json: CString,
95 cb: Option<ResponseStringCB>) -> Error;
96 #[no_mangle]
97 pub fn indy_build_verify_payment_req(command_handle: Handle,
98 wallet_handle: Handle,
99 submitter_did: CString,
100 receipt: CString,
101 cb: Option<ResponseStringStringCB>) -> Error;
102 #[no_mangle]
103 pub fn indy_parse_verify_payment_response(command_handle: Handle,
104 payment_method: CString,
105 resp_json: CString,
106 cb: Option<ResponseStringCB>) -> Error;
107}
108
109pub type CreatePaymentAddressCB = extern fn(command_handle: Handle,
110 wallet_handle: Handle,
111 config: CString,
112 cb: Option<extern fn(command_handle_: Handle,
113 err: Error,
114 payment_address: CString) -> Error>) -> Error;
115pub type AddRequestFeesCB = extern fn(command_handle: Handle,
116 wallet_handle: Handle,
117 submitter_did: CString,
118 req_json: CString,
119 inputs_json: CString,
120 outputs_json: CString,
121 extra: CString,
122 cb: Option<extern fn(command_handle_: Handle,
123 err: Error,
124 req_with_fees_json: CString) -> Error>) -> Error;
125pub type ParseResponseWithFeesCB = extern fn(command_handle: Handle,
126 resp_json: CString,
127 cb: Option<extern fn(command_handle_: Handle,
128 err: Error,
129 receipts_json: CString) -> Error>) -> Error;
130pub type BuildGetPaymentSourcesRequestCB = extern fn(command_handle: Handle,
131 wallet_handle: Handle,
132 submitter_did: CString,
133 payment_address: CString,
134 cb: Option<extern fn(command_handle_: Handle,
135 err: Error,
136 get_sources_txn_json: CString) -> Error>) -> Error;
137pub type ParseGetPaymentSourcesResponseCB = extern fn(command_handle: Handle,
138 resp_json: CString,
139 cb: Option<extern fn(command_handle_: Handle,
140 err: Error,
141 sources_json: CString) -> Error>) -> Error;
142pub type BuildPaymentReqCB = extern fn(command_handle: Handle,
143 wallet_handle: Handle,
144 submitter_did: CString,
145 inputs_json: CString,
146 outputs_json: CString,
147 extra: CString,
148 cb: Option<extern fn(command_handle_: Handle,
149 err: Error,
150 payment_req_json: CString) -> Error>) -> Error;
151pub type ParsePaymentResponseCB = extern fn(command_handle: Handle,
152 resp_json: CString,
153 cb: Option<extern fn(command_handle_: Handle,
154 err: Error,
155 receipts_json: CString) -> Error>) -> Error;
156pub type BuildMintReqCB = extern fn(command_handle: Handle,
157 wallet_handle: Handle,
158 submitter_did: CString,
159 outputs_json: CString,
160 extra: CString,
161 cb: Option<extern fn(command_handle_: Handle,
162 err: Error,
163 mint_req_json: CString) -> Error>) -> Error;
164pub type BuildSetTxnFeesReqCB = extern fn(command_handle: Handle,
165 wallet_handle: Handle,
166 submitter_did: CString,
167 fees_json: CString,
168 cb: Option<extern fn(command_handle_: Handle,
169 err: Error,
170 set_txn_fees_json: CString) -> Error>) -> Error;
171pub type BuildGetTxnFeesReqCB = extern fn(command_handle: Handle,
172 wallet_handle: Handle,
173 submitter_did: CString,
174 cb: Option<extern fn(command_handle_: Handle,
175 err: Error,
176 get_txn_fees_json: CString) -> Error>) -> Error;
177pub type ParseGetTxnFeesResponseCB = extern fn(command_handle: Handle,
178 resp_json: CString,
179 cb: Option<extern fn(command_handle_: Handle,
180 err: Error,
181 fees_json: CString) -> Error>) -> Error;
182pub type BuildVerifyPaymentReqCB = extern fn(command_handle: Handle,
183 wallet_handle: Handle,
184 submitter_did: CString,
185 receipt: CString,
186 cb: Option<extern fn(command_handle_: Handle,
187 err: Error,
188 verify_txn_json: CString) -> Error>) -> Error;
189pub type ParseVerifyPaymentResponseCB = extern fn(command_handle: Handle,
190 resp_json: CString,
191 cb: Option<extern fn(command_handle_: Handle,
192 err: Error,
193 txn_json: CString) -> Error>) -> Error;