objc2_pass_kit/generated/
PKPaymentAuthorizationController.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-app-kit")]
7#[cfg(target_os = "macos")]
8use objc2_app_kit::*;
9use objc2_foundation::*;
10
11use crate::*;
12
13extern_protocol!(
14 pub unsafe trait PKPaymentAuthorizationControllerDelegate: NSObjectProtocol {
16 #[unsafe(method(paymentAuthorizationControllerDidFinish:))]
17 #[unsafe(method_family = none)]
18 unsafe fn paymentAuthorizationControllerDidFinish(
19 &self,
20 controller: &PKPaymentAuthorizationController,
21 mtm: MainThreadMarker,
22 );
23
24 #[cfg(all(
25 feature = "PKPayment",
26 feature = "PKPaymentRequestStatus",
27 feature = "block2"
28 ))]
29 #[optional]
30 #[unsafe(method(paymentAuthorizationController:didAuthorizePayment:handler:))]
31 #[unsafe(method_family = none)]
32 unsafe fn paymentAuthorizationController_didAuthorizePayment_handler(
33 &self,
34 controller: &PKPaymentAuthorizationController,
35 payment: &PKPayment,
36 completion: &block2::DynBlock<dyn Fn(NonNull<PKPaymentAuthorizationResult>)>,
37 mtm: MainThreadMarker,
38 );
39
40 #[cfg(all(feature = "PKConstants", feature = "PKPayment", feature = "block2"))]
41 #[deprecated = "Use paymentAuthorizationController:didAuthorizePayment:handler: instead to provide more granular errors"]
42 #[optional]
43 #[unsafe(method(paymentAuthorizationController:didAuthorizePayment:completion:))]
44 #[unsafe(method_family = none)]
45 unsafe fn paymentAuthorizationController_didAuthorizePayment_completion(
46 &self,
47 controller: &PKPaymentAuthorizationController,
48 payment: &PKPayment,
49 completion: &block2::DynBlock<dyn Fn(PKPaymentAuthorizationStatus)>,
50 );
51
52 #[optional]
53 #[unsafe(method(paymentAuthorizationControllerWillAuthorizePayment:))]
54 #[unsafe(method_family = none)]
55 unsafe fn paymentAuthorizationControllerWillAuthorizePayment(
56 &self,
57 controller: &PKPaymentAuthorizationController,
58 mtm: MainThreadMarker,
59 );
60
61 #[cfg(all(feature = "PKPaymentRequestStatus", feature = "block2"))]
62 #[optional]
63 #[unsafe(method(paymentAuthorizationController:didRequestMerchantSessionUpdate:))]
64 #[unsafe(method_family = none)]
65 unsafe fn paymentAuthorizationController_didRequestMerchantSessionUpdate(
66 &self,
67 controller: &PKPaymentAuthorizationController,
68 handler: &block2::DynBlock<dyn Fn(NonNull<PKPaymentRequestMerchantSessionUpdate>)>,
69 mtm: MainThreadMarker,
70 );
71
72 #[cfg(all(feature = "PKPaymentRequestStatus", feature = "block2"))]
73 #[optional]
74 #[unsafe(method(paymentAuthorizationController:didChangeCouponCode:handler:))]
75 #[unsafe(method_family = none)]
76 unsafe fn paymentAuthorizationController_didChangeCouponCode_handler(
77 &self,
78 controller: &PKPaymentAuthorizationController,
79 coupon_code: &NSString,
80 completion: &block2::DynBlock<dyn Fn(NonNull<PKPaymentRequestCouponCodeUpdate>)>,
81 mtm: MainThreadMarker,
82 );
83
84 #[cfg(all(
85 feature = "PKPaymentRequestStatus",
86 feature = "PKPaymentSummaryItem",
87 feature = "PKShippingMethod",
88 feature = "block2"
89 ))]
90 #[optional]
91 #[unsafe(method(paymentAuthorizationController:didSelectShippingMethod:handler:))]
92 #[unsafe(method_family = none)]
93 unsafe fn paymentAuthorizationController_didSelectShippingMethod_handler(
94 &self,
95 controller: &PKPaymentAuthorizationController,
96 shipping_method: &PKShippingMethod,
97 completion: &block2::DynBlock<dyn Fn(NonNull<PKPaymentRequestShippingMethodUpdate>)>,
98 mtm: MainThreadMarker,
99 );
100
101 #[cfg(all(
102 feature = "PKContact",
103 feature = "PKPaymentRequestStatus",
104 feature = "block2"
105 ))]
106 #[optional]
107 #[unsafe(method(paymentAuthorizationController:didSelectShippingContact:handler:))]
108 #[unsafe(method_family = none)]
109 unsafe fn paymentAuthorizationController_didSelectShippingContact_handler(
110 &self,
111 controller: &PKPaymentAuthorizationController,
112 contact: &PKContact,
113 completion: &block2::DynBlock<dyn Fn(NonNull<PKPaymentRequestShippingContactUpdate>)>,
114 mtm: MainThreadMarker,
115 );
116
117 #[cfg(all(
118 feature = "PKPaymentMethod",
119 feature = "PKPaymentRequestStatus",
120 feature = "block2"
121 ))]
122 #[optional]
123 #[unsafe(method(paymentAuthorizationController:didSelectPaymentMethod:handler:))]
124 #[unsafe(method_family = none)]
125 unsafe fn paymentAuthorizationController_didSelectPaymentMethod_handler(
126 &self,
127 controller: &PKPaymentAuthorizationController,
128 payment_method: &PKPaymentMethod,
129 completion: &block2::DynBlock<dyn Fn(NonNull<PKPaymentRequestPaymentMethodUpdate>)>,
130 mtm: MainThreadMarker,
131 );
132
133 #[cfg(all(
134 feature = "PKConstants",
135 feature = "PKPaymentSummaryItem",
136 feature = "PKShippingMethod",
137 feature = "block2"
138 ))]
139 #[deprecated = "Use paymentAuthorizationController:didSelectShippingMethod:handler: instead to provide more granular errors"]
140 #[optional]
141 #[unsafe(method(paymentAuthorizationController:didSelectShippingMethod:completion:))]
142 #[unsafe(method_family = none)]
143 unsafe fn paymentAuthorizationController_didSelectShippingMethod_completion(
144 &self,
145 controller: &PKPaymentAuthorizationController,
146 shipping_method: &PKShippingMethod,
147 completion: &block2::DynBlock<
148 dyn Fn(PKPaymentAuthorizationStatus, NonNull<NSArray<PKPaymentSummaryItem>>),
149 >,
150 );
151
152 #[cfg(all(
153 feature = "PKConstants",
154 feature = "PKContact",
155 feature = "PKPaymentSummaryItem",
156 feature = "PKShippingMethod",
157 feature = "block2"
158 ))]
159 #[deprecated = "Use paymentAuthorizationController:didSelectShippingContact:handler: instead to provide more granular errors"]
160 #[optional]
161 #[unsafe(method(paymentAuthorizationController:didSelectShippingContact:completion:))]
162 #[unsafe(method_family = none)]
163 unsafe fn paymentAuthorizationController_didSelectShippingContact_completion(
164 &self,
165 controller: &PKPaymentAuthorizationController,
166 contact: &PKContact,
167 completion: &block2::DynBlock<
168 dyn Fn(
169 PKPaymentAuthorizationStatus,
170 NonNull<NSArray<PKShippingMethod>>,
171 NonNull<NSArray<PKPaymentSummaryItem>>,
172 ),
173 >,
174 );
175
176 #[cfg(all(
177 feature = "PKPaymentMethod",
178 feature = "PKPaymentSummaryItem",
179 feature = "block2"
180 ))]
181 #[deprecated = "Use paymentAuthorizationController:didSelectPaymentMethod:handler: instead to provide more granular errors"]
182 #[optional]
183 #[unsafe(method(paymentAuthorizationController:didSelectPaymentMethod:completion:))]
184 #[unsafe(method_family = none)]
185 unsafe fn paymentAuthorizationController_didSelectPaymentMethod_completion(
186 &self,
187 controller: &PKPaymentAuthorizationController,
188 payment_method: &PKPaymentMethod,
189 completion: &block2::DynBlock<dyn Fn(NonNull<NSArray<PKPaymentSummaryItem>>)>,
190 );
191
192 #[cfg(feature = "objc2-app-kit")]
193 #[cfg(target_os = "macos")]
194 #[unsafe(method(presentationWindowForPaymentAuthorizationController:))]
195 #[unsafe(method_family = none)]
196 unsafe fn presentationWindowForPaymentAuthorizationController(
197 &self,
198 controller: &PKPaymentAuthorizationController,
199 mtm: MainThreadMarker,
200 ) -> Option<Retained<NSWindow>>;
201 }
202);
203
204extern_class!(
205 #[unsafe(super(NSObject))]
207 #[derive(Debug, PartialEq, Eq, Hash)]
208 pub struct PKPaymentAuthorizationController;
209);
210
211extern_conformance!(
212 unsafe impl NSObjectProtocol for PKPaymentAuthorizationController {}
213);
214
215impl PKPaymentAuthorizationController {
216 extern_methods!(
217 #[unsafe(method(canMakePayments))]
218 #[unsafe(method_family = none)]
219 pub unsafe fn canMakePayments() -> bool;
220
221 #[cfg(feature = "PKConstants")]
222 #[unsafe(method(canMakePaymentsUsingNetworks:))]
223 #[unsafe(method_family = none)]
224 pub unsafe fn canMakePaymentsUsingNetworks(
225 supported_networks: &NSArray<PKPaymentNetwork>,
226 ) -> bool;
227
228 #[cfg(all(feature = "PKConstants", feature = "PKPaymentRequest"))]
229 #[unsafe(method(canMakePaymentsUsingNetworks:capabilities:))]
230 #[unsafe(method_family = none)]
231 pub unsafe fn canMakePaymentsUsingNetworks_capabilities(
232 supported_networks: &NSArray<PKPaymentNetwork>,
233 capabilties: PKMerchantCapability,
234 ) -> bool;
235
236 #[unsafe(method(delegate))]
237 #[unsafe(method_family = none)]
238 pub unsafe fn delegate(
239 &self,
240 ) -> Option<Retained<ProtocolObject<dyn PKPaymentAuthorizationControllerDelegate>>>;
241
242 #[unsafe(method(setDelegate:))]
246 #[unsafe(method_family = none)]
247 pub unsafe fn setDelegate(
248 &self,
249 delegate: Option<&ProtocolObject<dyn PKPaymentAuthorizationControllerDelegate>>,
250 );
251
252 #[cfg(feature = "PKPaymentRequest")]
253 #[unsafe(method(initWithPaymentRequest:))]
254 #[unsafe(method_family = init)]
255 pub unsafe fn initWithPaymentRequest(
256 this: Allocated<Self>,
257 request: &PKPaymentRequest,
258 ) -> Retained<Self>;
259
260 #[cfg(feature = "block2")]
261 #[unsafe(method(presentWithCompletion:))]
262 #[unsafe(method_family = none)]
263 pub unsafe fn presentWithCompletion(
264 &self,
265 completion: Option<&block2::DynBlock<dyn Fn(Bool)>>,
266 );
267
268 #[cfg(feature = "block2")]
269 #[unsafe(method(dismissWithCompletion:))]
270 #[unsafe(method_family = none)]
271 pub unsafe fn dismissWithCompletion(&self, completion: Option<&block2::DynBlock<dyn Fn()>>);
272
273 #[unsafe(method(supportsDisbursements))]
274 #[unsafe(method_family = none)]
275 pub unsafe fn supportsDisbursements() -> bool;
276
277 #[cfg(feature = "PKConstants")]
278 #[unsafe(method(supportsDisbursementsUsingNetworks:))]
279 #[unsafe(method_family = none)]
280 pub unsafe fn supportsDisbursementsUsingNetworks(
281 supported_networks: &NSArray<PKPaymentNetwork>,
282 ) -> bool;
283
284 #[cfg(all(feature = "PKConstants", feature = "PKPaymentRequest"))]
285 #[unsafe(method(supportsDisbursementsUsingNetworks:capabilities:))]
286 #[unsafe(method_family = none)]
287 pub unsafe fn supportsDisbursementsUsingNetworks_capabilities(
288 supported_networks: &NSArray<PKPaymentNetwork>,
289 capabilties: PKMerchantCapability,
290 ) -> bool;
291
292 #[cfg(feature = "PKDisbursementRequest")]
293 #[unsafe(method(initWithDisbursementRequest:))]
294 #[unsafe(method_family = init)]
295 pub unsafe fn initWithDisbursementRequest(
296 this: Allocated<Self>,
297 request: &PKDisbursementRequest,
298 ) -> Retained<Self>;
299 );
300}
301
302impl PKPaymentAuthorizationController {
304 extern_methods!(
305 #[unsafe(method(init))]
306 #[unsafe(method_family = init)]
307 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
308
309 #[unsafe(method(new))]
310 #[unsafe(method_family = new)]
311 pub unsafe fn new() -> Retained<Self>;
312 );
313}