{"action":"created","comment":{"url":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/comments/73644549","id":73644549,"diff_hunk":"@@ -0,0 +1,1964 @@\n+﻿using System;\n+\n+using AddressBook;\n+using CoreFoundation;\n+using CoreGraphics;\n+using Foundation;\n+using ObjCRuntime;\n+using PassKit;\n+using UIKit;\n+\n+namespace Shopify.Buy\n+{\n+\t// @interface BUYObject : NSObject\n+\t[BaseType (typeof(NSObject), Name = \"BUYObject\")]\n+\tinterface Object\n+\t{\n+\t\t// @property (readonly, nonatomic, strong) NSNumber * identifier;\n+\t\t[Export (\"identifier\", ArgumentSemantic.Strong)]\n+\t\tNSNumber Identifier { get; }\n+\n+\t\t// @property (readonly, getter = isDirty, nonatomic) BOOL dirty;\n+\t\t[Export (\"dirty\")]\n+\t\tbool Dirty { [Bind (\"isDirty\")] get; }\n+\n+\t\t// -(instancetype)initWithDictionary:(NSDictionary *)dictionary;\n+\t\t[Export (\"initWithDictionary:\")]\n+\t\tIntPtr Constructor (NSDictionary dictionary);\n+\n+\t\t// -(void)updateWithDictionary:(NSDictionary *)dictionary;\n+\t\t[Export (\"updateWithDictionary:\")]\n+\t\tvoid Update (NSDictionary dictionary);\n+\n+\t\t// +(NSArray *)convertJSONArray:(NSArray *)json block:(void (^)(id))createdBlock;\n+\t\t[Static]\n+\t\t[Export (\"convertJSONArray:block:\")]\n+\t\tNSObject[] ConvertJSONArray (NSObject[] json, Action<NSObject> createdBlock);\n+\n+\t\t// +(NSArray *)convertJSONArray:(NSArray *)json;\n+\t\t[Static]\n+\t\t[Export (\"convertJSONArray:\")]\n+\t\tNSObject[] ConvertJSONArray (NSObject[] json);\n+\n+\t\t// +(instancetype)convertObject:(id)object;\n+\t\t[Static]\n+\t\t[Export (\"convertObject:\")]\n+\t\tObject ConvertObject (NSObject @object);\n+\n+\t\t// TODO: DirtyProperties might be string[]\n+\n+\t\t// -(NSSet *)dirtyProperties;\n+\t\t[Export (\"dirtyProperties\")]\n+\t\tNSSet DirtyProperties { get; }\n+\n+\t\t// -(void)markPropertyAsDirty:(NSString *)property;\n+\t\t[Export (\"markPropertyAsDirty:\")]\n+\t\tvoid MarkPropertyAsDirty (string property);\n+\n+\t\t// -(void)markAsClean;\n+\t\t[Export (\"markAsClean\")]\n+\t\tvoid MarkAsClean ();\n+\n+\t\t// +(void)trackDirtyProperties;\n+\t\t[Static]\n+\t\t[Export (\"trackDirtyProperties\")]\n+\t\tvoid TrackDirtyProperties ();\n+\t}\n+\n+\tinterface ISerializable\n+\t{\n+\n+\t}\n+\n+\t// @protocol BUYSerializable <NSObject>\n+\t[Protocol, Model]\n+\t[BaseType (typeof(NSObject), Name = \"BUYSerializable\")]\n+\tinterface Serializable\n+\t{\n+\t\t// @required -(NSDictionary *)jsonDictionaryForCheckout;\n+\t\t[Abstract]\n+\t\t[Export (\"jsonDictionaryForCheckout\")]\n+\t\tNSDictionary JsonDictionaryForCheckout { get; }\n+\t}\n+\n+\t// @interface BUYAddress : BUYObject <BUYSerializable>\n+\t[BaseType (typeof(Object), Name = \"BUYAddress\")]\n+\tinterface Address : Serializable\n+\t{\n+\t\t// @property (copy, nonatomic) NSString * address1;\n+\t\t[Export (\"address1\")]\n+\t\tstring Address1 { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * address2;\n+\t\t[Export (\"address2\")]\n+\t\tstring Address2 { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * city;\n+\t\t[Export (\"city\")]\n+\t\tstring City { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * company;\n+\t\t[Export (\"company\")]\n+\t\tstring Company { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * firstName;\n+\t\t[Export (\"firstName\")]\n+\t\tstring FirstName { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * lastName;\n+\t\t[Export (\"lastName\")]\n+\t\tstring LastName { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * phone;\n+\t\t[Export (\"phone\")]\n+\t\tstring Phone { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * country;\n+\t\t[Export (\"country\")]\n+\t\tstring Country { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * countryCode;\n+\t\t[Export (\"countryCode\")]\n+\t\tstring CountryCode { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * province;\n+\t\t[Export (\"province\")]\n+\t\tstring Province { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * provinceCode;\n+\t\t[Export (\"provinceCode\")]\n+\t\tstring ProvinceCode { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * zip;\n+\t\t[Export (\"zip\")]\n+\t\tstring Zip { get; set; }\n+\n+\n+\t\t// @interface ApplePay (BUYAddress)\n+\n+\t\t// +(NSString * _Nullable)buy_emailFromRecord:(ABRecordRef _Nullable)record;\n+\t\t[Static]\n+\t\t[Export (\"buy_emailFromRecord:\")]\n+\t\t[return: NullAllowed]\n+\t\tstring GetApplePayEmail ([NullAllowed] ABRecord record);\n+\n+\t\t// +(BUYAddress * _Nonnull)buy_addressFromRecord:(ABRecordRef _Nullable)record __attribute__((availability(ios, introduced=8_0, deprecated=9_0)));\n+\t\t[Introduced (PlatformName.iOS, 8, 0, message: \"Use the CNContact backed `buy_addressFromContact:` instead\")]\n+\t\t[Deprecated (PlatformName.iOS, 9, 0, message: \"Use the CNContact backed `buy_addressFromContact:` instead\")]\n+\t\t[Static]\n+\t\t[Export (\"buy_addressFromRecord:\")]\n+\t\tAddress GetApplePayAddress ([NullAllowed] ABRecord record);\n+\n+\t\t// +(BUYAddress * _Nonnull)buy_addressFromContact:(PKContact * _Nullable)contact __attribute__((availability(ios, introduced=9_0)));\n+\t\t[Introduced (PlatformName.iOS, 9, 0)]\n+\t\t[Static]\n+\t\t[Export (\"buy_addressFromContact:\")]\n+\t\tAddress GetApplePayAddress ([NullAllowed] PKContact contact);\n+\n+\t}\n+\n+\t// @interface Additions (BUYAddress)\n+\t[Category]\n+\t[BaseType (typeof(Address))]\n+\tinterface AddressExtensions\n+\t{\n+\t\t// -(BOOL)isPartialAddress;\n+\t\t[Export (\"isPartialAddress\")]\n+\t\tbool IsPartialAddress ();\n+\n+\t\t// -(BOOL)isValidAddressForShippingRates;\n+\t\t[Export (\"isValidAddressForShippingRates\")]\n+\t\tbool IsValidAddressForShippingRates ();\n+\t}\n+\n+\t// @interface BUYCheckout : BUYObject <BUYSerializable>\n+\t[BaseType (typeof(Object), Name = \"BUYCheckout\")]\n+\t[DisableDefaultCtor]\n+\tinterface Checkout : Serializable\n+\t{\n+\t\t// @property (copy, nonatomic) NSString * email;\n+\t\t[Export (\"email\")]\n+\t\tstring Email { get; set; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSString * token;\n+\t\t[Export (\"token\")]\n+\t\tstring Token { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSString * cartToken;\n+\t\t[Export (\"cartToken\")]\n+\t\tstring CartToken { get; }\n+\n+\t\t// @property (readonly, assign, nonatomic) BOOL requiresShipping;\n+\t\t[Export (\"requiresShipping\")]\n+\t\tbool RequiresShipping { get; }\n+\n+\t\t// @property (readonly, assign, nonatomic) BOOL taxesIncluded;\n+\t\t[Export (\"taxesIncluded\")]\n+\t\tbool TaxesIncluded { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSString * currency;\n+\t\t[Export (\"currency\")]\n+\t\tstring Currency { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSDecimalNumber * subtotalPrice;\n+\t\t[Export (\"subtotalPrice\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber SubtotalPrice { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSDecimalNumber * totalTax;\n+\t\t[Export (\"totalTax\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber TotalTax { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSDecimalNumber * totalPrice;\n+\t\t[Export (\"totalPrice\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber TotalPrice { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSString * paymentSessionId;\n+\t\t[Export (\"paymentSessionId\", ArgumentSemantic.Strong)]\n+\t\tstring PaymentSessionId { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSURL * paymentURL;\n+\t\t[Export (\"paymentURL\", ArgumentSemantic.Strong)]\n+\t\tNSUrl PaymentUrl { get; }\n+\n+\t\t// @property (nonatomic, strong) NSNumber * reservationTime;\n+\t\t[Export (\"reservationTime\", ArgumentSemantic.Strong)]\n+\t\tNSNumber ReservationTime { get; set; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSNumber * reservationTimeLeft;\n+\t\t[Export (\"reservationTimeLeft\", ArgumentSemantic.Strong)]\n+\t\tNSNumber ReservationTimeLeft { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSDecimalNumber * paymentDue;\n+\t\t[Export (\"paymentDue\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber PaymentDue { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSArray<__kindof BUYLineItem *> * lineItems;\n+\t\t[Export (\"lineItems\", ArgumentSemantic.Copy)]\n+\t\tLineItem[] LineItems { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSArray<BUYTaxLine *> * taxLines;\n+\t\t[Export (\"taxLines\", ArgumentSemantic.Copy)]\n+\t\tTaxLine[] TaxLines { get; }\n+\n+\t\t// @property (nonatomic, strong) BUYAddress * billingAddress;\n+\t\t[Export (\"billingAddress\", ArgumentSemantic.Strong)]\n+\t\tAddress BillingAddress { get; set; }\n+\n+\t\t// @property (nonatomic, strong) BUYAddress * shippingAddress;\n+\t\t[Export (\"shippingAddress\", ArgumentSemantic.Strong)]\n+\t\tAddress ShippingAddress { get; set; }\n+\n+\t\t// @property (nonatomic, strong) BUYShippingRate * shippingRate;\n+\t\t[Export (\"shippingRate\", ArgumentSemantic.Strong)]\n+\t\tShippingRate ShippingRate { get; set; }\n+\n+\t\t// @property (readonly, nonatomic) NSString * shippingRateId  DEPRECATED_MSG_ATTRIBUTE(\"Use shippingRate.shippingRateIdentifier\");\n+\t\t[Export (\"shippingRateId\")]\n+\t\tstring ShippingRateId { get; }\n+\n+\t\t// @property (nonatomic, strong) BUYDiscount * discount;\n+\t\t[Export (\"discount\", ArgumentSemantic.Strong)]\n+\t\tDiscount Discount { get; set; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSArray<BUYGiftCard *> * giftCards;\n+\t\t[Export (\"giftCards\", ArgumentSemantic.Strong)]\n+\t\tGiftCard[] GiftCards { get; }\n+\n+\t\t// @property (nonatomic, strong) NSString * channelId;\n+\t\t[Export (\"channelId\", ArgumentSemantic.Strong)]\n+\t\tstring ChannelId { get; set; }\n+\n+\t\t// @property (nonatomic, strong) NSDictionary * marketingAttribution;\n+\t\t[Export (\"marketingAttribution\", ArgumentSemantic.Strong)]\n+\t\tNSDictionary MarketingAttribution { get; set; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSURL * webCheckoutURL;\n+\t\t[Export (\"webCheckoutURL\", ArgumentSemantic.Strong)]\n+\t\tNSUrl WebCheckoutUrl { get; }\n+\n+\t\t// @property (nonatomic, strong) NSString * webReturnToURL;\n+\t\t[Export (\"webReturnToURL\", ArgumentSemantic.Strong)]\n+\t\tstring WebReturnToUrl { get; set; }\n+\n+\t\t// @property (nonatomic, strong) NSString * webReturnToLabel;\n+\t\t[Export (\"webReturnToLabel\", ArgumentSemantic.Strong)]\n+\t\tstring WebReturnToLabel { get; set; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSDate * createdAtDate;\n+\t\t[Export (\"createdAtDate\", ArgumentSemantic.Copy)]\n+\t\tNSDate CreatedAtDate { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSDate * updatedAtDate;\n+\t\t[Export (\"updatedAtDate\", ArgumentSemantic.Copy)]\n+\t\tNSDate UpdatedAtDate { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSURL * privacyPolicyURL;\n+\t\t[Export (\"privacyPolicyURL\", ArgumentSemantic.Strong)]\n+\t\tNSUrl PrivacyPolicyUrl { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSURL * refundPolicyURL;\n+\t\t[Export (\"refundPolicyURL\", ArgumentSemantic.Strong)]\n+\t\tNSUrl RefundPolicyUrl { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSURL * termsOfServiceURL;\n+\t\t[Export (\"termsOfServiceURL\", ArgumentSemantic.Strong)]\n+\t\tNSUrl TermsOfServiceUrl { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSString * sourceName;\n+\t\t[Export (\"sourceName\")]\n+\t\tstring SourceName { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSString * sourceIdentifier;\n+\t\t[Export (\"sourceIdentifier\")]\n+\t\tstring SourceIdentifier { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) BUYMaskedCreditCard * creditCard;\n+\t\t[Export (\"creditCard\", ArgumentSemantic.Strong)]\n+\t\tMaskedCreditCard CreditCard { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSString * customerId;\n+\t\t[Export (\"customerId\")]\n+\t\tstring CustomerId { get; }\n+\n+\t\t// @property (copy, nonatomic) NSString * note;\n+\t\t[Export (\"note\")]\n+\t\tstring Note { get; set; }\n+\n+\t\t// @property (nonatomic, copy) NSArray <BUYCheckoutAttribute *> *attributes;\n+\t\t[Export (\"attributes\", ArgumentSemantic.Copy)]\n+\t\tCheckoutAttribute[] Attributes { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) BUYOrder * order;\n+\t\t[Export (\"order\", ArgumentSemantic.Strong)]\n+\t\tOrder Order { get; }\n+\n+\t\t// @property (assign, nonatomic) BOOL partialAddresses;\n+\t\t[Export (\"partialAddresses\")]\n+\t\tbool PartialAddresses { get; set; }\n+\n+\t\t// -(instancetype)initWithCart:(BUYCart *)cart;\n+\t\t[Export (\"initWithCart:\")]\n+\t\tIntPtr Constructor (Cart cart);\n+\n+\t\t// -(instancetype)initWithCartToken:(NSString *)cartToken;\n+\t\t[Export (\"initWithCartToken:\")]\n+\t\tIntPtr Constructor (string cartToken);\n+\n+\t\t// -(BOOL)hasToken;\n+\t\t[Export (\"hasToken\")]\n+\t\tbool HasToken { get; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSNumber * orderId __attribute__((deprecated(\"Available on the BUYOrder object\")));\n+\t\t[Export (\"orderId\", ArgumentSemantic.Copy)]\n+\t\tNSNumber OrderId { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSURL * orderStatusURL __attribute__((deprecated(\"Available on the BUYOrder object\")));\n+\t\t[Export (\"orderStatusURL\", ArgumentSemantic.Strong)]\n+\t\tNSUrl OrderStatusUrl { get; }\n+\t}\n+\n+\t// @interface BUYCheckoutAttribute : BUYObject <BUYSerializable>\n+\t[BaseType (typeof(Object), Name = \"BUYCheckoutAttribute\")]\n+\tinterface CheckoutAttribute : Serializable\n+\t{\n+\t\t// @property (nonatomic, strong, nonnull) NSString *name;\n+\t\t[Export (\"name\", ArgumentSemantic.Strong)]\n+\t\tstring Name { get; set; }\n+\n+\t\t// @property (nonatomic, strong, nonnull) NSString *value;\n+\t\t[Export (\"value\", ArgumentSemantic.Strong)]\n+\t\tstring Vitle { get; set; }\n+\t}\n+\n+\t// @interface BUYShippingRate : BUYObject <BUYSerializable>\n+\t[BaseType (typeof(Object), Name = \"BUYShippingRate\")]\n+\tinterface ShippingRate : Serializable\n+\t{\n+\t\t// @property (readonly, nonatomic, strong) NSString * shippingRateIdentifier;\n+\t\t[Export (\"shippingRateIdentifier\", ArgumentSemantic.Strong)]\n+\t\tstring ShippingRateIdentifier { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSString * title;\n+\t\t[Export (\"title\", ArgumentSemantic.Strong)]\n+\t\tstring Title { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSDecimalNumber * price;\n+\t\t[Export (\"price\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber Price { get; }\n+\n+\t\t// TODO: DeliveryRange might be NSDate[]\n+\n+\t\t// @property (readonly, nonatomic, strong) NSArray * deliveryRange;\n+\t\t[Export (\"deliveryRange\", ArgumentSemantic.Strong)]\n+\t\tNSObject[] DeliveryRange { get; }\n+\n+\n+\t\t// @interface ApplePay (BUYShippingRate)\n+\n+\t\t// +(NSArray<PKShippingMethod *> * _Nonnull)buy_convertShippingRatesToShippingMethods:(NSArray<BUYShippingRate *> * _Nonnull)rates;\n+\t\t[Static]\n+\t\t[Export (\"buy_convertShippingRatesToShippingMethods:\")]\n+\t\tPKShippingMethod[] ApplePayConvertShippingRatesToShippingMethods (ShippingRate[] rates);\n+\n+\t}\n+\n+\t// @interface ApplePay (BUYCheckout)\n+\t[Category]\n+\t[BaseType (typeof(Checkout), Name = \"BUYCheckout\")]\n+\tinterface CheckoutApplePayExtensions\n+\t{\n+\t\t// -(NSArray<PKPaymentSummaryItem *> * _Nonnull)buy_summaryItems;\n+\t\t[Export (\"buy_summaryItems\")]\n+\t\tPKPaymentSummaryItem[] ApplePaySummaryItems ();\n+\n+\t\t// -(NSArray<PKPaymentSummaryItem *> * _Nonnull)buy_summaryItemsWithShopName:(NSString * _Nullable)shopName;\n+\t\t[Export (\"buy_summaryItemsWithShopName:\")]\n+\t\tPKPaymentSummaryItem[] ApplePaySummaryItems ([NullAllowed] string shopName);\n+\t}\n+\n+\t// @interface BUYApplePayHelpers : NSObject <PKPaymentAuthorizationViewControllerDelegate>\n+\t[BaseType (typeof(NSObject), Name = \"BUYApplePayHelpers\")]\n+\tinterface ApplePayHelpers : IPKPaymentAuthorizationViewControllerDelegate\n+\t{\n+\t\t// -(instancetype)initWithClient:(BUYClient *)client checkout:(BUYCheckout *)checkout;\n+\t\t[Export (\"initWithClient:checkout:\")]\n+\t\tIntPtr Constructor (BuyClient client, Checkout checkout);\n+\n+\t\t// -(instancetype)initWithClient:(BUYClient *)client checkout:(BUYCheckout *)checkout shop:(BUYShop *)shop;\n+\t\t[Export (\"initWithClient:checkout:shop:\")]\n+\t\tIntPtr Constructor (BuyClient client, Checkout checkout, Shop shop);\n+\n+\t\t// -(void)updateAndCompleteCheckoutWithPayment:(PKPayment *)payment completion:(void (^)(PKPaymentAuthorizationStatus))completion __attribute__((deprecated(\"BUYApplePayHelpers now implements PKPaymentAuthorizationViewControllerDelegate instead\")));\n+\t\t[Export (\"updateAndCompleteCheckoutWithPayment:completion:\")]\n+\t\tvoid UpdateAndCompleteCheckout (PKPayment payment, Action<PKPaymentAuthorizationStatus> completion);\n+\n+\t\t// -(void)updateCheckoutWithShippingMethod:(PKShippingMethod *)shippingMethod completion:(void (^)(PKPaymentAuthorizationStatus, NSArray *))completion __attribute__((deprecated(\"BUYApplePayHelpers now implements PKPaymentAuthorizationViewControllerDelegate instead\")));\n+\t\t[Export (\"updateCheckoutWithShippingMethod:completion:\")]\n+\t\tvoid UpdateCheckout (PKShippingMethod shippingMethod, Action<PKPaymentAuthorizationStatus, NSArray> completion);\n+\n+\t\t// -(void)updateCheckoutWithAddress:(ABRecordRef)address completion:(void (^)(PKPaymentAuthorizationStatus, NSArray *, NSArray *))completion __attribute__((availability(ios, introduced=8_0, deprecated=9_0)));\n+\t\t[Introduced (PlatformName.iOS, 8, 0, message: \"Use the CNContact backed `updateCheckoutWithContact:completion:` instead\")]\n+\t\t[Deprecated (PlatformName.iOS, 9, 0, message: \"Use the CNContact backed `updateCheckoutWithContact:completion:` instead\")]\n+\t\t[Export (\"updateCheckoutWithAddress:completion:\")]\n+\t\tvoid UpdateCheckout (ABRecord address, Action<PKPaymentAuthorizationStatus, NSArray, NSArray> completion);\n+\n+\t\t// -(void)updateCheckoutWithContact:(PKContact *)contact completion:(void (^)(PKPaymentAuthorizationStatus, NSArray *, NSArray *))completion __attribute__((deprecated(\"BUYApplePayHelpers now implements PKPaymentAuthorizationViewControllerDelegate instead\")));\n+\t\t[Export (\"updateCheckoutWithContact:completion:\")]\n+\t\tvoid UpdateCheckout (PKContact contact, Action<PKPaymentAuthorizationStatus, NSArray, NSArray> completion);\n+\n+\t\t// @property (readonly, nonatomic, strong) BUYCheckout * checkout;\n+\t\t[Export (\"checkout\", ArgumentSemantic.Strong)]\n+\t\tCheckout Checkout { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) BUYClient * client;\n+\t\t[Export (\"client\", ArgumentSemantic.Strong)]\n+\t\tBuyClient Client { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSError * lastError;\n+\t\t[Export (\"lastError\", ArgumentSemantic.Strong)]\n+\t\tNSError LastError { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) BUYShop * shop;\n+\t\t[Export (\"shop\", ArgumentSemantic.Strong)]\n+\t\tShop Shop { get; }\n+\t}\n+\n+\t// @interface BUYCart : NSObject <BUYSerializable>\n+\t[BaseType (typeof(NSObject), Name = \"BUYCart\")]\n+\tinterface Cart : Serializable\n+\t{\n+\t\t// @property (readonly, nonatomic, strong) NSArray<BUYCartLineItem *> * _Nonnull lineItems;\n+\t\t[Export (\"lineItems\", ArgumentSemantic.Strong)]\n+\t\tCartLineItem[] LineItems { get; }\n+\n+\t\t// -(BOOL)isValid;\n+\t\t[Export (\"isValid\")]\n+\t\tbool IsValid { get; }\n+\n+\t\t// -(void)clearCart;\n+\t\t[Export (\"clearCart\")]\n+\t\tvoid ClearCart ();\n+\n+\t\t// -(void)addVariant:(BUYProductVariant * _Nonnull)variant;\n+\t\t[Export (\"addVariant:\")]\n+\t\tvoid AddVariant (ProductVariant variant);\n+\n+\t\t// -(void)removeVariant:(BUYProductVariant * _Nonnull)variant;\n+\t\t[Export (\"removeVariant:\")]\n+\t\tvoid RemoveVariant (ProductVariant variant);\n+\n+\t\t// -(void)setVariant:(BUYProductVariant * _Nonnull)variant withTotalQuantity:(NSInteger)quantity;\n+\t\t[Export (\"setVariant:withTotalQuantity:\")]\n+\t\tvoid SetVariant (ProductVariant variant, nint quantity);\n+\t}\n+\n+\t// @interface BUYLineItem : BUYObject <BUYSerializable>\n+\t[BaseType (typeof(Object), Name = \"BUYLineItem\")]\n+\tinterface LineItem : Serializable\n+\t{\n+\t\t// @property (readonly, nonatomic, strong) NSString * lineItemIdentifier;\n+\t\t[Export (\"lineItemIdentifier\", ArgumentSemantic.Strong)]\n+\t\tstring LineItemIdentifier { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSNumber * variantId;\n+\t\t[Export (\"variantId\", ArgumentSemantic.Strong)]\n+\t\tNSNumber VariantId { get; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSNumber * productId;\n+\t\t[Export (\"productId\", ArgumentSemantic.Strong)]\n+\t\tNSNumber ProductId { get; }\n+\n+\t\t// @property (nonatomic, strong) NSDecimalNumber * quantity;\n+\t\t[Export (\"quantity\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber Quantity { get; set; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSDecimalNumber * grams;\n+\t\t[Export (\"grams\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber Grams { get; }\n+\n+\t\t// @property (nonatomic, strong) NSDecimalNumber * price;\n+\t\t[Export (\"price\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber Price { get; set; }\n+\n+\t\t// @property (nonatomic, strong) NSDecimalNumber * linePrice;\n+\t\t[Export (\"linePrice\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber LinePrice { get; set; }\n+\n+\t\t// @property (readonly, nonatomic, strong) NSDecimalNumber * compareAtPrice;\n+\t\t[Export (\"compareAtPrice\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber CompareAtPrice { get; }\n+\n+\t\t// @property (copy, nonatomic) NSString * title;\n+\t\t[Export (\"title\")]\n+\t\tstring Title { get; set; }\n+\n+\t\t// @property (copy, nonatomic) NSString * variantTitle;\n+\t\t[Export (\"variantTitle\")]\n+\t\tstring VariantTitle { get; set; }\n+\n+\t\t// @property (nonatomic, strong) NSNumber * requiresShipping;\n+\t\t[Export (\"requiresShipping\", ArgumentSemantic.Strong)]\n+\t\tNSNumber RequiresShipping { get; set; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSString * sku;\n+\t\t[Export (\"sku\")]\n+\t\tstring Sku { get; }\n+\n+\t\t// @property (readonly, assign, nonatomic) BOOL taxable;\n+\t\t[Export (\"taxable\")]\n+\t\tbool Taxable { get; }\n+\n+\t\t// @property (copy, nonatomic) NSDictionary * properties;\n+\t\t[Export (\"properties\", ArgumentSemantic.Copy)]\n+\t\tNSDictionary Properties { get; set; }\n+\n+\t\t// @property (readonly, copy, nonatomic) NSString * fulfillmentService;\n+\t\t[Export (\"fulfillmentService\")]\n+\t\tstring FulfillmentService { get; }\n+\n+\t\t// -(instancetype)initWithVariant:(BUYProductVariant *)variant;\n+\t\t[Export (\"initWithVariant:\")]\n+\t\tIntPtr Constructor (ProductVariant variant);\n+\t}\n+\n+\t// @interface BUYCartLineItem : BUYLineItem\n+\t[BaseType (typeof(LineItem), Name = \"BUYCartLineItem\")]\n+\tinterface CartLineItem\n+\t{\n+\t\t// @property (readonly, nonatomic, strong) BUYProductVariant * variant;\n+\t\t[Export (\"variant\", ArgumentSemantic.Strong)]\n+\t\tProductVariant Variant { get; }\n+\t}\n+\n+\t// @interface BUYTheme : NSObject\n+\t[BaseType (typeof(NSObject), Name = \"BUYTheme\")]\n+\tinterface Theme\n+\t{\n+\t\t// extern const CGFloat kBuyPaddingSmall;\n+\t\t[Static]\n+\t\t[Field (\"kBuyPaddingSmall\", \"__Internal\")]\n+\t\tnfloat BuyPaddingSmall { get; }\n+\n+\t\t// extern const CGFloat kBuyPaddingMedium;\n+\t\t[Static]\n+\t\t[Field (\"kBuyPaddingMedium\", \"__Internal\")]\n+\t\tnfloat BuyPaddingMedium { get; }\n+\n+\t\t// extern const CGFloat kBuyPaddingLarge;\n+\t\t[Static]\n+\t\t[Field (\"kBuyPaddingLarge\", \"__Internal\")]\n+\t\tnfloat BuyPaddingLarge { get; }\n+\n+\t\t// extern const CGFloat kBuyPaddingExtraLarge;\n+\t\t[Static]\n+\t\t[Field (\"kBuyPaddingExtraLarge\", \"__Internal\")]\n+\t\tnfloat BuyPaddingExtraLarge { get; }\n+\n+\t\t// extern const CGFloat kBuyTopGradientViewHeight;\n+\t\t[Static]\n+\t\t[Field (\"kBuyTopGradientViewHeight\", \"__Internal\")]\n+\t\tnfloat BuyTopGradientViewHeight { get; }\n+\n+\t\t// extern const CGFloat kBuyCheckoutButtonHeight;\n+\t\t[Static]\n+\t\t[Field (\"kBuyCheckoutButtonHeight\", \"__Internal\")]\n+\t\tnfloat BuyCheckoutButtonHeight { get; }\n+\n+\t\t// extern const CGFloat kBuyPageControlHeight;\n+\t\t[Static]\n+\t\t[Field (\"kBuyPageControlHeight\", \"__Internal\")]\n+\t\tnfloat BuyPageControlHeight { get; }\n+\n+\t\t// extern const CGFloat kBuyBottomGradientHeightWithPageControl;\n+\t\t[Static]\n+\t\t[Field (\"kBuyBottomGradientHeightWithPageControl\", \"__Internal\")]\n+\t\tnfloat BuyBottomGradientHeightWithPageControl { get; }\n+\n+\t\t// extern const CGFloat kBuyBottomGradientHeightWithoutPageControl;\n+\t\t[Static]\n+\t\t[Field (\"kBuyBottomGradientHeightWithoutPageControl\", \"__Internal\")]\n+\t\tnfloat BuyBottomGradientHeightWithoutPageControl { get; }\n+\n+\n+\t\t// @property (nonatomic, strong) UIColor * tintColor;\n+\t\t[Export (\"tintColor\", ArgumentSemantic.Strong)]\n+\t\tUIColor TintColor { get; set; }\n+\n+\t\t// @property (assign, nonatomic) BUYThemeStyle style;\n+\t\t[Export (\"style\", ArgumentSemantic.Assign)]\n+\t\tThemeStyle Style { get; set; }\n+\n+\t\t// @property (assign, nonatomic) BOOL showsProductImageBackground;\n+\t\t[Export (\"showsProductImageBackground\")]\n+\t\tbool ShowsProductImageBackground { get; set; }\n+\n+\n+\t\t// interface BUYTheme_Additions\n+\n+\t\t[Static]\n+\t\t[Export (\"topGradientViewTopColor\")]\n+\t\tUIColor TopGradientViewTopColor ();\n+\n+\t\t[Static]\n+\t\t[Export (\"comparePriceTextColor\")]\n+\t\tUIColor ComparePriceTextColor ();\n+\n+\t\t[Static]\n+\t\t[Export (\"descriptionTextColor\")]\n+\t\tUIColor DescriptionTextColor ();\n+\n+\t\t[Static]\n+\t\t[Export (\"variantPriceTextColor\")]\n+\t\tUIColor VariantPriceTextColor ();\n+\n+\t\t[Static]\n+\t\t[Export (\"variantSoldOutTextColor\")]\n+\t\tUIColor VariantSoldOutTextColor ();\n+\n+\t\t[Static]\n+\t\t[Export (\"variantBreadcrumbsTextColor\")]\n+\t\tUIColor VariantBreadcrumbsTextColor ();\n+\n+\t\t[Static]\n+\t\t[Export (\"productTitleFont\")]\n+\t\tUIFont ProductTitleFont ();\n+\n+\t\t[Static]\n+\t\t[Export (\"productPriceFont\")]\n+\t\tUIFont ProductPriceFont ();\n+\n+\t\t[Static]\n+\t\t[Export (\"productComparePriceFont\")]\n+\t\tUIFont ProductComparePriceFont ();\n+\n+\t\t[Static]\n+\t\t[Export (\"variantOptionNameFont\")]\n+\t\tUIFont VariantOptionNameFont ();\n+\n+\t\t[Static]\n+\t\t[Export (\"variantOptionValueFont\")]\n+\t\tUIFont VariantOptionValueFont ();\n+\n+\t\t[Static]\n+\t\t[Export (\"variantOptionPriceFont\")]\n+\t\tUIFont VariantOptionPriceFont ();\n+\n+\t\t[Static]\n+\t\t[Export (\"variantBreadcrumbsFont\")]\n+\t\tUIFont VariantBreadcrumbsFont ();\n+\n+\t\t[Static]\n+\t\t[Export (\"errorLabelFont\")]\n+\t\tUIFont ErrorLabelFont ();\n+\n+\t}\n+\n+\tinterface IThemeable\n+\t{\n+\n+\t}\n+\n+\t// @protocol BUYThemeable <NSObject>\n+\t[Protocol, Model]\n+\t[BaseType (typeof(NSObject), Name = \"BUYThemeable\")]\n+\tinterface Themeable\n+\t{\n+\t\t// @required -(void)setTheme:(BUYTheme *)theme;\n+\t\t[Abstract]\n+\t\t[Export (\"setTheme:\")]\n+\t\tvoid SetTheme (Theme theme);\n+\t}\n+\n+\t// @interface BUYCheckoutButton : UIButton <BUYThemeable>\n+\t[BaseType (typeof(UIButton), Name = \"BUYCheckoutButton\")]\n+\tinterface CheckoutButton : Themeable\n+\t{\n+\t\t// -(void)showActivityIndicator:(BOOL)show;\n+\t\t[Export (\"showActivityIndicator:\")]\n+\t\tvoid ShowActivityIndicator (bool show);\n+\t}\n+\n+\tdelegate void DataCreditCardBlock (Checkout checkout, string paymentSessionId, NSError error);\n+\n+\tdelegate void DataCheckoutBlock (Checkout checkout, NSError error);\n+\n+\tdelegate void DataCheckoutStatusBlock (Status status, NSError error);\n+\n+\tdelegate void DataShippingRatesBlock (ShippingRate[] shippingRates, Status status, NSError error);\n+\n+\tdelegate void DataShopBlock (Shop shop, NSError error);\n+\n+\tdelegate void DataProductBlock (Product product, NSError error);\n+\n+\tdelegate void DataProductsBlock (Product[] products, NSError error);\n+\n+\tdelegate void DataCollectionsBlock (Collection[] collections, NSError error);\n+\n+\tdelegate void DataCollectionsListBlock (Collection[] collections, nuint page, bool reachedEnd, NSError error);\n+\n+\tdelegate void DataProductListBlock (Product[] productList, nuint page, bool reachedEnd, NSError error);\n+\n+//\tdelegate void DataImagesListBlock (BUYProductImage[] imagesList, NSError error);\n+\n+\tdelegate void DataGiftCardBlock (GiftCard giftCard, NSError error);\n+\n+\t[BaseType (typeof(NSObject), Name = \"BUYClient\")]\n+\t[DisableDefaultCtor]\n+\tinterface BuyClient\n+\t{\n+\t\t[Static]\n+\t\t[Field (\"BUYVersionString\", \"__Internal\")]\n+\t\tNSString BUYVersionString { get; }\n+\n+\n+\t\t[Export (\"initWithShopDomain:apiKey:channelId:\")]\n+\t\t[DesignatedInitializer]\n+\t\tIntPtr Constructor (string shopDomain, string apiKey, string channelId);\n+\n+\t\t[Export (\"queue\", ArgumentSemantic.Strong)]\n+\t\tDispatchQueue Queue { get; set; }\n+\n+\t\t[Export (\"pageSize\")]\n+\t\tnuint PageSize { get; set; }\n+\n+\t\t[Export (\"shopDomain\", ArgumentSemantic.Strong)]\n+\t\tstring ShopDomain { get; }\n+\n+\t\t[Export (\"apiKey\", ArgumentSemantic.Strong)]\n+\t\tstring ApiKey { get; }\n+\n+\t\t[Export (\"channelId\", ArgumentSemantic.Strong)]\n+\t\tstring ChannelId { get; }\n+\n+\t\t[Export (\"merchantId\", ArgumentSemantic.Strong)]\n+\t\tstring MerchantId { get; }\n+\n+\t\t[Export (\"applicationName\", ArgumentSemantic.Strong)]\n+\t\tstring ApplicationName { get; set; }\n+\n+\t\t[Export (\"urlScheme\", ArgumentSemantic.Strong)]\n+\t\tstring UrlScheme { get; set; }\n+\n+\t\t[Export (\"getShop:\")]\n+\t\tNSUrlSessionDataTask GetShop (DataShopBlock block);\n+\n+\t\t[Export (\"getProductsPage:completion:\")]\n+\t\tNSUrlSessionDataTask GetProductsPage (nuint page, DataProductListBlock block);\n+\n+\t\t[Export (\"getProductById:completion:\")]\n+\t\tNSUrlSessionDataTask GetProduct (string productId, DataProductBlock block);\n+\n+\t\t[Export (\"getProductsByIds:completion:\")]\n+\t\tNSUrlSessionDataTask GetProducts (string[] productIds, DataProductsBlock block);\n+\n+\t\t[Export (\"getCollections:\")]\n+\t\tNSUrlSessionDataTask GetCollections (DataCollectionsBlock block);\n+\n+\t\t[Export(\"getCollectionsPage:completion:\")]\n+\t\tNSUrlSessionDataTask GetCollectionsPage (nuint page, DataCollectionsListBlock block);\n+\n+\t\t[Export (\"getProductsPage:inCollection:completion:\")]\n+\t\tNSUrlSessionDataTask GetProductsPage (nuint page, NSNumber collectionId, DataProductListBlock block);\n+\n+\t\t[Export (\"getProductsPage:inCollection:sortOrder:completion:\")]\n+\t\tNSUrlSessionDataTask GetProductsPage (nuint page, NSNumber collectionId, CollectionSort sortOrder, DataProductListBlock block);\n+\n+\t\t[Export (\"createCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask CreateCheckout (Checkout checkout, DataCheckoutBlock block);\n+\n+\t\t[Export (\"createCheckoutWithCartToken:completion:\")]\n+\t\tNSUrlSessionDataTask CreateCheckout (string cartToken, DataCheckoutBlock block);\n+\n+\t\t[Export (\"applyGiftCardWithCode:toCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask ApplyGiftCard (string giftCardCode, Checkout checkout, DataCheckoutBlock block);\n+\n+\t\t[Export (\"removeGiftCard:fromCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask RemoveGiftCard (GiftCard giftCard, Checkout checkout, DataCheckoutBlock block);\n+\n+\t\t[Export (\"getCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask GetCheckout (Checkout checkout, DataCheckoutBlock block);\n+\n+\t\t[Export (\"updateCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask UpdateCheckout (Checkout checkout, DataCheckoutBlock block);\n+\n+\t\t[Export (\"completeCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask CompleteCheckout (Checkout checkout, DataCheckoutBlock block);\n+\n+\t\t[Export (\"completeCheckout:withApplePayToken:completion:\")]\n+\t\tNSUrlSessionDataTask CompleteCheckout (Checkout checkout, PKPaymentToken token, DataCheckoutBlock block);\n+\n+\t\t[Export (\"getCompletionStatusOfCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask GetCompletionStatusOfCheckout (Checkout checkout, DataCheckoutStatusBlock block);\n+\n+\t\t[Export (\"getCompletionStatusOfCheckoutURL:completion:\")]\n+\t\tNSUrlSessionDataTask GetCompletionStatusOfCheckoutUrl (NSUrl url, DataCheckoutStatusBlock block);\n+\n+\t\t[Export (\"getShippingRatesForCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask GetShippingRatesForCheckout (Checkout checkout, DataShippingRatesBlock block);\n+\n+\t\t[Export (\"storeCreditCard:checkout:completion:\")]\n+\t\tNSUrlSessionDataTask StoreCreditCard (ISerializable creditCard, Checkout checkout, DataCreditCardBlock block);\n+\n+\t\t[Export (\"removeProductReservationsFromCheckout:completion:\")]\n+\t\tNSUrlSessionDataTask RemoveProductReservations (Checkout checkout, DataCheckoutBlock block);\n+\n+\t\t[Export (\"enableApplePayWithMerchantId:\")]\n+\t\tvoid EnableApplePay (string merchantId);\n+\n+\t}\n+\n+\t[Category]\n+\t[BaseType (typeof(BuyClient), Name = \"BUYClient\")]\n+\tinterface ClientTestExtensions\n+\t{\n+\t\t[Export (\"testIntegrationWithMerchantId:\")]\n+\t\tbool TestIntegration (string merchantId);\n+\n+\t\t[Export (\"testIntegration\")]\n+\t\tbool TestIntegration ();\n+\n+\t}\n+\n+\t[BaseType (typeof(Object), Name = \"BUYCollection\")]\n+\tinterface Collection\n+\t{\n+\t\t[Export (\"title\", ArgumentSemantic.Strong)]\n+\t\tstring Title { get; }\n+\n+\t\t[Export (\"collectionId\", ArgumentSemantic.Strong)]\n+\t\tNSNumber CollectionId { get; }\n+\n+\t\t[Export (\"htmlDescription\", ArgumentSemantic.Strong)]\n+\t\tstring HtmlDescription { get; }\n+\n+\t\t[Export (\"imageURL\", ArgumentSemantic.Strong)]\n+\t\tNSUrl ImageUrl { get; }\n+\n+\t\t[Export (\"handle\", ArgumentSemantic.Strong)]\n+\t\tstring CollectionHandle { get; }\n+\n+\t\t[Export (\"published\")]\n+\t\tbool Published { get; }\n+\n+\t\t[Export (\"createdAtDate\", ArgumentSemantic.Copy)]\n+\t\tNSDate CreatedAtDate { get; }\n+\n+\t\t[Export (\"updatedAtDate\", ArgumentSemantic.Copy)]\n+\t\tNSDate UpdatedAtDate { get; }\n+\n+\t\t[Export (\"publishedAtDate\", ArgumentSemantic.Copy)]\n+\t\tNSDate PublishedAtDate { get; }\n+\n+\n+\t\t// interface BUYCollection_Additions\n+\n+\t\t[Static]\n+\t\t[Export (\"sortOrderParameterForCollectionSort:\")]\n+\t\tstring SortOrderParameterForCollectionSort (CollectionSort sort);\n+\n+\t}\n+\n+\t[BaseType (typeof(NSObject), Name = \"BUYCreditCard\")]\n+\tinterface CreditCard : Serializable\n+\t{\n+\t\t[Export (\"nameOnCard\")]\n+\t\tstring NameOnCard { get; set; }\n+\n+\t\t[Export (\"number\")]\n+\t\tstring Number { get; set; }\n+\n+\t\t[Export (\"expiryMonth\")]\n+\t\tstring ExpiryMonth { get; set; }\n+\n+\t\t[Export (\"expiryYear\")]\n+\t\tstring ExpiryYear { get; set; }\n+\n+\t\t[Export (\"cvv\")]\n+\t\tstring Cvv { get; set; }\n+\n+\t}\n+\n+\t[BaseType (typeof(Object), Name = \"BUYDiscount\")]\n+\tinterface Discount : Serializable\n+\t{\n+\t\t[Export (\"code\")]\n+\t\tstring Code { get; set; }\n+\n+\t\t[Export (\"amount\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber Amount { get; set; }\n+\n+\t\t[Export (\"applicable\")]\n+\t\tbool Applicable { get; set; }\n+\n+\t\t[Export (\"initWithCode:\")]\n+\t\tIntPtr Constructor (string code);\n+\n+\t}\n+\n+\t[BaseType (typeof(NSError), Name = \"BUYError\")]\n+\tinterface Error\n+\t{\n+\t\t[Static]\n+\t\t[Field (\"BUYShopifyError\", \"__Internal\")]\n+\t\tNSString BUYShopifyError { get; }\n+\n+\t}\n+\n+\t[BaseType (typeof(Object), Name = \"BUYGiftCard\")]\n+\tinterface GiftCard : Serializable\n+\t{\n+\t\t[Export (\"code\")]\n+\t\tstring Code { get; }\n+\n+\t\t[Export (\"lastCharacters\")]\n+\t\tstring LastCharacters { get; }\n+\n+\t\t[Export (\"balance\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber Balance { get; }\n+\n+\t\t[Export (\"amountUsed\", ArgumentSemantic.Strong)]\n+\t\tNSDecimalNumber AmountUsed { get; }\n+\n+\t}\n+\n+\t[BaseType (typeof(UIView), Name = \"BUYGradientView\")]\n+\tinterface GradientView\n+\t{\n+\t\t[Export (\"topColor\", ArgumentSemantic.Strong)]\n+\t\tUIColor TopColor { get; set; }\n+\n+\t\t[Export (\"bottomColor\", ArgumentSemantic.Strong)]\n+\t\tUIColor BottomColor { get; set; }\n+\n+\t}\n+\n+\t[BaseType (typeof(Object), Name = \"BUYImage\")]\n+\tinterface Image\n+\t{\n+\t\t[Export (\"src\")]\n+\t\tstring Src { get; }\n+\n+\t\t[Export (\"variantIds\", ArgumentSemantic.Copy)]\n+\t\tNSNumber[] VariantIds { get; }\n+\n+\t\t[Export (\"createdAtDate\", ArgumentSemantic.Copy)]\n+\t\tNSDate CreatedAtDate { get; }\n+\n+\t\t[Export (\"updatedAtDate\", ArgumentSemantic.Copy)]\n+\t\tNSDate UpdatedAtDate { get; }\n+\n+\t\t[Export (\"position\", ArgumentSemantic.Copy)]\n+\t\tNSNumber Position { get; }\n+\n+\t\t[Export (\"productId\", ArgumentSemantic.Copy)]\n+\t\tNSNumber ProductId { get; }\n+\n+\t}\n+\n+\t[BaseType (typeof(NSObject), Name = \"BUYImageKit\")]\n+\tinterface ImageKit\n+\t{\n+\t\t[Static]\n+\t\t[Export (\"imageOfVariantCloseImageWithFrame:\")]\n+\t\tUIImage ImageOfVariantCloseImage (CGRect frame);\n+\n+\t\t[Static]\n+\t\t[Export (\"imageOfPreviousSelectionIndicatorImageWithFrame:\")]\n+\t\tUIImage ImageOfPreviousSelectionIndicatorImage (CGRect frame);\n+\n+\t\t[Static]\n+\t\t[Export (\"imageOfDisclosureIndicatorImageWithFrame:color:\")]\n+\t\tUIImage ImageOfDisclosureIndicatorImage (CGRect frame, UIColor color);\n+\n+\t\t[Static]\n+\t\t[Export (\"imageOfProductViewCloseImageWithFrame:color:hasShadow:\")]\n+\t\tUIImage ImageOfProductViewCloseImage (CGRect frame, UIColor color, bool hasShadow);\n+\n+\t\t[Static]\n+\t\t[Export (\"imageOfVariantBackImageWithFrame:\")]\n+\t\tUIImage ImageOfVariantBackImage (CGRect frame);\n+\n+\t}\n+\n+\t[BaseType (typeof(UIImageView), Name = \"BUYImageView\")]\n+\tinterface ImageView : Themeable\n+\t{\n+\t\t[Static]\n+\t\t[Field (\"imageDuration\", \"__Internal\")]\n+\t\tfloat imageDuration { get; }\n+\n+\n+\t\t[Export (\"showsActivityIndicator\")]\n+\t\tbool ShowsActivityIndicator { get; set; }\n+\n+\t\t[Export (\"loadImageWithURL:completion:\"), Async]\n+\t\tvoid LoadImage (NSUrl imageUrl, Action<UIImage, NSError> completion);\n+\n+\t\t[Export (\"loadImageWithURL:animateChange:completion:\"), Async]\n+\t\tvoid LoadImage (NSUrl imageUrl, bool animateChange, Action<UIImage, NSError> completion);\n+\n+\t\t[Export (\"cancelImageTask\")]\n+\t\tvoid CancelImageTask ();\n+\n+\t\t[Export (\"isPortraitOrSquare\")]\n+\t\tbool IsPortraitOrSquare { get; }\n+\n+\t}\n+\n+\t[BaseType (typeof(Object), Name = \"BUYMaskedCreditCard\")]\n+\tinterface MaskedCreditCard\n+\t{\n+\t\t[Export (\"firstName\")]\n+\t\tstring FirstName { get; set; }\n+\n+\t\t[Export (\"lastName\")]\n+\t\tstring LastName { get; set; }\n+\n+\t\t[Export (\"firstDigits\")]\n+\t\tstring FirstDigits { get; set; }\n+\n+\t\t[Export (\"lastDigits\")]\n+\t\tstring LastDigits { get; set; }\n+\n+\t\t[Export (\"expiryYear\", ArgumentSemantic.Copy)]\n+\t\tNSNumber ExpiryYear { get; set; }\n+\n+\t\t[Export (\"expiryMonth\", ArgumentSemantic.Copy)]\n+\t\tNSNumber ExpiryMonth { get; set; }\n+\n+\t}\n+\n+\tinterface INavigationControllerDelegate\n+\t{\n+\n+\t}\n+\n+\t[Protocol, Model]\n+\t[BaseType (typeof(NSObject), Name = \"BUYNavigationControllerDelegate\")]\n+\tinterface NavigationControllerDelegate\n+\t{\n+\t\t[Abstract]\n+\t\t[Export (\"presentationControllerWillDismiss:\")]\n+\t\tvoid PresentationControllerWillDismiss (UIPresentationController presentationController);\n+\n+\t\t[Abstract]\n+\t\t[Export (\"presentationControllerDidDismiss:\")]\n+\t\tvoid PresentationControllerDidDismiss (UIPresentationController presentationController);\n+\n+\t}\n+\n+\t[BaseType (typeof(UINavigationController), Name = \"BUYNavigationController\")]\n+\tinterface NavigationController : Themeable\n+\t{\n+\t\t[Export (\"updateCloseButtonImageWithTintColor:duration:\")]\n+\t\tvoid UpdateCloseButtonImage (bool tintColor, nfloat duration);\n+\n+\t\t[NullAllowed, Export (\"navigationDelegate\", ArgumentSemantic.Weak)]\n+\t\tINavigationControllerDelegate NavigationDelegate { get; set; }\n+\t}\n+\n+\t[BaseType (typeof(Object), Name = \"BUYOption\")]\n+\tinterface Option\n+\t{\n+\t\t[Export (\"name\")]\n+\t\tstring Name { get; }\n+\n+\t\t[Export (\"position\", ArgumentSemantic.Strong)]\n+\t\tNSNumber Position { get; }\n+\n+\t\t[Export (\"productId\", ArgumentSemantic.Copy)]\n+\t\tNSNumber ProductId { get; }\n+\n+\t}\n+\n+\t[BaseType (typeof(UIView), Name = \"BUYVariantOptionBreadCrumbsView\")]\n+\tinterface VariantOptionBreadCrumbsView : Themeable\n+\t{\n+\t\t[Export (\"hiddenConstraint\", ArgumentSemantic.Strong)]\n+\t\tNSLayoutConstraint HiddenConstraint { get; set; }\n+\n+\t\t[Export (\"visibleConstraint\", ArgumentSemantic.Strong)]\n+\t\tNSLayoutConstraint VisibleConstraint { get; set; }\n+\n+\t\t[Export (\"setSelectedBuyOptionValues:\")]\n+\t\tvoid SetSelectedBuyOptionValues (string[] optionValuesNames);\n+\n+\t}\n+\n+\t[BaseType (typeof(NavigationController), Name = \"BUYOptionSelectionNavigationController\")]\n+\tinterface OptionSelectionNavigationController : Themeable\n+\t{\n+\t\t[Export (\"dismissWithCancelAnimation\")]\n+\t\tbool DismissWithCancelAnimation { get; set; }\n+\n+\t\t[Export (\"breadsCrumbsView\", ArgumentSemantic.Strong)]\n+\t\tVariantOptionBreadCrumbsView BreadsCrumbsView { get; set; }\n+\n+\t}\n+\n+\tinterface IOptionSelectionDelegate\n+\t{\n+\n+\t}\n+\n+\t[Protocol, Model]\n+\t[BaseType (typeof(NSObject), Name = \"BUYOptionSelectionDelegate\")]\n+\tinterface OptionSelectionDelegate","path":"XPlat/Shopify/iOS/source/Shopify.iOS/ApiDefinition.cs","position":1146,"original_position":1146,"commit_id":"f733f9f2db366517853cad60750baa8e2296caa7","original_commit_id":"f733f9f2db366517853cad60750baa8e2296caa7","user":{"login":"SotoiGhost","id":5924210,"avatar_url":"https://avatars.githubusercontent.com/u/5924210?v=3","gravatar_id":"","url":"https://api.github.com/users/SotoiGhost","html_url":"https://github.com/SotoiGhost","followers_url":"https://api.github.com/users/SotoiGhost/followers","following_url":"https://api.github.com/users/SotoiGhost/following{/other_user}","gists_url":"https://api.github.com/users/SotoiGhost/gists{/gist_id}","starred_url":"https://api.github.com/users/SotoiGhost/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SotoiGhost/subscriptions","organizations_url":"https://api.github.com/users/SotoiGhost/orgs","repos_url":"https://api.github.com/users/SotoiGhost/repos","events_url":"https://api.github.com/users/SotoiGhost/events{/privacy}","received_events_url":"https://api.github.com/users/SotoiGhost/received_events","type":"User","site_admin":false},"body":"If you want you can add events here.","created_at":"2016-08-05T05:46:41Z","updated_at":"2016-08-05T05:46:41Z","html_url":"https://github.com/xamarin/XamarinComponents/pull/51#discussion_r73644549","pull_request_url":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/51","_links":{"self":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/comments/73644549"},"html":{"href":"https://github.com/xamarin/XamarinComponents/pull/51#discussion_r73644549"},"pull_request":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/51"}}},"pull_request":{"url":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/51","id":79094204,"html_url":"https://github.com/xamarin/XamarinComponents/pull/51","diff_url":"https://github.com/xamarin/XamarinComponents/pull/51.diff","patch_url":"https://github.com/xamarin/XamarinComponents/pull/51.patch","issue_url":"https://api.github.com/repos/xamarin/XamarinComponents/issues/51","number":51,"state":"open","locked":false,"title":"Added Shopify","user":{"login":"mattleibow","id":1096616,"avatar_url":"https://avatars.githubusercontent.com/u/1096616?v=3","gravatar_id":"","url":"https://api.github.com/users/mattleibow","html_url":"https://github.com/mattleibow","followers_url":"https://api.github.com/users/mattleibow/followers","following_url":"https://api.github.com/users/mattleibow/following{/other_user}","gists_url":"https://api.github.com/users/mattleibow/gists{/gist_id}","starred_url":"https://api.github.com/users/mattleibow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattleibow/subscriptions","organizations_url":"https://api.github.com/users/mattleibow/orgs","repos_url":"https://api.github.com/users/mattleibow/repos","events_url":"https://api.github.com/users/mattleibow/events{/privacy}","received_events_url":"https://api.github.com/users/mattleibow/received_events","type":"User","site_admin":false},"body":"Added the Shopify component:\r\n - [x] bindings for iOS/Android\r\n - [x] samples\r\n - [x] NuGet packages\r\n - [x] Xamarin component package","created_at":"2016-07-27T20:42:53Z","updated_at":"2016-08-05T05:46:41Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c3aa7166ddda7d459720fb517bb620fe3aedb538","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/51/commits","review_comments_url":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/51/comments","review_comment_url":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/comments{/number}","comments_url":"https://api.github.com/repos/xamarin/XamarinComponents/issues/51/comments","statuses_url":"https://api.github.com/repos/xamarin/XamarinComponents/statuses/f733f9f2db366517853cad60750baa8e2296caa7","head":{"label":"mattleibow:add-shopify","ref":"add-shopify","sha":"f733f9f2db366517853cad60750baa8e2296caa7","user":{"login":"mattleibow","id":1096616,"avatar_url":"https://avatars.githubusercontent.com/u/1096616?v=3","gravatar_id":"","url":"https://api.github.com/users/mattleibow","html_url":"https://github.com/mattleibow","followers_url":"https://api.github.com/users/mattleibow/followers","following_url":"https://api.github.com/users/mattleibow/following{/other_user}","gists_url":"https://api.github.com/users/mattleibow/gists{/gist_id}","starred_url":"https://api.github.com/users/mattleibow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattleibow/subscriptions","organizations_url":"https://api.github.com/users/mattleibow/orgs","repos_url":"https://api.github.com/users/mattleibow/repos","events_url":"https://api.github.com/users/mattleibow/events{/privacy}","received_events_url":"https://api.github.com/users/mattleibow/received_events","type":"User","site_admin":false},"repo":{"id":60798680,"name":"XamarinComponents","full_name":"mattleibow/XamarinComponents","owner":{"login":"mattleibow","id":1096616,"avatar_url":"https://avatars.githubusercontent.com/u/1096616?v=3","gravatar_id":"","url":"https://api.github.com/users/mattleibow","html_url":"https://github.com/mattleibow","followers_url":"https://api.github.com/users/mattleibow/followers","following_url":"https://api.github.com/users/mattleibow/following{/other_user}","gists_url":"https://api.github.com/users/mattleibow/gists{/gist_id}","starred_url":"https://api.github.com/users/mattleibow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattleibow/subscriptions","organizations_url":"https://api.github.com/users/mattleibow/orgs","repos_url":"https://api.github.com/users/mattleibow/repos","events_url":"https://api.github.com/users/mattleibow/events{/privacy}","received_events_url":"https://api.github.com/users/mattleibow/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mattleibow/XamarinComponents","description":"Plugins for Xamarin","fork":true,"url":"https://api.github.com/repos/mattleibow/XamarinComponents","forks_url":"https://api.github.com/repos/mattleibow/XamarinComponents/forks","keys_url":"https://api.github.com/repos/mattleibow/XamarinComponents/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mattleibow/XamarinComponents/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mattleibow/XamarinComponents/teams","hooks_url":"https://api.github.com/repos/mattleibow/XamarinComponents/hooks","issue_events_url":"https://api.github.com/repos/mattleibow/XamarinComponents/issues/events{/number}","events_url":"https://api.github.com/repos/mattleibow/XamarinComponents/events","assignees_url":"https://api.github.com/repos/mattleibow/XamarinComponents/assignees{/user}","branches_url":"https://api.github.com/repos/mattleibow/XamarinComponents/branches{/branch}","tags_url":"https://api.github.com/repos/mattleibow/XamarinComponents/tags","blobs_url":"https://api.github.com/repos/mattleibow/XamarinComponents/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mattleibow/XamarinComponents/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mattleibow/XamarinComponents/git/refs{/sha}","trees_url":"https://api.github.com/repos/mattleibow/XamarinComponents/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mattleibow/XamarinComponents/statuses/{sha}","languages_url":"https://api.github.com/repos/mattleibow/XamarinComponents/languages","stargazers_url":"https://api.github.com/repos/mattleibow/XamarinComponents/stargazers","contributors_url":"https://api.github.com/repos/mattleibow/XamarinComponents/contributors","subscribers_url":"https://api.github.com/repos/mattleibow/XamarinComponents/subscribers","subscription_url":"https://api.github.com/repos/mattleibow/XamarinComponents/subscription","commits_url":"https://api.github.com/repos/mattleibow/XamarinComponents/commits{/sha}","git_commits_url":"https://api.github.com/repos/mattleibow/XamarinComponents/git/commits{/sha}","comments_url":"https://api.github.com/repos/mattleibow/XamarinComponents/comments{/number}","issue_comment_url":"https://api.github.com/repos/mattleibow/XamarinComponents/issues/comments{/number}","contents_url":"https://api.github.com/repos/mattleibow/XamarinComponents/contents/{+path}","compare_url":"https://api.github.com/repos/mattleibow/XamarinComponents/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mattleibow/XamarinComponents/merges","archive_url":"https://api.github.com/repos/mattleibow/XamarinComponents/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mattleibow/XamarinComponents/downloads","issues_url":"https://api.github.com/repos/mattleibow/XamarinComponents/issues{/number}","pulls_url":"https://api.github.com/repos/mattleibow/XamarinComponents/pulls{/number}","milestones_url":"https://api.github.com/repos/mattleibow/XamarinComponents/milestones{/number}","notifications_url":"https://api.github.com/repos/mattleibow/XamarinComponents/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mattleibow/XamarinComponents/labels{/name}","releases_url":"https://api.github.com/repos/mattleibow/XamarinComponents/releases{/id}","deployments_url":"https://api.github.com/repos/mattleibow/XamarinComponents/deployments","created_at":"2016-06-09T18:46:48Z","updated_at":"2016-06-09T18:46:53Z","pushed_at":"2016-08-02T23:10:31Z","git_url":"git://github.com/mattleibow/XamarinComponents.git","ssh_url":"git@github.com:mattleibow/XamarinComponents.git","clone_url":"https://github.com/mattleibow/XamarinComponents.git","svn_url":"https://github.com/mattleibow/XamarinComponents","homepage":"http://www.xamarin.com","size":93428,"stargazers_count":0,"watchers_count":0,"language":"C#","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"xamarin:master","ref":"master","sha":"69bcf933cbbd859e21a158d396d346bc962cb750","user":{"login":"xamarin","id":790012,"avatar_url":"https://avatars.githubusercontent.com/u/790012?v=3","gravatar_id":"","url":"https://api.github.com/users/xamarin","html_url":"https://github.com/xamarin","followers_url":"https://api.github.com/users/xamarin/followers","following_url":"https://api.github.com/users/xamarin/following{/other_user}","gists_url":"https://api.github.com/users/xamarin/gists{/gist_id}","starred_url":"https://api.github.com/users/xamarin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xamarin/subscriptions","organizations_url":"https://api.github.com/users/xamarin/orgs","repos_url":"https://api.github.com/users/xamarin/repos","events_url":"https://api.github.com/users/xamarin/events{/privacy}","received_events_url":"https://api.github.com/users/xamarin/received_events","type":"Organization","site_admin":false},"repo":{"id":29352730,"name":"XamarinComponents","full_name":"xamarin/XamarinComponents","owner":{"login":"xamarin","id":790012,"avatar_url":"https://avatars.githubusercontent.com/u/790012?v=3","gravatar_id":"","url":"https://api.github.com/users/xamarin","html_url":"https://github.com/xamarin","followers_url":"https://api.github.com/users/xamarin/followers","following_url":"https://api.github.com/users/xamarin/following{/other_user}","gists_url":"https://api.github.com/users/xamarin/gists{/gist_id}","starred_url":"https://api.github.com/users/xamarin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xamarin/subscriptions","organizations_url":"https://api.github.com/users/xamarin/orgs","repos_url":"https://api.github.com/users/xamarin/repos","events_url":"https://api.github.com/users/xamarin/events{/privacy}","received_events_url":"https://api.github.com/users/xamarin/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/xamarin/XamarinComponents","description":"Plugins for Xamarin","fork":false,"url":"https://api.github.com/repos/xamarin/XamarinComponents","forks_url":"https://api.github.com/repos/xamarin/XamarinComponents/forks","keys_url":"https://api.github.com/repos/xamarin/XamarinComponents/keys{/key_id}","collaborators_url":"https://api.github.com/repos/xamarin/XamarinComponents/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/xamarin/XamarinComponents/teams","hooks_url":"https://api.github.com/repos/xamarin/XamarinComponents/hooks","issue_events_url":"https://api.github.com/repos/xamarin/XamarinComponents/issues/events{/number}","events_url":"https://api.github.com/repos/xamarin/XamarinComponents/events","assignees_url":"https://api.github.com/repos/xamarin/XamarinComponents/assignees{/user}","branches_url":"https://api.github.com/repos/xamarin/XamarinComponents/branches{/branch}","tags_url":"https://api.github.com/repos/xamarin/XamarinComponents/tags","blobs_url":"https://api.github.com/repos/xamarin/XamarinComponents/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/xamarin/XamarinComponents/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/xamarin/XamarinComponents/git/refs{/sha}","trees_url":"https://api.github.com/repos/xamarin/XamarinComponents/git/trees{/sha}","statuses_url":"https://api.github.com/repos/xamarin/XamarinComponents/statuses/{sha}","languages_url":"https://api.github.com/repos/xamarin/XamarinComponents/languages","stargazers_url":"https://api.github.com/repos/xamarin/XamarinComponents/stargazers","contributors_url":"https://api.github.com/repos/xamarin/XamarinComponents/contributors","subscribers_url":"https://api.github.com/repos/xamarin/XamarinComponents/subscribers","subscription_url":"https://api.github.com/repos/xamarin/XamarinComponents/subscription","commits_url":"https://api.github.com/repos/xamarin/XamarinComponents/commits{/sha}","git_commits_url":"https://api.github.com/repos/xamarin/XamarinComponents/git/commits{/sha}","comments_url":"https://api.github.com/repos/xamarin/XamarinComponents/comments{/number}","issue_comment_url":"https://api.github.com/repos/xamarin/XamarinComponents/issues/comments{/number}","contents_url":"https://api.github.com/repos/xamarin/XamarinComponents/contents/{+path}","compare_url":"https://api.github.com/repos/xamarin/XamarinComponents/compare/{base}...{head}","merges_url":"https://api.github.com/repos/xamarin/XamarinComponents/merges","archive_url":"https://api.github.com/repos/xamarin/XamarinComponents/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/xamarin/XamarinComponents/downloads","issues_url":"https://api.github.com/repos/xamarin/XamarinComponents/issues{/number}","pulls_url":"https://api.github.com/repos/xamarin/XamarinComponents/pulls{/number}","milestones_url":"https://api.github.com/repos/xamarin/XamarinComponents/milestones{/number}","notifications_url":"https://api.github.com/repos/xamarin/XamarinComponents/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/xamarin/XamarinComponents/labels{/name}","releases_url":"https://api.github.com/repos/xamarin/XamarinComponents/releases{/id}","deployments_url":"https://api.github.com/repos/xamarin/XamarinComponents/deployments","created_at":"2015-01-16T14:54:16Z","updated_at":"2016-08-04T12:16:40Z","pushed_at":"2016-08-02T23:10:31Z","git_url":"git://github.com/xamarin/XamarinComponents.git","ssh_url":"git@github.com:xamarin/XamarinComponents.git","clone_url":"https://github.com/xamarin/XamarinComponents.git","svn_url":"https://github.com/xamarin/XamarinComponents","homepage":"http://www.xamarin.com","size":94064,"stargazers_count":395,"watchers_count":395,"language":"C#","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":71,"mirror_url":null,"open_issues_count":22,"forks":71,"open_issues":22,"watchers":395,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/51"},"html":{"href":"https://github.com/xamarin/XamarinComponents/pull/51"},"issue":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/issues/51"},"comments":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/issues/51/comments"},"review_comments":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/51/comments"},"review_comment":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/pulls/51/commits"},"statuses":{"href":"https://api.github.com/repos/xamarin/XamarinComponents/statuses/f733f9f2db366517853cad60750baa8e2296caa7"}}}}
{"actor":{"display_login":"SotoiGhost"}}