@@ -478,13 +478,29 @@ public struct AndroidSubscriptionOfferInput: Codable {
478478 public var offerToken : String
479479 /// Product SKU
480480 public var sku : String
481+
482+ public init (
483+ offerToken: String ,
484+ sku: String
485+ ) {
486+ self . offerToken = offerToken
487+ self . sku = sku
488+ }
481489}
482490
483491public struct DeepLinkOptions : Codable {
484492 /// Android package name to target (required on Android)
485493 public var packageNameAndroid : String ?
486494 /// Android SKU to open (required on Android)
487495 public var skuAndroid : String ?
496+
497+ public init (
498+ packageNameAndroid: String ? = nil ,
499+ skuAndroid: String ? = nil
500+ ) {
501+ self . packageNameAndroid = packageNameAndroid
502+ self . skuAndroid = skuAndroid
503+ }
488504}
489505
490506public struct DiscountOfferInputIOS : Codable {
@@ -498,18 +514,46 @@ public struct DiscountOfferInputIOS: Codable {
498514 public var signature : String
499515 /// Timestamp of discount offer
500516 public var timestamp : Double
517+
518+ public init (
519+ identifier: String ,
520+ keyIdentifier: String ,
521+ nonce: String ,
522+ signature: String ,
523+ timestamp: Double
524+ ) {
525+ self . identifier = identifier
526+ self . keyIdentifier = keyIdentifier
527+ self . nonce = nonce
528+ self . signature = signature
529+ self . timestamp = timestamp
530+ }
501531}
502532
503533/// Connection initialization configuration
504534public struct InitConnectionConfig : Codable {
505535 /// Alternative billing mode for Android
506536 /// If not specified, defaults to NONE (standard Google Play billing)
507537 public var alternativeBillingModeAndroid : AlternativeBillingModeAndroid ?
538+
539+ public init (
540+ alternativeBillingModeAndroid: AlternativeBillingModeAndroid ? = nil
541+ ) {
542+ self . alternativeBillingModeAndroid = alternativeBillingModeAndroid
543+ }
508544}
509545
510546public struct ProductRequest : Codable {
511547 public var skus : [ String ]
512548 public var type : ProductQueryType ?
549+
550+ public init (
551+ skus: [ String ] ,
552+ type: ProductQueryType ? = nil
553+ ) {
554+ self . skus = skus
555+ self . type = type
556+ }
513557}
514558
515559public typealias PurchaseInput = Purchase
@@ -519,20 +563,48 @@ public struct PurchaseOptions: Codable {
519563 public var alsoPublishToEventListenerIOS : Bool ?
520564 /// Limit to currently active items on iOS
521565 public var onlyIncludeActiveItemsIOS : Bool ?
566+
567+ public init (
568+ alsoPublishToEventListenerIOS: Bool ? = nil ,
569+ onlyIncludeActiveItemsIOS: Bool ? = nil
570+ ) {
571+ self . alsoPublishToEventListenerIOS = alsoPublishToEventListenerIOS
572+ self . onlyIncludeActiveItemsIOS = onlyIncludeActiveItemsIOS
573+ }
522574}
523575
524576public struct ReceiptValidationAndroidOptions : Codable {
525577 public var accessToken : String
526578 public var isSub : Bool ?
527579 public var packageName : String
528580 public var productToken : String
581+
582+ public init (
583+ accessToken: String ,
584+ isSub: Bool ? = nil ,
585+ packageName: String ,
586+ productToken: String
587+ ) {
588+ self . accessToken = accessToken
589+ self . isSub = isSub
590+ self . packageName = packageName
591+ self . productToken = productToken
592+ }
529593}
530594
531595public struct ReceiptValidationProps : Codable {
532596 /// Android-specific validation options
533597 public var androidOptions : ReceiptValidationAndroidOptions ?
534598 /// Product SKU to validate
535599 public var sku : String
600+
601+ public init (
602+ androidOptions: ReceiptValidationAndroidOptions ? = nil ,
603+ sku: String
604+ ) {
605+ self . androidOptions = androidOptions
606+ self . sku = sku
607+ }
536608}
537609
538610public struct RequestPurchaseAndroidProps : Codable {
@@ -544,6 +616,18 @@ public struct RequestPurchaseAndroidProps: Codable {
544616 public var obfuscatedProfileIdAndroid : String ?
545617 /// List of product SKUs
546618 public var skus : [ String ]
619+
620+ public init (
621+ isOfferPersonalized: Bool ? = nil ,
622+ obfuscatedAccountIdAndroid: String ? = nil ,
623+ obfuscatedProfileIdAndroid: String ? = nil ,
624+ skus: [ String ]
625+ ) {
626+ self . isOfferPersonalized = isOfferPersonalized
627+ self . obfuscatedAccountIdAndroid = obfuscatedAccountIdAndroid
628+ self . obfuscatedProfileIdAndroid = obfuscatedProfileIdAndroid
629+ self . skus = skus
630+ }
547631}
548632
549633public struct RequestPurchaseIosProps : Codable {
@@ -559,6 +643,22 @@ public struct RequestPurchaseIosProps: Codable {
559643 public var sku : String
560644 /// Discount offer to apply
561645 public var withOffer : DiscountOfferInputIOS ?
646+
647+ public init (
648+ andDangerouslyFinishTransactionAutomatically: Bool ? = nil ,
649+ appAccountToken: String ? = nil ,
650+ externalPurchaseUrl: String ? = nil ,
651+ quantity: Int ? = nil ,
652+ sku: String ,
653+ withOffer: DiscountOfferInputIOS ? = nil
654+ ) {
655+ self . andDangerouslyFinishTransactionAutomatically = andDangerouslyFinishTransactionAutomatically
656+ self . appAccountToken = appAccountToken
657+ self . externalPurchaseUrl = externalPurchaseUrl
658+ self . quantity = quantity
659+ self . sku = sku
660+ self . withOffer = withOffer
661+ }
562662}
563663
564664public struct RequestPurchaseProps : Codable {
@@ -636,6 +736,14 @@ public struct RequestPurchasePropsByPlatforms: Codable {
636736 public var android : RequestPurchaseAndroidProps ?
637737 /// iOS-specific purchase parameters
638738 public var ios : RequestPurchaseIosProps ?
739+
740+ public init (
741+ android: RequestPurchaseAndroidProps ? = nil ,
742+ ios: RequestPurchaseIosProps ? = nil
743+ ) {
744+ self . android = android
745+ self . ios = ios
746+ }
639747}
640748
641749public struct RequestSubscriptionAndroidProps : Codable {
@@ -653,6 +761,24 @@ public struct RequestSubscriptionAndroidProps: Codable {
653761 public var skus : [ String ]
654762 /// Subscription offers
655763 public var subscriptionOffers : [ AndroidSubscriptionOfferInput ] ?
764+
765+ public init (
766+ isOfferPersonalized: Bool ? = nil ,
767+ obfuscatedAccountIdAndroid: String ? = nil ,
768+ obfuscatedProfileIdAndroid: String ? = nil ,
769+ purchaseTokenAndroid: String ? = nil ,
770+ replacementModeAndroid: Int ? = nil ,
771+ skus: [ String ] ,
772+ subscriptionOffers: [ AndroidSubscriptionOfferInput ] ? = nil
773+ ) {
774+ self . isOfferPersonalized = isOfferPersonalized
775+ self . obfuscatedAccountIdAndroid = obfuscatedAccountIdAndroid
776+ self . obfuscatedProfileIdAndroid = obfuscatedProfileIdAndroid
777+ self . purchaseTokenAndroid = purchaseTokenAndroid
778+ self . replacementModeAndroid = replacementModeAndroid
779+ self . skus = skus
780+ self . subscriptionOffers = subscriptionOffers
781+ }
656782}
657783
658784public struct RequestSubscriptionIosProps : Codable {
@@ -663,13 +789,37 @@ public struct RequestSubscriptionIosProps: Codable {
663789 public var quantity : Int ?
664790 public var sku : String
665791 public var withOffer : DiscountOfferInputIOS ?
792+
793+ public init (
794+ andDangerouslyFinishTransactionAutomatically: Bool ? = nil ,
795+ appAccountToken: String ? = nil ,
796+ externalPurchaseUrl: String ? = nil ,
797+ quantity: Int ? = nil ,
798+ sku: String ,
799+ withOffer: DiscountOfferInputIOS ? = nil
800+ ) {
801+ self . andDangerouslyFinishTransactionAutomatically = andDangerouslyFinishTransactionAutomatically
802+ self . appAccountToken = appAccountToken
803+ self . externalPurchaseUrl = externalPurchaseUrl
804+ self . quantity = quantity
805+ self . sku = sku
806+ self . withOffer = withOffer
807+ }
666808}
667809
668810public struct RequestSubscriptionPropsByPlatforms : Codable {
669811 /// Android-specific subscription parameters
670812 public var android : RequestSubscriptionAndroidProps ?
671813 /// iOS-specific subscription parameters
672814 public var ios : RequestSubscriptionIosProps ?
815+
816+ public init (
817+ android: RequestSubscriptionAndroidProps ? = nil ,
818+ ios: RequestSubscriptionIosProps ? = nil
819+ ) {
820+ self . android = android
821+ self . ios = ios
822+ }
673823}
674824
675825// MARK: - Unions
0 commit comments